热门问题
时间线
聊天
视角
軟件工程主題列表
維基媒體列表條目 来自维基百科,自由的百科全书
Remove ads
軟件工程主題列表是為軟件工程主條目提供一個概覽、簡介和補充。而軟件工程是應用系統化、規範化、可量化的工程方法於軟件的整個生命周期,包括開發、執行及維護。[1]
對社會的影響
軟件工程師透過創造應用系統而影響整個社會。這些應用系統為用戶創造價值但有時候也會造成風險或災難。
軟件工程師建立應用軟件給人們使用。工程應用通過激勵開發者以新的方法解決問題來影響軟件工程.比如,消費者用的軟件強調低成本,醫用軟件強調高質素,而互聯網商業軟件重視如何能快速的發展.
生產力與辦公軟件:
互聯網與通訊應用:
設計與媒體軟件:
- 電腦輔助設計(CAD)
- 電腦圖像
- 動畫
- 特別效果 為影片或電影服務
- 編輯器
- 後期處理
企業與商業應用:
科學與工程軟件:
- 科學
- 基因組學
- 工程:所有傳統工程分支都已經大量採用軟件來協助日常工作。工程師用試算表比用計數機更多,而對於其產品的設計,例如路橋和大型電力裝置等,電腦輔助設計更是不可少,並配合上特別設計的軟件來進行設計,分析及模擬等各種活動。這些計劃與軟件在多方面有相似之處,除了因為工作的結果包含了電子檔案以外,計劃亦經歷了分析/設計/實踐和測試四個階段。
藝術、娛樂與遊戲:
其他基礎或支援軟件:
Remove ads
軟件曾是許多著名災害的重要原因。
- 阿麗亞娜-5運載火箭
- 火星探測器
- 丹佛國際機場
- Therac-25 - 因軟件設計時的缺陷造成六起醫療事故的一种放射治療機器。
技術和實踐
有技術的軟體工程師運用技術及不同範疇的實踐來改進生產力及質素。從而編程更快更容易。下列的技術和方法是在生產中天天被使用到的。
許多技術和做法(幾乎所有)是軟件工程所特有的,儘管其中很多與電腦科學是共同的。
- 演算法與數據結構:作為電腦科學的核心,演算法是解決問題的分步程式,而數據結構(如陣列、鏈結串列、樹和圖)則是組織和儲存數據的方法,以便這些演算法能夠高效地使用它們。
- 計算理論: 該領域從數學角度探索電腦的基本能力和局限性。它探討哪些問題可被解決(可計算性理論)以及解決這些問題所需的時間或主記憶體(複雜度理論)。
- 電腦系統結構:該領域關注電腦系統的內部結構與組織。它涵蓋CPU、主記憶體(RAM)和儲存等組件的設計方式,以及它們在低階別上的互動方式,包括數據在二進制中的表示形式。
- 程式語言與範式:該領域涉及用於編寫電腦指令的工具。它包括不同的編程範式——如程序式、物件導向和函數式程式設計——以及各種語言的語法和語意(如Python、C++、Java)。
- 設計模式——對軟件設計中給定上下文中常見問題的一般可重用解決方案
- 軟件部件
平台結合了電腦的硬件和作業系統。平台變得越來越強大和廉價的同時,操作和工具被更廣泛地使用。
- 作業系統(OS):作業系統是管理電腦硬件和軟件資源的核心軟件。關鍵概念包括行程管理、主記憶體管理、檔案系統和並行性。
- 電腦網絡:該領域涵蓋使電腦能夠相互通訊的原則和協定。核心主題包括TCP/IP模型、路由和互聯網架構。
- 資料庫:該領域專注於高效可靠地儲存、組織和檢索海量數據的原則。其中包括關係模型、SQL等查詢語言以及新興的NoSQL系統等概念。
- 人工智能(AI)與機器學習(ML):一個致力於建立能夠執行需要人類智能任務的系統的廣泛領域。機器學習作為人工智能的子領域,專注於開發能夠從數據中學習模式並進行預測的演算法。
- 電腦圖學:研究利用電腦建立和處理視覺圖像的學科,涵蓋從渲染2D/3D圖像到動畫和模擬的各個方面。
- 密碼學與安全:該領域致力於保障資訊和系統的安全。密碼學提供安全通訊的技術,而更廣泛的安全領域則涵蓋防禦系統免受攻擊和漏洞的影響。
- 排序演算法——演算法,按照一定的順序列表的元素
- 編譯器理論
離散數學(Discrete mathematics)是軟件工程學的重要基石。
其他
社群主題
參考文獻
外部連結
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads