zoukankan      html  css  js  c++  java
  • 【先验知识归纳】没有银弹——伴随软件工程的长期问题

    本文参考:没有银弹

    '没有银弹'的含义:

    没有任何一种单纯的技术或管理上的进步,能够独立地承诺在十年内大幅度地提高生产率、可靠性和简洁性。

    软件工程中的根本问题和次要问题

    根本任务-设计:打造构成抽象软件实体的复杂概念结构
    次要任务-实现:使用编程语言表达这些抽象实体,在空间和时间限制内将它们映射成机器语言

    没有银弹更多的是指设计上的困难(也就是架构师的工作)

    根本问题为什么那么困难?

    • 抽象与复杂性:‘抽象方法’的存在使复杂度成为了软件的根本属性。做好抽象后,我们很难再使用某一个模型或方法来进一步降低软件的复杂度。
    • 对维护的需求:软件需要紧跟需求,持续不断地维护和变更

    解决这些问题的一些尝试

    • 少开发,多复用:从业务层面来看,就是多购买/复用现成的优秀软件,而不是自己去从头开发。因为软件的复制成本远低于开发成本。
    • 快速原型,增量开发,敏捷开发
    • 重视设计:培养卓越的设计人员可以大大降低软件的开发成本。
  • 相关阅读:
    安卓移动端css3动画卡顿解决方法
    PDO方法实现增删改查
    NPOI 操作笔记
    基于emoji 国际通用表情在web上的输入与显示的记录
    restful 规范
    set与map
    ES6解构赋值
    scss的基本用法
    学习vue的第一二三四五天
    React Hooks --- useState 和 useEffect
  • 原文地址:https://www.cnblogs.com/lokvahkoor/p/10500748.html
Copyright © 2011-2022 走看看