13518219792

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

架构师速成-如何高效编程

引子

赵云大喝一声,挺枪骤马杀入重围,左冲右突,如入无人之境。那枪浑身上下,若舞梨花;遍体纷纷,如飘瑞雪。

赵云是所有历史人物中我最喜欢的一个,如果放到现代,他走了it的道路,一定可以成为一个编程高手。为什么?

其实古时打仗也是一门技术活,需要有勇有谋,跟it没有什么太大的区别。打仗要修身、修技、修器才能左冲右突,如入无人之境,同样做it也要修身、修技、修器,才能高效编程,如入无人之境。

高效编程的修炼

何谓修身、修技、修器?

待修到山花烂漫时,需求丛中过,片叶不粘身。

修身

修身是一个很大的话题,要讲个几天几夜了,所以我们就先略过。当然修身之后,可以从思维的高度上确定大的方向,但是大家的看了题目也不太会关心如何修身,so pass!后面省略十万字,我可真够高产的(稿费不要省略啊,我不怕麻烦)。

修技

古时修技都是有秘笈,而且必须有独门功法历尽千辛万苦才能修炼成功。如今好了,有很多书和视频,还有我这种让人醍(提)醐(壶)灌顶的好教程,所以你只需要少吃一点苦就可以练成了,我算算啊——-你大概历尽999辛9999苦就可以了,看少了1点吧。

修技大概分为

等修炼到10成功力,才可以继续修炼终极秘笈架构模式,否则会走火入魔、oom。

其实看到题目我首先想到的也是编程工具的使用,以及快捷键的使用。后来我发现那只占我浪费时间的5%-10%,真正浪费我们时间的是:

其实我们看看这些问题怎么来解决:

秘笈已经放在后面了,请大家笑纳!

修器

有小说讲到高手已经不需要好的武器,一片叶子,一根枯枝,都可以分分钟秒掉一片人。还有人谣传,最牛逼的开发人员只使用文本编辑器,巴拉巴拉,一个操作系统开发出来了。

我只问一个问题,你用不用电器,你开不开车?

如果用,那就继续,如果不用,那就闪开,骗子,你怎们看到我的文章的。

人活着的目的就是为了让更多人的获得更多的自由,时间自由,财务自由,人身自由。开发工具的目的是为了,让你更快的完成一些重复的繁琐的事情,让你有时间去享用你的自由。所以尽情的使用工具,工欲善其事,必先利其器。

要高效,必须把最常用的工具修炼到极致:

  1. 操作系统,尽量选择苹果、Ubuntu,window次之,当你用命令行爽呆的时候就明白了。当然如果用windows,尽量使用快捷键操作。

  2. 开发工具,eclipse 快捷键,统一的格式,重构功能 ,findbug,checkstyle

  3. 自动化编译发布,使用hudson进行定时自动化打包发布

  4. 其他工具,xmind 快捷键

  5. 时间管理,番茄工作法 控制时间

  6. 好的框架,定义好一个好的框架,可以节省大量开发时间。具体内容详见我前面讲到的框架。

  7. 代码生成器,输入uml设计的类图,自动生成相关的类,对于需要持久化的对象,可以实现从前到后的增删改查的代码。

实战

产品获得了一个用户需求给到我,我通常是这样做的:

  1. 分析需求的合理性,并不是所有需求都是合理的,需要积极发现其中问题。发现的问题跟产品讨论,如果所有问题都解决掉,才进行下一步。如果后面的开发建立在一个错误的需求上,所有开发都是然并卵。

  2. 进行分析设计,至少形成uml的用例图和类图。对于关键复杂逻辑,确定是否可以通过设计模式解决。复杂流程需要画出流程图,如果状态变化较多,还需要画出状态图。在uml设计时,仍然会发现需求的问题,此时仍需要跟产品确定,直至所有问题解决掉,才进行一步。

  3. 编码实现,根据类图自动生成相关代码,省去了自己一个个再敲一遍的时间,前后端增删改查等重复逻辑都已经有了,只需要写具体的业务就ok了。

  4. 编写单元测试,对于自定义代码,必须编写单元测试。这样后期修改代码或者进行集成测试时,才会比较顺畅。

  5. 进行findbug,checkstyle自动检查,系统自动化发布,如果出现问题邮件通知。

  6. 自测,自己实现功能后,先按照需求自测一般,保证正确性。

  7. 提交测试,发现bug及时修改,基本做到日结。

  8. 自动化发布上线。

当然中间会尽量节省各种时间:

  1. 快捷键操作

  2. 番茄工作法,设置不被打扰时间,全神贯注的投入编码

  3. 3次以上重复的事情,就考虑实现自动化,比如 发布,代码检查,代码生成

  4. 代码规范严格遵守,最优实践严格遵守

团队高效

其实编码不是一个人的事情,团队协作是必不可少的。团队尽量采用如下管理方式:

  1. 需求、设计集体参与,不需要再每人讲解

  2. 设计后进行分工,如果有新人就采取新老结合的结对编程,对复杂的代码也采取结对编程。

  3. 推行结果导向,从产品,需求,设计,开发等,不要白白浪费时间做无结果的事情

  4. 代码规范严格遵守,最优实践严格遵守

  5. 规范流程,不断磨合各个环节人员,达到丝般顺滑

  6. 人员互备,不会出现单点

祝福

上面是我做软件以来的一些感悟,当然一千个人眼中有一千零一个哈姆雷特,每个都会有最适合自己的方法,希望大家都早日修成自己的高效编程之道。

每天的努力的汗水,是成功追寻的痕迹。


分享题目:架构师速成-如何高效编程
URL网址:http://cdbrznjsb.com/article/cdghego.html

其他资讯

让你的专属顾问为你服务