软件工程师都学什么

我只负责吃饭逛街加爱他我只负责烧饭洗衣兼疼她
  • 回答数

    3

  • 浏览数

    11362

首页> 工程师报名> 软件工程师都学什么

3个回答默认排序
  • 默认排序
  • 按时间排序

青春如此凄凉

已采纳

软件工程师需要学什么

软件工程师(Software Engineer)可以说是从事软件职业的人员的一种职业能力的认证,通过它说明具备了工程师的资格。下面是我整理的关于软件工程师需要学的内容,希望可以帮助大家!

软件工程师就是从事软件开发相关工作的人员的统称,它是一个广义的概念,包括软件设计人员、软件架构人员、软件工程管理人员、程序员等一系列岗位,工作内容都与软件开发生产相关。

软件工程师的技术要求是比较全面的,除了最基础的编程语言(C语言C++JAVA等)、数据库技术(SQLORACLEDB2等)等,还有诸多如JAVASCRIPT、AJAX、HIBERNATE、SPRING等前沿技术。

1、Javascript

第一名的是Javascript,有的职缺中都要求必须会这项技能,那么Javascript为什么这么厉害呢?

最主要在于网络软件开发的盛行,Javascript是很多现有的开发框架的基础除了用在前端的开发(Angular、Ember、Backbone等),也用在后端的架构像是以及资料库数据的读取如MongoDB。

Javascript所建立起来的生态系非常的庞大也造就了大多数的工作都需要这项技能,Javascript本身学起来并不会太困难,如果想要懂一些基本的应用那可以参考这里(这里也推荐大家可以看下马海祥博客的《老程序员给初学者的一些建议和忠告》相关介绍)。

2、Java

榜上的第二名是Java ,占了,关于Java有些人认为它一个比较过时的语言也认为它即将被淘汰。

但是根据TIOBE Index上的排行(根据程式语言的普及与受欢迎程度),Java还是名列第二的,Java不仅没有被淘汰,它还过得很好仍然是很多大企业爱好的后端语言。

Java之所已受到企业的重视,一个很大的原因不止是因为他本身好用,而是因为学好Java让你学其他程式语言相对容易,因为Java是种面向对象语言而且不需要处理指标(Pointer),加上他有很好的开发环境(IDE)让初学者使用起来相对的简单,可以说是身为一个软件工程师绝对要懂得基础。

以马海祥的经验而言,Java学起来比Javascript稍微难一些网络上关于这方面的资源也不缺乏,像是MIT就有提供他的课程教材免费让大家学习。

3、HTML

在榜上第三名是HTML,马海祥觉得HTML严格说起来并不是一种程式语言它是一种标记语言(Markup Language),简单来说就是利用标记可以达到与单纯的文字不同的效果。

例如一段文字在前后加上标记就可以加上超连结,HTML是网路开发中基础中的基础,尤其在前端的开发上了解HTML每一个标记的功能是必要的。

但是马海祥还是要强调他本身并不是一种程式语言,如果只会HTML对找工作是没有任何帮助的,他只是基本中的基本,在这里也推荐大家可以花一点时间看下马海祥博客的《12种最常用的网页编程语言简介》相关介绍。

4、SQL and NoSQL

除此之外,榜上有名的.是SQL在的职缺上这项技能都是必须的。

根据Asurvey的调查有79%的受访者仍然是使用关系资料库也就是为什么SQL受到欢迎的原因,但这并不代表NoSQL就不重要虽然MongoDB在榜上只有,但是它主要被用在需要快速存取资料的产品上,像是Craigslist还有Expedia。

NoSQL与SQL究竟孰好孰坏,在资料库的社群上一直是一个广受争论的议题,绝大多数的任认为NoSQL是未来的趋势,但是以目前而言,SQL仍然是占了上风。

5、Javascript Frameworks

建立在Javascript上的开发框架总共有三个、以及,这类的框架可以让你很简便而且快速的处理前端的开发,然而这三种开发框架由于性质相近,因此也有很多的谁才是最好的争论。

目前是由Google所开发的站在榜上第一,当然这三种开发框架都有自己的好处,像是比较适合大型的开发,比较简单易学,让合作开发更简单。

6、

这里马海祥也特别提下,其原因是在于逐渐增加的使用者,以及大型公司像是Linkedin以及Wal-mart的使用。

是一个基于Chrome JavaScript运行时建立的一个平台,用来方便地搭建快速的易于扩展的网络应用借助事件驱动,非阻塞IO模型变得轻量和高效,非常适合运行在分布式设备的数据密集型的实时应用。

可以在不新增额外线程的情况下,依然可以对任务进行并行处理——是单线程的,它通过事件轮询(event loop)来实现并行操作,对此,我们应该要充分利用这一点,尽可能的避免阻塞操作,取而代之,多使用非阻塞操作。

84评论

我不会不在我不会不爱

软件工程师就是指通过学习和训练,掌握软件技术的理论知识和操作技能的软件技术人员。北大青鸟认为软件工程师能够从事计算机软件、网站的设计、开发、维护和测试工作。

他们的具体工作细分为以下四种:

1、企业信息化管理:负责信息化建设中的目标与方案决策,信息化建设、升级、更新;

2、工程技术人员:负责软件系统的分析、设计、开发、数据库、使用、维护和升级;

3、运行维护岗位:负责软件开发代码的编写以及基本的开发和测试;

4、操作应用人员:主要应用软件进行日常的管理工作。

通过上面的内容,我们可以从不同的工作岗位知道软件工程师主要是学什么内容。

28评论

Aom晴天

android软件工程师需要学习Java面向对象编程、Java Web开发、android UI编程、android网络编程与数据存储、android手机硬件管理、Android图形编程技术。

第一,Java面向对象编程。

Java基本数据类型与表达式,分支循环。 String和StringBuffer的使用、正则表达式。 面向对象的抽象,封装,继承,多态,类与对象,对象初始化和回收;构造函数、this关键字、方法和方法的参数传递过程、static关键字、内部类,Java的垃极回收机制,Javadoc介绍。

第二,Java Web开发。

Java解析XML文件DOM4J,MySql数据库的应用、多表连接查询的应用,Jsp和Servlet应用,Http协议解析。

第三,android UI编程。

Android介绍,Android开发环境搭建,第一个Android应用程序,Android应用程序目录结构。

第四,android网络编程与数据存储。

ContentProvider实现共享数据、URI的解析与UriMatcher、ContentUris的使用、使用ContentResolver操作ContentProvider、ContentProvider的监听Android当中的异步操作:Handler的使用方法;异步任务的基本概念;AsyncTask的使用方法。

第五,android手机硬件管理。

地图及定位技术:GPS简介;LocationManager的使用方法;在Google Map上添加标记的方法;查询某地附近建筑的方法;使用Google Map实现点对点导航。方向、加速度(重力)、光线、磁场、距离、温度等传感器的使用。NFC技术简介;NFC技术是用场景介绍;NFC技术实现方法。MediaPlayer的使用方法。手势识别;多点触摸技术。

第六,Android图形编程技术。

2D图形编程基础;点、线、面等基本图形元素绘制方法;Android动画框架简介;位移动画的实现方法;淡入淡出动画的实现方法;旋转动画的实现方法;Matrix的使用方法。

134评论

相关问答