为何进步太慢,由于你没有一个好习惯

原文地址: https://juejin.im/post/5c8522fef265da2db87bdc8bgit

有人问我如何作好架构设计?怎样灵活运用设计模式?个人回答是,你作很差这些只是由于你没有养成一个良好的编程习惯github

我为何写这么多开源框架,还长期保持维护?编程

除了我想让更多人受益于开源外,还有一点就是,我想保持我良好的编程习惯设计模式

写业务代码也能够保持良好的编程习惯啊服务器

能,可是太慢!网络

写业务时没法注意到的细节

在写业务代码时,即便项目时间充裕,你也会忽略掉不少细节,而这些细节正是影响你进步速度的关键,但你本身却很难察觉,在不知不觉间就对你的进阶之路形成了很大的影响架构

因此你的进步速度很是之慢,作了多年也只是熟练而已,没法更进一步框架

业务代码和框架代码最直观的差异就是,业务代码能够随意修改,而框架代码,使用者不能直接修改post

因为业务代码的修改不受限制,因此一有需求变更,你就直接经过修改问题代码的方式来快速解决问题,即便这个代码的变更很是频繁,但你的第一反应却不是经过代码设计的方式来解决后续的扩展问题,由于这看似一劳永逸的方式,会浪费你当下大量的时间学习

人类的潜意识会更注重当下付出的成本,而忽略掉将来会得到的收益

由于你上面的编码方式,所养成的很差的编程习惯,会让你本能的不注重代码的耦合性、灵活性、可扩展性

因此即便你每天敲代码,你的进步也如此之慢,由于你平时就缺少架构设计、代码设计的锻炼,日积月累,你也只是搬砖的速度比以前更快一点而已

写开源框架时给你带来的改变

这个时候若是有一个好的 leader 能天天 review 你的代码,还时常提醒你这些问题,只要你慢慢改为,并养成习惯,那你的进阶之路也会十分顺畅

但如此好的 leader 是可遇不可求的,那咱们若是没有一个好 leader,该如何养成一个好习惯呢?

个人建议就是作开源库,并且尽可能作开源框架,好比架构框架、UI 框架,网络框架、图片框架,尽可能少作开源 App(固然若是为了学习某项技术也是能够的)

由于开源 App 主要是帮助你和别人学习某些技术,也是有大量的业务代码存在的,无非就是用了一些新的技术,并且仍是你一我的写,有些细节你更不会考虑 …

而开源框架是拿给别人调用的,因此对代码质量要求更高,考虑的细节更多,对你的提高也越大

而且你的框架代码是放在服务器上的,使用者没法修改你的代码,这就会强迫你更关注代码的耦合性、灵活性、可扩展性,甚至是你写业务时根本不会注重的注释和文档

由于使用者用得稍有不爽就会给你发起 issue,不断地督促你优化你的代码、注释、文档,不断地帮助你培养一个良好的编程习惯

这就比如你有成百上千个好 leader 天天 review 你的代码,并指出你的问题,给予更好的建议,并且这些 leader 中绝对藏龙卧虎,这样日积月累下去,你怎能不成长?

良好的编程习惯助你快速进步

个人不少编程习惯,通过不断的纠错,优化,纠错,优化,已经深深的刻进个人脑子里了

我框架用到的大多数设计模式,都不是我刻意去用的,都是遇到某些问题,或者使用者须要增长什么功能,我为了避免影响以前的版本,保证扩展性的前提下,去解决这些问题,而不得不去使用这些设计模式,不少状况下,代码已经写完了,才知道,原来我用的是 xx 设计模式

在这种不断优化代码,养成的良好编程习惯下,我写代码时,使用设计模式已经变成了潜意识的行为,根本说不出为何要用这个设计模式,只由于以为这样用才是最优解,这就比如拳击手,遇到攻击时会潜意识的躲闪、反击同样,这就是不断实战、不断训练的结果

个人全部开源框架加起来每月平均下载量在 5 万左右,天天都有各类 issue 向我飞来,这些成千上万的使用者(监督者),迫使我不断地优化本身的代码,甚至连每一个注释我都精雕细琢

框架要作到知足全部人的需求太难了,但只要你不断优化,能作到让大部分人满意,那对你的提高绝对是巨大的,并且你的编程习惯也会有巨大的飞跃

好比我写注释的编程习惯培养起来后,个人每一个开源框架,都写了大量的注释,描述的很是详细,保证大部分人都能明白原理,但仍是有不少人跑过来问我文档和注释上已经写了的问题

我真的是吐血,兄弟,我真不想回答,你杀了我好吧 …

一个好的习惯,坚持一天,就往目标前进一步

一个坏的习惯,持续一天,也就浪费一天时间

我作开源三年时间改掉了我不少很差的编程习惯,让我进步飞速,因此我感谢开源

我也鼓励更多的人积极参与开源,让别人受益的同时,别人也让你不断进步

固然作开源,并不仅是代码写的好,就能收获大量的 star,他还须要综合性的能力,好比框架定位、产品需求分析、运营、推广等不少东西,其中最重要的就是持续维护

我去年创新的新框架 AndroidAutoSize,上线一个月时间就 3k star,如今每月有 2 万以上的下载量,超过我以前的全部开源框架,这就是由于我以前所积累的开源经验所赐,关于 Github 的运营之道后面我也会分享的

公众号

扫码关注个人公众号 JessYan,一块儿学习进步,若是框架有更新,我也会在公众号上第一时间通知你们


Hello 我叫 JessYan,若是您喜欢个人文章,能够在如下平台关注我

-- The end

相关文章
相关标签/搜索