複製鏈接
請複製以下鏈接發送給好友

應用程序開發語言

鎖定
應用程序開發語言又稱軟件實現。 軟件實現(Software Implementation)不等同於純粹的編程,它是“編程、內部測試、代碼審查、調試改錯、優化”的綜合表述。軟件實現是人員最多、時間最長、工作量最大的開發階段。 [1] 
中文名
應用程序開發語言
外文名
Application development language
別    名
軟件實現
定    義
程序開發階段
系    統
計算機
應用學科
計算機原理

應用程序開發語言軟件簡介

軟件實現(Software Implementation)不等同於純粹的編程,它是“編程、內部測試、代碼審查、調試改錯、優化”的綜合表述。軟件實現是人員最多、時間最長、工作量最大的開發階段。
軟件設計思路和方法的一般過程,包括設計軟件的功能及實現的算法和方法,軟件的總體結構設計和模塊設計,編程和調試,程序聯調和測試以及編寫、提交程序。
軟件編碼是指把軟件設計轉換成計算機可以接受的程序,即寫成以某一程序設計語言表示的“源程序清單”。充分了解軟件開發語言、工具的特性和編程風格,有助於開發工具的選擇以及保證軟件產品的開發質量。
當前軟件開發中,除在專用場合外,已經很少使用20世紀80年代的高級語言了,取而代之的是面向對象的開發語言,而且面向對象的開發語言和開發環境大都合為一體,大大提高了開發的速度。 [1] 

應用程序開發語言程序設計語言的分類

程序設計語言種類很多,可從不同的角度對其進行分類。
1)以語言層次可分為面向機器的語言和麪向問題的語言。
(1)面向機器的語言。依賴於具體的機器硬件結構,其語句和計算機的硬件操作相對應,包括機器語言和彙編語言。機器語言二進制的0、1代碼指令系統構成,它是計算機唯一可以直接識別和執行的語言。其指令系統因機器而異,不同機器具有不同的機器語言,這類語言難學難記。彙編語言是符號化的機器語言,語句符號與機器指令直接對應,雖然其易讀性、易理解性相對機器語言已經有了很大的改善.但依然編寫出的程序難讀、難維護、易出錯、通用性差,因此,一般不應用於上層應用軟件開發。面向機器的語言具有可直接訪問系統接口、程序運行效率高等優點,可在某些特殊領域或需要的環境中使用。
(2)面向問題的語言。面向問題的語言也稱為高級語言,這類語言脱離了具體機器的硬件環境的限制,直接面向所要解決的應用問題。高級語言使用的概念和符號與自然語言比較相近,便於掌握和理解,並具有通用性強、編程效率高、代碼可閲讀性強、易於修改和維護等特點,因而在現代軟件開發過程中被廣泛使用。
2)以語言適用性可分為通用語言和專用語言
(1)通用語言。可以面向所有編程問題,不受專業和領域的限制,BASICFORTRANALGOLCPascal等,均屬這類語言。
(2)專用語言。專用語言是為了某種特殊應用而設計的具有獨特語法形式的語言。它侷限於某些特殊的應用領域,應用範圍比較窄。如APL—Array Processing Language是為數組和向量運算設計的簡潔而功能很強的語言,卻幾乎不提供結構化的控制結構和數據類型。
3)以語言面向分為面向過程的語言和麪向對象的語言。
(1)面向過程的語言。面向過程的語言即傳統的結構化程序設計語言,該類語言強調程序設計算法和數據結構,基本思想可概括為程序等於數據結構加上算法,如C語言等。
(2)面向對象的語言。面向對象的語言是最為流行的一類高級語言。它引入了現實生活中對象的觀念,提供了封裝、繼承、多態、消息等機制。這類語言有Small Talk、C++JavaC#等。
4)高級語言的常見分類
(1)從應用特點分,高級語言又可分為通用語言、現代語言和專用語言三類。
①通用語言。它們的特點是出現早、應用廣泛。有大量軟件庫,為最廣泛的人所熟悉和接受。屬於這類語言的有BASIC、FORTRAN、COBOL和ALGOL等。這些語言創始於20世紀50年代或20世紀60年代,部分性能已老化。
②現代語言。現代語言也稱為結構化語言。其特點是直接提供結構化的控制結構,具有很強的過程能力和數據結構能力。ALGOL是最早的結構化語言,同時它又是基礎語言,由它派生出來的Pascal、C以及Ada等語言已應用在非常廣泛的領域中。
③專用語言。專用語言是指為某種特殊應用而設計的獨特語言。
(2)從語言的內在特點分.高級語言還可分為系統實現語言、靜態高級語言、塊結構高級語言和動態高級語言四類。
①系統實現語言。系統實現語言從彙編語言發展改進而來,可提供控制語句和變量類型檢驗等功能,但是同時也容許程序員直接對硬件進行操作。C語言就是著名的系統實現語言。
②靜態高級語言。可給程序員提供控制語句和變量説明的機制,但是程序員不能直接控制由編譯程序生成的機器操作。其特點是靜態地分配存儲。這種存儲分配方法雖方便了編譯程序的設計和實現,但對使用這類語言的程序員施加了較多限制。因為這類語言是第一批出現的高級語言.所以使用非常廣泛.其中FORTRAN和COBOL仍然在某些領域使用。
③塊結構高級語言。其特點是提供有限形式的動態存儲分配,存儲管理系統支持程序運行,每當進入或退出程序塊時。存儲管理系統分配存儲或釋放存儲。程序塊是程序中界限分明的區域,每當進入一個程序塊時就中斷程序執行,以便分配存儲,如Pascal和ALGOL等。
④動態高級語言。其特點是動態地完成所有存儲管理,即執行個別語句可能引起分配存儲或釋放存儲。一般地説,這類語言的結構和靜態的或塊結構的高級語言的結構不同,實際上這類語言中任何兩種語言的結構彼此間很少類似。這類語言一般是為特殊應用而設計的,不屬於通用語言。 [2] 

應用程序開發語言特性及其選擇依據

選擇了一種程序設計語言後,就影響到對概要設計和詳細設計的實現。語言的特性對於軟件的測試與維護也有一定的影響,支持結構化構造的語言有利於減少程序環路的複雜性,使程序易測試、易維護。程序設計語言一般具有下面三個特性。
1)工程特性。從軟件工程的觀點、程序設計語言的特性着重考慮軟件開發項目的需要,因為對程序編碼有如下要求:可移植性、開發工具的可利用性、軟件的可複用性、可維護性。
2)技術特性。語言的技術特性會對軟件工程的其餘階段有一定的影響,因此要根據項目的特點選擇相應的語言。
3)心理特性。語言的心理特性指影響程序員心理的語言性能,其在語言的表現上包括以下幾個方面:歧義性、簡潔性、局部性和順序性、傳統性。
為開發一個特定項目選擇程序設計語言時,必須從技術特性、工程特性和心理特性幾方面考慮。在選擇語言時,要從問題需求人手,確定它的要求是什麼,以及這些要求的相對重要性,針對這種需求,需要什麼特性的程序設計語言來實現。由於一種語言不可能同時滿足各種需求,所以要求進行權衡,比較各種可用語言的適用程度,最後選擇最適用的語言。不過,在實際開發中,除考慮需求外,往往還要考慮客户的環境。
選擇語言時,可以從以下幾個方面考慮:
(1)項目的應用領域
項目的應用領域主要包括:
1)科學工程計算,需要大量的標準庫函數,以便處理複雜的數值計算。
2)數據處理與數據庫應用。
3)實時處理。實時處理軟件一般對實時性能的要求很高,可供選擇的語言有彙編語言C語言等。
4)系統軟件。系統軟件很多時候都需要同計算機的硬件打交道,因此在編寫操作系統、編譯系統等系統軟件時,可選用彙編語言C語言等。
(2)軟件開發的方法
有時編程語言的選擇依賴於開發的方法,採用4GL語言適合用快速原型模型來開發。如果是面向對象方法,就必須採用面向對象的語言編程。近年來,推出了許多面向對象的語言,如C#Java等。
(3)軟件開發的環境
良好的開發環境不但能有效提高軟件生產率,同時能減少錯誤,有效提高軟件質量。近幾年推出了許多可視化的軟件集成開發環境,特別是Microsoft公司的c#以及Sun公司的Java等,提供了強有力的調試工具,這些工具可以幫助開發人員快速形成高質量的軟件。
(4)算法和數據結構的複雜性
科學工程計算、實時處理和人工智能領域中的問題算法較複雜,而數據處理與數據庫應用以及系統軟件領域內的問題,數據結構化比較複雜,因此選擇語言時可考慮是否有完成複雜算法的能力,或者有構造複雜數據結構的能力。
(5)軟件開發人員的知識
軟件開發人員已有的知識和經驗對選擇編程語言也有很大的影響。新的語言雖然有吸引力,也會提供較多的功能和質量控制方法,但軟件開發人員若熟悉某種語言,而且有類似項目的開發經驗,一般情況下他們願意選擇曾經成功開發過項目的語言。為了能更好地適應項目的程序設計,開發人員應該經常學習新的程序設計語言,掌握新技術。 [1] 

應用程序開發語言程序設計風格

建立程序設計規範。有助於編寫正確、高效、可維護、通用易讀的程序,使程序結構優化、清晰易讀,並且與設計相一致。
程序設計風格是在長期的編程實踐中形成的一套獨特的習慣做法和方式。優良的程序設計風格可以減少編程錯誤,提高可讀性和維護效率。多人合作編寫一個很大的程序時,相互協調配合更需要強調一致的編程風格。結構化實現的程序設計風格包括5個方面:源程序文檔化、數據説明、語句構造、輸入輸出和效率。面向對象編程風格既包括傳統的程序設計風格準則,也包括為適應面向對象方法所特有的概念(如繼承性等)而遵循的新準則。
1.好程序的標準
對於好程序的標準,20世紀40年代及20世紀50年代的觀點差別很大。當時的計算機內存很小、速度慢,將程序的長度和執行速度看得很重要,甚至放在了首要的位置,需要千方百計地縮短程序長度並減少存儲空間,否則內存不夠,程序無法運行。
隨着硬件技術及速度的提高、價格的下降.計算機的處理速度和內存容量已經不再是制約軟件開發的瓶頸。好程序的標準也發生了根本性變化,對於好程序的標準,不同人的看法不盡相同。公認的好程序具有如下特性:功能齊全,能夠達到用户的使用要求;性能及可靠性高,運行安全高效,各項指標優良;結構簡單、容易理解和使用;易於維護、修改和擴展升級;界面易於操作,使用便捷;移植性及兼容性好;可重用性強,有利於軟件更新。
2.程序設計規範及風格
規範是規定編程時應該遵守規則和書寫的格式等方面的描述。程序易於閲讀是程序設計規範的主要要求,可通過養成良好的程序設計風格解決可閲讀性差的問題。公認的、良好的程序設計風格可減少編程的錯誤,縮短閲讀程序時間,從而提高軟件的開發效率和提高軟件的開發質量。
參考資料
  • 1.    張燕,洪蕾,鍾睿,李慧等編著,軟件工程理論與實踐,機械工業出版社,2012.10,153-154
  • 2.    賴均等編,軟件工程,清華大學出版社,2016.01,第161頁