zoukankan      html  css  js  c++  java
  • 初读《代码大全》

    对于《代码大全》这本书我还没有仔细的读,更别说是看完了,我就重点看了一下第三、四章,主要讲软件工程的前期准备,其次就是我大致浏览了一下后面的内容。第一感觉就是作者写得相当好,插入了不少段子,比喻形象,生动诙谐。但是没有深入的研读难以给出有意义的问题,想问题快把我想得头都要爆炸了,最终还挤出了几个问题。虽然本书主要讲的是软件构建过程,下面的问题主要集中在软件架构相关的领域。
    1字符集总是让人捉摸不透,那么常用的编程语言都分别支持哪些字符集,如何用这种语言编写制定字符集的程序?字符串类型和字符集类型有何联系?程序中的中文和英文甚至俄文都是使用什么字符串类型?
    2如何开发出漂亮的用户界面,比如360安全卫士那样的软件?有没有类似的模板可以直接使用?这是我非常关心的问题,因为常年编写控制台的应用程序对于界面编程完全不懂。
    3常用的软件架构有哪些?有没有固定的套路可以直接拿来使用?
    4对于大部分的软件开发人员来说,架构师都是一个令人向往的角色。毫无疑问要成为一个软件架构师需要阅历无数的软件工程,那么一个合格的软件架构师是如何成长起来的?大概需要多少年?
    5一个实际的项目是怎么进行前期准备的,大概需要多长时间?真的有必要像书上所述的那样准备吗?就算是我们平时写的一个小项目也很难做到书上的各种要求,很多类都是在实现的过程中才不断明确下来的。

    《代码大全》 摘记——三思而后行:准备工作之架构部分
    1如果对某个类在系统中的角色没有一个清晰的构思,那么编写这个类就是一件令人灰心丧气的工作。
    2在开始编码、测试、调试之前进行需求分析和架构设计才能保证关键的方面都做正确。
    3程序员是软件食物链的最后一环。架构师吃掉需求,设计师吃掉架构,而程序员则消化设计。
    4在构建活动开始之前清除一个错误,那么返回的成本仅仅是在开发过程的最后阶段(在系统的测试期间或发布之后)做同样事情的十分之一到百分之一。
    5调试连同相应的返工在典型的软件开发周期中会占据大约50%的时间。
    6架构应该详细定义web页面格式、GUI、命令行接口等主要元素。
    7命令行界面便于单元级别和子系统级别的软件测试。
    8程序中有高达90%的代码是用来处理异常情况、进行错误处理、或做笔记工作。

  • 相关阅读:
    [转载] VsCode中使用Emmet神器快速编写HTML代码
    Hexo 博客部署到私有云服务器
    钉钉小程序通过 Canvas 将页面生成图片并保存到本地相册
    2021你应该了解的前端知识体系
    JavaScript 中的模块化
    vue中click事件方法不加括号则会将事件作为入参
    css:左右元素没对齐,调整子元素的vertical-align属性
    js通过宽高特征对图片进行分类
    配置服务器上的git仓库
    js获取当前设备信息
  • 原文地址:https://www.cnblogs.com/yxr1993/p/4027851.html
Copyright © 2011-2022 走看看