2010-04-12 4 views
5

Ich habe für eine Weile programmiert, aber hatte noch nie eine formelle Informatikausbildung. Ich würde gerne wissen, ob es eine Ressource gibt, die die Schlüsselprogrammierungskonzepte wie Konstrukt, Polymorphismus usw. durchläuft, die auf verschiedene Sprachen anwendbar wären. Es wäre auch sehr hilfreich, wenn die Ressource Beispiele geben würde.Schlüssel Programmierkonzepte und Terminologie in einer Vielzahl von Sprachen

+0

Ich habe die Tags "java" und "C#" durch "Programmiersprachen" und "oop" ersetzt, da sich die Frage generell auf Programmiersprachen bezieht. – markusk

Antwort

4

Concepts, Techniques, and Models of Computer Programming (by Peter Van Roy and Seif Haridi): Der Titel sagt alles. (Vom gleichen Autor und basiert auf dem Buch kommt this cool poster with ~30 of the most important programming paradigms.) [Anmerkung: Dieses Buch umgangssprachlich als CTM bekannt ist, können Sie über diese Abkürzung von Zeit zu Zeit stolpern.]

Structure and Intepretation of Computer Programs (by Harold Abelson and Gerald Jay Sussman). SICP, wie es umgangssprachlich genannt wird, ist wahrscheinlich das Buch über Programmierung. Zeitraum. Vergessen Sie nicht the 1986 video lectures by the authors themselves oder one der othercourses basierend auf dem Buch. Der Hauptunterschied zwischen SICP und CTM ist der Ansatz: CTM lehrt Programmierkonzepte durch Beispiele in einer sehr leistungsfähigen Programmiersprache (Distributed Oz), die sie bereits implementiert, während SICP Programmierungskonzepte lehrt, indem sie sie in einer Sprache implementiert oder vielmehr eine kleine Teilmenge davon), die sie noch nicht hat. IOW: CTM würde OO lehren, Programme zu zeigen, die in einer OO-Sprache geschrieben sind, SICP, indem ein OO-System in Scheme implementiert wird.

Design Concepts in Programming Languages (by Franklyn A. Turbak and David K. Gifford with Mark A. Sheldon) ist mehr über die Programmierung der Sprachtheorie als Programmierung. Es ist immer noch ziemlich interessant, obwohl es nicht direkt auf Ihre Frage zu Programmierungskonzepten eingeht. Aber immerhin: Wie würden Sie ohne Programmiersprache programmieren?

Concepts of Programming Languages (by Robert W. Sebesta) erklärt, na ja, Konzepte von Programmiersprachen, mit Konrad Zuses Plankalkül, beginnend mit den ersten echten Programmiersprachen wie Fortran, Lisp, Cobol, Algol, BASIC und auf C, C++, Java und Ada fort. [Wieder mehr Programmiersprache als Programmierung.]

3

Programming Language Pragmatics ist ein ziemlich zugänglicher, aber umfassender Überblick über Programmiersprachenkonzepte. Es macht einen guten Job, die Grundlagen der Programmiersprache zu erklären, ohne zu akademisch oder theoretisch zu sein.

3

Ich genoss es wirklich zu lesen Concepts in Programming Languages von John C. Mitchell.

Das Buch deckt ein bisschen von allem ab. Es enthält eine Einführung in mathematische Grundlagen wie Berechenbarkeitstheorie und Lambda-Kalkül, aber ich fand es ziemlich gut lesbar (zu der Zeit als ich es las, was früh während meines Studiums war). Es enthält auch ein kleines bisschen über die Semantik von Programmiersprachen (dh, wie man die Bedeutung formal beschreibt).

Dann spricht es über viele Programmiersprachen und Konzepte, die von ihnen kommen und sind interessant einschließlich LISP (die eine Grundlage für Clojure ist), ML (eine Basis für Microsoft F #), sondern auch Simula und Smalltalk (zwei grundlegende OO-Sprachen) und C++ mit Java (praktische OO-Sprachen mit ganz anderem Ansatz). Es gibt auch ein paar Notizen über verschiedene Ansätze zur Nebenläufigkeit (ziemlich wichtig heutzutage!)

Es geht nicht in viele Details und deckt breite Palette von Themen ab, die ich als einen Vorteil ansehe, wenn Sie es lesen möchten ein breiter Überblick über die Programmiersprachentheorie. Das Buch motivierte mein aktuelles Interesse an Programmiersprachen :-).

Ich bemerkte, dass das Buch einige negative Bewertungen auf Amazon hat, aber es scheint, als ob die meisten von Leuten stammen, die Mitchells Kurs auf dem Buch nehmen mussten und den Kurs nicht mochten.

+1

Ich liebe, dass der Titel des Buches ziemlich wörtlich die Frage ist :-) –

Verwandte Themen