軟體工程要學哪些課程
軟體工程的主要課程:
外語、高等數學、線性代數、高等代數、電子技術基礎、離散數學、計算機引論(C語言)、數據結構、C++程序設計、匯編語言程序設計、演算法設計與分析、計算機組成原理與體系結構、資料庫系統、計算機網路、軟體工程、軟體測試技術、軟體需求與項目管理、軟體設計實例分析、CMM/ISO9000等。
『貳』 軟體工程師需要學習哪些課程
計算機導論
內容提要:為新學生提供一個關於計算機科學與技術學科的入門介紹,使他們對該學科有一個整體的認識,並了解該專業的學生應具有的基本知識和技能以及在該領域工作應有的職業道德與應遵守的法律准則。
數字電路與數字邏輯
內容提要:介紹數字邏輯與數字系統的基本概念、分析方法和設計原理,包括開關理論基礎、組合邏輯、時序邏輯、可編程邏輯器件、數字系統等。
計算機組成原理與匯編語言
內容提要:以馮諾依曼計算機模型為出發點,介紹計算機的組織結構和工作原理,剖析計算機的運算器、存儲器、控制器和輸入輸出設備的結構、工作原理和相互關系;介紹 80X86指令系統、匯編語言與匯編指令、匯編程序與匯編過程、簡單匯編程序設計、匯編語言與高級語言的介面、宏匯編等。
計算機網路
內容提要:介紹數據通信的基本概念和計算機網路的基本原理,包括計算機網路的體系結構、數據通信的基本方法和協議、計算機網路的主要應用協議;同時介紹計算機網路系統的安全和管理知識,使學生對數據通信和計算機網路有一個全面理解。
計算機體系結構
內容提要:研究計算機系統結構的基本概念、基本原理、基本結構和基本分析方法,使同學在具有一定的軟硬體知識基礎上能綜合認識計算機系統的軟硬體功能分配與各種不同結構類型機器的特性和性能評價方法。為研究、開發、應用高級計算機系統打下基礎。確立全面、系統的觀點和學會定量分析問題的方法。
離散數學
內容提要:包括集合論、數理邏輯、圖論、組合數學等內容,形式化的數學證明貫穿此課程。
高級程序設計語言
內容提要:分別以 C、C#或JAVA為例,介紹程序設計和語言,程序的基本數據結構、類型定義、簡單類型和結構化類型、程序的基本控制結構、結構化程序設計、面向對象的程序設計等。
演算法分析與設計
內容提要: 本課程延續數據結構課程的學習,從演算法分析和設計的角度出發,除去傳統的分類查找演算法和一般的設計方法外,主要內容包括如下幾個部分:演算法研究的理論基礎,遞歸分析技術,基本演算法設計策略(幾類經典演算法學習), 多項式運算與 FFT ,串匹配,概率分析演算法。 希望通過這一課程的學習,使學生能對現代的演算法設計及分析的基本工具能有較全面的掌握。
數據結構
內容提要:介紹線性表及其鏈接存儲結構與演算法、數組與矩陣、堆棧與隊列、廣義表的存儲結構與多元多項式表示、串與文本編輯、排序、樹、圖、文件結構。
資料庫系統原理
內容提要:介紹資料庫系統的基本概念、原理、方法及應用,主要包括資料庫系統概論、資料庫管理系統實現技術、資料庫存儲結構及其他類型的資料庫系統。
編譯技術
內容提要:介紹編譯原理的理論和實踐,包括編譯程序設計、詞法分析、語法分析、符號表、聲明和存儲管理、代碼生成以及優化技術。
操作系統
內容提要:介紹操作系統的設計與實現,包括操作系統各組成部分的概述、互斥性和同步性、處理器實現、調度演算法、存儲演算法、設備管理和文件系統。
『叄』 軟體工程專業具體要學習那些課程
大一大二抄會多學幾種編程語言,比襲如C語言、c++、Java等,到大三再選你感興趣或學得好的進行專門學習,如果想學的精通的話建議買本c++或Java編程思想看。其餘的數據結構、軟體工程導論、匯編語言、信息安全技術、操作系統、微機介面都會學,另外,SSH是Java的web編程的技術,是struts、spring、hibernate的簡稱,是大三才接觸到的,希望我的回答對你有幫助
『肆』 軟體工程專業有哪些課程
軟體工程專業(本科)的課程設置
主幹學科:馬克思主義理論、大學外語、高等數學、大學物理、物理實驗、線性代數、概率論與數理統計、程序設計語言、數據結構、離散數學、操作系統、編譯技術、軟體工程概論、統一建模語言、軟體體系結構、軟體需求、軟體項目管理
該專業除了學習公共基礎課外,還將系統學習離散數學、數據結構、演算法分析、面向對象程序設計、現代操作系統、資料庫原理與實現技術、編譯原理、軟體工程、軟體項目管理、計算機安全等課程,根據學生的興趣還可以選修一些其它選修課。
實踐環節:畢業實習、課程設計、計算機工程實踐、生產實習、畢業設計(論文)。
『伍』 軟體工程專業要學哪些科目
軟體工程學的主要內容是軟體開發技術和軟體工程管理。 軟體開發技術包含軟體工程方法學、軟體工具和軟體開發環境;軟體工程管理學包含軟體工程經濟學和軟體管理學。 專業簡介是計算機領域發展最快的學科分支之一,國家非常重視軟體行業的發展,對軟體人才的培養給予了非常優惠的政策。本專業培養掌握計算機軟體基本理論知識,熟悉軟體開發和管理技術、能夠在計算機軟體領域中從事軟體設計、開發和管理的高級人才。 主修課程該專業除了學習公共基礎課外,還將系統學習離散數學、數據結構、演算法分析、面向對象程序設計、現代操作系統、資料庫原理與實現技術、編譯原理、軟體工程、軟體項目管理、計算機安全等課程,根據學生的興趣還可以選修一些其它選修課。 畢業去向除考取國內外名牌大學研究生外,主要畢業去向是計算機軟體專業公司﹑信息咨詢公司﹑以及金融等其它獨資、合資企業。 培養目標本專業培養適應社會發展需求,德、智、體、美全面發展,具有扎實的計算機應用理論和知識基礎,掌握軟體工程領域的前沿技術和軟體開發方法,具有較強的實踐能力和創新精神,具備較強的軟體項目的系統分析、設計、開發和測試能力,能夠按照工程化的原則和方法從事軟體項目開發和管理的應用型人才。
『陸』 軟體工程要學什麼課程!
不要把時間浪費在所謂的大學課程上,很多都是沒有營養的。其實軟體工程的知識體系也就是那樣,各個大學也是照著這個思路編排課程的。所以,自學的時候直奔主題就可以了。
軟體工程。包含兩個部分:軟體和工程。軟體是程序員做的,而工程是項目負責人管理、程序員實踐的。
軟體又包含兩部分:語法和演算法。語法,即要掌握某種編程語言。一般來講,要想工作中用的上,那麼面向過程的語言和面向對象的語言都得掌握。一般學C、C++、Java、Dephi等等。面向過程的程序比較好學,條目也很清晰。而面向對象的編程需要學兩方面的內容:語法本身和龐大的類庫。演算法,這是編程的靈魂。一般包括:數據結構和經典演算法。學無止境,一般性的工作話,掌握基本的就夠了,如果工作較復雜得多看看演算法方面的期刊。
工程。現代軟體越變越大,大型的編寫工作動不動就涉及萬人。工程的方法只是為了更好的組織、協調編寫過程。《軟體工程》本身就是一本書,很厚的。主要講軟體的生命周期,比較抽象和繁雜,但是規范的工作方式就是從這本書里來的。另外關注一些編程習慣的知識。這也是工程的一部分。
軟體只是計算機科學中的一種。所以,比如計算機基礎、計算機系統等等宏觀的知識也需要理解。特別是對於高級程序員,計算機運行的底層知識就更重要了。操作系統、80x86以及匯編語言是底層知識中的一部分。
軟體行業分工很多:網路編程、資料庫編程、應用程序編程、游戲編程以及操作系統編程等(中國似乎還沒有商業化的操作系統),研究任何一個都挺累人的。學習完上面的基礎知識後,就需要給自己選一個專業方向了。
建議一個學習流程。如果你什麼都沒有學。
1】計算機基礎知識。主要是硬體方面(大一水平)
2】同時,學習C語言,語法就夠了
3】透徹的理解C++需要用C語言去編寫一個圖形化的應用程序,但是,似乎也有一些直接上手的C++教材。學習語法,簡單的類庫。(現在就是大二的水平)
4】數據結構,C++表述的。《數據結構》的書裡面會有一些經典的演算法的。
5】操作系統、80x86與匯編(大三水平,大四幾乎沒有幾本書要念的。)
6】專業學習。一方面是專業上的知識,另一方面是類庫在專業上的使用。(我想,應該可以工作了,大學里關於這方面的知識是很淺薄的,僅僅建立一個概念而已。但是要拿來謀生的話,就需要學多點了,前面所有的積淀都是為了這個目標的)
先學著,自己有體會後,就能確定自己應該學到什麼程度。如果一切順利的話,大概兩年多一點就可以完成這個過程。
『柒』 軟體工程專業的主要課程有那些
主幹學科:馬克思主義理論、大學外語、高等數學、大學物理、物理實驗、線性代數、概率論與數理統計、程序設計語言、數據結構、離散數學、操作系統、編譯技術、軟體工程概論、統一建模語言、軟體體系結構、軟體需求、軟體項目管理
該專業除了學習公共基礎課外,還將系統學習離散數學、數據結構、演算法分析、面向對象程序設計、現代操作系統、資料庫原理與實現技術、編譯原理、軟體工程、軟體項目管理、計算機安全等課程,根據學生的興趣還可以選修一些其它選修課。
實踐環節:畢業實習、課程設計、計算機工程實踐、生產實習、畢業設計(論文)。
(7)軟體工程要學哪些課程擴展閱讀:
軟體工程的目標是:在給定成本、進度的前提下,開發出具有適用性、有效性、可修改性、可靠性、可理解性、可維護性、可重用性、可移植性、可追蹤性、可互操作性和滿足用戶需求的軟體產品。追求這些目標有助於提高軟體產品的質量和開發效率,減少維護的困難。
(1)適用性:軟體在不同的系統約束條件下,使用戶需求得到滿足的難易程度。
(2)有效性:軟體系統能最有效的利用計算機的時間和空間資源。各種軟體無不把系統的時/空開銷作為衡量軟體質量的一項重要技術指標。很多場合,在追求時間有效性和空間有效性時會發生矛盾,這時不得不犧牲時間有效性換取空間有效性或犧牲空間有效性換取時間有效性。時/空折衷是經常採用的技巧。
(3)可修改性:允許對系統進行修改而不增加原系統的復雜性。它支持軟體的調試和維護,是一個難以達到的目標。
(4)可靠性:能防止因概念、設計和結構等方面的不完善造成的軟體系統失效,具有挽回因操作不當造成軟體系統失效的能力。
(5)可理解性:系統具有清晰的結構,能直接反映問題的需求。可理解性有助於控制系統軟體復雜性,並支持軟體的維護、移植或重用。
(6)可維護性:軟體交付使用後,能夠對它進行修改,以改正潛伏的錯誤,改進性能和其它屬性,使軟體產品適應環境的變化等。軟體維護費用在軟體開發費用中佔有很大的比重。可維護性是軟體工程中一項十分重要的目標。
(7)可重用性:把概念或功能相對獨立的一個或一組相關模塊定義為一個軟部件。可組裝在系統的任何位置,降低工作量。
(8)可移植性:軟體從一個計算機系統或環境搬到另一個計算機系統或環境的難易程度。
(9)可追蹤性:根據軟體需求對軟體設計、程序進行正向追蹤,或根據軟體設計、程序對軟體需求的逆向追蹤的能力。
(10)可互操作性:多個軟體元素相互通信並協同完成任務的能力。
『捌』 軟體工程一般要學什麼
其實,開發軟體並不簡單只是編編程序(如果是那樣,初、高中生就能完成了,要我們這些大學生幹嘛),就象做生意(比如開商店),你總不會認為開商店就是站那兒賣貨吧,你得先進行市場調研,再選店址,然後上貨,賣貨,當然還有售後服務),這是一個復雜的,系統的工程,一般包括以下幾項:客戶需求調查或市場調查、軟體的框架設計、各框架的進一步細分,編寫程序(內容很多,比如用什麼語言,面向什麼,設計模式等等),黑白盒測試,發布測試版,軟體的交付以及售後服務,還有各階段的文檔總結(包括軟體的幫助文件,注釋等等),總之,就是一個軟體從調研到最後發布的各中間過程,軟體工程就是對這各種階段的說明以及如何去實施各階段,學好了它,對你今後的軟體工程師之路是非常有用的,也是必需的。
不過我畢業後去了動力節點學習java,畢業後就在電商公司上班。月薪15k。