什麼是 IDE?
整合式開發環境 (IDE) 是協助程式設計師高效地開發軟體程式碼的軟體應用程式。它透過將軟體編輯、建置、測試和封裝等功能整合至易於使用的應用程式,以提高開發人員的生產力。正如作家使用文字編輯器,會計師使用試算表一樣,軟體開發人員使用 IDE 來提高工作效率。
IDE 為何重要?
可用任何文字編輯器編寫程式碼。然而,大多數整合式開發環境 (IDE) 含有的功能不僅止於文字編輯。可作為開發人員常用工具的集中介面,使得軟體開發流程高效許多。開發人員能迅速展開新應用程式的程式設計,不必手動為不同軟體進行整合及設定。也無需了解諸多工具,僅需專注在一個應用程式。以下是開發人員應當使用 IDE 的幾個原因:
程式碼編輯自動化
程式設計語言有必須如何建構陳述式的規則。因為 IDE 知道這些規則,所以含有自動編寫或編輯原始程式碼的許多智慧功能。
語法突顯
IDE 能自動使某些字詞成為粗體或斜體,或使用不同的字型色彩,為編寫的文字設定格式。這些視覺提示讓原始程式碼更具可讀性,不慎有語法錯誤也能提供即時回饋。
智慧程式碼填寫
在搜尋引擎中開始鍵入文字時,會顯示各種搜尋詞彙。IDE 有類似功能,開發人員開始鍵入時,能提供填寫程式碼語句的建議。
重構支援
程式碼重構是指將原始程式碼重組,在核心功能不變之下成為更加高效,也更具可讀性的程序。IDE 能某種程度地進行自動重構,讓開發人員輕鬆快速地改良程式碼。具可讀性的程式碼,其他團隊成員能更快理解,對團隊內的協作有支持作用。
本機建置自動化
凡是變更程式碼時一般會存在的重複性開發任務,IDE 皆能執行,使得程式設計師的生產力提高。有關 IDE 執行的一般程式碼編寫任務,以下舉出幾個範例。
編譯
IDE 可將程式碼編譯或轉換成為作業系統能夠理解的簡化語言。部分程式設計語言能實作 just-in-time 編譯,IDE 則可從應用程式內將人類可讀的程式碼轉換為機器語言。
測試
IDE 可讓開發人員在將軟體與其他開發人員的程式碼整合,執行更複雜的整合測試之前,於本機自動執行單元測試。
偵錯
偵錯是將測試時發現的任何錯誤加以修正的程序。IDE 在於偵錯的一大價值為,在它執行程式碼並檢查其行為時,您可一行行地逐步歷經程式碼。IDE 也整合數個偵錯工具,就連開發人員正在鍵入,也能即時突顯人為造成的錯誤。
IDE 的類型有哪些?
整合式開發環境 (IDE) 取決於支援的應用程式開發以及運作方式,可大致分為幾種類別。然而,許多 IDE 軟體應用程式可歸屬於多重類別。以下舉出 IDE 的幾種類型:
本機 IDE
開發人員直接在本機安裝並執行本機 IDE。此外,取決於程式碼編寫偏好、專案要求和開發語言,也必須下載安裝其他各種程式庫。雖然本機 IDE 可自訂,安裝後也不需要網際網路連線,但有幾個缺點:
- 耗時、安裝困難。
- 會耗用本機資源,明顯拖慢機器的效能。
- 本機與生產環境之間的設定差異能提高軟體發生錯誤的機會。
雲端 IDE
開發人員使用雲端 IDE 直接在瀏覽器內編寫、編輯及編譯程式碼,無需下載軟體至本機。雲端 IDE 有勝過傳統 IDE 的數個優勢。以下是部分優勢:
標準化開發環境
軟體開發團隊可集中設定雲端 IDE,建立標準開發環境。此法有助於避免由於本機設定差異可能導致的錯誤。
平台獨立性
雲端 IDE 在瀏覽器上運作,與本機開發環境分立。換言之,能與雲端廠商的平台直接連線,開發人員可從任何機器使用。
提升效能
IDE 中的建置和編譯功能需要大量的記憶體,會拖慢開發人員的電腦。雲端 IDE 使用雲端的運算資源,能釋出本機的資源。
應當如何選擇 IDE?
市面上有許多現代化的整合式開發環境 (IDE),有多種功能和價位可供選擇。許多 IDE 是開放原始碼,或可免費使用與設定。以下是選擇 IDE 時應考量的一些標準:
程式設計語言
您編寫程式碼所想使用的程式設計語言,經常決定應當選擇的 IDE。專用 IDE 有自動化功能,尤其適合特定語言的語法。另一方面,多重語言的 IDE 可支援多種語言。
作業系統
雖然大多數 IDE 有適合不同作業系統的多種版本,但可能在特定平台上的運作效果更佳。例如,部分 IDE 在 Linux 平台上執行表現最佳,在其他平台上使用起來卻緩慢,甚至難用。
自動化功能
大多數 IDE 的三大常見功能是原始程式碼編輯器、建置自動化和偵錯工具。其他功能各有差異,可能包括下列這幾種:
- 程式碼編輯器 UI 增強
- 自動測試功能
- 經由外掛程式整合的程式碼部署支援
- 程式碼重構支援
- 應用程式套件支援
IDE 自訂
部分 IDE 也能配合開發人員的需求和偏好,具有自訂工作流程的功能。您可下載並使用外掛程式、擴充功能及附加功能,自訂程式設計體驗。
什麼是 AWS Cloud9?
AWS Cloud9 是一種雲端整合開發環境 (IDE),可在瀏覽器內直接用以編寫、執行和偵錯程式碼。這是多重語言的 IDE,支援 40 多種語言,包括 JavaScript、Python、PHP、Ruby、Go 及 C++。含有程式碼編輯器、數個建置自動化工具,並支援無伺服器應用程式。具有獨特的優勢,包括:
- 基於標準程式庫的程式碼填寫
- 連接任何 Linux 伺服器平台
- 內建的影像編輯器
- 與 AWS CodeStar 整合,加快將應用程式部署至 AWS
開始使用 AWS Cloud9,或至 Cloud9 常見問答集頁面了解更多資訊。