从事程序编写工作一段时间,自从入行以来,总会想起这两个词–自由度、模块粒度。自由度,当前框架的封装程度,能够给予程序编写者多大的发挥空间,当框架或者企业编码规范约束了创造力,如何选择?模块粒度,这对类似于软件设计里的构件或者组件功能的大小,市场快速变化、需要不定时更新,如何保证适当的模块粒度,快速组装以实现新的需求?
编程自由度
编程语言发展至今,已经出现了大量的开源或闭源的框架,而且随着企业规模的变大和生存时间的增长,对于代码的封装越多、对程序的编码规定或者规范条款会愈加庞大,给后来者带来方便的同时,也在增加各种条条框框的约束。然而,编写程序是一种脑力活动,需要创新和活力。如此,如何平衡规范约束与创新活力之间的关系,即能够给予程序编写人员的编程自由度,值得架构师思考!!!
封装程度
服务、框架、模块、方法等的封装往往会给编程者带来便利,特别是在代码复用性、简易性、容易阅读性方面。但是封装的越彻底,其功能越可能单一,局限性也就越可能大,随之而来的,其使用范围就可能越小,面对快速变化的需求,就会越不适用。然而,不经过封装,则代码重复、逻辑繁杂,就越可能出现。如何平衡这一度量,进行适当程度的封装,即实现代码复用,又能广泛应用于各种业务逻辑场景,值得思考!!!
约束规范
约束规范与创新创造力的关系,很多领域都会涉及,越严苛的约束规范会愈加限制创新创造,而创新创造必然会在一定程度上打破约束规范。软件编程领域也不例外,但有其特性,约束规范可令整个企业的程序风格统一、容易管理、容易上手、容易维护,但是会限制程序编写者的自由,脑力创造愈发散、愈活跃,就往往忽略甚至打破约束规范。在约束规范和创造力之间如何做出平衡,或许不只是不穿统一工装能够达到的,企业的规章制度、程序编写规范的制定,亟需程序编写者参与!!!