技术开发 频道

“代码重用”及开发框架的争执

【IT168 技术文章】

    在我目前所在的公司,我和我的主管就新项目的框架问题发生了些许的争执。我们的主管认为使用现成的框架已经可以非常好的完成目前的需求了。而我认为将底层的框架在自身的手中会有更多的优势。

    事后发现这是两种截然不同的考虑方式。我们的主管一切都是按照实际的需求出发的,他认为“够用就好”,而我个人认为自身搭建的框架能更好的把握整体的灵活性。

    弊端

    最后有关框架的问题转变成了“代码重用”的问题。根据 OOP 的思想,代码重用是非常重要的,至少这可以减轻程序员的工作量。下面,我从他的观点考虑,如果使用自身的框架会有哪些弊端。

    首先是工作量的问题。使用自身开发的框架必然会加大工作量。程序员在开发系统本身的功能的同时还得维护框架。这对于人员分工来说,是一种损耗。

    其次,目前已有的框架已经可以非常好的发挥自身的价值。但根据项目的不同目前现有的框架必然会作相应的调整。但是这个工作量明显会比前者少很多。
   
    再次是其他人员的熟悉问题。一般通用的框架(比如 Zend 框架),稍有经验的 PHP 程序员都或多或少的接触过,上手简单。而如果使用自身的框架,那么如有新人加入团队,他必然首先要面对的是熟悉该框架。

    第四,从系统的稳定性来说。现有的框架可能已经实现过以前已有的项目,稳定性可以得到充分的保证。

    利端

    使用自身的框架从我自己的观点认为利端还是有的。使用自身的框架可以从底层架构起项目,而核心开发人员也了解框架的每一个细节,有充分的调动自由。

    从“代码重用”的观点上看,使用自身开发的框架完全可以做到包含进原有的库等。请注意,我们目前争执的重点是框架,而不是现有的库。

    有关其他人员的熟悉问题,我想这可以通过规范开发文档得到解决的。一个项目下来时不可能没有文档的。对于程序员来说,熟悉任何的代码等都是先熟悉以文档为先的。当使用人员自身碰到无法解决的问题时,原有的框架开发人员可以非常迅速的解决问题。

    最后是更新问题,使用通用的开发框架的更新的主动权完全取决于第三方框架开发团队。而从本人的经验来看,一般项目框架搭建好了以后现有的框架也就“懒于”更新了,这违背于项目整体更新的准则。

    总结

    无论是使用现有的开发框架还是使用自身新的开发框架,我们需要遵循一些准则。
   
    第一,我们要 从具体的项目出发。开发框架并不是开发库,并不是从零开始。框架的设计直接决定以后开发人员的组织情况。第二,要保证程序的稳定性的同时也要保证框架的即时更新。底层的框架无及时的更新,这可以说是代码更新是不完全的。最后,需要从自身团队的开发实力考虑。如果自身的实力有欠缺,那么整体的框架考虑不成熟,可能会有比使用通用框架更大的风险。

    归根到底,这还是属于程序开发角度的问题。我们的主管是现实的,他知道我们开发的是产品,而不是“艺术品”;而我从一个底层的开发人员(请允许我这样认为)说,如果你像我一样有“开发洁癖”,那么就会认为多一行垃圾代码就是损耗。我们的代码是需要 优雅 的。

0
相关文章