我已經編程了一段時間,但從未接受過正規的計算機科學教育。我想知道是否有資源超越了關鍵編程概念,如構造,多態等,這些概念適用於不同的語言。如果資源會舉例說明,這也會非常有幫助。各種語言的關鍵編程概念和術語
回答
Concepts, Techniques, and Models of Computer Programming (by Peter Van Roy and Seif Haridi):標題說明了一切。 (來自同一作者,並基於該書來this cool poster with ~30 of the most important programming paradigms。)[注意:這本書通俗地稱爲CTM,你可能偶爾偶爾碰到這個縮寫。]
Structure and Intepretation of Computer Programs (by Harold Abelson and Gerald Jay Sussman)。 SICP,正如其俗稱的,大概是關於編程的。期。不要忘了othercourses基於這本書的the 1986 video lectures by the authors themselves或one。
SICP和CTM之間的主要區別在於:CTM通過給出已經實現它們的非常強大的編程語言(分佈式Oz)中的示例教授編程概念,而SICP通過在語言中實現編程概念來教授編程概念(Scheme ,或者說是它的一小部分),它還沒有它們。 IOW:CTM將通過在計劃中實施面向對象系統,教OO顯示用OO語言編寫的程序SICP。
Design Concepts in Programming Languages (by Franklyn A. Turbak and David K. Gifford with Mark A. Sheldon)更多的是關於編程語言的理論比編程。它仍然很有趣,儘管它沒有直接解決你關於編程概念的問題。但畢竟:如果沒有編程語言,你將如何編程?
Concepts of Programming Languages (by Robert W. Sebesta)解釋說,好了,編程語言,從康拉德楚澤的Plankalkül,與如Fortran,Lisp語言,COBOL,大陵,BASIC和以C,C++,Java和Ada的第一真正編程語言持續的概念。 [同樣,更多的是編程語言書籍]
Programming Language Pragmatics是一個相當易於理解但深入的編程語言概念。它在解釋編程語言的基礎知識方面做得很好,不需要過於學術或理論。
我真的很喜歡讀約翰C.米切爾Concepts in Programming Languages。
這本書涵蓋了一切。它包括對可數學基礎的介紹,例如可計算性理論和lambda微積分,但是我發現它非常易讀(當時我正在讀它,這在我的大學本科階段早期)。它還包含一小部分關於編程語言的語義(即,如何正式描述意義)。然後它講述了很多來自它們的編程語言和概念,其中包括LISP(這是Clojure的基礎),ML(微軟的F#的基礎),還有Simula和Smalltalk(兩種基本的OO語言)和C++與Java(實際的OO語言有不同的方法)。還有一些關於不同併發方法的注意事項(現在非常重要!)
它沒有涉及太多細節,涵蓋了廣泛的主題,如果您想閱讀它,對編程語言理論的廣泛概述。這本書實際上激發了我目前對編程語言的興趣:-)。
我注意到這本書在亞馬遜上有一些負面的評論,但它似乎大部分來自那些不得不根據這本書採取米切爾的課程,並不喜歡課程。
我愛這本書的標題幾乎是字面上的問題:-) – 2010-04-12 01:56:32
- 1. Eclipse RCP術語和概念
- 2. 學習編程語言概念
- 3. 關於LISP編程語言的綁定概念
- 4. C語言中的線程概念#
- 5. 什麼語言有「保護」關鍵字或概念?
- 6. 關於scala語言的多線程概念
- 7. 「幻數」的概念是否從語言變爲語言?
- 8. C語言編程,想了解一些概念
- 9. 用各種語言編寫的程序之間交換數據
- 10. 鍵和術語
- 11. gVim和多種編程語言
- 12. 用於描述編程語言語法的術語是什麼?
- 13. 使用非英語語言編寫關鍵字和變量的Python編程
- 14. 在理解MOV概念時遇到問題(彙編語言)
- 15. 術語:彙編語言編程中的「寄存器」
- 16. 編程術語
- 17. 關於java編程語言
- 18. 開關編程語言
- 19. 編程問題和概念
- 20. 序列化概念在編程語言中的含義是什麼?
- 21. 所有編程語言都有NIL,null或undefined的清晰概念嗎?
- 22. android strings.xml各種語言,場景
- 23. 關於PHP中的Web技術概念
- 24. 編程語言的原語
- 25. 雲計算的哪種編程語言?
- 26. 多種語言的文字編程
- 27. 語言GAMMA,一種模仿編程語言
- 28. IBM Watson-提取關鍵字和概念
- 29. ios術語和腳本語言
- 30. 編程語言
我用「編程語言」和「oop」替換了「java」和「c#」標籤,因爲這個問題與編程語言有關。 – markusk 2010-04-12 06:13:10