学习ASE高级软件工程的第一周

1. 介绍自己



Hello,大家好久不见!我叫许嘉祺,是中国科学技术大学新大四学生,很高兴能来到MSRA实习。我平时大部分时间都花在学习上了,因此我的青春没有暗恋和校花,只有de不完的bug和掉在地上的头发。在如此大的压力之下,我会选择玩游戏来放松自己。这也算是我的爱好和特长吧。平时主要玩王者荣耀和和平精英。王者荣耀一般单排上星耀,操作不算太骚,意识不算太好,手速不算太快,英雄池不算太深。和平精英打得比较多,习惯五指操作,闪身枪提前抢拜佛枪,跳狙甩狙瞬狙,假雷烟夹雷瞬爆雷,绕后游击拉枪线,样样精通。近战刚枪猛如虎,远程压枪稳如狗。六倍AK,八倍妹控,抖一抖算我输。当然,我深深的知道,我们这个年纪最主要的任务是学习,在该奋斗的年纪,一定不能选择安逸,因此我只会在双休日偶尔花一两个小时游戏娱乐一下,这也是我自控力的一个表现吧。

2. 现状、经验和计划



(1)我是通信与电子工程系的,我之所以选择它,是因为他是一个万金油专业。上能写代码debug,下能搭电路焊电线,既提升了逻辑思维能力,也提高了自己的动手能力。

技能调查表:


技能


目前水平


希望在课后达到的水平


计划


程序理解


4


8


多读程序


模块化设计


5


8


多写模块


模块实现


4


8


多写模块


单元测试


3


8


学习一些单元的测试技巧与方法


个人源码管理


3


8


学会github等管理工具

(2)(a)这篇博客写的很有道理,我非常赞同。现在的大学生,即使是C9高校的同学,上课的态度也并不是十分端正,上课迟到、后排睡觉,甚至翘课的都不在少数,更别提什么认真听课了。而我恰恰相反,我认为上课是获取知识的一个重要渠道,因为上课有老师给你讲解知识点,可以立刻帮你解决一些你不懂的问题,是知识获取效率最高的时间段,所以我大学阶段从没敲过任何一次课,包括助教讲的习题课。我认为,上课的态度很大程度上决定了你的学习情况。

(b)我觉得大学师生关系是一种互惠关系。学生能从老师那里学习很多知识,但是同样学生也能教老师很多知识,尤其是我们学生学习了很多课程,融会贯通了文科、理科、工科的众多知识点,能更好的将他们结合起来,这是老师可能不具备的。

如果布置的作业对我来说有些困难,我会选择“向老师和同学请教,花更多时间,把作业全部完成”。因为作业是一个温故知新的重要环节,必须自己完成!

(c)参考引用是为了学习,这是承认他人知识产权,保护他人利益的。而剽窃则是精神的盗窃者,是一种不良的道德和法律行为。

(3)我会选择继续从事科研。我觉得我的优势就是喜欢探究,发掘未知的领域,由探索精神。规划就是要不断努力,花出比别人更多的时间精力去做好它。

(4)这门课的学习计划就是好好学习,认真完成老师给的任务,学有余力则再做一些额外的工作。总代码量大约在七八万行左右吧,没有具体统计过。为了有资格入职一流的软件公司/互联网/人工智能公司,所需的代码量可能在几百万行左右吧。如果可以,我还是挺喜欢当助教的,不仅能认识很多优秀的同学,同时自己也能学到很多知识。

我每周大约可以花15-20小时在本课程上面。同时为了奋发向上,我选择比以前课要多很多,直到达到目标为止。在本课程结束要达到二十万行代码,一周大约要写五六千行左右。

(5)我参考了(c)把每天胡思乱想的东西记在一个笔记本上,作为思维快照,并常常翻回去自省,看看过去和现在的变化。这样的习惯呢?

