一旦接触上层,便与选择结下了不解之缘,或许这种选择无处不在,而我们存在的意义就是决定选择。
写代码时,在通用与效率间选择,而到了架构,却又徘徊在了自主与复用之间。
需要一个框架,但尚没有成熟的拿来用,那么选择来了。
复用,即修改,似乎是最省时省力的。但是综合考虑一下,似乎很多问题都可能降低效率。
第一、复用一个框架,需要先熟悉它的思想,由此而产生的学习曲线可能会很大。
第二、熟悉一个框架的同时,思想会不觉的被这个框架束缚,不利于自身发展。
第三、不是定制的框架基本比较难以适应当前系统,由此产生的调整所占用的资源会很大。
第四、版权问题。
那么自主开发呢,当然也有其弱势。
第一、通用性差,基本只适用于当前系统。
第二、设计高度可能不能达到较高层次,可扩展性差
第三、时间效率问题。由于需要从零开始,那么对于时间及其效率等不可知因素的把握要求较高。
我们似乎掉到一个怪圈,是的,如果软件工程将这个问题解决了,我们就没有事情可做了。
对于选择,我想应该是仁者见仁智者见智,在此不敢妄下结论。只是简单的提一下自己的看法。
使用已存在的框架思想,快速开发自主产权且适宜当前系统的框架,并设计松散的接口模式,以便可以在自主系统和复用系统间灵活切换。