軟件入門的知識之程序設計語言Java和C#的簡單介紹和對比[圖]:
前言:
要作軟件就必然會涉及到程序設計語言,它是什麼?有哪些特色?又有哪幾部分組成的呢?在這裏咱們爲你們作了一個總結,但願能夠經過這些內容讓你們對於程序設計語言有一個大概的認識。
基本概念:
一、低級/高級
計算機的硬件只能夠識別由一、0組成的機器指令程序,因此機器指令是最基本的計算機語言。因爲機器指令是由特定的計算機系統所固有的、面向機器的語言,因此使用機器語言進行程序設計,效率低、可讀性差、難以理解,並且也不便修改和維護。後來出現了由符號標識的彙編指令組成的彙編語言,它和機器語言很是接近,在書寫格式上很大程度上決定於於計算機的機器指令,因此它在使用時也不是很方便,正是由於這種操做和後期維護上的不便等因素人們把機器語言和彙編語言稱之爲低級語言。
在低級語言的基礎上,人們開發出了功能更強、抽象級別更高的程序設計語言,因而就出現了各類面向各種應用程序的設計語言,這些咱們統稱爲高級語言,好比常見的Java、C、C++、PHP等都屬於高級語言的範疇,這些語言顯著的特色就是和人們使用的天然語言十分接近,提升了程序的設計效率。
二、編譯/解釋
在前邊咱們介紹過計算機只能夠識別由0、1組成的機器語言,那麼高級語言是如何被計算機識別的呢?顯然計算機在識別高級語言以前須要先進行翻譯,完成這項任務的程序被咱們稱之爲語言處理程序。高級語言的翻譯有不少形式,不過最基本的方式只有三種,即彙編、解釋、編譯。
用高級語言或者彙編語言編寫的程序咱們稱之爲源程序,它們不能夠直接在計算機上執行,它們須要相應的翻譯程序進行處理,變成計算機能夠識別的內容,被翻譯以後的程序咱們稱之爲目標程序。那麼高級語言採用的編譯和解釋兩種方式有哪些區別呢?這裏咱們對這部份內容作個總結。
解釋程序,有時候也叫作解釋器,它或者是直接解釋執行的源程序,或者是將源程序翻譯成某種中間代碼後再加以執行;編譯程序則是將源程序翻譯爲目標程序,而後再在計算機上運行。這兩種方式的根本區別在於:編譯方式下,計算機中運行的是和源程序等價的目標程序,源程序和編譯程序都再也不參與目標程序的執行;相反在解釋方式下,解釋程序和源程序仍是會參與到程序的運行中,運行程序的控制權在解釋程序。更加簡單的說就是在解釋方式下,翻譯源程序再也不參與目標程序的執行過程,而編譯器則將源程序翻譯成獨立保存的目標程序。
程序語言的分類
程序設計語言分類沒有統一的標準,按照編程時的思惟特色能夠將程序分爲結構化程序設計語言、面向對象程序設計語言、函數式程序設計語言以及邏輯型程序設計語言等,下邊咱們就對主要的一些內容作個簡單的介紹。
一、結構化程序設計語言
它是基於動做的語言,在這種語言中計算被看做是動做的序列,C語言就是顯著的表明。結構化設計語言的特性反應在以下幾個方面:
第一, 使用自上而下的逐步精華的方法進行編程;
第二, 按照模塊組成的方法進行變成;
第三, 程序只包含順序、斷定、以及循環構造。
結構化設計語言的結構簡單清晰,模塊化強,描述方式接近人們習慣的推理方式,因此可讀性很好,並且在軟件的重用性和維護方面都有所進步。
二、面向對象程序設計語言
目前最流行的設計語言,常見的Java、C++、C#等都是面向對象設計語言的顯著表明,它們支持數據隱藏、數據抽象、用戶定義類型、繼承、多態等機制。
三、其餘
除告終構化程序設計語言和麪向對象設計語言,還有函數式設計語言和邏輯式設計語言,由於我自己也不是特別瞭解,只是知道有這種說法,因此在這裏就很少作介紹了,若是感興趣的話,能夠到網上百度相關的資料,也歡迎您經過微信公衆號和我分析您的學習收穫。
常見的程序設計語言
從最初的FORTRAN設計語言興起到如今,程序設計語言通過不斷的修改和創新,出現了不少優秀的設計語言,這裏咱們總結了一些常見的設計語言。
一、FORTRAN
第一個被普遍應用於科學計算的高級語言。一個FORTRAN程序有一個主程序和若干子程序組成。不過發展到如今這門語言和最初的版本已經有了很大的差異。
二、PASCAL
一種結構化程序設計員,從ALGOL演化而言,不過功能更增強大,在這種設計語言中將程序和過程合二爲一,統一成過程,並且過程能夠嵌套和遞歸。
三、前端代碼的性能
這主要是針對瀏覽器而言,簡單說就是訪問頁面所用的時間。這個時間包括後端處理、代碼文件傳輸、頁面渲染、JS文件加載和運行,爲了縮短這部分時間須要咱們編寫簡潔而且符合標準的代碼,同時經過壓縮文件等手段來減小文件傳輸的時間。
四、C
20世界70年代發展起來的一種通用的程序設計語言,主要在UNIX系統以及運行在UNIX系統上的軟件中使用,兼具了高級語言和彙編語言的特色,提供了一個高效的執行語句而且容許程序員能夠直接訪問操做系統和底層軟件,因此在系統級應用、實時處理和嵌入式應用的開發中稱爲主要的程序設計語言。
五、C++
在C語言基礎上發展而來,和C兼容。在C++中,主要的是增長了類機制,使其稱爲一種面向對象的程序設計語言。
六、Java
20 世紀90 年代發展起來的面向對象的設計語言,最初用來開發網絡瀏覽器的小應用程序,不過由於是一種通用的程序設計語言,因此目前獲得了普遍的應用。在Java中保留了C++的基本語法、類、繼承等概念,刪除了一些C++不太友好的特徵,因此和C++相比,Java更加的簡單,語法和語義也更加合理。
七、PHP
一種能夠在服務端執行,嵌入HTML文檔的腳本語言,語言的風格很是相似C語言,被網站編程開發人員普遍的使用。PHP能夠快速的執行動態網頁,語法也混合了C、Java這些語言,同時還添加了一些自創的內容。
八、Python
一種面向對象的解釋型程序設計語言,能夠用來編寫獨立的程序,支持對操做系統底層的訪問,能夠將Python源程序翻譯爲字節碼在虛擬機上運行。雖然內核很小,可是提供了豐富的基本構件塊,還可使用C、C++、Java等程序進行擴展,所以能夠用來開發任何類型的程序。
九、Delphi
可視化的開發工具,在window環境下運行,採用面向對象的編程語言Object Pascal和基本構件的開發結構框架,主要的特徵是爲基本窗體和麪向對象的方法、告訴的編譯器、強大的數據庫支持和Window編程緊密結合以及成熟的組件技術。
程序設計語言組成
程序設計語言是由哪幾部分組成的呢?在這裏咱們針對一些常見的設計語言的特色給你們作一個簡單的總結和介紹。
一、數據
在程序設計語言中針對不一樣的內容有不一樣的數據類型,數據類型對應的對象則對應着應用中具備特殊意義的組成,它的名稱被咱們稱之爲標識符,由數字、字母、下劃線組成。對於數據而言按照不一樣的角度能夠進行以下劃分:
常量/變量,這種劃分番薯主要是按照程序運行的時候值是否能夠被改變來劃分的,常量的值在程序運行中不能夠被改變,而變量在程序運行中能夠改變。
全局/局部變量,這種劃分方式是按照做用範圍來劃分的。全局變量做用域是整個文件和程序,而局部變量的做用域只是在定義它的函數或者程序塊中。
二、流程控制
流程控制語句,經過這些控制語句咱們能夠實現一些邏輯上的控制,主要的控制語句有三種,即順序結構、選擇結構和循環結構,下邊咱們就來簡單瞭解下這些流程控制語句。
如上所示是一個順序結構的示意圖,表示一個操做序列,從第一個操做開始,按照順序依次向後執行,直到序列的最後一個操做。
如上所示就是一個選擇結構的示意圖,經過判斷給定的條件是否成立,而後按照判斷的結果執行相應的操做。html
除了順序結構和選擇結構外,就是循環結構,描述了重複執行的過程,對於一個循環結構通常是由初始化、循環體、循環條件三部分組成的。湯姆索亞歷險記(http://www.simayi.net/dushubiji/6113.html)讀書筆記摘抄好詞好句及感悟賞析,常見的循環結構有兩種,一種是while結構,另外一種是do-while結構。
其中while結構以下所示:
這種結構顯著的特色就是進入循環以前必須是判斷條件成立,反之若是進入循環前判斷條件不成立則不能進入循環體中。而do-while結構以下所示:
和while結構不一樣,do-while結構能夠先進入循環體中執行一次,而後再進行判斷。
三、其餘
傳輸,指明語言容許的傳輸方式,好比賦值處理、數據的輸入和輸出等。
函數,程序中重要的組成,它是一段具備獨立功能的程序,和函數密切相關的操做是函數定義、函數聲明以及函數調用。
後記:
我整理了一些軟件入門的知識,包括程序語言的簡單介紹以及軟件開發過程的描述等內容,若是您對感受這些內容對您的學習或者工做有所幫助的話,歡迎轉發給周圍的朋友,感謝您的支持!前端