軟體入門的知識之程式設計語言Java和C#的簡單介紹和對比[圖]

來源:互聯網
上載者:User

標籤:核心   角度   結構化程式設計   允許   前言   依次   語句   調用   第一個   

軟體入門的知識之程式設計語言Java和C#的簡單介紹和對比[圖]:
前言:
要做軟體就必然會涉及到程式設計語言,它是什嗎?有哪些特點?又有哪幾部分組成的呢?在這裡我們為大家做了一個總結,希望可以通過這些內容讓大家對於程式設計語言有一個大概的認識。
基本概念:
1、低級/進階
電腦的硬體只可以識別由1、0組成的機器指令程式,所以機器指令是最基本的電腦語言。由於機器指令是由特定的電腦系統所固有的、面向機器的語言,所以使用機器語言進行程式設計,效率低、可讀性差、難以理解,而且也不便修改和維護。後來出現了由符號標識的彙編指令組成的組合語言,它和機器語言非常接近,在書寫格式上很大程度上決定于于電腦的機器指令,所以它在使用時也不是很方便,正是因為這種操作和後期維護上的不便等因素人們把機器語言和組合語言稱之為低級語言。
在低級語言的基礎上,人們開發出了功能更強、抽象層級更高的程式設計語言,於是就出現了各種面向各類應用程式的設計語言,這些我們統稱為進階語言,比如常見的Java、C、C++、PHP等都屬於進階語言的範疇,這些語言顯著的特點就是和人們使用的自然語言十分接近,提高了程式的設計效率。
2、編譯/解釋
在前邊我們介紹過電腦只可以識別由0、1組成的機器語言,那麼進階語言是如何被電腦識別的呢?顯然電腦在識別進階語言之前需要先進行翻譯,完成這項任務的程式被我們稱之為語言處理常式。進階語言的翻譯有很多形式,不過最基本的方式只有三種,即彙編、解釋、編譯。

