React实战-历数一个混乱React项目的罪状

最近看到有篇文章讲述的了注释的做用,核心思想是:代码就是一切,好的代码能告诉你全部你想知道的,好的代码不须要注释。对于此类见解,我只能说部分认同,代码毕竟是深刻到了细节,只有设计说明与规范的代码相结合,才能尽量减小注释(weixin公众号:react实战)。javascript

所谓好的代码无非是简单、易懂。软件项目的众多设计中很重要的一点是代码的可读性、可维护性和可扩展性。软件工程学来源于物理工程学,但软件与盖房子存在着本质的区别,软件逻辑复杂,软件开发过程以及维护过程当中会对原有代码就行不断的修改,而且修改的人不必定是原始代码的编写者,即便是同一我的,10天以后也会忘却,因此软件结构、命名、注释、文档说明都显得很是重要。java

以前无心间误入一个澳洲的初创校园票务互联网公司,尽管公司已经运行了几年,但当我看到他们的代码时,真感受回到了大学时代,也真明白了互联网公司追求的是尽快完成功能,以金钱换时间。曾试图对项目结构进行调整,无奈别人要的只是完成功能,这种弱智的体力活天然是做罢了,一拍两散,可是项目的混乱程度能够给人以借鉴。react

介入两天我曾写过一个建议,指出项目的低价,惹得负责人不高兴了,哎,自知此作法不会讨得好,但做为一个从事软件工程研究十多年的码农,实在不想回到学生时代的编码方式了。编程

暂列几条罪状吧:jsp

1.函数大小随意,多则上千行,少则几十行。函数式编程

2.虽然采用React,其实是用的React,编的是jsp或是asp,React做为javascript的革新之做,竟然被这帮人整回了原始社会,更别谈什么组件化、FLUX、Redux、函数式编程等等了。函数

3.业务模块混乱:目录文件随意,彻底看我的喜爱,你根本不知道一个业务到底由哪几个文件完成,你得跟着代码一行一行的去看。组件化

4.无层次结构:整个项目没有分层的概念,UI,数据访问,逻辑全在一个文件中。测试

5.无文档说明:没有任何文档说明,全部需求只是来源于一我的口述,几张PPT。业务逻辑先后台没有一我的说的清楚,难道大家没有据说过UML图吗?来张图不是什么都清楚了?!编码

6.没有编程规范:命名、逻辑结构、实现方式彻底看开发者心情。可是新入者只有吐血的份了。

7.更别说测试什么的吧。

这样的项目也算让我见识了什么叫新瓶装旧酒。人人常说中越反击战是用现代的武器打了一场古代的战争,这个项目就是采用了React,干的倒是原始javascript的事。