文章目录

  • 1.前言
  • 2.以我自身的经历聊一聊为什么要学习软件工程?为什么要学习相关理论课程?
    • (1)我的经历
    • (2)我的感受
  • 3.专栏专业回答为什么要学习理论课程和软件工程等知识?
    • (1)没有学习软件工程,没有从系统层面整体去思考,会遇到的问题是什么?
    • (2)学习软件工程能学到什么?
    • (3)除了软件工程之外,我们还需要学习那些理论知识?

1.前言

  • 正所谓万事开头难啊!文章开篇也是如此啊!学习亦是如此。话不多说咱们直接进入正题叭!
  • 首先聊聊我是谁叭?我是一名软件工程专业的大学在校生,现在是2020年三月份,这学期学校开设了软件工程这门专业课,说实话这门课老师给我的感觉就是很枯燥,很理论,上课的风格我不太喜欢,我相信很多在校大学生都会有这种感觉吧。
  • 我自己是知道的,这门课程之重要性,·至于重要性我会结合我在校的经历·,在下面为什么学习软件工程标题内容中提及。
  • 所以我不能放弃,于是我另辟蹊径找了别的材料来学习这门课程,我觉得这门课程是理论与实践相结合的。
  • 无意间我发现了极客时间这个平台,这里我没有打广告的意思啊,我只是聊聊我的心路历程。极客时间里面有很多课程,刚好有软件工程之美这门专栏,由宝玉老师教学,我看了宝玉老师的简介和开篇词,让我感觉到选择这门软件工程之美专栏,我想我肯定能学到有用的东西,至少讲课的方式和描述我很喜欢,我相信我的选择没错。
  • 从今天开始了,我会将我在专栏中的学到的知识,整理成笔记,里面也会有我自己的一些思考与心得,希望可以在自己学习的同时,也能将自己学到的知识与见解分享给互联网的大家,还请各位前辈多多指教。晚辈这厢有礼了!

2.以我自身的经历聊一聊为什么要学习软件工程?为什么要学习相关理论课程?

  • 首先我先聊一聊我在校学习软件开发的一些小经历叭。希望在校的大学生,处在迷茫的大学生,感觉学校的理论课程无用的大学生能够早日找到自己的方向,重视理论课程的学习,同时应用层技术齐头并进。不要浪费大学美好的时光,真的,当我们走向社会,就再也没有这么多空闲的时间和舒适的环境来学习这些理论课程,钻研技术了,没有生活的柴米油盐,安安静静学习就好。这些理论课程究其主要。至于如何重要,且看下文。
  • 接下来正式开始叭。虽然我现在大二,阅历尚且不够,但是我还是经历了一些软件网站的流程和开发的。

(1)我的经历

  • 我先说一下我现在都学了些啥叭,HTML+CSSS+JavaScript、PHP、thinkphp5、SQL、MYSQL、云服务器宝塔部署项目、WordPress、C、C++、Java、Git、phpstudy、postman、Navicat、简单的原型交互设计软件。这些技术说实在的我自己感觉我学的并不精,因为任何一门技术深入进去就是汪洋大海,我也只是会用而已,用其开发出我想要的简单的东西。

  • 接下来说说我运用这些技术做了些啥叭。

  • 第一个经历,也是学校的一个小比赛,WEB前端设计大赛,没有后台,只有数据库,没什么很大的技术含量,我和我的小伙伴一起做的,虽然难度不是很大,但是也累得够呛,还有一些小bug。我把它搞到服务器了,附上链接:小demo静态界面

  • 第二个经历也是大一期间,应该是大一下学期,工作室接了一个项目,开发一个小孩子学习英语的APP,那应该是最开始的时候叭,老师让我和另一个小伙伴做原型设计,就是简单的页面交互,只有前端显示,没有后端数据,刚开始的时候应该是要尽快出效果,然后确认是否继续接下来的研发,能否得到甲方的确认签订合同吧叭。这个项目到现在已经完工了,从整体原型设计、开发、测试、到上线,我都还是比较清楚的,我虽然没有参与过开发,但是在原型设计和测试上面我都有参与,当然当时的原型设计和测试,现在在我看来,由于没有系统学习过软件工程的相关知识。我的操作一点都不专业,但是还是学到了许多,现在这个项目由我来维护了,学长去考研了,现在维护也就是改改数据库,没啥重大变化,还比较轻松。

  • 第三个经历就是在学java的时候,老师让我们做一个学生管理系统,当时用了一个星期叭,三天都在思考怎么设计,说实话设计真的很重要,要不然开发会没有头绪,或者代码很乱,没有层次和架构,当然这个小demo我自己我感觉技术含量不高,设计和架构肯定有问题,没办法呀,毕竟软件工程的思想和设计模式等架构知识我没学啊,现在暂时还达不到这个高度。当然,这些思想,理论技术后期我都会好好学的。附上链接:学生管理系统小demo

  • 第四个经历是在大一暑假期间在校学习了一个月之后,在大二上学期十月份左右叭,为了巩固所学,找了一个教程跟着做,基于thinkphp5开发了一个小博客网站,网站入口:1001.bithachi.cn。不得不说这个项目我学到了很多东西,从开发到部署到云服务器。

  • 第五个经历就是最近啦,寒假期间,开发了一个现在来说我比较满意的博客网站:www.bithachi.cn,平时写写博客笔记,记录记录生活。

