4.2 未来的职业规划

专业水平

  • 编程语言:c,c++,java,c#,js等。
  • 技术框架:ssm,yii2等。
  • 开发软件:考试系统,留言板
  • 累积代码量:未知。

四、展望未来

4.1 关于《构建之法》的三个问题

  1. 当出现不容易复现但又存在的bug时如何解决?

    在阅读第一章第九页:“

    不可见性( Invisibility )

    ​ 软件工程师能直接看见源代码,但是源代码不是软件本身。软件以机器码的形式高速运行,还可能在几个CPU核上同时运行,工程师是“看”不到自己的源代码如何具体地在用户的机器上被执行的。商用软件出现了错误,工程师可以看到程序在出错的一瞬间留下的一些痕迹(错误代号、大致的目标代码位置、错误信息),但是几乎无法完整重现到底程序出现了什么问题。当工程师回过头来看源代码时,它们还是安静地排列在屏幕上。“,回想起曾经的debug方法,输出查看日志,输出函数调用栈等。又通过网络查询到,例如bug间歇性随机出现时,可分析:

    1:随机性数值导致。

    2:特定的执行过程导致的特殊情况。

    3:野指针导致的不稳定性问题。

    想请问实际工作中出现这种不可见性时,如何解决?

  2. 如何判断”过早优化“?判断一个优化是否为当前必要的?

    ​ 第三章53页,原文:”过早优化:既然软件是“软”的,那它就有很大的可塑性,可以不断改进。放眼望去,一个复杂的软件似乎很多模块都可以变得更好。一个工程师在写程序的时候,经常容易在某一个局部问题上陷进去,花大量时间对其进行优化;无视这个模块对全局的重要性,甚至还不知道这个“全局”是怎么样的。这个毛病早就被归纳为“过早的优化是一切罪恶的根源”。编写程序时遇见这样的情况,事先不容易判断是否需要优化,如果当前不进行优化,最后发现程序进行这样的优化是必须的,而又不得不修改大量代码。这种情况如何判断“过早优化”?

  3. 为什么专家的预测往往是错误的,有钱的企业还需要他们去预测不存在的市场?

    ​ 第16章358页,原文:”如果你是一个独立的创新者,觉得某个技术有戏,你找几个同伴在车库里就开始干起来了(当然失败的几率 很大)。但是成功的企业则不同,它们有钱,要对钱负责,它们想确定它们对未来打的赌是对的——所以它们花大钱请人预测未来。调查显示,在过去的几十年中,专家们对于颠覆性技术的预测往往是错误的─因为颠覆性技术的市场还不存在!例如,专家们在手机出现前预测的手机市场规模与后来实际市场的规模相差一百倍。"

4.2 未来的职业规划

​ 未来三年,继续提升学历,利用好时间,读学习新的技术。争取以后能找到的合适的工作,成为一个合格的软件工程师,在自己的专业领域拥有一定的影响力。

4.3 对于软件工程实践课程的理解和期望

1.理解:该课程重在实践,需要我们利用更多课后时间进行学习编程。
2.希望通过该门课程的学习能够了解并实践现实软件开发具体的流程。
3.希望通过该门课程能够获得团队合作的机会,认识并解决团队合作过程中遇到的一系列问题。

posted @ 2021-02-08 16:02  你是我的玫瑰925  阅读(41)  评论(0)    收藏  举报