我觉得这是一个很有趣的习惯。很多事情的灵感往往是在一瞬间激发出来的,如果能抓住它并记录下来,也许当时不会有什么想法。但是当过了很久,随着经验慢慢积累以后,我会发现那时的一个想法也许对现在的困扰我的难题有着极大的帮助,或许可以帮助我解决难题。

3.提有质量的问题



(1)第八章:需求分析

看了本章节,我知道了需求分析十分重要,往往决定了中后期任务的复杂度与难度,但是在我们这门课或者目前的编程中似乎并不太包含这一环节,因此我觉得需求分析似乎在当前阶段并不是重点,算法、代码实现、效率才是我们更应该关注的。

(2)第二章:个人技术与流程

在这一章中我看到了“效能分析”与“先用抽样的方法找到效能瓶颈所在,然后对特定的模块用代码注入的方式进行详细分析。”这两个内容,比较好奇抽样方法是什么,如何找到效能瓶颈?

(3)第十二章:用户体验

我觉得用户体验是非常重要的,我们程序员应当尽可能为用户考虑,设计出友好、健壮性强的代码和界面,但是我认为我们程序员也是人,有时为了让用户的体验从可以接受变到非常舒爽,往往要增加很多代码量和思维量,这无疑给开发者增加了不少难题,因此我们是否应该选择一个折衷的方案,而不是一味考虑用户体验?

(4)第四章:两人合作

其中有这么一段话:

首先代码复审中发现的问题,绝大多数都可以由开发者独立发现。从这一意义上说,复审者是在替开发者干开发者本应该干的事。

我有一点疑问,为什么开发者不做这个事情,而是需要麻烦复审者来做?这不是白白浪费了时间精力吗?

(5)第十六章:IT行业的创新

这里提到了“两张披萨饼”原则,认为团队有效人数在8-12人左右。我并不是非常赞成这一观点。一个团队的人数应该由实际任务大小决定,而不是生搬硬套“披萨饼原则”,一定要控制人数。

4.认真写反馈



为了改进教学,收集资料,老师在教学过程中会要求学生填写对课程的反馈, 你会怎么做?

我选 C. 认真按时填写, 我认为帮助改进教学也是作为学生的责任

原文地址:https://www.cnblogs.com/jqxu-msra/p/11478782.html

时间: 2024-08-29 23:14:09

学习ASE高级软件工程的第一周的相关文章

学习进度条01(第一周)

编写代码所花的总时间:330min 编写代码总行数:651行 1.加减乘除算式输出小程序:140min 318行 2.javaweb实验作业1:160min 296行 3.自己测试学习:30min 37行 了解到的知识点: 1.javascript语言实现:时间的实时显示 2.javascript语言实现:图片的自动切换 3.javascript语言实现:tab页的制作 4.<body>内的doucument.write函数 5.<body>内可直接放置javascript语言 6

Python学习笔记——基础篇【第一周】(未完待续)

学习Python目的: 1.学完之后,可以做开发运维监控.自动化软件.聊天软件.BBS.博客和网站. 2.投资自己,结识更多的朋友,变更更优秀的人 Python第一周笔记 Python语言介绍 python创始人Guido,荷兰人,Python源自他所挚爱的电视剧Monty Python's Flying Circus.Python编译器使用C语言实现,能够调用C语言库文件.1991年初,Python发布了第一个公开发行版. Python版本: Python1.0   1994年 python2

现代软件工程_第一周练习_第11题

我们不是在真空里谈软件工程, 软件要运行在硬件芯片上面, 下面看看一个计算机芯片的发展历史: http://perspectives.mvdirona.com/2014/09/august-21-2014-computer-history-museum-presentation/ http://mvdirona.com/jrh/TalksAndPapers/DileepBhandarkarAmazingJourneyFromMainframesToSmartphones.pdf https://

现代软件工程_第一周练习_第1题_万世想

