一、什么是软件工程
软件工程是计算机科学与技术衍生出来的一门专业。实用性很强,比较注重实用。比如我们可以足不出户用美团点外卖;利用淘宝网络购物;了解天下新闻可以翻阅今日头条等等,那么这些软件都是有软件工程人员来实现的。
早期的软件仅仅是为满足计算机硬件的需求来编译的,大部分是用来辅助计算、统计和记录。比如最早期的住家户用电电表统计,都是工作人员手动统计的,随着计算机和网络的发展,演变成计算机来替代人工抄表。再后来随着信息技术、人工智能、大数据技术的发展,实现了网上缴费,查询电费余额,查询缴费记录等等一些功能,那么这些功能的实现都是有软件工程师来实现的。为了完成实现软件的很多功能,需要组建一个团队来共同完成,比如我们熟悉的WINDOWS操作系统,是由5000多名工程师,编译了3000多万行的代码来共同完成的,可见他的复杂性和数据庞大性。
软件工程采用工程的原理、概念、技术和方法来开发维护软件,把管理技术和开发技术有效的结合起来,培养能够从事软件开发(编写代码)、测试(软件的调试优化)、维护(后期的完善升级等)和软件项目管理的高级专门人才的一门学科
二、学习核心课程
离散数学及其应用、数据结构基础、高级数据结构与算法分析、面向对象程序设计、 算机系统原理、数据库系统原理、操作系统原理、操作系统分析与实验、软件工程基础、计算机网络基础项目管理与案例分析、软件需求分析与设计、软件体系结构、人机交互工程。
各高校软件工程专业根据培养体系、专业侧重等不同情况,课程设置也有所差异,学生可具体查看各校详细专业和课程设置情况。
三、计算机科学与技术专业与软件工程专业的区别
计算机专业学习技术,是为了改进技术,提高技术,研究出更好的理论。扎实地知道计算机底层是怎么工作的,才能研究出更好的计算机;而软件工程专业学习技术,是为了更 好的解决实际问题,注重实用性。
四、软件工程考研方向
软件工程的研究领域包括但不限予软件架构,软件设计方法,软件领域建模,软件工程决策支特。软件工程教育、软件测试技求。自动化的软件设计和合成,基于组件的软件工程。计算机支持的协同工作,编程语言和软件工程、计算机网络、信息与通信安全。计算机图形学与人机交互,多媒体技术应用,人工智能与识别,嵌入式软件与应用,自动控制,云计算技术,数据库技求研究、计算机辅助设计与应用技术,大数据分析与处理等。
五、就业方向
1、Web开发
我们在浏览网站时,会看到一些科技感十足,画面十分精致的网页,也会看到一些粗制滥造、仿佛回到10年前的页面。所有的这些,都是出自前端之手,他们负责在实现网站具体功能的同时加入一些互动和特效,和前端联系比较紧密的是UI(界面)设计师。但是UI设计师相关的知识软件工程大多是不教的。UI设计师的工作就是设计出比较好看的界面和图标,合理的页面布局等,需要掌握一些专业的设计软件。
2、移动终端开发、
随着移动互联网的发展,目前有不少毕业生会专注于移动端App的开发,主要包括iOS终端开发和Android终端开发。随着5G标准的落地应用,未来移动终端的开发场景也会进一步得到拓展,比如与物联网的深度结合等。
3、从事大数据开发
大数据技术已经发展多年,技术体系已经趋于成熟,当前正处在落地应用的初期,随着产业互联网的发展,未来大数据领域将释放出大量的就业岗位。从近些年的就业情况来看,从事大数据相关岗位的毕业生还是比较多的,以大数据应用开发、大数据分析和大数据运维几个岗位为主。、
4、计算机系统工程师
系统架构设计师是指进行数据库安装、配置、优化,根据需求进行数据的挖掘及展示,以及数据库方面的探索及开发的专业人员。
5、视频开发工程师
你一定体验过语音或视频聊天所带来的舒适感觉,可能也享受过在线视频所带来的方便快捷,这些都是语音/视频开发工程师们的功劳。
6、游戏开发
7、人工智能
要说未来软件工程专业的就业方向就不得不提近几年炒得火热的人工智能领域,无论是前几 年就已经出现的AlphaGo在围棋领域战胜人类,还是近来许多公司都推出的人工智能机器 人,例如百度研发的“小度”。从这些高智能的机器都可以看出未来软件工程行业的主要研发趋势而这也是全人类主要的研究方向,通过人工智能来代替人工成本,提高工作效率将 成为一大热门发展领域
六、社会上对这个专业的认识误区
1、有些人认为,学计算机相关的专业是青春饭,到了30多岁后就没有发展前途了,总不能一辈子就当个程序员吧?这是一个很大的认识误区。实际上,软件工程专业更关注开发大型软件系统的组织方法和流程,培养学生掌握大型软件开发和管理的能力,随着经验和能力的增长,他们更能胜任越来越大的项目的组织和管理,成为千百程序员的管理者。
2、现在懂编程的人太多了,凡是理工专业都学过编程,抓来就能用,甚至到职业培训学校学习一年半载就可以走上工作岗位,也就是就业门槛比较低,但从发展前景来说肯定没有科班出身的毕生有优势。软件工程专业所掌握的大型软件开发的组织、设计和管理技术,不是普通的编程技术可以比拟的。打个比方说,普通的工人稍微训练一下,让他盖个猪圈、砌堵墙没问题,但是让他去造一个摩天大楼就不行了。而软件工程培养的是有能力设计和制造摩天大楼的人才。
七、招生院校多 看清培养目标
据统计,目前开设软件工程专业的院校580多所,分布在不同层次。在这些招生院校中,既有综合性大学,也有理工类院校,还有师范类院校。
不同院校软件工程专业方向有所不同,例如,华东师范大学软件工程专业有四个学习方向,分别为软件科学与技术方向、嵌入式软件与系统方向、数据科学与工程方向、密码与网络安全方向。
东南大学软件工程一级学科主要包括软件工程的理论与实践、可信软件、软件智能化、软件自动化、软件服务工程和软件建模与分析等六个主要学科方向。
八、按大类招生 分清专业方向
除了单独的专业招生形式以外,很多院校都以“计算机类”、“软件工程”的大类形式招生。按照计算机类大类招生的院校,如中央民族大学、北京理工大学、北京信息科技大学等;按照软件工程大类招生的院校,如南京大学、厦门大学、武汉大学、湖南大学等。考生报考时,最好看一下大类包含的专业方向再填报
北京理工大学“计算机类”包含计算机科学与技术、物联网工程、软件工程三个专业方向;厦门大学“软件工程”包含软件工程、数字媒体技术两个专业方向。
九、学习软件工程专业对学生的要求
1、大一时就开始在学习编程,一般是英语教学或者全英语教学,英语不太好的话刚开始比较吃力,大二大三时就开始锻炼技能了,多练或者参加一些项目,毕业时对我们的就业有很大的帮助,大四就可以进入企业实习,在企业实习时是成长最快的时候,最后能进入什么样的企业就根据你的实力了,
2、学习这个专业必须一定的创新能力和强大的自学能力。