Ⅰ 高中學軟體工程師好學嗎
如果有基礎的話好學,沒基礎的話很困難,很多黑客也都是初中文化,但是他們都是一開始就對這個很感興趣,有很深的基本功的,做軟體的基礎必須要扎實要不然根本就不可能的
Ⅱ 軟體工程師的課程好學嗎要有什麼樣的基礎
北大青鳥青大安貞學校對不同基礎的學員有針對方案的,有許多零基礎的學員也通過我們的教育得到了大幅提高,獲得了軟體工程師崗位的工作。到我們這里來的學員都能認識到學習機會來之不易,互相之間都能產生積極的影響,整體素質較高,聯手家長管理,有專門的學員檔案,所以,要想學好,關鍵是挑選教學管理好的學校,而不用過於擔心基礎:)
青大安貞的學員從高中到碩博都有,現在很火的一個班是針對大學生的項目實訓班,叫「長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軟體工程師是技術含量很高的。當然不是那麼輕易就可以成材的。但是難不難學是一種個人體驗,這是因人而異的。所謂難者不會,會者不難。難不難取決於有沒有找到好的學習方法,也就是說有沒有入門。入門之後當然一切得心應手,再就是有沒有興趣和愛好。有興趣鑽研看代碼跟看漂亮姑娘一樣,那當然不會覺得難。所以要看你自己的心態。和性格是怎樣?