軟體工程的意義

2022-02-16 01:28:36 字數 662 閱讀 4836

世界上有 10 種程式設計師。一種是遵守軟體工程開發規則的,我們稱之為工程師;一種是不遵守軟體工程開發規則的,我們稱之為碼農。

軟體工程,是為了讓程式設計師能夠更好地寫**、寫出更好地**。這兩個好,都有多層次的含義,但本質上,都是在長期的跨度內,減少程式設計師的工作量並提高**質量。

然而,世事總是不隨人願:長期跨度內的好,往往和短期利益會存在衝突。這也就是「短視」或者「目光短淺」的由來。在軟體工程中,「寫注釋」、「保持良好的命名習慣」、「單元測試」、「設計思想」、「總結分析」、「時間記錄」,這些是無數前輩總結出來的強而有效的工具。但是,從短期效果來看,使用這些工具(或者進行這些練習),無疑是耗費時間的——只要寫出**來就好了,誰管那麼多事?

對此,我的解釋和鄒欣老師書中的解釋一致:軟體開發,是乙個長期的、不斷變化迭代的過程,而不是乙個短期的、一錘子買賣的活動。既然如此,已經明確了軟體開發不是乙個短期活動,那麼為了短期利益,放棄長遠打算,顯然是不明智的。

在作業中,軟體工程的教師基本都會強調:要好好寫注釋,變數和函式命名要有意義,單元測試要隨**一起迭代修改,動手之前要先明確設計思想,動手之後要做總結分析、要寫時間記錄。然而,堅持做到這些的學生往往寥寥,在做到的學生裡也有不少敷衍了事。

那麼,「明智的你」應該已經知道如何將這對引號(←)去掉了,對嗎?

另附鄒欣老師對於這個問題的看法:

軟體工程 軟體工程的概述

軟體工程是研究和應用如何以系統性的 規範化的 可定量的過程化方法去開發和維護軟體,以及如何把經過時間考 驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來的學科,它涉及到程式語言 資料庫 軟體 開發工具 系統平台 標準 設計模式等方面。先從軟體工程的第一章開始說起 軟體工程的概述,這一章是...

軟體工程 軟體工程的理解

四 軟體危機 五 軟體工程要素及其作用 針對本學期第一次軟體工程課後的思考題,參考課本以及網路上的資料,作出如下自己的思考理解。在此之前,我所做過的工程僅僅侷限於一些課程的大作業上,並沒有更進一步到軟體上面,僅僅是針對某乙個或者某一類問題進行解決。我的看法 1 書上的定義 書上給出了許許多多的定義,...

軟體工程 軟體工程概述

一.軟體 定義 計算機系統中的程式及其文件 程式 計算任務的處理物件和處理規則的描述 文件 為了便於了解程式所需的闡明性資料 特點 軟體的種類 按功能劃分 系統軟體 支援軟體 應用軟體 二.軟體工程的起源和概念 早期電腦程式 現在人們認為 在資訊產業中,微電子是基礎,計算機和網路是載體,軟體是核心 ...