『壹』 什麼叫做開源的
開源:
開源是一個漢語詞語,讀音kāi yuán,常與「節流」連用,意思是開辟收入的新來源;節制支出;減少消耗。這個詞語出自《荀子·富國》。
[釋義]開源:開辟水源;節流:節制水流。比喻增收節支。[語出]《荀子·富國》:「百進時和;事業得敘者;貨之源也;等賦府庫者;貨之流也。故明主必謹養其和;節其流;開其源;而時斟酌焉。」
網路開源:
開源項目、開源代碼、非開源代碼、開源軟體。
開源項目:
開源(Open Source,開放源碼)被非盈利軟體組織(美國的Open Source Initiative協會)注冊為認證標記,並對其進行了正式的定義,用於描述那些源碼可以被公眾使用的軟體,並且此軟體的使用、修改和發行也不受許可證的限制。
開源代碼:
開放源代碼(Open source code)也稱為源代碼公開,指的是一種軟體發布模式。一般的軟體僅可取得已經過編譯的二進制可執行檔,通常只有軟體的作者或著作權所有者等擁有程序的原始碼。有些軟體的作者會將原始碼公開,此稱之為「源代碼公開」,但這並不一定符合「開放原代碼」的定義及條件,因為作者可能會設定公開原始碼的條件限制,例如限制可閱讀原始碼的對象、限制衍生品等。
非開源代碼:
非開源代碼與開源代碼相反,其程序與軟體產品是有產權知識保護的,別人想用就得花錢,想在其基礎上作調整必須經過其同意。就如你電腦用的windows系統。
開源軟體:
開放源碼軟體(open-source)是一個新名詞,它被定義為描述其源碼可以被公眾使用的軟體,並且此軟體的使用,修改和分發也不受許可證的限制。開放源碼軟體通常是有right的,它的許可證可能包含這樣一些限制: 蓄意的保護它的開放源碼狀態,著者身份的公告,或者開發的控制。「開放源碼」正在被公眾利益軟體組織注冊為認證標記,這也是創立正式的開放源碼定義的一種手段。
其它:
盡管 Windows 是被開源社區的人們看不上眼的東西,但是還是有很多的開源軟體能應用於 Windows 。 我記得在 linux 出現之前,就有 GNU 工具被移植到 Windows。現在只是使用開源或者自由軟體,你就能開發出復雜的 Windows 軟體。
還有一個反向的路徑:如果你在開發 Windows 版本的軟體,那麼可以利用那些專門針對 Windows 的工具,並充分利用他們的優點。在這種情況下,你可以使用 COM 著重來優化Windows 界面。如果你用微軟的 Visual Studio 來寫程序的,這樣你的程序就只能在 Windows 上跑。
但是在優化這些程序的時候,你可能要在很多應用之間折衷考慮。你的程序成為 Windows 專用程序,這樣,你就要遵循微軟的「教誨」,以寫出最好的程序。然而,很多人不喜歡這樣,例如,如果你使用微軟的 MAPI 作為 e-mail API ,那麼你就只能從非微軟平台得到簡單的支持。因此,堅持標准,能為你選擇正確的產品來適合自己的需求帶來更大的自由。
『貳』 解釋器的解釋編譯
解釋器運行程序的方法有:
1.直接運行高級編程語言 (如 Shell 自帶的解釋器)
2.轉換高級編程語言碼到一些有效率的位元組碼 (Bytecode),並運行這些位元組碼
3.以解釋器包含的編譯器對高級語言編譯,並指示處理器運行編譯後的程序 (例如:JIT)
Perl,Python,MATLAB,與Ruby是屬於第二種方法,而UCSD Pascal則是屬於第三種方式。在轉譯的過程中,這組高級語言所寫成的程序仍然維持在源代碼的格式(或某種中繼語言的格式),而程序本身所指涉的動作或行為則由解釋器來表現。
使用解釋器來運行程序會比直接運行編譯過的機器碼來得慢,但是相對的這個直譯的行為會比編譯再運行來得快。這在程序開發的雛型化階段和只是撰寫試驗性的代碼時尤其來得重要,因為這個「編輯-直譯-除錯」的循環通常比「編輯-編譯-運行-除錯」的循環來得省時許多。
在解釋器上運行程序比直接運行編譯過的代碼來得慢,是因為解釋器每次都必須去分析並轉譯它所運行到的程序行,而編譯過的程序就只是直接運行。這個在運行時的分析被稱為直譯式的成本。在解釋器中,變數的訪問也是比較慢的,因為每次要訪問變數的時候它都必須找出該變數實際存儲的位置,而不像編譯過的程序在編譯的時候就決定好了變數的位置了。
在使用解釋器來達到較快的開發速度和使用編譯器來達到較快的運行進度之間是有許多妥協的。有些系統(例如有一些LISP)允許直譯和編譯的代碼互相調用並共享變數。這意味著一旦一個子程序在解釋器中被測試並除錯過之後,它就可以被編譯以獲得較快的運行進度。許多解釋器並不像其名稱所說的那樣運行原始代碼,反而是把原始代碼轉換成更壓縮的內部格式。舉例來說,有些BASIC的解釋器會把keywords取代成可以用來在jump table中找出相對應指令的單一byte符號。解釋器也可以使用如同編譯器一般的文字分析器(lexical analyzer)和語法分析器(parser)然後再轉譯產生出來的抽象語法樹(abstract syntax tree)。
可攜性佳,直譯式程序相較於編譯式程序有較佳的可攜性,可以容易的在不同軟硬體平台上運行。而編譯式程序經過編譯後的程序則只限定於運行在開發環境平台。
『叄』 c語言編程的平台是什麼
c語洞芹言編程的平台是:
1、GCC,GNU組織開發的開源免費的編譯器;
2、MinGW,Windows操作系統下的GCC;
3、Clang,開源的BSD協議的基於LLVM的編譯銀晌器;
4、Visual C++ :: cl.exe,Microsoft VC++自帶的編譯器。
(3)開源解釋式編譯器擴展閱讀
選擇開發平台注意事項
一、windows
開發環境:visual studio
特點:集成開發環境、簡單易用、完整的工具集
缺點:需要授權(也有免費版)體積龐大、無法學習到背後工程代碼組織情況、不利於初學者掌握代碼編譯、鏈接過程、工程管理
二、unix 或者類unix (包過aix,open solaris ,*bsd, linux)
開發環境:編譯工具 gcc、clang ...等等
代碼編輯器:vim、emacs等
工程組織:make,CMake
特點:操作系統集成很多工具,所有的工具幾乎開源且免費、短小精悍、功能強大
缺點:需要自己動手搭建開發環境、熟悉編譯工具、
熟悉編輯器操作、熟悉類unix操作系統的操作。
入門門檻高需要在命令模式下使用腳本、make等工具完成開發工作納搏畢
『肆』 開源的編程語言有哪些
開源的編程語言有:
Perl——一種通用的編程語言。
PHP——適用於網路開發的編程語言。
Python——一種通用的編程語言。
Ruby——一種通用的編程語言。
Go——一種通用的編程語言。
Rust——一種通用的編程語言。
Swift——一種支持多編程範式,編譯式編程語言。
Java——一種通用的編程語言。
『伍』 誰能推薦一下有哪些開源的c/c++語言編譯器啊
GCC不錯,不過多數參考書是以TC和VC為主的,
如果自學建議安裝TC3.0不過操作有點不方便,和Win7不兼容。
而VC6.0安裝就有點麻煩了。
GCC如果你願意找點資料的話,最好不過了....