(2)我的感受

  • 虽然自己开发了一些小玩意,但是也都很浅,只是会用,不清楚这些技术背后的·"道",即这些技术背后的软件开发思想,现在我回头想想,其实这些项目都离不开软件工程的思想,从原型设计到真正开发再到测试,就比如我上面提到的每一个小demo,每一个都有软件开发的思想,从原型设计到开发到测试到上线,都有一个流程的,还有一系列方法。如何让自己写的代码运行效率更快、让维护人员能够看懂,如何才能使代码在后期维护中更加和谐,不会影响之前的功能,如何设计软件的整个架构,每个模块如何做,开发成本等等,这些都是软件工程需要思考的。当然现在我的理解都还比较浅。希望通过软件工程这门学科能够让我解开疑惑,对软件开发有一个宏观的角度去思考,从本质去看问题和设计架构。

以上是我个人的经历和理解,为什么我们要学习理论课程?为什么要学习软件工程?下面我们来看看我在软件工程之美中学习到的更加专业的回答

3.专栏专业回答为什么要学习理论课程和软件工程等知识?

  • 以下内容是我在专栏中截取的部分内容,作为自己的笔记叭。

(1)没有学习软件工程,没有从系统层面整体去思考,会遇到的问题是什么?

  • 开发时没有分析没有设计,上手就写,后期难维护,加班熬夜去填“坑”;
  • 缺少理论指导,遇到新项目不能举一反三,工作很平庸;
  • 遇到需求变更这种事,除了抱怨两句客户,只能闷头做,无力反抗;
  • 做项目没计划性,想到哪做到哪,总是延期,比其他同事做的慢;
  • 不知道如何与团队协作,职业发展遇到瓶颈,无法得到晋升。

(2)学习软件工程能学到什么?

  • 软件项目的开发其实是一个工程,整个开发过程是可以有效组织起来的;·对于开发过程的各个阶段,已经有很多解决问题的最佳实践,有很多方法来帮助我们高效完成任务;我们还可以借助工具来协助管理,提升开发效率。

(3)除了软件工程之外,我们还需要学习那些理论知识?

  • 有人说程序员是吃青春饭的,因为计算机技术更新太快,年纪大了学习能力下降,就很难跟得上了。于是就有人很焦虑,会关心未来技术发展趋势如何?我怎么才能跟得上这些技术变化?

  • 亚马逊的创始人杰夫·贝索斯(Jeff Bezos)曾经在一次演讲中说:“人们经常问我,未来 10 年什么会被改变?我觉得这个问题很有意思,但也很普通。从来没有人问我,·未来 10 年,什么不会变?

  • 这个回答同样适用于软件开发领域。在软件开发领域,有哪些知识十年前很重要,现在仍然重要,未来可能同样重要?

  • 其实仔细分析,这些知识不外乎:·数据结构、算法、面向对象思想、设计模式、软件工程等等。如果范围不局限于程序开发,还要算上测试、产品设计、项目管理、运维这些岗位等等。

  • 你会发现,无论你是什么岗位,只要你从事软件开发相关领域,都绕不开“软件工程”,因为现代软件项目开发,多多少少都离不开软件工程知识的应用。

  • 想象下在日常工作中,不管你用什么开发语言,不管是前端和后端:

  • 你接到一个开发任务,如果想开发出客户想要的功能,你是不是先要做需求分析;
    你接手一个复杂的、大的功能模块,是不是先要做设计,才能把复杂的拆成简单的,才能让大家一起分工去开发;

  • 你完成一个功能模块,如果要保证质量,是不是需要写一些测试代码,还要做一些功能测试;
    还有日常用的那些工具,像源代码管理、Bug 跟踪。

  • 而这些内容,都是软件工程相关的知识,和你用什么语言无关。十几年前我开始工作时就在用这些知识,现在还是在用这些知识,未来这些知识还不会过时。

  • 换言之,这就是经典的价值,为什么说我们要学经典,因为经典就是这个行业最为本质的东西。你顺着这个逻辑想,就知道为什么大学的计算机专业要设计数据结构、算法、操作系统、软件工程这样的课程了。

  • ·技术更新迭代速度确实很快,难以把握,更难以预测,但是软件开发背后的逻辑却万变不离其宗。

  • 你只有掌握了这些逻辑,才能步步为营,不被快速发展的软件开发行业所淘汰。因为你脑袋里装有软件开发的战略,相对于赤手空拳、盲打莽撞的人来说,你更能在未来获得先机。

