㈠ 編程都有哪些語言
目前最主要的便是這五種語言:
1.python:
Python是一門易讀、易維護,並且被大量用戶所歡迎的、用途廣泛的語言。由於具有豐富和強大的庫,又被稱為膠水語言,Python 極其容易上手,主要源於Python有極其簡單的說明文檔。
Python 的應用領域分為系統編程,用戶圖形介面,Internet 腳本,組件集成,資料庫編程,快速原型,數值計算和科學計算編程,游戲、圖像、人工智慧、XML 、機器人編程等等。
2.java
Java擁有跨平台、面向對象、泛型編程的特性,非常受企業的喜歡,廣泛應用於企業級Web應用開發和移動應用開發。
Java發展到現在,按應用來分主要分為三大塊:J2SE、J2ME、J2EE。三塊應用范圍不同,但卻相互補充。廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
3.C語言/C++:
C語言是一種通用的命令式編程語言,它起源於19世紀70年代,是大學裡面計算機專業學的第一門編程語言,使用相當廣泛,並且深遠地影響了其後的幾乎每一種語言。
C++最初是作為C語言的增強版出現,C++是一種靜態數據類型檢查的、支持多重編程範式的通用程序設計 語言。C++被用在一些知名軟體中,比如Firefox、 Winamp以及Adobe programs。
目前而言,C語言主要用來開發底層模塊(比如驅動、解碼器、演算法實現),服務應用(比如web伺服器)和嵌入式應用(比如微波爐里的程序)。C++也可以做這些,不過由於C++的復雜性和標准問題,人們還是更願意使用C來做。
4.JavaScript:
JavaScript是一種基於對象和事件驅動並具有相對安全性的客戶端腳本語言。聽起來好像和java有些關系,然而卻不是的,只不過名字像而已。
同時JavaScrip也是一種廣泛用於客戶端Web開發的腳本語言,常用來給HTML網頁添加動態功能,比如響應用戶的各種操作。JavaScript也可以用在游戲開發等方面。
5.PHP:
PHP(Hypertext Processor) 是一種免費的強大的伺服器端腳本語言,主要目標是允許網路開發人員快速編寫動態頁面,同時也被廣泛應用於其他領域。
如 Web 開發並可嵌入 HTML 中去,受到web開發者的歡迎。包括Wordpress、Digg以及Facebook在內均使用了該語言。
PHP的語法利用了C、Java 和Perl,易於學習。目前PHP的應用范圍已經相當廣泛,尤其是在網頁程式的開發上。
㈡ linux下的shell是什麼
什麼是shell
shell是用戶和Linux
操作系統
之間的
介面
。Linux中有多種shell,其中預設使用的是Bash。本章講述了shell的工作原理,shell的種類,shell的一般操作及Bash的
特性
。
什麼是shell
Linux系統的shell作為操作系統的
外殼
,為用戶提供使用操作系統的介面。它是
命令語言
、命令
解釋程序
及
程序設計語言
的統稱。
shell是用戶和
Linux內核
之間的介面
程序
,如果把Linux內核想像成一個
球體
的中心,shell就是圍繞
內核
的外層。當從shell或其他程序向Linux傳遞命令時,內核會做出相應的反應。
shell是一個命令語言
解釋器
,它擁有自己內建的shell命令集,shell也能被系統中其他
應用程序
所調用。用戶在提示符下輸入的命令都由shell先解釋然後傳給Linux核心。
Shell是一種具備
特殊功能
的程序,
它是介於使用者和
UNIX/linux
操作系統之核心
程序(kernel)間的一個介面。為什麼我們說
shell
是一種介於系統核心程序與使用者
間的中介者呢?讀過操作系統概論的讀者們都知道操作系統是一個
系統資源
的管理者與分
配者,當您有需求時,您得向系統提出;從操作系統的角度來看,它也必須防止使用者因
為錯誤的操作而造成系統的傷害?眾所周知,對
計算機
下命令得透過命令(command)
或
是程序(program);程序有編譯器(compiler)將程序轉為
二進制代碼
,可是命令呢?
其實shell
也是一支程序,它由
輸入設備
讀取命令,再將其轉為計算機可以了解的機械碼,
然後執行它。
各種操作系統都有它自己的
shell,以
DOS
為例,它的
shell
就是
command.com文
件。如同
DOS
下有
NDOS,4DOS,DRDOS
等不同的命令解譯程序可以取代標準的
command.com
,UNIX
下除了
Bourne
shell(/bin/sh)
外還有
C
shell(/bin/csh)、
Korn
shell(/bin/ksh)、Bourne
again
shell(/bin/bash)、Tenex
C
shell(tcsh)
等其它的
shell。UNIX/linux將
shell
獨立於核心程序之外,
使得它就如同一般的應用
程序,
可以在不影響操作系統本身的情況下進行修改、更新版本或是添加新的功能。
有一些命令,比如改變工作目錄命令cd,是包含在shell
內部
的。還有一些命令,例如
拷貝
命令cp和移動命令rm,是存在於
文件系統
中某個目錄下的單獨的程序。對用戶而言,不必關心一個命令是建立在shell內部還是一個單獨的程序。
shell首先檢查命令是否是
內部命令
,若不是再檢查是否是一個應用程序(這里的應用程序可以是Linux本身的
實用程序
,如ls和rm,也可以是購買的商業程序,如xv,或者是
自由軟體
,如emacs)。然後shell在搜索
路徑
里尋找這些應用程序(搜索路徑就是一個能找到可執行程序的目錄列表)。如果鍵入的命令不是一個內部命令並且在路徑里沒有找到這個
可執行文件
,將會顯示一條錯誤信息。如果能夠成功找到命令,該內部命令或應用程序將被分解為
系統調用
並傳給Linux內核。
shell的另一個重要特性是它自身就是一個解釋型的程序設計語言,shell程序設計語言支持絕大多數在
高級語言
中能見到的程序
元素
,如
函數
、
變數
、
數組
和程序控制結構。shell
編程語言
簡單易學,任何在提示符中能鍵入的命令都能放到一個可執行的shell程序中。
當普通用戶成功登錄,系統將執行一個稱為shell的程序。正是shell進程提供了命令行提示符。作為默認值(TurboLinux系統默認的shell是BASH),對普通用戶用「$」作提示符,對超級用戶(root)用「#」作提示符。
一旦出現了shell提示符,就可以鍵入
命令名稱
及命令所需要的
參數
。shell將執行這些命令。如果一條命令花費了很長的時間來運行,或者在屏幕上產生了大量的輸出,可以從
鍵盤
上按ctrl+c發出中斷
信號
來中斷它(在正常結束之前,中止它的執行)。
當用戶准備結束登錄對話進程時,可以鍵入logout命令、exit命令或文件結束符(EOF)(按ctrl+d實現),結束登錄。
㈢ 式編程,命令式編程()和函數式編程的區別
編程語言主要有四種類型
聲明式編程:專注於」做什麼」而不是」如何去做」。在更高層面寫代碼,更關心的是目標,而不是底層演算法實現的過程。
ex: css, 正則表達式,sql 語句,html, xml…
命令式編程(過程式編程) : 專注於」如何去做」,這樣不管」做什麼」,都會按照你的命令去做。解決某一問題的具體演算法實現。
函數式編程:把運算過程盡量寫成一系列嵌套的函數調用。
函數式編程強調沒有」副作用」,意味著函數要保持獨立,所有功能就是返回一個新的值,沒有其他行為,尤其是不得修改外部變數的值。
所謂」副作用」(side effect),指的是函數內部與外部互動(最典型的情況,就是修改全局變數的值),產生運算以外的其他結果。
㈣ 少兒編程,Scratch還是Python怎麼選
暴露年齡一下,少兒編程不應該是Pascal嗎?
高 科技 時代的到來,家長對少兒編程越來越重視,很多家長也遇到了這樣一個問題:「我的孩子剛開始學習編程,應該選擇哪一種編程語言呢? 是選擇Python,還是Scratch,或者其他的編程語言呢?
目前國內比較流行的少兒編程語言有四大類,Scratch、Python、C語言和C++,而這其中的兩大常用基礎語言就是Scratch和Python,很多家長比較疑惑,孩子如果都上初中了是不是不用學Scratch,可以直接學Python呢,那麼,到底這兩種語言有什麼區別呢?
一、Scratch
二、Python
Python是由荷蘭數學和計算機科學研究學會的Guido van Rossum 於1990 年代初設計,作為一門叫做ABC語言的替代品。Python是一種計算機程序設計語言,供了高效的高級數據結構。是一種面向對象的動態類型語言,最初被設計用於編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越來越多被用於獨立的、大型項目的開發。
由於Python語言的簡潔性、易讀性以及可擴展性,在國外用Python做科學計算的研究機構日益增多,一些知名大學已經採用Python來教授程序設計課程。
三、Scratch和Python的區別
1、首先是開發目的不同。Scratch是專注於提供適用於兒童的編程語言和工具,而Python是一種計算機編程語言,更多的被用於計算機項目。
2、其次是使用對象不同,Scratch針對兒童,可視化語言可以很好的幫助學生學習基本的邏輯、關系推理、數學的概念,同時避免過早的接觸到「形式運算階段」之後才能理解的抽象的演繹推理。Python是有編程興趣後,更多的去自主研究學習。
3、還有學習方式不一樣。scratch是界面色彩豐富,圖形化編程,只要用滑鼠拖動圖標就可以,通過一步一步指導,可以做出很復雜的作品。python是命令式編程,需要有基本的文字能力,如果是急性子的識字量又不夠,會很容易失去興趣;但是它是高級語言,靈活性高,學會後,能夠做的事情遠遠比scratch多。
所以,孩子學習少兒編程,選擇Python,還是Scratch?
對於低年級的孩子,我推薦Scratch作為學習編程的起點。當然也有一些特例,但對於80%的孩子,我還是建議從Scratch開始學習,因為Scratch確實很有趣,而且也確實能夠教會孩子重要的計算科學原理。畢竟,我們希望孩子從小就對編程有一個積極正面的認識和體驗,而不是說要給他們壓力——讓他們從小就樹立起成為專業程序員的目標。
通常,孩子進入高年級的時候,很適合從Scratch過渡到學習Python,因為一般來說,孩子在這個階段的學習和認知能力已經達到了一定的水平,學習Python不再是一件困難的事情。可以開始按部就班地學習文本式編程。
看孩子多大,和興趣。
三年級以下可以優先考慮Scratch,積木搭建式編程方式讓很多人能更快接受,也更感興趣。
三年級以後可以優先考慮Python和C++,這時候有部分孩子傾向代碼式編程,所以這兩者都可以選擇。
總之看孩子們的興趣,假如考慮競賽,那就按競賽要求選擇了。
㈤ python是一種什麼類型的編程語言
Python是一門跨平台、開源、免費的解釋型高級動態編程語言。
除了解釋執行,Python還支持偽編譯將源代碼轉換為位元組碼來優化程序提高運行速度和對源代碼進行保密,並且支持使用py2exe、pyinstaller、cx_Freeze或其他類似工具將Python程序及其所有依賴庫打包為擴展程序名exe的可執行程序,從而可以脫離Python解釋器環境和相關依賴庫而在Windows平台上獨立運行。
Python支持命令式編程、函數式編程、完全支持面向對象程序設計,語法簡潔清晰,並且擁有大量的幾乎支持所有領域應用開發的成熟擴展庫;也有人喜歡把Python稱為"膠水語言」,因為它可以把多種不同語言編寫的程序融合到一起實現無縫拼接,更好得發揮不同語言和工具的優勢,滿足不同應用領域的需求。
語言特點
簡單:Python是一種代表簡單主義思想的語言。閱讀一個良好的Python程序就感覺像是在讀英語一樣。它使你能夠專注於解決問題而不是去搞明白語言本身。
易學:Python極其容易上手,因為Python有極其簡單的說明文檔。
易讀、易維護:風格清晰劃一、強制縮進。
速度快:Python的底層是用C語言寫的,很多標准庫和第三方庫也都是用C寫的,運行速度非常快。
免費、開源:Python是FLOSS(自由/開放源碼軟體)之一。使用者可以自由地發布這個軟體的拷貝、閱讀它的源代碼、對它做改動、把它的一部分用於新的自由軟體中。FLOSS是基於一個團體分享知識的概念。
㈥ Scala這個有知道的嗎,怎麼樣啊
Scala是一門多範式語言,一般常用的範式有:命令式 和 函數式,由於Scala是一門多範式語言,所以通俗來說我們可以說Scala是一門命令式編程語言同時也是函數式編程語言。
命令式:命令式是植根於馮·諾依曼體系的,一個命令式程序就是一個馮·諾依曼機的指令序列,給機器提供一條又一條的命令序列讓其原封不動的執行。通俗來說就是按照指令順序一步一步執行。
函數式:又稱泛函編程,它將計算機的計算視為數據中的函數計算。函數式編程最重要的基礎是λ(lambda)演算,λ演算對函數式編程語言有著巨大的影響。典型的函數式語言包括Erlang和Lisp等。
為什麼要用函數式:
目前來說CPU的性能發展大體上是在同等面積上集成更多的晶體管等集成電路,隨著納米技術的不斷提高,CPU能夠集成的計算單元也越來越多,但終歸是有上限的。所以在之後,單核的發展逐漸走向了多核的發展,以多核來達到性能的提升。
目前計算機的CPU基本上都是多核CPU,在使用命令式編程的時候就設涉及到多線程之間的狀態共享,需要鎖機制實現並發的控制,而鎖機制雖然保證了安全性,但是卻對性能來說是一個阻礙。
而函數式編程不會再多個線程之間共享狀態,不需要用鎖機制,可以更好的並行處理,充分利用多核CPU的並行處理能力。
如,電信行業多數使用Erlang來進行開發,就是看中了函數式編程的並行處理能力。
Scala的特點
Scala是面向對象的:Scala是一個純面向對象語言,在某種意義上來講所有數值都是對象。對象的類型和行為是由class和trait來描述的。Class的抽象可由子類化和一種靈活的基於mixin的組合機制(它可作為多重繼承的簡單替代方案)來擴展。
Scala是函數式的: Scala還是一個函數式語言,在某種意義上來講所有函數都是數值。Scala為定義匿名函數提供了一種輕量級的語法,它支持高階(higher- order)函數、允許函數嵌套、支持局部套用(currying)。Scala的case類及其內置支持的模式匹配模型代數類型在許多函數式編程語言中 都被使用。
Scala是靜態類型的:Scala配備了一套富有表現力的類型系統,該抽象概念以一種安全的和一致的方式被使用。
Scala是可擴展的:Scala的設計承認了實踐事實,領域特定應用開發通常需要領域特定語言擴展。Scala提供了一個獨特的語言組合機制,這可以更加容易地以類庫的形式增加新的語言結構:兩者結合使用可方便地定義新語句,無需擴展語法,也無需使用類似宏的元編程工具。
任何方式可以被用作中綴(infix)或後綴(postfix)操作符
閉包按照所期望的類型(目標類型)自動地被構造
Scala可與Java和.NET進行互操作:Scala 設計時就考慮了與流行編程環境良好交互,如Java 2運行時環境(JRE)和 .NET框架(CLR)。特別是與主流面向對象語言,如Java和C#盡量無縫交互。Scala有像Java和C#一樣的編譯模型(獨立編譯,動態裝載 類),允許訪問成千上萬的高質量類庫。
㈦ c語言的編程範式是命令式還是聲明式
C語言編程,顧名思義,就是用C語言來進行計算機編程工作。C語言是國際上廣泛流行的,很有發展前途的計算機高級語言.它適合作為系統描述語言,即可用來編寫系統軟體,也可用來編寫應用軟體.
㈧ java支持的編程範式
Java編程範式
1.命令式編程
核心內容就是:「用語句更改程序的狀態」
大多數流行的編程語言都或多或少基於命令式編程發展而來,命令式語言最典型的實例就是C語言
2.面向對象編程
面向對象編程經常與命令式編程聯系在一起,在實踐當中,兩者是可以共存的。Java就是這種協作的生動證明
面向對象基於四個基本原則:封裝、繼承、多態、抽象
3.聲明式編程
與命令式編程相反,聲明式編程它指定程序應該做什麼,而不具體說明怎麼做。
純粹的聲明式語言包括資料庫查詢語言(如SQL和Xpath)以及正則表達式。
與命令式編程語言相比,聲明式編程語言更加抽象,它們並不模擬硬體結構,因此不會改變程序狀態,而是將它們轉換為新狀態,並且更接近數學邏輯
通常,非命令是的編程範式都被認為屬於聲明式類別。
4.函數式編程
函數式編程是聲明式編程的子範式,與命令式編程相反,函數式變成不會改變程序的內部狀態。
在函數式編程術語中,函數類似於數學函數,函數的輸出僅依賴於其參數,而不管程序的狀態如何,完全不受函數式是何時執行的影響
函數式語言受歡迎的原因之一是它們可以輕松的在並行環境中運行,這與多線程不太一樣,函數式語言支持並行的關鍵在於它們的基本原理:函數僅依賴與輸入參數而不依賴於程序的狀態。它們可以在任何地方運行,然後將多個並行執行的結果連接起來並進一步使用