`
gdpglc
  • 浏览: 95129 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

为什么要进行程序设计?

阅读更多
注意:这里的程序设计特指针对代码的设计活动。

我遇到很多人。
能严格约束自己,在开发前进行严谨的程序设计活动的人,很少。

之前我一直坚持写代码前做类协作设计,后来我基本放弃了。只做必要的接口设计、数据库设计。基本上按此要求团队开发。开发的大多功能经过测试和修改后,是能满足用户要求的。

但是,今天我突然想到,系统里有一个庞然大物,一个常用的功能(cmdb 导入/导出),里边的代码可以说是,混乱开发的代表,现在又不得不进行修改,我不由得担心,这么改下去,得多长时间,才能运行稳定。

代码我看过,巨大的方法、混乱的方法划分,一个逻辑竟然会跨越几层方法调用,怪异的数据结构...。这些都是代码无上层合理设计的结果。最终导致维护异常困难。于是我想通了一件事。

我们这些搞应用开发的,刚入行就是搞搞增删改查,问题规模都很小。设计工作就显得多余。一群这样成长起来的程序员,搞出来的软件,混乱程度和问题规模是成正比的。也许恰好,大多应用开发的问题规模,使得靠本能、延迟时间、降低质量勉强能覆盖住。所以就看到大量的开发人员的开发是可以没有设计方法的。

而对于问题规模巨大的功能,如果想开发好、想长期维护,进行程序设计将是必要条件。


程序设计作用?
改善代码质量
应对问题规模巨大的功能。

问题规模小的功能,是不是必须有好的代码质量?
不是。因此不进行程序设计软件仍旧可以做出来,但是开发效率会有差别、代码质量差也会引起问题。

问题规模小的功能,不进行程序设计,是不是代码质量就不好?
不是。对于熟练掌握设计方法的程序员,问题规模较小的程序,直接写代码,质量也很好。但我觉得这是对那些经历过程序设计的人来说的。

要不要强制要求程序设计?
不要。
一是对于小规模问题,的确不必要。
二是大部分人没有程序设计意识。推行这个会付出很大成本,但可能作用不大。











分享到:
评论

相关推荐

    体系结构描述语言与程序设计语言有什么区别?

    在软件开发领域,体系结构描述语言(Architecture Description Languages, ADLs)和程序设计语言(Programming Languages, PLs)是两种不同的工具,它们各自服务于不同的目的。了解它们的区别有助于我们更好地理解和...

    C++Builder 6程序设计教程.PDF

    《c++ builder 6程序设计教程(第二版)》系统地介绍了在windows环境下利用c++ builder进行应用程序开发的方法,主要内容包括c++ builder常用组件的使用、mdi多文档应用程序设计、文件操作与文件管理、数据库应用程序...

    Java程序设计习题集下载

     趣味性:习题基本上覆盖了程序员在编写Java程序时经常出现的问题Java程序设计知识要点,各习题也列出其测试要点,从而方便教师从中挑选或改编考题以及方便学生进行实战模拟练习或测试,同时也可以为SCJP考试作准备...

    张玉生《C语言程序设计》双色版 C语言程序设计理论教材习题参考答案.pdf

    张玉生编写的《C语言程序设计》双色版是一本针对初学者的C语言理论教材,它包括了C语言的基础知识、语法结构、数据类型、控制结构、函数、指针、数组、字符串等核心技术内容。该教材不仅适合自学,同时也适合作为...

    并行程序设计导论课后答案_2.7z

    并行程序设计是计算机科学中的一个重要领域,它涉及到如何利用多处理器或多核心系统来同时执行多个任务或同一任务的不同部分,以提高计算效率和性能。本主题主要关注并行编程的基础概念、方法和技术,以及与C语言...

    MFC.Windows程序设计(第2版)修订版 高清pdf带源码

    《MFC Windows程序设计》(第2版)(修订版)的作者,Jeff Prosise,用其无与伦比的技巧向读者讲述了MFC程序设计中的基本概念和主要技术再次阐释了在32位Windows平台上进行了快速的面向对象开发的完美方法。《MFC ...

    网络程序设计期末试卷考题

    首先,我们要理解网络程序设计的基础知识。这包括 OSI 模型和 TCP/IP 模型,它们是描述网络通信过程的两种主要框架。OSI 模型分为七层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。而 TCP/...

    谭浩强C语言程序设计第五版详细答案

    在《C程序设计(第五版)学习辅导》中,介绍了使用Visual Studio进行C程序开发的步骤,包括创建项目、编写源程序、编译、调试和运行。在Visual Studio 2022中,这个过程类似,涉及新建项目、添加源文件、编辑代码、...

    Java Web程序设计教程.pdf

    标题《Java Web程序设计教程》与描述《Java Web程序设计教程 Java Web程序设计教程》中的知识点主要涵盖了Java Web应用开发领域的核心技术与实践。本书作为21世纪高等学校计算机规划教材,由范立锋与林果园共同编著...

    C++程序设计(谭浩强)PDF扫描版第3卷(共3卷)

    C++程序设计 扫描版,谭浩强编著,清华大学出版社,2004年6月第一版。 注意:其他两卷在本网页下面我的其它资源里可以找到 内容简介 C++是近年来国内外广泛使用的现代计算机语言,它既支持面向过程的程序设计,也...

    C语言程序设计(第四版) 谭浩强

    《C语言程序设计(第四版)》是谭浩强教授的经典著作,这本教材深入浅出地介绍了C语言的基础知识和编程技巧。全书分为多个章节,每章都围绕一个核心主题,旨在帮助读者逐步掌握C语言的精髓。 第一章“程序设计和...

    C++程序设计原理与实践(基础+进阶版) 第二版

    C++之父编写,我在学习C++过程中...以基本概念和基本技术为重点:与传统的C++教材相比,《C++程序设计原理与实践》对基本概念和基本技术的介绍更为深入。这会为你编写有用、正确、易维护和有效的代码打下坚实的基础。

    《C#面向对象程序设计》源代码(CS)

    本书以面向对象的软件工程思想为主线,细致深入地讲解了C#语言面向对象程序设计的方法和技巧,内容涵盖面向对象的基本概念、基于接口的设计、泛型程序设计方法、Windows和Web应用开发,以及数据库访问技术。...

    头歌python程序设计答案.rar

    《头歌Python程序设计答案》是一份针对Python编程学习者的参考资料,主要涵盖了Python语言的基础概念、语法结构以及常见问题的解答。这份文档可能是对《头歌Python程序设计》这本书的配套练习题或测试题的解决方案,...

    谭浩强C程序设计完整ppt和程序(第五版)内附解压密码

    第五版的《谭浩强C程序设计》在原有的基础上进行了更新和完善,以适应现代编程环境的变化和教学需求。 本资源包含的“谭浩强C程序设计完整ppt”是基于教材内容制作的教学课件,通常用于课堂教学或自我学习。PPT可能...

    汇编语言程序设计_基于ARM体系结构

    **汇编语言程序设计_基于ARM体系结构** 在IT领域,汇编语言是计算机科学的基础之一,它是一种低级编程语言,与机器语言密切相关。汇编语言为程序员提供了与特定处理器架构紧密相连的指令集,使得程序员可以直接控制...

    Inter汇编语言程序设计(第五版)

    从给定的信息来看,主要关注的是“Inter汇编语言程序设计(第五版)”这一书籍。这本教材是学习Intel架构下汇编语言程序设计的重要资料,尤其对于那些希望深入了解低级编程、计算机体系结构以及操作系统原理的学习者...

    CCF中学生计算机程序设计-入门篇

    综上所述,本文件提供的信息重点在于介绍一本名为“CCF中学生计算机程序设计-入门篇”的电子资源,强调其作为备课准备的价值,并提供了与之相关的出版和联络信息。同时也突出了纸质书籍与电子版在学习效果上的差异,...

Global site tag (gtag.js) - Google Analytics