第十四周cs导论课总结

本周老师讲了我们专业最相关的一章问题——软件。

在计算机学院中,除开大数据,物联网两个专业,大多数的学生都分布在软件工程和计算机科学与技术两个大专业,而我之所以选择软件工程专业,原因有二。

1⃣️首先从学院的培养计划来看,其实计算机科学与技术与软件工程的核心专业课差不多,计算机科学与技术在底层硬件方面可能要求和学习的范围更广,软件工程对于编程能力要求更高,有更多的软件开发实训机会,而我觉得我在以后的工作中,应该不会去从事和硬件相关或者与底层操作系统,机器语言,汇编语言等相关的工作,所以我觉得软件工程可能更适合我。

2⃣️其次,我们学校的软件工程在马区,而计算机科学与技术专业在余家头,因为我觉得马区环境更好,地理位置更方便,所以我倾向于留在马区。

软件工程的日后工作主要有软件开发、测试、维护和软件项目管理,其实我觉得,软件工程可以分为两大类,一个是软件,一个是工程

软件是程序员做的,而工程是项目负责人管理、程序员实践的。

软件又包含两部分:语法和算法。语法,即要掌握某种编程语言。一般来讲,要想工作中用的上,那么面向过程的语言和面向对象的语言都得掌握。一般学C、C++、Java、Dephi等等。面向过程的程序比较好学,条目也很清晰。而面向对象的编程需要学两方面的内容:语法本身和庞大的类库。算法,这是编程的灵魂。一般包括:数据结构和经典算法。学无止境,一般性的工作话,掌握基本的就够了,如果工作较复杂得多看看算法方面的期刊。

工程。现代软件越变越大,大型的编写工作动不动就涉及万人。工程的方法只是为了更好的组织、协调编写过程。《软件工程》本身就是一本书,很厚的。主要讲软件的生命周期,比较抽象和繁杂,但是规范的工作方式就是从这本书里来的。另外关注一些编程习惯的知识。这也是工程的一部分。

从未来可能从事的工作来探讨软件工程专业,简单分成两大类:技术类和非技术类。

(1)技术类

顾名思义就是从事编程的岗位,其实就是我们所说的程序猿。主要可以从事的方向有:

a、可视化编程。在掌握程序设计方法及可视化技术(例如Java,Delphi等)的前提下,在可视化平台使用技术开发软件。

b、web应用程序设计。该岗位又可以分为两种,一种是前端,要求掌握的技术,主要是HTML、css、JavaScript三种开发技术,随着互联网技术的发展,现在也要求使用HTML5技术。另一种是后台开发,要求掌握的PHP、Apache、shell、vim、crontab等服务器开发技术。


(2)软件测试

软件测试这个岗位要求职工子在理解产品的功能要求的前提下,对其进行测试,检查软件有没有Bug,测试软件的稳定性,并且写出相应的测试规范和测试用例。这个岗位需要一定的技术能力,但是不是要求特别高。

(3)运维岗

顾名思义,在互联网产品测试工作完成后,对产品进行的发布和发布之后的运营维护工作,属于技术岗位。需要的技术方向有很多种,例如服务监控技术、服务故障管理、服务容量管理、服务性能优化等等。


(4)数据库管理

数据库管理这个岗位,其实是属于编程岗位里面的,我这边把他单独罗列出来,因为它和编程岗有点不同。岗位要求能够应用关系范式进行数据库设计,精通SQL语言,胜任数据库服务器管理与应用的工作。


2、非技术类

(1)产品开发

这是一个产品开发的岗位,注意是开发,属于非技术岗。后面职业的上升就是相当于产品经理。负责调查并根据用户的需求,确定开发何种产品,选择何种技术、商业模式等。并推动相应产品的开发组织。

(2)产品运营

该岗位需要从内容建设,用户维护,活动策划三个层面来管理产品内容和用户。在上线之前,运营要清楚产品的定位以及目标用户是哪一些。在内测期,运营主要收集用户行为数据和相关的问题反馈,和产品开发一起分析讨论进行产品的优化。在爆发期,进行一些必不可少的活动策划拉新留存促活。 在成熟期,运营要做好产品开发和用户之间的桥梁作用。给予用户最好的体验。

你可能感兴趣的:(第十四周cs导论课总结)