参加了两天的面向对象设计培训课程,感触最大的不是学到了多少新的设计方法,而是思想上的转变。
平时我们在做需求过程中,需求方看重的是功能有没有做到,能不能按时上线;老板看重的是你做的有多快,上线后有没有故障,这是对你考核的标准;我们程序员能够控制的就是代码的质量。正是有了这些外界压力,我们往往为了赶进度,系统设计上较少,甚至“0设计”,走自己的“敏捷路线”,代码写的一团糟。写完以后,自己看了都想吐。但没办法,自我安慰一下,时间不够,需求方催的紧,写的再好老板也看不到等等理由,给自己的心理找了一个平衡。正是这样,我们能够控制的质量就被理所当然的牺牲了。
另外一种情况,现在很多企业都有遗留系统,很多需求都是在遗留系统上开发。小需求一般时间上比较紧,即使我们遇到了烂代码,比如一大堆if嵌套,我们还是往烂代码上继续加条件。没办法,这样速度最快,最省事。如果我们对原有代码进行重构,改坏了,你的责任;改好了,老板也看不到你的功劳,分内之事。这就是“破窗效应”。我们也就睁一只眼闭一只眼继续制造垃圾代码。
直到有一天,你实在受不了这个系统,看到就想吐,哥崩溃了,哥不干了,哥跳槽了。到了一家新公司,一看到代码,想死的心都有了,哪个傻X写的代码,刚出虎口,又入狼窝。
于是,你终于发现一个真理:出来混,迟早要还的。在前面一家公司做的孽,在这家公司得到报应了。
难道这个恶性循环一定不能被打破吗?
或许,接到一个项目,总会有这样那样的困难,时间不够,资源不够,等等。但这一切,都不是你制造烂代码的自我安慰理由。很多公司现状就是这样,制度和考核标准就是这样,我们或许无法改变现状,但是,我们可以改变自己,可以提高自己的水平,对自己写的每一行代码问心无愧。
从现在开始,从我做起,从每一行代码做起,彻底告别坏味道代码。
分享到:
相关推荐
面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它基于“对象”的概念,通过...这份面向对象培训资料将带领你一步步走进面向对象的世界,从理论到实践,全面掌握面向对象编程的核心知识。
面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它基于“对象”的概念,通过封装、继承和多态等核心特性,实现了代码的复用和模块化,极大地提高了软件开发的效率和可维护性。...
Python 是一种面向对象的解释型语言,面向对象是其非常重要的特性。《Python 3面向对象编程》通过Python 的数据结构、语法、设计模式,从简单到复杂,从初级到高级,一步步通过例子来展示了Python 中面向对象的概念...
详细介绍了面向对象的分析与设计,全面探讨了面向对象概念、软件开发过程、UML和多层技术。本书使用最常见的技术和方法,通过一个贯穿全书的案例分析,对面向对象的软件开发过程和使用面向对象技术的编程过程进行了...
面向对象概要设计模板 面向对象设计是一种软件设计方法,它强调对象之间的交互和协作,以达到软件系统的高内聚、低耦合的目标。在软件设计中,面向对象设计方法可以帮助开发者更好地理解系统的需求和行为,从而提高...
面向对象软件工程是一种现代的软件开发方法,它基于对象的概念,强调模块化、可重用性和灵活性。本教程“实用面向对象软件工程教程”旨在深入探讨面向对象分析(OOA)和面向对象设计(OOD)的关键原则,帮助开发者...
在LabVIEW中实现面向对象编程(Object-Oriented Programming, OOP)可以提升代码的可重用性、可维护性和组织性。本章将深入探讨LabVIEW中的面向对象编程框架及其应用。 面向对象编程的核心概念包括类(Class)、...
借助于漫画展示的形式,面向对象的简、由类创建一个对象的方法、类的编写与对象的创建、类的构造函数、类的方法、修饰符、Java中的封装/继承/多态等特征、Java中的线程、用Java创建一个小世界、多线程共享数据,以及...
面向对象编程是计算机语言的一种先进的编程模式,在工业控制系统的PLC程序中也可以采用这种设计思想,虽然我们无法实现面向对象的很多特点如“继承”,甚至于它根本就不具备面向对象编程语言的特点,但面向对象编程...
面向对象分析(Object-Oriented Analysis,OOA)是软件工程中的一种重要方法,它着重于从实际问题出发,抽象出问题域内的对象及其相互关系,以构建问题域模型。在“软件工程-张海藩编著--面向对象分析实验报告”中,...
js面向对象编程培训课件,自己培训用的,自己做的,非网上下载的
由于提供的文件内容不包含实际的文本信息,而是重复的URL链接,因此无法从该部分提供有关面向对象分析与设计(OOAD)的知识点。但是,我将尽可能详细地介绍面向对象分析与设计的相关知识点,以满足您的需求。 面向...
面向过程、面向对象、面向组件、面向服务软件架构的分析与比较 软件开发历程与架构演进 软件开发从汇编语言、过程式语言、面向对象、面向组件发展到面向服务,这一进程不仅反映了编程技术的不断进步,更是软件工程...
【标题】"【传智播客.Net培训—C#面向对象基础】01面向对象简介1"所涉及的知识点主要集中在C#编程语言的基础部分,特别是面向对象编程(Object-Oriented Programming,简称OOP)的基本概念。面向对象是现代软件开发...
本书内容由浅入深,紧密结合实际,利用大量典型实例,详细讲解Java面向对象的编程思想、编程语法和设计模式,介绍常见Java类库的用法,总结优化 Java编程的各种宝贵经验,深入阐述Java虚拟机执行Java程序的原理。...
《面向对象软件工程》 作者:Stephen.R.Schach 学校:(美)范德比尔特大学 书名原名:Objected-Oriented Software Engineering 目录: 第一部分 面向对象软件工程简介 第一章 面向对象软件工程的范畴 第二章 ...
面向对象的软件工程是现代软件开发中的核心方法论,它基于面向对象编程(Object-Oriented ...提供的“面向对象的软件工程-20111106.pdf”文件应包含这些领域的详细讲解,对开发经理进行培训时极具参考价值。
面向对象的编程(OOP)是面向对象软件开发过程中的第三个阶段,是指将 OOD 的系统设计模型用面向对象的程序设计语言予以具体实现,具体而言,OOP 是实现在面向对象设计模型中的各个对象所规定的任务。面向对象的编程...