欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

一次软件编程技术的探讨之旅

程序员文章站 2022-05-06 12:05:41
...
软件研发的轮回

我们现在正在经历软件研发的轮回,一方面我们在维护着越来越糟糕的软件,不断对自己说,下次开发新的软件时,一定要好好设计,规范编码;但另一方面,当我们真的开始一个新的项目时,却举足无措、千头万绪,不知道该怎样去分析与设计,一切只有靠经验,以及那些不可捉摸的灵光一现。最后,当软件经历了几轮需求变更和维护以后,我们被打回了原形,甚至那最后的一块遮羞布都不曾保留。软件重新回到了那种糟糕与难于维护的状态,多么令人沮丧啊。

我们为什么总是在这样的软件轮回中挣扎呢?回答这个问题,我自认为比别人体会更深,因为在过去的十年时间里,我读了更多别人的代码,维护了更多别人开发的系统,可谓是阅人无数。我总是在分析这些设计的问题,优化这些糟糕的系统,使它们越来越易于维护。总体来说,我感到,我们太缺乏对软件设计理论的研究了。

其实我想说,中国的软件之所以总是不能提高,那是因为中国的程序员都在关注那些新技术,海侃那些新概念,海搜那些新框架。试问,有多少人不知道spring、hibernate开源框架?有多少人没有聊过ISO、云计算、BI?还有那些一版一版的JDK,各大公司的新产品发布……然而,我们那些基本的软件设计编程理论却常常被人淡漠,甚至是不屑一顾。在被我面试过的无数人里,很少有人能说得清楚什么是工厂模式(仅有的模糊认识都来源于大学时代的教科书),甚至从来没有写过一个工厂。什么是开放-封闭原则?什么是单一职责?怎样运用建模技术来分析和规划我们的系统?

难怪有网友感慨,开发程序多年,其实就是在拼凑各种开源框架,成了开源框架的组装工人,这就是我们的业态。而所谓的系统架构师,就是特别能搜、特别能拼、特别能侃的那一类人。还有那些刚刚踏出校门的同学们,满腔热情地投身IT洪流中,却被那些新概念搞得头昏脑胀、无所是从。没人告诉他们应该怎样去编程,怎样才能编好程,编写优秀的代码。

这就是软件研发轮回的本质:我们太缺乏对编程理论的关注,关注的没有学明白,想问的却找不到老师。所以,我说,我们大家静心坐下来,进行一次软件编程技术的探讨之旅吧。嗯,我想,就从最基本的面向对象开始吧。

一次软件编程技术的探讨之旅
重新理解一切皆对象
重新审视代码复用

(续)