原文链接:https://www.oreilly.com/ideas/the-traits-of-a-proficient-programmer
有能力胜任和精通之间的区别: 有能力胜任是指有足够的经验和知识来完成各项工作;精通涉及之道为什么你要用某种方式来做事情,以及如何融入到大局中。 如果你是一名程序员,学习该怎么做是你能胜任工作的重要部分:
- 我需要知道如何使用版本控制
- 我需要知道如何使用一种一致的编码风格
- 我需要知道如何建立一个持续集成服务器
- 我需要知道如何查询数据库
| ./gradlew android:assembleDebug --profile |
| ## 重置 launchpad 布局 | |
| defaults write com.apple.dock ResetLaunchPad -bool true; killall Dock |
| public class Upload { | |
| public interface UserService { | |
| @Multipart | |
| @POST("user/uploadavatar") | |
| Observable<ResponseBody> uploadAvatar( | |
| @Part("name") RequestBody name, | |
| @Part MultipartBody.Part file, | |
| ); | |
| } |
| public class App extends Application { | |
| @Override | |
| protected void attachBaseContext(Context base) { | |
| super.attachBaseContext(base); | |
| // 配置 Multidex 3 | |
| MultiDex.install(this); | |
| } | |
| } |
| /** | |
| * SimpleBottomSheetDialogFragment.newInstance().show(getSupportFragmentManager(), "fragment_simple_bottom_sheet"); | |
| */ | |
| public abstract class SimpleBottomSheetDialogFragment extends BottomSheetDialogFragment { | |
| public View rootView; | |
| Unbinder mUnBinder; | |
| @Override | |
| public void onCreate(@Nullable Bundle savedInstanceState) { |
原文链接:https://www.oreilly.com/ideas/the-traits-of-a-proficient-programmer
有能力胜任和精通之间的区别: 有能力胜任是指有足够的经验和知识来完成各项工作;精通涉及之道为什么你要用某种方式来做事情,以及如何融入到大局中。 如果你是一名程序员,学习该怎么做是你能胜任工作的重要部分:
| /** | |
| * Created by Tendoasan on 2017/8/15. | |
| * 基础分页适配器 | |
| */ | |
| @SuppressWarnings("unused") | |
| public abstract class BasePaginationAdapter<T> extends Adapter { | |
| public interface PaginationListener { | |
| void onLoadMoreItems(); | |
| } |
| public class InflateViewsFragment extends Fragment { | |
| @BindView(R.id.ll_roots) | |
| LinearLayout mLlRoots; // 容器 | |
| Unbinder mUnBinder; | |
| @Nullable | |
| @Override | |
| public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { |
| // 修改系统字体大小 | |
| public abstract class KeepFontScaleActivity extends AppCompatActivity { | |
| @Override | |
| public void onConfigurationChanged(Configuration newConfig) { | |
| if (newConfig.fontScale != 1)//非默认值 | |
| getResources(); | |
| super.onConfigurationChanged(newConfig); | |
| } | |
| @Override |
| ## Windows 下的文件哈希值查询 | |
| $ certutil -hashfile filename MD5 | |
| $ certutil -hashfile filename SHA1 | |
| $ certutil -hashfile filename SHA256 | |
| ## Mac | |
| $ md5 -hashfile |