天天看点

软工第一次作业-热身

项目 内容
这个作业属于哪个课程 2020春北航计算机学院软件工程(罗杰 任健)
这个作业的要求在哪里 第一次个人作业
我在这个课程的目标是 锻炼软件开发技术以及团队合作能力
这个作业在哪个具体方面帮助我实现目标 小组多职位分工合作

第一部分:结缘计算机

  • 你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢?(必答)

    第一个问题,选择计算机专业主要是处于对这个专业的喜爱,相比于数理化等学科,计算机可以通过编程的方式实现各式各样的功能,可以实实在在的地让我感受到我的工作与付出产生了实际的作用,在学习过程中能够获得满足感。

    我真正接触计算机编程是从大学开始的,我出生河北,受当地教育习惯的影响,大学前的十几年时光里我并没有机会接触到编程这件事情,对编程也没有一个明确的概念,幸运的是我在入学第一天收获了一名信息奥赛的舍友,他应该算是我真正意义上的启蒙老师,从他那里学到了很多关于算法方面的知识,也在一定程度上帮我打实了基础。

    曾仕强:喜欢一个人是说不出理由的,所有能说出理由的都是短暂的

    突然想到了这句话,感觉十分地适用,直到现在其实我也不能明确地说出为什么喜欢这门专业,但可以明确的是,如果让我再选一次,我依然会选择计算机专业,这种乐趣难以用言语来表达。

    和学习其他科目一样,在学习计算机专业知识的时候我也遇到过很多难题,不同的是我在计算机专业问题上表现地韧性十足,很少说有放弃或者退缩,也许就是冥冥之中注定的吧。

    第二个问题,关于条件这个词,我把它理解为先天条件和后天条件来说。

    首先是先天条件,通俗解释为是不是聪明有悟性,这个标准不好定夺,跟他人比起来也十分困难,我选择跟自己进行比较,相对于其它大多数学科,我认为我在学习计算机方面是最省力的,是最能够投入其中的,也是相对最愿意去做的,所以姑且可以说这门专业对我来说是个不错的选择。

    然后是后天条件,我把它解释为后天的努力。我是从大学才开始接触计算机编程世界的,有一说一,相见恨晚,感觉自己如果早些接触的话,应该基础可以打得更加扎实,日后的学习也可以更加快速顺利一些,也是因为意识到这个问题,在大学期间我觉得我还是付出了相当的努力的,至少在现在看来我对这前两年多的时间不算后悔。

    第三个问题,上面的诸多博主,不少都是从小就接触了计算机并投入其中,这一点我是没法比的,我也曾十分纠结于这种事情而十分苦恼,不过,正所谓悟已往之不谏,知来者之可追,能做的也只能是从现在开始努力追赶。

    回首走过的这两年多的时间,感觉成长还是很多的,两年的时间里,不仅学习了诸多数理基础知识和计算机专业基础知识,也渐渐明确了自己喜欢,或者说擅长的方向,找到了一门自己十分心爱的语言,并在它身上投入相当的时间,现在看来真的有些许收获了。

    虽然起步晚于云云大佬,但是我认为我对于个人能力方向的发现并不算晚,并且也投入了大量的时间去深入钻研,相信有一天可以和业界大牛们比肩。

  • 你热爱这一专业吗?你对计算机的热爱是怎样的?仅仅是口头的吗?

    答案是肯定的,我热爱这门专业。

    我对计算机的热爱更多地表现在我愿意为这件事情付出时间,并且希望成为该领域的佼佼者。我也爱这个领域的干净纯粹,技术之上,有一说一,实力就是话语权。

    不知道为什么,我常将一个人的技术实力比作一个国家的国防实力,技术好,在业界就是话语权,就是技术威信力,在团队中就是技术凝聚力。在啃硬骨头的时候,也常常会想,要成为团队的领导者,就必须要懂别人不懂的,会别人不会的,要有能力,所以再难的问题必须克服。

    我从小性格就比较奇怪,一般身边的同学会互相比较,每个人有每个人的竞争对手,有自己的目标,而我很少以别人为对手,取而代之的是我常常会自己捏造一个比自己厉害很多的人成为我的对手,每当我向“这个人”靠近,“他”便再次和我拉开距离,就这样,从小学到现在,我始终没有让自己满意过,有时甚至有些过分,会憎恨自己,为什么一直无法超越那个人,其实那个人就是自己+1,即使一生学习也无法超越,但却依然不断前进。

    正因如此,自从开始学习计算机,我始终对标业界的最高技术水准,我希望以一个专业的从业人员的身份来要求自己,得益于此,现在也多多少少积累了一些工业经验。