第一题是要求实现一个自动生成小学生加减乘除四则运算题目的程序.后面可以将它扩展为网站或安卓应用或IOS应用或win10应用. 我的思路比较简单.环境是Java JDK1.8:IDE为Intellij社区版. 首先,我们不考虑有括号的情形,那么符号只有+.-.*./四种:涉及到的数包含两种:整数或分数. 1. 我们注意到,一个运算式中,总有“数的个数比运算符多1”的规则.于是,我们自然地想到创建一个固定长度为n的数组number存放数字,每个数都能随机生成,通过maxOfNumber变量控制式子中

ASE高级软件工程 第一次结对编程

问题定义 问题的定义 ? 在邹欣老师的博客有游戏介绍:创新的时机 – 黄金点游戏 ? N个玩家,每人写一个或两个0~100之间的有理数 (不包括0或100),提交给服务器,服务器在当前回合结束时算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值.提交的数字最靠近G(取绝对值)的玩家得到N分,离G最远的玩家得到-2分,其他玩家得0分.只有一个玩家参与时不得分. 问题的难点 很难知道其他人的策略,只能通过黄金点的历史值进行一定的估计,如何利用信息是一个难点. 首先从游戏规则上来看

现代软件工程_第一周练习_第9题_团队采访

我们对上一届一个学长进行了采访,由于不在本地,就进行了电话采访. 问:学长你们当时开发项目叫什么名称? 答:我们做的是一个团购业务的APP开发,叫做“团吗” 问:那咱们那个团队当时有多少人员? 答:刚开始的时候有6个人,一段时间后又加入了两个 问:你们开发的软件当时有多少用户,能给用户多少价值?那个APP现在还有人用吗? 答:当时由于力量比较小,找到的商家比较少,所以用户比较少,大约只有一百人左右吧.当时我们的设想就是能让用户在我们平台上能够很方便快捷的购买到自己的想要的业务,能提供比其他平台更

现代软件工程_第一周练习_第5题

你所在的学校有计算机科学专业和软件工程专业么?相关专业的教学计划和毕业出路有什么不同?采访这些不同专业的老师/同学. 如果是计算机系,问老师: 你发现了计算机科学的什么客观规律? 如果是软件工程,问老师:你构建了什么样的软件?你发现了工程的什么规律? 阅读本书有关软件工程和计算机科学的区别的内容,并看其他文章,谈谈你的看法. 文章举例:http://www.drdobbs.com/architectureand-design/software-engineering-computer-scien

现代软件工程_第一周练习_第5题_万世想

这道题的题目是: 你所在的学校有计算机科学专业和软件工程专业么?相关专业的教学计划和毕业出路有什么不同?阅读有关软件工程和计算机科学的区别的文章,谈谈你的看法. 我来自天津大学计算机科学技术学院,计算机科学技术专业.选修的这门课是现代软件工程,由于之前本科我跟随导师做过一些软件工程的学术研究,因此很喜欢这门课.同时也倾慕邹欣老师许久.嗯,微博粉丝,哈哈哈.因此,学校是有计算机科学技术专业以及软件工程专业. 那么,这两个的区别是什么呢?我的理解概括为:计科重理论,软工重技能.从排课情况来看,计科大

现代软件工程_第一周练习_第6题

“刷课机”这类软件能帮助使用软件的人按时快捷的选上他们想选课程,或者帮助他们忙着其他事情的同时就能买得到自己想要的火车票等等,但与此同时也会使那些没有使用这种软件的与自己喜爱的课程失之交臂,或者让那些耗费了好长时间一直盯着买票系统的人们也没能买到适合自己的车票…… 如果我们每个人都使用这类软件来达到我们的目的,大量的请求必定会使服务器崩溃,最终适得其反,并且会对系统所有者造成损失,并且这类软件的出现在很大程度上打破了原来公平竞争的现象,也可以说是使用这类软件的人是“作弊”行为,所以说这类软件不符