• 作业要求 2018091-2 博客作业


    此作业的要求参见[https://edu.cnblogs.com/campus/nenu/2018fall/homework/2101]

    1. 建博客

    博客园申请账号,博客链接为https://www.cnblogs.com/wuyiyao694/

    2. 博客作业

    (1)回想一下你曾经对计算机专业的畅想

             当初你是如何做出选择计算机专业的决定的?
        你认为过去接触到的课程是否符合你对计算机专业的期待,为什么?
        你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗?

    进入计算机专业是很巧合的事情,高考后报考的时候一开始并没有觉得自己会录取上本科的那间学校,所以填报志愿的时候填上了觉得很热门的五个专业,其中包括计算机专业,之后也没有报很多希望在上面。结果出来的时候发现被计算机专业录取了,没有多少喜悦,更多的是担忧,因为我在这之前的人生里都没怎么用过电脑,计算机专业是学什么的,我一点概念都没有。我时常和自己说,既来之则安之。所以,虽然很忐忑,也从来没有想过换一个专业。在学校学C语言、学高数、学操作系统、数据结构等等,从来都是被动的接受学校的安排,也并不知道这些课程设计的背后意义。由于能力不足,班里大神做更多课程之外的活动、比赛的时候,默默无闻的我在为了完成大作业挣扎。学生经常会说上某某课以后有什么用呢,为作业抓光头发的时候我也曾这样抱怨。从因为编程实践没法通过觉得不能毕业的恐惧,后来借鉴大神的作业,到最后可以自己独立完成。我慢慢的向前爬行,也认真坚持的学到了作为计算机学生必备的基础知识(虽然这种龟速也许很碍事?)。曾经一个老师和我们说,不要以为自己毕业了什么都没学到,和其他专业的人相比,你已经知道了很多东西,明白了该如何用计算机学生该有的思维思考问题(虽然我目前做的还并不好)。不过我在收获了这些知识的同时,还增加了对计算机这个专业越来越多的喜欢。所以我一边为了越来越少的头发惆怅,一边成为了计算机的研究生,痛并快乐着。

    (2)考取研究生,对照前人们走过的路和描述未来发展,现在的你自我感觉你已经具备的专业知识、技能、能力有哪些?离成为一个合格的计算机学生,在专业知识、技能、能力上还差距哪些?

    本科四年下来,学到的是计算机基础知识,虽然也学了C语言、操作系统、数据库等等专业知识,但是觉得都是比较表层的,知道了计算机的一些领域,但还谈不上深入熟悉和了解。可能更多的是培养了计算机的思维(可以叫做计算机基本素养?),和对某一个领域想要多了解的兴趣。

    距离成为一名合格的计算机学生,我还欠缺很多,首先是动手实践的能力。我的编程能力很弱,虽然也曾经因为能够独立完成某项作业而沾沾自喜过。但是读到邹欣老师《构建之法》中提到的对魔方熟悉的几个级别这个例子的时候,我意识到自己可能只是那些对口诀只知其然的选手。。只是停留在很底层的解决问题的层级上,缺少整体知识体系的掌握。

    (3)每天都是一个人生选择的十字路口,学术研究、工程项目、社会实践 (?) ,不同的选择有不同的努力方向。对照以上你阅读的前人们的经历,你的选择是什么?在这种选择下,你认为你相比其他同学来说有何优势,有何劣势?针对你的选择,你给自己的本学期的规划是什么?

    对照前人的经历,我的选择更倾向于工程项目。和其他同学相比,我几乎不占任何优势,本科时没有参加过什么比赛之类的经历,虽然有写过一些大作业,但也几乎是为了完成作业而完成。尤其是在编程方面欠缺了很多。所以本学期我的规划,除了要认真上完软件工程这门课,真正完成一个真实的项目。还要在编程方面重新进行学习,解决底层问题。同时,英语也想重新学习,做到慢慢在读论文的时候不会觉得困难。平时多向师兄师姐学习,早日做到开组会的时候不会一头雾水。

    (4)你对这门课的期待是什么?你打算平均每周拿出多少个小时用在这门课上

    一开始上这门课的时候觉得节奏追的很紧,每个星期的作业虽然老师严格的把控着不会引起过多工作量的平衡度,但是每一个作业提交的时间节点都产生了无形的心理压力。以及我深刻意识到这门课动手实践的地方很多,非常不擅长的方面让我有更多担心,不想成为小组里被某个鲁滨逊一枪“崩”死的星期五。。。

    但是转念想来,我们只有勇于面对不擅长的东西,让自己不是永远处于安逸区,才能够成长进步。并且像老师所说他在这门课中是我们的老板,也许现在这种紧迫感也是以后走入工作要经历的吧。。通过这门课除了能够真正体会如何写出有时间用户的软件,同时也能更多的了解软件开发的团队是如何工作。在阅读了这本书的一部分之后,我也慢慢的对我自己有了更多的思考,相信通过这门课能发现身上更多的问题,并对成为合格的计算机学生有更多的思考。

    为了完成这个星期的作业,我到现在累计用了14个小时,可能看书比较花费更多的时间。因此我认为每周在这门课上我可能需要用至少12小时来完成老师制定的任务。

    3. 博客作业

    通读《构建之法》,发布随笔1篇,要求列出5个问题,可以是读后不理解的,或者读后反对的。要有观点、有证据或分析。字数不是直接的考核标准,但是要求长到能把观点表述清楚。

    1. 在第六章中提到的敏捷流程问题,在执行的第三步中有提到过“有任何需求的改变都留待冲刺结束后再讨论”,这种断绝与外界联系的方式虽然是为了平衡交流与集中注意力之间的关系,但是如果在开发是过程中有需要中途更改的功能,中途打断修改和最后推翻重做,这两者要付出的代价该如何权衡。

    2. 在第十章中提到功能说明书在写好的一瞬间就开始过时了,我不是很理解这是什么意思。是因为软件的功能会有增加,或是可能产生的副作用会有所改善的原因吗。

    3. 第十三章中说到BUG可以分解为症状、程序错误、根本原因。后面接连有提到两个例子解释这个概念,其中一个例子说程序错误是“代码在输入情况下访问了非法地址”,而根本原因是“代码对于id1==id2的情况没有做正确判断”。我的疑问是,我觉得错误产生的根本原因往往是程序设计不合理引起,所以程序错误和根本原因之间还有什么差别呢。

    4. 在第14章节中提到过,项目的可见性是非常差的,这种事不仅发生在小规模、业余项目上,在大规模的专业团队中也时常出现。我上网查找资料有看到,利用分段生命周期模型可以提高软件开发过程的可见性,不知道是否还有其他方法可以很好的解决这个问题?

    5. 在第四章中两人合作中有说到代码复审的形式有三种,其中自我复审的好处在于,用同伴复审的要求自己不一定最有效,也许每个人对与功能实现的方法存在不同的理解和标准,这与同伴、团队互相复审是否存在了矛盾?

    4. 博客作业

    请给出你超出朋侪的特殊技能,并告诉我们,你如何通过何种努力、花了多久获得这样的成就。

    超过周围人的优点,我常常觉得自己没有什么出众的能力,我不够聪明,但索性还肯坚持,但是这似乎又不能算作是超人的长处,因为这是大多数人普遍拥有的品质。我没学过什么才艺,身体也没什么特异功能,所以平凡的很难找到突出特点。如果一定要想出一点来,我也许比较善于观察,作为社交恐惧很严重的一个人,认识新朋友,想要相互了解会因为不敢说话变的很困难。所以默默的坐在旁边的时候,就多听一些周围人和别人说的话,多看一下大家在做什么,猜测一下喜好,收集一些周围人的信息,这样慢慢认识了解大家。(或许因为这点看娱乐圈八卦挖出来的信息也挺多的吧。。。)

    5. 博客作业

    采访本课程往届同学(含外校和毕业生). 现代软件工程这门课已经上了好几年了,以前有很多学生做过团队项目(说不定包括本校的学生),请你们找一个以前的团队采访一下:

    采访了曾经选修过软件工程的大学同学X,课程要求设计出一个作品,X同学及其小组成员设计实现了一个名为教学评分系统的网站出来。

    该系统是为老师用于录入上课学生成绩进行评分设计出来的,遗憾的是,该系统的真实用户为0,提供价值也为0.该系统随着课程结束也随即被废弃,因此诞生至今都没有为真实用户提供过服务。

    这个项目不能给我们团队继续开发,源代码几乎不可能找到了。。。

    谈到项目开发的经验教训,同学X长叹口气“血泪的教训是找几个靠谱的队友”,回想当时对这个系统的完成过程,小组五个人,只有两个人在真的做系统,两外三个人抢着分摊了写报告的任务,并且完成了两个被同学X推翻重写的报告。以及在完成一个项目的时候,要注重整体框架的设计,以及实现讨论好细节问题,并且尽可能的提早开始,不要拖到时间所剩无几。。

    6. 博客作业

    你目前的代码量是多少?

    你认为优秀的和一般的计算机专业学生,(根据你的理想选择以下两问中的一个)为了有资格入职软件公司/互联网公司,需要多少代码量?从事高校教学科研工作呢?

    你计划在本课程结束时,完成多少代码量?这些代码量分布在整个学期中,每周应完成多少代码量?

    目前代码量估计有10000行左右,本科时候也有过做web、操作系统、数据库、编译原理的大作业的经历。

    我认为一名合格的计算机毕业生,为有资格进入软件公司工作,至少需要30000行代码量。

    我计划在本学期结束时,完成5000行的代码量。这些代码量分布在整个学期中,每周要完成300行左右。

    7. 博客作业

    以下两篇博客必读,并务必写一些心得:

    (1)你为何要来上课并且认真参与 [http://www.scalerstalk.com/816-attention]

    (2)你在大学中体验到了哪种师生关系 [http://www.cnblogs.com/xinz/archive/2011/05/16/2048044.html]

    1)关于上课认真听讲:

    我们常常开玩笑,一天一门课,一周一学期。平时上课,老师只念ppt,无聊,自学;早上起不来,太困,逃课。上了大学以后上课认真听讲似乎不是必须遵守的规定,逃课上课玩手机是常态。

    我记得本科时候上过一门国学原典,老师是个看起来就很有学问的中年男人,听说他的书法受很多同学喜欢。作为计算机的学生大多不会认真听讲语文历史类的课程,除非是源于兴趣。每节课全班只有一个男生,坐在第一排和老师互动,认真听老师讲古文。我记得老师在学期最后一节课时送给这个男生一副亲手写的对联,他说这才是一个大学生该有的样子。我那时候听到这话曾为我在课上写过的模电作业感到羞愧,但也只是一瞬。惭愧的是直至大学毕业,我也没真的明了大学生该有的样子指的是什么,也或许遗憾的在这大学四年都没有成为那老师口中所说的真正的大学生。

    也许那源于老师对文人学者的理解我可能永远不会明白,但是想来,大体不管是文科还是理科对于上课听讲这件事的看法都是一样的吧。尊重一门课程,尊重讲课的老师是一个学生应该基本保有的品质。以及,时刻保持对未知的领域的谦虚态度,面对自己不了解的知识时保持学习的热情,不论是对待怎样的人和事都会有所收获。

    (2)关于如何上这门课

    阅读了材料二,我有如下感想:

    学生和老师之间的关系类似于健身教练与学员。是否想要学到知识,重点在于学生是否自愿,并且想要学好这门课。每个人要根据自己的实际情况制定目标,制定如何学习的计划,合理的利用已有的资源。

    要学会课前预习,不做需要手把手教学的伸手党,除了老师准备的内容,还可以自己额外搜集更多资料,这样就能做课后接受讲课内容的2%的学生中的一个。

    把压力当成朋友,我总觉得一个人能力的高低不在于他掌握了多少知识,(虽然这真的也很厉害!)而是在于,面对压力、面对新的环境是否能够尽快适应,占据主导地位,不是被任务追着走,而是决定任务如何完成。当然也有学习能力,不过我觉得似乎先调整好心态很重要。

  • 相关阅读:
    Linux Kernel USB 子系统(1)
    折腾 Gnome3
    2011年06月08日
    xelatex 果然好用
    倍受打击
    长到40岁学到的41件事
    autocompletemode + flyspellmode
    The Linux Staging Tree, what it is and is not.
    如何选择开源许可证?
    Use emacs & Graphviz to plot data structure
  • 原文地址:https://www.cnblogs.com/wuyiyao694/p/9660765.html
Copyright © 2020-2023  润新知