單體式應用程式

軟件工程中的單體式應用程式  是指單層的應用程序 ， 其用戶界面和資料存取程式整合在單一系統平臺上的一個程式裏 。 單體式應用程式可以獨立運作 ， 不會受到其他應用程式的影響 。 其設計理念是此應用程式不只負責單一特定任務 ， 所負責的是要完成特定功能所需要進行的所有步驟 。 像目前有些個人財務管理軟體就屬於單體式應用程式 ， 可以讓使用者進行單一任務 ， 以端到端的方式進行 ， 類似信息煙囪 ， 不是大型應用程式中的一部份 。 有些文字處理器也屬於單體式應用程式 。 有時這些應用程式是用在大型計算機上 。 在軟件工程中 ， 單體式應用程式是指在設計時沒有考慮模組化的程式 。 一般而言會希望軟體有模組化的特性 ， 因爲可以複用應用邏輯中的一部份 ， 在維護時也可以只更換應用程式中的一部份 ， 不需更改整個應用程式 。 若要達到模組化的特性 ， 有許多不同的做法 。 以程式碼爲基礎的模組化是讓開發者複用應用程式中的一部份 ， 也可能進行修改 ， 不過需要有開發工具實現這些機能 ， 而應用程式也需要重新編譯 。 以物件爲基礎的模組化會將應用程式變成許多的執行檔 ， 各執行檔可以獨立維護 ， 也可以更換 ， 不需要重新佈置整個應用程式 （ 例如動態鏈接庫 ， Sun / UNIX中的 「 共用物件 」 檔 ） 。 有些系統可以在物件之間傳送資訊 ， 因此物件爲基礎的應用程式可以分散在不同的電腦上 （ 例如微軟的COM + ） 。 服務導向架構是用特殊的通訊標準或通訊協定 ， 在各模組之間進行通訊 。 「 單體式應用程式 」 原來的意思是指沒有模組化的大型電腦應用程式 。 此一特點 ， 再加上運算能力的快速提升 ， 以及軟體可解決問題的難度越來越高 ， 最後會產生無法維護的系統以及軟件危機