秋流到冬尽 春流到夏

0%

在日常开发中会分测试、预发、生产等环境,不同环境下请求 Host 不一致,原来的解决方案是通过定制不同的 Flavors,通过添加 applicationIdSuffix 可以让多个 App 同时安装在手机方便测试,但是又产生新的问题,每次都要打包上传不同的 App 让测试安装,这样感觉略显麻烦,所以就想到能不能 App 内部做环境切换,这样切换自如,无需重新打包.

阅读全文 »

面向对象的六大原则

  • 单一职责原则(SRP):一个类应该仅有一个引起它变化的原因。
  • 开闭原则(OCP):软件中的对象应该对于扩展是开放的,对于修改是封闭的。
  • 里氏替换原则(LSP):所有引用基类的地方必须能透明的使用其子类。
  • 依赖倒置原则(DIP):模块间的依赖通过抽象发生,实现类之间不发生直接的依赖关系,其依赖关系是通过接口或者抽象类产生的。
  • 接口隔离原则(ISP):客户端不应该依赖它不需要的接口。
  • 迪米特原则(LOD):一个对象应该对其他对象有最少的了解。

在开发过程中把握平衡点,使系统可以具有高稳定性、高可扩展性并且高内聚、低耦合,在不断迭代中完善架构。

阅读全文 »

系统

  • 将系统的构造与使用分开,如依赖注入(DI)、控制反转(IoC)
  • 保证系统良好的的扩容性,使用面向切面编程(AOP)方式编程

对于系统这章不能透彻理解,平时对于架构没有深入理解,系统应该是随着业务的变化而变化,没必要先做大设计而限制后续设计思路,保证大概可工作的最简单方案即最合适。

阅读全文 »

读的技术书、社科书,现在想想总感觉能回忆起来的太少,看过也就当看过了,没有内化为自己的内容。所以这本书起开始做读书笔记,也便于以后查阅。看了下上篇博文距离现在竟然有一年多了,真是快废了,还好现在拾起来。

整洁代码:

外表或举止上令人愉悦的优美和雅观;令人愉悦的精致和简单 –Bjarne Stroustrup

如果每个例程都让你感到深合己意,那就是整洁代码。如果代码让编程语言看起来像是专为解决那个问题而存在,就可以称之为漂亮的代码。 –Ward Cunningham

这便是书写代码的最高境界,在实践过程中确实不易,唯有持之以恒的坚持自省,正如不易确实需要一个军规让营地比你来时更干净,在每次修改时心里默念这句,对看到繁琐的代码及时梳理使其变得简洁、清晰、明了,或许仅仅重命名就可以有这样的效果。

阅读全文 »