提问回顾

链接

  http://www.cnblogs.com/514DNA/p/7596472.html

 关于五个问题

  1.第一章32页,原文:“有人认为,“中文编程”,是解决程序员编程效率的一个秘密武器,请问它是一个“银弹”么?

     我的回答:首先,它不是一个银弹,因为中文编程不具有普适性(如国际合作项目)

          其次,它在特定情况下确实可以大幅提高编程效率

          特定情况下是指:

           1.团队中所有成员或今后可能加入的成员均以中文为母语

           2.有固定的文字编码格式(如都用gbk编码)

          在此基础上,规定好变量命名和编码风格,我认为仍然可以大幅提高程序员的编程效率

 2.对新技术保守的态度带来的弊端有多大?

     我的回答:上完一学期的软件工程,我认为新技术不是绝对的好,比如说我们团队用的cocos creator就非常坑

          但是只是对新技术的可用性持保守态度,我认为没有问题

          但是对新技术的学习持保守态度,我认为会存在一些弊端,这样就容易出现我用旧技术花30天做好的项目,有人花10天学习新技术,花10天做好

          这样会带来效率的降低,因此,仍要对新技术的学习持积极态度,毕竟会用了才知道他好不好

  

 3.思维方式对合作的影响比较大这个观点合理不合理,我上述观察的现象在公司内是否也存在?

      我的回答:在公司内怎么样我还是不清楚。

           但是思维方式对合作的影响我认为,不大

           合作编程,大家都是带着任务来,按照一定的规范去书写代码,思维方式只会影响个人的代码架构,而不会影响和他人模块间的合作

           就算是结对编程,大家的思维也都集中在代码上,个体差异并不大。

  4.新特性是否需要在语言更新时就花时间进行学习。

      我的回答:还是cocos creator带来的教训,语言的新特性也算是新技术的一种,我认为不需要语言更新时就花时间学习

           而是出现了在这个语言基础上新的编程范式,也就是说有些新技术比较成熟了,才需要去学习(有时对语言特性的不理解也会产生BUG)

  5.大一禁止使用goto是因为我们刚接触编程,goto虽然很方便,但是用goto来回跳会导致逻辑混乱

    现在允许使用goto,是因为我们已经接触和编写了一定量的代码,对程序逻辑有一定的把控能力,因此可以使用goto来让逻辑更清晰

    我这样理解合理不合理?

    我认为合理,我编译课设就用了大量goto来做错误处理,结构依然清晰。

  这五个问题,我全都是在这一学期的实践中碰壁或者带来惊喜得到的答案,果然软件工程是一门实践性很强的学问。

  对原来的问题都明白了,新的问题我想提一点。

  软件工程中可不可以有类似于流水线式的工作模式(我们开发时就是这样做的)?

    所谓流水线,就是这样,假设有A,B,C,D,E五个层层递进的模块

    团队分为如下步骤开发

    1.设计A

    2 开发A,设计B

    3.测试A,开发B,设计C

    4.测试B,开发C,设计D

    这样直到测试完E,那么就可以发布软件

   这种模式在公司中的软件工程项目中可不可行?

请问你们在项目的 需求/设计/实现/测试/发布/维护阶段(一共6 个阶段)中都学到了什么“知识点”,每个阶段只要说明一个知识点就可以。

学到的知识点:

  需求阶段:分析用户行为之后再得到需求非常重要(我们的游戏没有人玩orz)

  设计阶段:做决定要果断,优柔寡断会严重拖慢工程进度(血的教训)

  实现阶段:人员分配合理非常重要,不然容易把事情集中到一个人身上

  测试阶段:一定要选择方便测试的框架,框架选不好测试会变得非常困难

  发布阶段:一定要趁早实现产品,这样才有充足的时间去发布,去收集用户反馈

  维护阶段:收集用户反馈再去解决问题,比测试人员在那硬测更有效率

    

       

原文地址:https://www.cnblogs.com/514DNA/p/8247734.html