101.为什么我们要学习理论课程?为什么要学习软件工程?(建议在校生必读)相关推荐

  1. 汽车动力性仿真matlab程序,汽车理论课程设计:基于Matlab的汽车动力性的仿真

    汽车理论课程设计:基于Matlab的汽车动力性的仿真 2009 届届 汽车工程系汽车工程系 汽汽 车车 理理 论论 课课 程程 设设 计计 题题 目目 汽车动力性的仿真 学学 院院 机 电 工 程 学 ...

  2. 观杨宁之《文学理论课程》

    杨宁. 文学理论课程. URL: https://www.bilibili.com/video/BV1LE411e7NE 杨宁的这个视频课程是我目前在 Bilibili 看的最不像盗版的一个视频课程, ...

  3. 华中科技大学电路理论课程PPT分析

    华中科技大学电路理论课程PPT分享 链接:https://pan.baidu.com/s/1svn7QzBVTIpWnSjwUHx8oA 提取码:jnhd

  4. 学校计算机基础做慢了扣分,中职学校《计算机应用基础》课程改革的一点建议...

    中职学校<计算机应用基础>课程改革的一点建议 论文关键词:课程改革 任务驱动 模式化教学 过程性评价 教育技术 论文摘要:本文针对目前中职学校中学生的现状,以及计算机应用基拙教学中存在的问 ...

  5. 中职学校计算机应用基础学什么,浅谈中职学校《计算机应用基础》课程改革的一点建议...

    <浅谈中职学校<计算机应用基础>课程改革的一点建议>由会员分享,可在线阅读,更多相关<浅谈中职学校<计算机应用基础>课程改革的一点建议(3页珍藏版)>请 ...

  6. 课程设计是计算机科学与技术专业的一门,信息系:对“计算机科学与技术”专业课程设计的改善建议(已回复).doc...

    信息系:对"计算机科学与技术"专业课程设计的改善建议(已回复).doc 写在前面的话: 我们信息系接到学工办信息组辅导员转来的学生意见和建议,高度重视,组织计算机专业骨干教师对于同 ...

  7. c语言背单词系统刘小飞,C语言背单词课程设计报告(软件工程).doc

    C语言背单词课程设计报告(软件工程) 三亚学院 <C语言程序设计>课程设计 题 目 背单词 专 业 软件工程 班 级 1101 学 生 龚方盛 周艺冠 学 号 1110750064 111 ...

  8. 音乐的计算机理论难不难学,【如何学习音乐理论?这几个建议对你也许很有效】- 环球网校...

    [摘要]无论是哪种音乐,你都需要有旋律感和每一个动作的起伏感,许多朋友没有机会系统地学习音乐理论,今天跟大家讲讲如何学习音乐理论?这几个建议对你也许很有效,其实不管什么乐器,方法很重要,所以今天小编就 ...

  9. 学习Python要学习哪些课程?

    通过学习 Python数据分析与应用课程,可以掌握Python进行科学计算.可视化绘图.数据处理,分析与建模.构建聚类.回归.分类模型的主要方法和技能,并为后续相关课程学习及将来从事数据分析挖掘研究. ...

最新文章

  1. 15Proxy(代理)模式
  2. Android 有些机型hint不显示
  3. anaconda python降级_anaconda 使用的一些体验与困惑
  4. [BZOJ] 2064: 分裂
  5. 类型的设计--类型和成员基础(二)
  6. python线性链表_线性表 (单链表、循环链表-python实现)
  7. 如何提取HTML代码中img的src地址?
  8. Winsock—I/O模型之事件选择模型(一)
  9. linux的for循环乘积,最大乘积连续子串 - Triangle23 - OSCHINA - 中文开源技术交流社区...
  10. IDEA配置svn无法使用的问题
  11. MyBatis事务管理
  12. k8s集群外部域名dns解析问题
  13. 一个计算机网络的物理组成,1.1.2.1 计算机网络物理组成
  14. c++面试常见问题2019-10-03
  15. 听说这个深度学习工具包,可以拯救Java开发者?
  16. linux乌班图图形化设置ip,在Ubuntu 18.04 Desktop图形中配置静态和动态IP地址的方法...
  17. 如何保证同一个账号同时只能在一个设备登录,账号自动登录
  18. 作为荣耀脱离华为后的第二代旗舰,荣耀Magic4 Pro是否值得选购?
  19. OPPO 后端开发 一、二、HR 面面经 (已 OC)
  20. 上传文件500 -内部服务器错误,怎样上传文件

热门文章

  1. 解决提交到github报错Please tell me who you are.和为不同的项目设置不同的名称
  2. CPU缓存L1,L2和L3是什么?如何工作?
  3. 如何实现“轻高精地图”的城市NOH?毫末自动驾驶的8大亮点
  4. Python爬取QQ音乐内地专辑
  5. Pandas使用技巧-apply,条件筛选
  6. 身家过亿的帝都王子来到1024盛宴-小码农献上linux进阶知识点一篇
  7. 一年股票翻3倍的SaaS公司是做什么的?
  8. 含LOB的表实际容量计算方法
  9. 《zw版·Halcon-delphi系列原创教程》 zw版-Halcon常用函数Top100中文速查手册
  10. 关注博主的博文汇总(孙志刚、贺利坚……)