Ⅰ 高中学软件工程师好学吗
如果有基础的话好学,没基础的话很困难,很多黑客也都是初中文化,但是他们都是一开始就对这个很感兴趣,有很深的基本功的,做软件的基础必须要扎实要不然根本就不可能的
Ⅱ 软件工程师的课程好学吗要有什么样的基础
北大青鸟青大安贞学校对不同基础的学员有针对方案的,有许多零基础的学员也通过我们的教育得到了大幅提高,获得了软件工程师岗位的工作。到我们这里来的学员都能认识到学习机会来之不易,互相之间都能产生积极的影响,整体素质较高,联手家长管理,有专门的学员档案,所以,要想学好,关键是挑选教学管理好的学校,而不用过于担心基础:)
青大安贞的学员从高中到硕博都有,现在很火的一个班是针对大学生的项目实训班,叫“长35”,和三百多家企业合作的,马上就又要开班了,因为企业向我们要人,而毕业生不够
Ⅲ 考高级软件工程师要学什么
软件工程师考试(高级)大纲
一、考试说明
1.考试要求:
(1)理解软件工程管理的概念和任务;
(2)理解软件生存期过程;
(3)理解软件工程标准;
(4)掌握需求分析、测试、维护基本技术;
(5)掌握软件度量、软件配置管理方法;
(6)理解软件复用概念;
(7)理解软件质量保证的手段;
(s)理解软件项目对人员的需求;
(9)理解软件知识产权的基本知识。
2.通过本级水平考试的合格人员具有从事软件系统分析与工程系统分析员、工程管理员的实际工作能力和业务水平。
3.本级水平考试范围包括三个模块,即模块1、模块2和模块3。题型为单项选择题十多项选择题十综合题。每个模块考试时间为90分钟。
二、考试范围
模块1:软件工程技术
1.1软件生存期过程
1.1.1软件工程过程和软件生存期
1.1.2软件生存期模型
1.1.3国际标准:ISO/IECI2207信息技术一软件生存期过程
1.2软件需求分析
1.2.1需求分析的任务
1.2.2需求分析过程
1.2.3需求的类型。
1.2.4需求分析的原则
1.2.5需求分析人员和用户的责任
1.2.6需求文档
1.2.7需求说明技术的选择
1.3软件复用技术
1.3.1软件复用的概念
1.3.2软件开发过程
1.3.3构件技术
1.3.4分层式体系结构
1.3.5实施软件复用开发单位的组织结构
1.4软件测试技术
1.4.1软件测试的基本概念
1.4.2测试用例设计
●白盒测试
●黑盒测试
1.4.3性能测试
1.4.4软件测试策略
1.4.5软件测试工具
1.5软件维护
1.5.1软件维护的概念
1.5.2软件维护活动
1.5.3软件维护的实施
1.5.4软件可维护性
1.5.5软件再工程
1.6软件工具与软件开发环境
1.6.1软件开发工具的分类、作用和功能
1.6.2软件开发环境的概念
模块2:软件质量管理与软件质量保证
2.1软件质量
2.1.1什么是软件质量
2.1.2软件可靠性
2.1.3软件质量问题的根源
2.1.4软件产品质量与软件过程质量
2.2软件质量保证
2.2.1软件质量保证的概念
2.2.2软件质量保证体系
2.2.3质量保证的实施
2.2.4软件质量设计
2.2.5软件容错技术
2.3软件工程标准与软件文档
2.3.1什么是软件工程标准
2.3.2软件工程标准化的意义
2.3.3软件工程标准的制订与推行
2.3.4软件工程标准的层次
2,3.5软件工程国家标准
2.4ISO9000国际标准
2.4.1质量管理、质量认证与质量审核
2.4.2ISO9000标准概要
2.4.3ISO9000族标准构成
2.4.4质量体系
2.4.5ISO9001的主要内容
2.4.6ISO9000_3实施指南概要
2.5软件过程能力评估CMM
2.5.1软件过程评估的意义
2.5.2软件过程能力成熟度分级及其关键过程域
2.5.3软件过程评估的国际标准
2.6软件度量
2.6.1软件度量的概念
2.6.2功能点方法计算软件的大小
2.6.3程序环路复杂度计算
2.6.4Halstead程序工作量计算
2.6.5程序风格度量
2.7软件配置管理
2.7.1什么是软件配置管理
2.7.2配置管理计划的制订
2.7.3变更管理
2.7.4版本管理和发行管理
模块3:软件工程管理
3.1软件工程管理和软件项目管理
3.1.1软件工程管理的任务与意义
3.1.2软件工程管理的范围
3.1.3软件文档管理
3.1.4软件成本估算
3.1.5软件风险分析
3.1.6软件项目进度计划与监控
3.2软件人员管理
3.2.1软件开发组织结构
3.2.2软件人员能力成熟度模型
3.2.3软件工程师道德和职业活动规范
3.3软件知识产权保护
3.3.1什么是知识产权
3.3.2计算机软件著作权
3.3.3计算机软件著作权登记管理
3.3.4计算机软件著作权侵权与法律保护
3.3.5计算机软件的商业秘密与反不正当竞争
Ⅳ 成为高级java软件工程师难不难..(我没有基础)
难不难?你要是真正的喜欢java,为些努力过,付出过,就不难!努力就有收获,人人都能成功!!!
Ⅳ 软件开发高级工程师难考吗没有基础也可以学会吗
没有基础的可以学,软件开发高级工程师都会有相应对应的项目的培训,只需要参加培训,并最终成绩合格后,就可以给予工程师的称号。以下是考试所需要的一些基础知识:
首先是对操作系统的认知
大家都是知道,不管什么应用软件,都必须依靠一个操作系统,只有在一个操作系统上,它才能很好的运行;常用的操作系统最多的当数微软的windows操作系统了,2013年微软推出的是win8操作系统;由于是刚刚推出,它还不能被用户所接受,2013年大多用户还在用win7和windows xp操作系统。
其次是对开发语言的掌握
软件开发,通俗的说就是写程序,就是把一串一串的命令组合起来,让它来替完成某种特定的任务。如果考试者从事的是java软件开发,那么考试者重点必须精通java语言,考试者要懂得java的特性,java语言的语法,java语言的算法等等。
第三是对开发工具的使用
俗话说:磨刀不误砍柴工,要想开发出一个好的软件,对开发工具的熟练应用是非常重要的,它可以让考试者事半功倍;java软件开发常用的开发工具有:开源的Eclipse和收费的MyEclipse,.Net软件开发工具有:微软的VisualStudio,Pascal软件开发工具:Delphi。关于软件开发工具的使用,可以参考扩展文章《常用的软件开发工具有哪些使用技巧》。
第四是对TCP/IP网络协议的了解
有了TCP/IP网络协议,使网络得到了飞速的发展;从早期的C/S结构的运行模式到现在主流的B/S结构的完美转变,TCP/IP协议是功不可没的,未来更是离不开TCP/IP协议;要想成为一名优秀的软件开发工程师,特别是手机软件开发工程师,考试者不仅仅要知道ISO有哪几层组成,考试者更要知道,每层的功能和作用。
第五是对数据库的熟练应用
数据库对软件的影响是不容小视的,因为做的工作都是心数据为中心,重点部分就是操作数据,如果没有数据库,那么软件的作用也就会大大降低;2011年常用的都是关系型数据库,主流的有:甲骨文公司的Oracle、微软公司的sqlserver、IBM公司的DB2,还有一些小的数据库,如mysql,Access等;一定要熟练掌握SQL语言,它是操作数据库的关键。
第六是对软件工程的了解
大多软件开发公司在招聘的时候,都会问考试者对软件工程的了解,软件工程是软件开发的前提;因为公司不可能招一个只会写代码而不知道为什么要这样写的员工;作为一个优秀的软件开发工程师,考试者不仅仅要会写代码,更重要的是要掌握《软件开发的流程》中每个阶段所要用的技术,如客户需求,市场调查,可行性分析,需求分析,详细设计,最后的软件测试等等。
第七是要有勇于探索,勇于创新的精神
一个优秀的程序员,不能总是原地不动,不去思考,要多去想一想为什么要这样做,如果不这样做会产生什么样的后果;要努力学习新的知识,因为软件行业是一个更新速度非常快的行业,如果考试者的知识2年都没有更新的话,那么,考试者在这个软件开发行业的前景就不容乐观了;每天都要抽出一定的时间学习新知识,只有这样,才能走的更好,更远,更稳。
Ⅵ 我想成为一个高级JAVA软件工程师 需要多长时间学会啊
最起码要掌握以下东西才能使高手~~
慢慢学吧~~
学无止境~~
1.你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该十分了解UML,尤其是class,object,interaction以及statediagrams。
2.你需要学习JAVA语言的基础知识以及它的核心类库(collections,serialization,streams,networking, multithreading,reflection,event,handling,NIO,localization,以及其他)。
3.你应该了解JVM,classloaders,classreflect,以及垃圾回收的基本工作机制等。你应该有能力反编译一个类文件并且明白一些基本的汇编指令。
4.如果你将要写客户端程序,你需要学习WEB的小应用程序(applet),必需掌握GUI设计的思想和方法,以及桌面程序的SWING,AWT, SWT。你还应该对UI部件的JAVABEAN组件模式有所了解。JAVABEANS也被应用在JSP中以把业务逻辑从表现层中分离出来。
5.你需要学习java数据库技术,如JDBCAPI并且会使用至少一种persistence/ORM构架,例如Hibernate,JDO, CocoBase,TopLink,InsideLiberator(国产JDO红工厂软件)或者iBatis。
6.你还应该了解对象关系的阻抗失配的含义,以及它是如何影响业务对象的与关系型数据库的交互,和它的运行结果,还需要掌握不同的数据库产品运用,比如:oracle,mysql,mssqlserver。
7.你需要学习JAVA的沙盒安全模式(classloaders,bytecodeverification,managers,policyandpermissions,codesigning, digitalsignatures,cryptography,certification,Kerberos,以及其他)还有不同的安全/认证 API,例如JAAS(),JCE (JavaCryptographyExtension),JSSE(JavaSecureSocketExtension),以及JGSS (JavaGeneralSecurityService)。
8.你需要学习Servlets,JSP,以及JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries。
9.你需要熟悉主流的网页框架,例如JSF,Struts,Tapestry,Cocoon,WebWork,以及他们下面的涉及模式,如MVC/MODEL2。
10.你需要学习如何使用及管理WEB服务器,例如tomcat,resin,Jrun,并且知道如何在其基础上扩展和维护WEB程序。
11.你需要学习分布式对象以及远程API,例如RMI和RMI/IIOP。
12.你需要掌握各种流行中间件技术标准和与java结合实现,比如Tuxedo、CROBA,当然也包括javaEE本身。
13.你需要学习最少一种的XMLAPI,例如JAXP(JavaAPIforXMLProcessing),JDOM(JavaforXMLDocumentObjectModel),DOM4J,或JAXR(JavaAPIforXMLRegistries)。
14.你应该学习如何利用JAVAAPI和工具来构建WebService。例如JAX-RPC(JavaAPIforXML/RPC),SAAJ (SOAPwithAttachmentsAPIforJava),JAXB(JavaArchitectureforXMLBinding),JAXM(JavaAPIforXMLMessaging), JAXR(JavaAPIforXMLRegistries),或者JWSDP(JavaWebServicesDeveloperPack)。
15.你需要学习一门轻量级应用程序框架,例如Spring,PicoContainer,Avalon,以及它们的IoC/DI风格(setter,constructor,interfaceinjection)。
16.你需要熟悉不同的J2EE技术,例如JNDI(),JMS (JavaMessageService),JTA/JTS(JavaTransactionAPI/JavaTransactionService),JMX (JavaManagementeXtensions),以及JavaMail。
17.你需要学习企业级JavaBeans(EJB)以及它们的不同组件模式:Stateless/StatefulSessionBeans,EntityBeans(包含Bean- ManagedPersistence[BMP]或者Container-ManagedPersistence[CMP]和它的EJB-QL),或者 Message-DrivenBeans(MDB)。
18.你需要学习如何管理与配置一个J2EE应用程序服务器,如WebLogic,JBoss等,并且利用它的附加服务,例如簇类,连接池以及分布式处理支援。你还需要了解如何在它上面封装和配置应用程序并且能够监控、调整它的性能。
19.你需要熟悉面向方面的程序设计以及面向属性的程序设计(这两个都被很容易混淆的缩写为AOP),以及他们的主流JAVA规格和执行。例如AspectJ和AspectWerkz。
20.你需要熟悉对不同有用的API和frame work等来为你服务。例如Log4J(logging/tracing),Quartz (scheling),JGroups(networkgroupcommunication),JCache(distributedcaching), Lucene(full-textsearch),JakartaCommons等等。
21.如果你将要对接或者正和旧的系统或者本地平台,你需要学习JNI (JavaNativeInterface) and JCA (JavaConnectorArchitecture)。
22.你需要熟悉JINI技术以及与它相关的分布式系统,比如掌握CROBA。
23.你需要JavaCommunityProcess(JCP)以及他的不同JavaSpecificationRequests(JSRs),例如Portlets(168),JOLAP(69),DataMiningAPI(73),等等。
24.你应该熟练掌握一种JAVAIDE例如sunOne,netBeans,IntelliJIDEA或者Eclipse。(有些人更喜欢VI或EMACS来编写文件。随便你用什么了:)
25.JAVA(精确的说是有些配置)是冗长的,它需要很多的人工代码(例如EJB),所以你需要熟悉代码生成工具,例如XDoclet。
26.你需要熟悉一种单元测试体系(JNunit),并且学习不同的生成、部署工具(Ant,Maven)。
27.你需要熟悉一些在JAVA开发中经常用到的软件工程过程。例如RUP(RationalUnifiedProcess)andAgilemethodologies。
28.你需要能够深入了解加熟练操作和配置不同的操作系统,比如GNU/linux,sunsolaris,macOS等,做为跨平台软件的开发者。
29.你还需要紧跟java发展的步伐,比如现在可以深入的学习javaME,以及各种java新规范,技术的运用,如新起的web富客户端技术。
30.你必需要对opensource有所了解,因为至少java的很多技术直接是靠开源来驱动发展的,如java3D技术。
Ⅶ 软件工程师好学吗工资待遇怎么样
肯定不好学啊,工资待遇还可以,反正吃青春饭
Ⅷ 软件开发高级工程师专业好学吗
只要功夫深 铁棒都能磨成针
Ⅸ JAVA软件工程师难学吗
Java软件工程师是技术含量很高的。当然不是那么轻易就可以成材的。但是难不难学是一种个人体验,这是因人而异的。所谓难者不会,会者不难。难不难取决于有没有找到好的学习方法,也就是说有没有入门。入门之后当然一切得心应手,再就是有没有兴趣和爱好。有兴趣钻研看代码跟看漂亮姑娘一样,那当然不会觉得难。所以要看你自己的心态。和性格是怎样?