zoukankan      html  css  js  c++  java
  • 組合的藝術

    众所周知,在软件开发过程中,每名软件工程师都要掌握大量的编程知识,比如如何访问数据库,如何控制线程的推进顺序等,掌握这些知识

    是顺利进行开发的必要条件。然而,仅有这些就够了吗?仅仅掌握了这些编程知识就足以开发出优秀的软件?

    在我看来,开发者还需要掌握“组合”的艺术,你必须知道在某个完成特定功能的程序中,你可以组合哪些基本的构造块,而这些基本的构造

    块又以何种方式优雅地组合在一起,构成一个有机的整体。

    基本的构造块不仅仅指可以直接拿来复用的软件组件(或者是SOA中的Service),还包括可以在不同项目间复用的典型代码(比如如何将一个

    double类型的数字保留两位小数的典型代码段)、技术解决方案(比如各种设计模式)或软件架构(比如成熟的多层分布式组件化系统框架、

    基于管道的系统架构)等等。

    如何开发出好的软件,不取决于你基于什么平台,使用什么技术,甚至也不完全取决于你的技术能力和对技术内幕的深刻把握,而取决于你是

    如何组合这些基本构造块的。

    在某项软件技术的学习过程中,你实际上完成的是“形成软件构造块”的任务,而在软件项目实际开发过程中,你实际上完成的是“使用现有

    软件构造块”拼“七巧板”的过程。

    自学的过程,就是“形成软件构造块”的过程。

    开发的过程,就是“将软件构造块”组合为完成某一特定功能的程序的过程。

    软件技术教学的过程,就是将“软件构造块”组合为真实软件的过程展示给学生的过程,先让学生进行模仿,然后他就学会了创造。

    重要的是学会方法,而非掌握知识。

  • 相关阅读:
    Python中的分支条件结构
    Python中常用的数据类型转换
    Python中的运算符
    Python中的输入和输出
    信息收集之zoomeye
    信息收集之censys
    linux权限管理
    linux软件安装管理
    Linux网络管理
    磁盘管理与用户管理
  • 原文地址:https://www.cnblogs.com/hnxxcxg/p/2940779.html
Copyright © 2011-2022 走看看