写在前面
没错就是人,首先你需要让自己拥有一颗高效的心,当然拥有了一颗高效的心还不够,你必须变成一个高效的人,那么现在我就在这里帮助你!
插一句话,心态没有调整好的同学,可以关闭这个页面了,因为我不想浪费你的时间,任何事情都需要用努力去换,坚持不懈,我相信彩虹就在前方,准备好的上车了吗? Let`s go!
一.怎样才能成为一个高效代码的编辑者?
具备所用编程语言的熟练编程能力,编程能力包括代码的熟练书写,熟练应用能力.
代码技巧必不可少,举一反三能力,善于周密的逻辑思考.
每天看一些牛人写过的代码,不理解也不要紧.
适当的放松一些,保持良好的心态.
如何编写高质量的java代码?
编码标准:这个想必都很清楚,每个公司几乎都有一份编码规范,类命名、包命名、代码风格之类的东西都属于其中。
代码重复:顾名思义就是重复的代码,如果你的代码中有大量的重复代码,你就要考虑是否将重复的代码提取出来,封装成一个公共的方法或者组件。
代码覆盖率:测试代码能运行到的代码比率,你的代码经过了单元测试了吗?是不是每个方法都进行了测试,代码覆盖率是多少?这关系到你的代码的功能性和稳定性。
依赖项分析:你的代码依赖关系怎么样?耦合关系怎么样?是否有循环依赖?是否符合高内聚低耦合的原则?通过依赖项分析可以辨别一二。
复杂度分析:以前有人写的程序嵌套了10层 if else你信吗?圈复杂度之高,让人难以阅读。通过复杂度分析可以揪出这些代码,要相信越优秀的代码,越容易读懂。
1.学会使用插件 首先,说明一下插件的下载方式,file->setting 进入setting界面
然后在搜索界面中搜索
推荐的插件:
Alibaba Java Coding Guidelines:阿里巴巴代码规范检查
Android Code Generator:可以根据xml文件生成activity
Angular 2 TypeScript Live Templates:样本范例使用
GenerateFindviewbyid:可输入布局字段,可选中布局文件字段,自动生成有id控件相应的代码
JRebel for Android:修改代码再次使用模拟器测试app时,可以不用再次安装,直接就是可以测试
LayoutFormatter:xml布局文件代码规范格式化,
Material Theme Ui:android sutdio主题,属于material风格的
Selector Drawable Generator:选择器selector的代码快速生成
Sexy Editor:可以在代码区后增加背景并调整背景的透明度
SVG2VectorDrawable:将svg转化成xml文件
ReciteWord:英文翻译,还有生词本便于复习,学英语的神器
当然还有很多,这里也就不详细介绍和教大家如何使用了,大家可以通过google,baidu 了解详细使用步骤,每天学一点,十年成大牛!
随着需求的增加,代码量随之变得庞大、臃肿。于是产生了很多影响开发效率的问题。
例如:
方法数超过65K。
程序编译运行一次至少1-2分钟。
代码变得难以管理,影响阅读及修改效率。
代码之间紧密度高,不好拆分任务……
详细说明点击这里跳转
Android Studio Template 我在这里简单介绍一下,Android Studio Template 依靠 FreeMarker 引擎,将事先定义好的模板文件生成我们所需的 class 文件、layout 文件等等,可以极大减少样板式代码的编写。可能看文章时会觉得有点复杂有点麻烦,但是真正上手写出自己的模板后你就会觉得,原来这么简单,代码只需点一点就出来了!
付上链接:点击跳转
使用三方优秀的开源库可以让我们的项目对一些细节的处理快速完成,这里推荐一位我心中的大神给大家Jake Wharton,诸多开源库都是他主导的,Android 界我的风向标.在这里膜拜一下!好了话不多说,推荐以下三方框架以及其功能说明,小伙伴们可以挑选自己项目需要的进行研究使用!
ButterKnife 和插件AndroidButterKnife Zelezny 一起使用帮助你快速获取控件,生成点击事件,ViewHolder等代码
RxJava Rx会大大减少你的代码量,可以把复杂逻辑变得更简单,还可以和三方的Retorfit RxBinding RxBus RxAndroid...等库协同使用这里不再过多阐述
Glide 图片库也是对于APP十分重要的,这里推荐Glide 算是现在比较最主流高效框架了,当让还有Picasso Fresco 这些优秀的库
Gson 和插件GsonFromat 可以快速将一个json串生成bean对象代码,还可以帮你迅速解析网络请求返回的json串为bean对象,非常实用.
Okhttp /Retrofit 是目前最主流的网络方面的请求框架
EventBus 事件总线框架,用于进程间通信推荐
Dagger2 主流的注入框架,用于对象注入配合rxjava,Retorfit是mvp三件套
greenDao/ormlite/LitePal/realm 都是数据库类型的框架根据项目需求任选其一及可
大部分IDE都能通过插件的形式支持Vim,Android开发也不列外,喜欢疯狂敲打键盘快速在代码间跳跃飞舞的小伙伴这里献上点击连接
拥有一套常用的代码工具类,是提高开发效率的最基本简单的方式,当然各位开发的小伙伴们也要自己积累自己的开发工具类,这些都是你将来以后拥有的一笔财富,在这里献上一套朋友的开发工具类以及说明文档,奉献给各位.点击跳转
熟练的使用开发工具是提高效率的基本所在,奉上AS快捷键链接点击跳转
我相信所有的小伙伴都希望自己拿到一个需求的时候,能够快速并且准确的去完成这个需求,早点下班打卡回家,那么当我们面对需求的时候我们应该怎么去完成这个需求呢.
清晰标注的设计图:当我们拿到UI设计图,如果色值、大小都没有明确的标识,那我们肯定是两眼一抹黑,所以我们需要美工人员配合给我们的设计稿是有明确标识的,这样我们才能开展下一步的工作。
使用统一的Values资源属性:一般来说我们很多的组件的颜色和字体是有一定的共通性的,我们要提取这一部分属性在我们的资源内建立统一的属性如color.xml、dimens.xml等,这样如果一旦共性的属性要更改我们只需要更改对应资源属性即可完成所有页面的更改。
使用样式:每个页面标题栏的标题基本会有一样的字体大小、颜色、对齐方式、内间距、外间距等,很多按钮也都使用一致的背景、内间距、文字颜色、文字大小、文字的对齐方式,这个时候我们如果为每个组件来进行属性的设置那么工作量极大,而且一旦属性发生变动那么对应的每个组件都必须重新修改,这个时候我们定义成样式,相同属性的组件设置统一的样式,这样不仅大大提升布局的效率,也提高了后期UI变动的方便性。
layout:在APP开发中很多布局的部分内容是重复的,例如每个页面的标题栏,为了页面的复用,我们可以将标题栏独立成一个布局xml,然后使用include标签来使用它.
设计模式是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,强调的是针对单一问题的解决方法。。尽管使用设计模式能提高开发效率,但因为很多设计模式都是牺牲运行性能换取开发效率的,所以必须谨记不要滥用设计模式。 架构是高层次的针对体系结构的一种设计思路,多种设计模式的合理组合就成了架构。目前Android最流行的架构是MVP,当然小而美的App可以选择更简单的MVC架构,而功能齐全的百科全书式App则要选择条理更清晰的MVVM架构。
好的注释是不一定要长,但一定要精。一目了然、简明扼要的注释能大大提高明天(或者下个月,反正是未来时间)的编程效率;而不好的注释却能让你维护自己写的烂代码时感受到一股跨越时空的恶意。注释不是万能的,比如“以下所有left代表右,所有right代表左”的注释肯定不如把left和right重新定义一遍对编程效率的益处大。
很多常见的功能,比如推送、短信验证码、第三方登录、社交分享、LBS、IM、Crash分析、移动广告等都是第三方服务的用武之地,公司不大到一定规模谁也不会自己搭建IM服务器吧!第三方SDK鱼龙混杂,有些第三方SDK能让你三天两头遇到莫名其妙的bug,但更多的第三方SDK能助你提高开发的效率。
主流的管理工具有git和svn,就目前的趋势来说
推荐使用git这里附上地址点击跳转
身体是革命的本钱,好身体是好的工作、学习状态的基础。程序员是大脑发达、四肢简单的脑力工作者,身体常常处于亚健康状态,对编程效率有严重的负面影响。为了坐在办公的条件下保证身体健康,我们可以多喝水,既能改善血液循环,又能增加起身上厕所的次数;在屏幕前摆一盆多肉植物,既能吸收让皮肤变得暗淡油腻的辐射,又能缓解视觉疲劳。
恭喜你看完了这篇文章,这里只是粗略的写出了一些我个人对开发效率的一些见解,很多知识还需要大家去研究,细化,吸收,最后预祝大家都成为一位效率的开发者!