用進階語言或者組合語言編寫的程式我們稱之為來源程式,它們不可以直接在電腦上執行,它們需要相應的翻譯程式進行處理,變成電腦可以識別的內容,被翻譯之後的程式我們稱之為目標程式。那麼進階語言採用的編譯和解釋兩種方式有哪些區別呢?這裡我們對這部分內容做個總結。
解釋程式,有時候也叫做解譯器,它或者是直接解釋執行的來源程式,或者是將來源程式翻譯成某種中間代碼後再加以執行;編譯器則是將來源程式翻譯為目標程式,然後再在電腦上運行。這兩種方式的根本區別在於:編譯方式下,電腦中啟動並執行是和來源程式等價的目標程式,來源程式和編譯器都不再參與目標程式的執行;相反在解釋方式下,解釋程式和來源程式還是會參與到程式的運行中,運行程式的控制權在解釋程式。更加簡單的說就是在解釋方式下,翻譯來源程式不再參與目標程式的執行過程,而編譯器則將來源程式翻譯成獨立儲存的目標程式。
程式語言的分類
程式設計語言分類沒有統一的標準,按照編程時的思維特點可以將程式分為結構化程式設計語言、物件導向程式設計語言、函數式程式設計語言以及邏輯型程式設計語言等,下邊我們就對主要的一些內容做個簡單的介紹。
1、結構化程式設計語言
它是基於動作的語言,在這種語言中計算被看作是動作的序列,C語言就是顯著的代表。結構化設計語言的特性反應在如下幾個方面:
第一, 使用自上而下的逐步精華的方法進行編程;
第二, 按照模組組成的方法進行變成;
第三, 程式只包含順序、判定、以及迴圈構造。
結構化設計語言的結構簡單清晰,模組化強,描述方式接近人們習慣的推理方式,所以可讀性很好,而且在軟體的重用性和維護方面都有所進步。
2、物件導向程式設計語言
目前最流行的設計語言,常見的Java、C++、C#等都是物件導向設計語言的顯著代表,它們支援資料隱藏、資料抽象、使用者定義型別、繼承、多態等機制。
3、其他
除了結構化程式設計語言和物件導向設計語言,還有函數式設計語言和邏輯式設計語言,因為我本身也不是特別瞭解,只是知道有這種說法,所以在這裡就不多做介紹了,如果感興趣的話,可以到網上百度相關的資料,也歡迎您通過公眾號和我分析您的學習收穫。
常見的程式設計語言
從最初的FORTRAN設計語言興起到現在,程式設計語言經過不斷的修改和創新,出現了很多優秀的設計語言,這裡我們總結了一些常見的設計語言。
1、FORTRAN
第一個被廣泛應用於科學計算的進階語言。一個FORTRAN程式有一個主程式和若干子程式組成。不過發展到現在這門語言和最初的版本已經有了很大的差別。
2、PASCAL
一種結構化程式設計員,從ALGOL演化而言,不過功能更加強大,在這種設計語言中將程式和過程合二為一,統一成過程,而且過程可以嵌套和遞迴。
3、前端代碼的效能
這主要是針對瀏覽器而言,簡單說就是訪問頁面所用的時間。這個時間包括後端處理、代碼檔案傳輸、頁面渲染、JS檔案載入和運行,為了縮短這部分時間需要我們編寫簡潔並且符合標準的代碼,同時通過壓縮檔等手段來減少檔案傳輸的時間。
4、C
20世界70年代發展起來的一種通用的程式設計語言,主要在UNIX系統以及運行在UNIX系統上的軟體中使用,兼具了進階語言和組合語言的特點,提供了一個高效的執行語句並且允許程式員可以直接存取作業系統和底層軟體,所以在系統級應用、即時處理和嵌入式應用的開發中稱為主要的程式設計語言。
5、C++
在C語言基礎上發展而來,和C相容。在C++中,主要的是增加了類機制,使其稱為一種物件導向的程式設計語言。
6、Java
20 世紀90 年代發展起來的物件導向的設計語言,最初用來開發網路瀏覽器的小應用程式,不過因為是一種通用的程式設計語言,所以目前得到了廣泛的應用。在Java中保留了C++的基本文法、類、繼承等概念,刪除了一些C++不太友好的特徵,所以和C++相比,Java更加的簡單,文法和語義也更加合理。
7、PHP
一種可以在服務端執行,嵌入HTML文檔的指令碼語言,語言的風格非常類似C語言,被網站編程開發人員廣泛的使用。PHP可以快速的執行動態網頁,文法也混合了C、Java這些語言,同時還添加了一些自創的內容。
8、Python
一種物件導向的解釋型程式設計語言,可以用來編寫獨立的程式,支援對作業系統底層的訪問,可以將Python來源程式翻譯為位元組碼在虛擬機器上運行。雖然核心很小,但是提供了豐富的基本構件塊,還可以使用C、C++、Java等程式進行擴充,因此可以用來開發任何類型的程式。
9、Delphi
可視化的開發工具,在window環境下運行,採用物件導向的程式設計語言Object Pascal和基本構件的開發結構架構,主要的特徵是為基本表單和物件導向的方法、告訴的編譯器、強大的資料庫支援和Window編程緊密結合以及成熟的組件技術。
程式設計語言群組成
程式設計語言是由哪幾部分組成的呢?在這裡我們針對一些常見的設計語言的特點給大家做一個簡單的總結和介紹。
1、資料
在程式設計語言中針對不同的內容有不同的資料類型,資料類型對應的對象則對應著應用中具有特殊意義的組成,它的名稱被我們稱之為標識符,由數字、字母、底線組成。對於資料而言按照不同的角度可以進行如下劃分:
常量/變數,這種劃分番薯主要是按照程式啟動並執行時候值是否可以被改變來劃分的,常量的值在程式運行中不可以被改變,而變數在程式運行中可以改變。
全域/局部變數,這種劃分方式是按照作用範圍來劃分的。全域變數範圍是整個檔案和程式,而局部變數的範圍只是在定義它的函數或者程式塊中。
2、流程式控制制
流程式控制制語句,通過這些控制語句我們可以實現一些邏輯上的控制,主要的控制語句有三種,即順序結構、選擇結構和迴圈結構,下邊我們就來簡單瞭解下這些流程式控制制語句。
如上所示是一個順序結構的,表示一個操作序列,從第一個操作開始,按照順序依次向後執行,直到序列的最後一個操作。
如上所示就是一個選擇結構的,通過判斷給定的條件是否成立,然後按照判斷的結果執行相應的操作。

除了順序結構和選擇結構外,就是迴圈結構,描述了重複執行的過程,對於一個迴圈結構一般是由初始化、迴圈體、迴圈條件三部分組成的。湯姆索亞曆險記(http://www.simayi.net/dushubiji/6113.html)讀書筆記摘抄好詞好句及感悟賞析,常見的迴圈結構有兩種,一種是while結構,另一種是do-while結構。

其中while結構如下所示:
這種結構顯著的特點就是進入迴圈之前必須是判斷條件成立,反之如果進入迴圈前判斷條件不成立則不能進入迴圈體中。而do-while結構如下所示:
和while結構不同,do-while結構可以先進入迴圈體中執行一次,然後再進行判斷。
3、其他
傳輸,指明語言允許的傳輸方式,比如賦值處理、資料的輸入和輸出等。
函數,程式中重要的組成,它是一段具有獨立功能的程式,和函數密切相關的操作是函數定義、函式宣告以及函數調用。
後記:
我整理了一些軟體入門的知識,包括程式語言的簡單介紹以及軟體開發過程的描述等內容,如果您對感覺這些內容對您的學習或者工作有所協助的話,歡迎轉寄給周圍的朋友,感謝您的支援!

軟體入門的知識之程式設計語言Java和C#的簡單介紹和對比[圖]

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.