第二部分:在计算机系里学习

  • 你对你的大学生活有什么想要吐槽的地方吗?你理想的大学教育应该是什么样子的?跟学校给你的有什么区别?比较你在中国大学的经历,你的老师和学校能做到和国外那样吗?如果不能,请分析一下为什么。(必答)

    可能受个人爱好的影响,个人感觉在大学中学到的实践相关的内容过少,项目能力的培养不够。

    不过虽然如此,我觉得大学教育还就应该是这样的,毕竟大学更多地是一个理论和学术学习的地方,而更多的实践与项目相关的内容还是靠自己的。

    说到国内和国外的教育,这方面我觉得还是存在一定的差异的,首先,就整体而言,国内的科研水平和国外水平还是有一定的差距的,很多著名的教材等都是来自国外,而国内产出的优质教材属实偏少。

    其次,感觉国内的教育还是偏于普及教育,即使分了专业也还是偏向于普及教育,教的大而全,但某个方向的专精式教育较少,我知道这部分也可以后延到研究生阶段进行,但是我们不得不思考的是,为什么信息奥赛生在大学的表现要平均高于同龄普通学生呢,归根结底还是接触的早。

    此外,刘帅在回忆考研中提到自己有很多死记硬背的情况,短期有效,但长期看来贻害无穷,这点我认为在国内教育是很普遍的,每个专业都有很多刷分型玩家,哪个课分高选哪个,哪个好过选哪个,丝毫不看这门课是否和自己的目标与方向相关或一致,这点我认为也是十分可怕的一件事情。不过这也和长期以来的评价机制相关,也很难在一朝一夕就改了。

  • 迄今为止,你写了多少代码,描述你做的最复杂的软件项目/作业。(必答)

    多少代码这个问题真是难以回答,毕竟每天都在写,写了多少,恐怕只有键盘知道。

    不过最复杂的项目还是可以说一说的,这里的最复杂我理解为内容最复杂而不是技术最复杂,应该是上学期实现的c0编译器了。

    首先,我个人主要是在Java平台做开发的,对C++语言的特性不是很熟悉,很多面向对象的编程思想在C++上不知道怎么实现或者实现地不怎么漂亮,整个地表现就是代码比较屎,因为编译器开发本身就是一个十分繁琐的事情,涉及很多细节和重复模式,重复模式中又有些不同之处,而且在迭代式开发的环境下,为未来预留开发余地也是十分麻烦的事情,所以感觉这应该是做过最繁琐最复杂的工作了。

    这算是做完的,因为自己能力不足,有很多项目胎死腹中,其复杂度应该远超上面说到的项目了。

    应该是去年过年的时候跟父亲夸下海口,说要给他们公司做一套办公软件,当时觉得自己已经有了半年的积累,应该没有问题了。事实是残酷的,那个项目最终无果,独立开发苦于技术栈的严重匮乏,这个项目并没有完全落地,虽然完成了核心功能,但也是半半残残。

第三部分:未来规划

  • 对于你未来在IT行业的发展,你有什么样的梦想或者未来想从事什么样的工作?你准备怎样来规划你技术道路,职业道路和社会道路?(必答)

    最理想的职业就是想做全栈,可以作为一个开发小组中最核心的人,负责整个项目的架构设计和开发落地。

    技术道路,肯定是要坚持学习,选择了这个行业就是选择了终身学习,也是像陈皓说的,要拼命看书,技术扎实才能站得住脚。

    职业道路,抛开国内现实的话,肯定是希望可以一直接触技术,从事和技术相关的工作,但是从国内现实角度出发地话,肯定随着年纪和阅历地增长要逐渐走向管理岗位

    社会道路,关于社会道路的话,还是希望可以早些接触实习,接触实际生产相关的内容,认识更多业内的大牛,帮助自己的提高

    Java天下第一(非引战),将来要做的话肯定是做Java研发,因为大二OO的契机接触了这门语言,直到现在也依然被这门语言的魅力吸引。优秀的设计模式、设计精妙的虚拟机、庞大的社区和开发者们、丰富而优雅的语言特性,这些无一不在吸引我投身其中。

    然而眼下还有很多相关的技术需要学习,未来也同样有很多需要学习的技术,不断学习是必要的,希望未来的自己可以依然保持这份赤子之心。

  • 你们马上就要面临实习了,你打算在企业内实习还是在实验室实习?

    企业实习,前面提到了个人十分喜欢实际生产相关的内容,所以肯定会选择企业实习的。感觉和跟人的性格也有关系,确实是有些静不下心来看论文(英语不行),也更喜欢一些能够马上看得见摸得着的东西,所以会更加倾向于企业实习。

    很同意老师讲的做中学,很多优秀的前辈也告诉我,无论学习什么新东西,都一定要亲手实践,一边实践一边学习,才能记得住,领悟其中的精妙之处。这点我深有体会,记得大一时热衷于“黑书”,就是机械工业出版社出版的那些计算机科学书籍,十分地难懂,常常一章学习好几天,然后一周过后,所剩无几,当时绞尽脑汁理解的东西,又变得十分模糊,后来意识到是没有加以实践,单纯的阅读导致的,动手带来的理解与记忆真的无可替代。

    也正因如此,未来实习也会选择去企业实习,感觉在企业实习,去面对看得见的挑战才更加符合我的性格,和朋友同事一起创造能够改善人们生活质量的东西,想想便让人热血沸腾。