systems programming language
和Application programming language
之間的區別是什麼?系統編程語言和應用程序編程語言之間的區別
回答
幾個因素應該在我的opinon都考慮
在你必須能夠達到低層次的東西,越來越接近現實世界的硬件系統程序設計語言。在應用程序語言中,有一種用語言設計的「虛擬世界」(希望更好,更容易互動),而且您只需要能夠應付這種情況。
在系統編程語言中,應該沒有性能方面的讓步。人們必須能夠編寫代碼來擠出硬件中的所有汁液。這不是應用程序編程語言中最大的問題,因爲實際編寫程序所需的時間起着更重要的作用。
因爲2系統編程語言可以自由地假定程序員沒有錯誤,所以不會有「運行時錯誤」警衛。例如,索引出陣列將意味着世界的盡頭,除非硬件免費提供這些檢查(但在這種情況下,您可以選擇更便宜或更快的硬件)。這個想法是,如果你認爲代碼是正確的,那麼爲檢查不可能的事情付出很小的代價是沒有意義的。另外一個系統編程語言不應該試圖阻止程序員做他/她有意做的事情......假設他/她知道這是正確的。在應用程序編程語言中,它被認爲很好地幫助程序員檢查代碼,並試圖強制代碼使用某些哲學模式。在應用程序編程語言中,例如執行速度,打字時間和代碼大小可能會被犧牲,試圖幫助程序員避免自己拍攝。
因爲3系統編程語言將更難通過實驗學習。從某種意義上說,它們是一種強大但危險的工具,應該仔細思考每一條語句,並且出於同樣的原因,它們是調試比較困難的語言。在應用程序編程語言中,相反,嘗試看看的方法可能是合理的(如果虛擬世界抽象不會泄漏太多),並且讓錯誤進入以後刪除它們被認爲是一個可行的選擇。
就像IT界很多東西一樣,這條線是模糊的。例如,C開始作爲一種系統編程語言(並且被用於實現Unix),但是它也被用於應用程序開發。儘管如此,顯然有一些語言比其他語言更適合於系統編程(例如,C/C++比COBOL/FORTRAN更適合系統編程)。同樣,有些語言更適合應用程序開發,而不是系統編程。 VB.NET。
上述示例中突出顯示的語言特性是系統編程語言(如C/C++)的低級功能(例如指針,位操作符等)。當然,這個老玩笑說C是一種「海」級語言(坐在集合層和「高」層之間)。
警告:我從OS開發人員/操作系統工具開發人員的角度來進行系統編程。
我認爲可以公平地說,儘管開發使用Java的操作系統的項目(雖然我相信大多數是本地編譯的,而不是字節代碼和JIT的/解釋),系統編程語言的目標是本機機器碼的目標平臺。因此,主要針對託管代碼/解釋代碼的語言不太可能用於系統編程。
無論如何,這確實是一個足以挑起無論是在支持和反對:)
這些都是不準確的概念,但在本質上一些評論,編程語言系統適用於編寫操作系統(讓他們有低級概念(如指針,與彙編器的集成,與內存相對應的數據類型和註冊組織),而應用程序編程語言更適合於編寫應用程序,因此它們通常使用更高級的概念來表示計算(例如OOP ,閉包,內置的複雜數據類型等)。
一般而言,系統編程語言的級別低於應用程序編程語言。但是,語言本身與它無關。它更多的是語言實現的細節。
例如,Pascal開始作爲教學語言的生活,並非常嚴格的應用程序..然而,它已演變成一種系統語言,並被用於創建早期版本的MacOS和Windows。
C#不是典型的系統語言,因爲它不能進行低級別的工作,儘管管理操作系統應運而生,但這條線是模糊的。
我不認爲這裏有最終答案。
Perl和Python來默認與幾乎所有的Linux發行版...都可以聯C ...都可以做的作業控制等「低層次」的任務......穿線等
任何語言,一組好的系統調用綁定和/或FFI應該像C或C++一樣具有基本的系統意識。
唯一的語言,我會打折爲系統語言是那些專門針對另一個平臺(JVM,CLR),並積極尋求防止本地交互
- 1. Codeigniter系統/語言應用程序/語言有什麼區別?
- 2. 前往編程語言 - 系統時間
- 3. 命令式和聲明式編程語言之間的區別?
- 4. 編程語言和腳本語言有什麼區別?
- 5. 腳本與編程語言的區別
- 6. 教堂編程語言應用程序
- 7. 編程語言
- 8. Mac OS系統1.0編程語言
- 9. 系統端編程 - 哪種語言?
- 10. 識別編程語言
- 11. 編程語言的語法和語義有什麼區別?
- 12. 更改「區域和語言」設置操作系統編程
- 13. 編程語言的原語
- 14. 自然語言和編程語言在語法環境中有什麼區別?
- 15. 編寫的編程語言
- 16. LC3彙編語言程序
- 17. 彙編語言子程序
- 18. 編程語言C
- 19. NesC編程語言
- 20. C編程語言
- 21. Siri編程語言
- 22. .NET編程語言
- 23. R語言編程
- 24. SIMD編程語言
- 25. Scheme編程語言
- 26. 編程語言樹
- 27. java編程語言
- 28. 多語言應用程序編碼
- 29. 高級和低級編程語言之間的關係
- 30. 編程語言語法
http://wiki.answers.com/Q/What_is_the_difference_between_system_programming_and_application_programming – 2010-12-03 06:31:10
這個問題之前已經出現過,但我沒有在SO上找到它。 – 2010-12-03 06:40:07