• 构建之法阅读笔记02


    继续阅读了《构建之法》这本书的后续章节,

    软件工程包括了开发,运营,维护软件的过程中的很多技术,做法,习惯和思想。软件工程把这些相关的技术和过程统一到一个体系中,叫“软件开发流程”软件开发流程的目的是为了提高软件开发,运营,维护的效率,以及提升用户的满意度,软件的可靠性和可维护性。

    其中软件开发流程不单指团队开发流程,因为软件团队是由个人组成的。在团队的大流程中,是每个人具体的个人在做开发,测试等工作。把这些人的工作有序的组织起来,即为团队的流程。“有序”并不是“无争论”,而是能把冲突的积极方面释放出来,避免消极方面。软件团队和团队中的工程师就像一个球队,每个人都有不同的分工,频繁的交流,事前的计划,事后的分析总结,当然也有冲突。在软件系统中的每一个模块都是由团队中的不同单个成员(IC)开发维护的。

    IC(以开发人员为例)在团队中的流程大致是

    1 通过交流,实验,快速原型等方法,理解问题,需求或任务。

    2 提出多种解决办法并估计工作量

    3 与相关角色交流解决问题的提案,决定一个可行的方案

    4 执行 把想法转化我代码,验证方案可行性

    5 和团队其他角色合作,在测试环境中测试实现方案,修复遇到的问题,或者考虑其他方案

    6 在解决方案发布之后对其负责

    那么对于一个初级的软件工程师 ,这本书中提到了以下成长过程:

    1 积累软件相关的知识,提高技术技能  2 积累问题领域(如一些场景某一行业需求)的知识和经验  3对通用的软件设计思想和软件工程思想的理解  4 提升职业技能(自我管理能力,表达交流能力,与人合作的能力)5  实际成果 (参与的项目)也是最重要的评价标准。而软件工程师职业发展的道路也有很多条,每个人都有自己的选择,但硬实力的需要是毋庸置疑的。

    关于结对开发

    代码的规范性这是非常重要的,因为这不是你自己一个人的代码,你的代码需要与其他人的代码交互,这样能保证程序开发的规范性,也有利于提高工作效率,减少不必要的麻烦。就像秦始皇召集天下各地工匠来建造一座城楼,因为各地工匠带的测量工具都不一样,必须要统一测量单位才可继续进行工作。

    结对开发顾名思义,两个人共同在一台机器上完成一个工作,一人打代码,另一人充当“领航员”的位置,对此工作进行指引分析,两人位置可以轮换,这需要两个人进行磨合,交流,合理的交流方式是非常重要的。结对开发就是两个人互相交流,思考,思维的碰撞,互相影响合作完成的一种模式。如果运用得当结对编程可以获得更高的投入产出比。

    对于团队开发    团队开发有多种模式,举几个比较典型的例子

    一窝蜂模式:开始阶段,混沌,没有分工 一群人想到什么就写什么较为混乱

    主治医师模式:有一个人干主要工作,其他人从各种角度支持这个人(在学生阶段,往往变成一个人干活,其他人打酱油)

    明星模式:主治医师模式的进一步发展,有一个人的工作远远超过了团队其他人的总和。

    爵士乐模式:强调个性化的表达,强有力的互动对变化的内容给与有创造力的回应,比较理想的模式。

    功能团队模式:具备不同能力的同事们平等协作,共同完成一个的功能。也是最后的模式,各司其职。

  • 相关阅读:
    基于modelforms组件实现注册功能
    Django中间件添加白名单
    微信公众号推广工具
    Mysql数据库密码忘记的解决办法
    Redis 高可用及分片集群,说了你也不懂
    SQLAlchemyの增删改查
    metaclass 了解一下
    伊戈尔·赛索耶夫的旗帜
    一些容易搞混的问题
    林纳斯·托瓦兹的旗帜
  • 原文地址:https://www.cnblogs.com/qq1793033075/p/11059474.html
Copyright © 2020-2023  润新知