软件工程网络15个人阅读作业2——提问题
提出问题
Question1.关于创新是否一定来自领域专家,创新者的角色以及如何创新的问题。
~开始做这次博客的时候也不知道怎么开始,大体的浏览了一下整本构建之法,这本书的知识架构,广度都非常的丰满,非常值得我们细细揣摩和学习。翻到第十六章IT的创新的时候感觉很有感触,“一定是领域的专家才可以创新吗?”“创新者就是冒险家吗?”。小时候我妈跟我说过一句话映像很深,她说让我一定要把现有的知识学好学扎实了才能创建出的新的高度,当时对我的影响非常深。
如果没有相关的专业知识,要有一个让世人接受的好创新其实并不是那么容易我觉得,首先你并不了解该行业,其次就算你创新了,也许你创造出来的东西已经是别人创造过的了呢!
书本16.1.5最后一段的一个问题我觉得确实引人深思,我个人的看法是领域的专家在深入研究的时候会陷入自己大脑的关于“专业化”的思维方式,被已有的知识和经验所”误导“,就像是局中人和局外人那样的感觉,而领域外的创新者往往会看到比专家更多的方面,也许能看到技术应用的繁荣未来呢!
我的问题是如果能在学习专业的过程中发现前人未能发现的一个道路是不是更好,结合学习的专业知识和其他已有知识是否更能开发创造力,也能更加的加深对领域的认知。
Question2.关于软件工程编程的提升。
~第一章开篇就讲到了软件的组成,程序的组成,程序=数据结构和算法,由于我的数据结构当时学的并不好,现在准备考研才开始重新拾起,重新学的过程中就会觉得数据结构真的很多程序里起到中流砥柱的作用,以前编写代码总是想不到用什么东西来完成填充算法,写出的代码总是感觉像一幢摇摇欲坠的古楼一样,数据结构能够让程序更加饱满有结构。
我当时选修并没有选算法,那如果我想要在编程方面更上一层楼,是否需要再找一本关于算法的书学习?还是说可以通过更多的编程经验来提升自己就够了?
Question3.关于结对编程两者的身份以及可能存在的问题。
~第四章构建之法很详细的讲述了如何让自己的代码能够规范化,让队友看的更加清晰明了,细述了规范结对编程的步骤,在结对编程中两人要相互学习和引导,有种方式叫做驾驶员和领航员的身份进行结对,驾驶员设计,编码,驾驶好这架飞机;领航员审阅,执行程序,解决问题。然后不断轮换角色。
这样确实非常严谨和细致,做出的程序在反复的审阅下完全能够做到“滴水不漏”,但是这样的方式是否也需要大量的时间磨合?性格或者编程思维差异太大?如果两个人的存在较大的的技术差距,那是不是会使编程效率成非正比的下降呢?
Question4.关于软件工程需求分析,软件开发应用市场问题。
~第八章讲到关于需求分析,就是现在我们本科时候编写一些小程序都会犯的错误,经常就是看题目要求,先编出一个大体化的程序,然后再一点一点的改进,进入一些新功能,经常就是最后变出的算法总是只能满足部分需求,有时候忽略了最基本的要求,往往就是编出一个自己都觉得无奈的一大堆代码,确实要成为程序员并不是那么容易的,向我这样的往往被贬为编程爱好者。
这一章作者结合了多方面的因素来讨论需求分析,已经远远超出了我的见识了,我只能提个低级点的问题了。。。做一个程序或者一个软件是来满足广大的普通民众的需求会不会容易过时而需要不断的提高性能以至于创造力跟不上需求而被淘汰?或者容易被竞争公司抄袭而失去市场?做一些关于某些领域内的软件是不是更加稳定?
Question5.关于本大三菜鸟对于未来就业情况的问题。
~最后一个问题想解决一下对于我们本科学生教育的问题,上次去大拇哥参观的时候讲解者提出了我们本科学的东西都太“老”的观点,如果去某公司实训几个月就可以掌握该方面的技术,那么本科学的知识确实大多数都无足轻重,那么我们大学的教育是不是确实没有follow上时代的步伐?甚至本科这节车厢已经离车队越来越远了?