
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
设计在90%的情况下都是正确的,或者说是没有大问题的。但就是对剩下的那10%的思量和考虑,才真的是工程师功力见高低的地方。
一
每个公司代码库里最核心的那几个数据模型,或者说那几个Class,直接相关的代码,可能都有成千上万行。有人会说“我觉得这个XX类不就是用来做什么什么的吗?怎么代码量这么大?这么复杂?”
是因为代码质量造成很多垃圾代码吗?不可否认,不同的公司的代码臃肿,或多或少和代码质量有着一定的关系。但是如果细想,你也会发现:当一个公司发展到一定阶段后,其实90%情况下用到的的主业务逻辑,只用到其中10%的代码;而剩下的90%的代码,是为了覆盖和处理另外10%情况下才会用到的非典型业务流程。
当然,这个百分比只是个约数。随着有些业务变得越来越重要,有些代码被重构,有些产品性能被砍掉,这个相对百分比也在动态地变化着。
二
“给别的工程师的系统设计提建议的时候我们在想什么”。
工作中,很少会遇到系统设计从根本上完全不合乎逻辑的情况。而更多的时候,这些设计在90%的情况下都是正确的,或者说是没有大问题的。但就是对剩下的那10%的思量和考虑,才真的是工程师功力见高低的地方。这样的10%包括系统的扩展性和并发的处理;包括对系统某部件失效(尽管失效概率仅为0.001%)的处理;包括业务逻辑里某非典型流程和业务的处理;包括和别的项目组系统交互的考虑;包括一些系统遗留下来的Legacy Issue的处理,包括新老系统切换和兼容的处理……
有时候,那10%,甚至是1%,如果你没有考虑到,系统后期实现和执行的时候遇到才想起来,就真的傻眼了。所以工作中,那些对于在早期设计中总能给你提出这些建议的老司机,看似简单的一句话,那可能省下的,是几个、甚至十几个工程师的生产力。
在达内长沙IT培训看来,市面上有些技术产品之间也是如此。90%的时候,基本功能的实现,相差并不会太大。而正是那10%的细节上的处理,才体现出匠心,让产品可以脱颖而出。
三
我们这个年代的人,一生下来,就有那么多的道理和知识需要学习和掌握。是幸、也是不幸。
我们学到的,不论是专业技术,还是非专业的知识,现在看来,大概用的上的,仅仅有10%,而用不上的,可能高达90%。但是没有人可以完全预见哪些会是我们用得上的10%。所以达内长沙IT培训认为,我们付出100%、200%的努力,就是为了那有用的10%。而正是这些10%,让我们不断积累、不断成长,让我们做成我们想做的事。