Programmieren lernen - Seite 2 |
| 12.07.2010, 17:53 | Auf diesen Beitrag antworten » | ||||||||||
| 3FingerbreitNougat | Good old java vs. c++ =) MfG ![]() |
||||||||||
|
|
|||||||||||
| 12.07.2010, 18:32 | Auf diesen Beitrag antworten » | ||||||||||
| CookieMonsta |
Ich bin eher für c++ allein wegen der performance, aber java ist grundsätzlich einfacher für einsteiger...is einfach so |
||||||||||
| 12.07.2010, 19:17 | Auf diesen Beitrag antworten » | ||||||||||
| David_pb |
Ist aber keine besonders gute Begründung! :P |
||||||||||
| 12.07.2010, 22:13 | Auf diesen Beitrag antworten » | ||||||||||
| CookieMonsta |
Was Java zu C++ für Einsteiger einfacher macht: Keine Header schreiben Grosse übersichtliche Bibliotheken Kein pointer und referenzwirrwarr bessere Debugger zur Verfügung Keine "unerklärlichen" Laufzeitfehler aufgrund von irgendwelchen Variablen die aber const sein müssten und so quatsch Bessere Tutorials Online Reihenfolge der Methoden wie sie in der .java vorkommen ist egal (Bei C++ z.b. sind alle Methoden die unter einer Methode X sind, von X nicht aufrufbar, d.h. nicht bekannt) und noch so viele Kleinigkeiten bei denen man sich in C++ erst durchwursteln muss |
||||||||||
| Anzeige | |||||||||||
|
|
|||||||||||
| 12.07.2010, 23:38 | Auf diesen Beitrag antworten » | ||||||||||
| David_pb | Wenn ich das mal kommentieren darf:
|
||||||||||
| 13.07.2010, 00:37 | Auf diesen Beitrag antworten » | ||||||||||
| 3FingerbreitNougat | @Princess
MfG ![]() |
||||||||||
| 14.07.2010, 12:38 | Auf diesen Beitrag antworten » | ||||||||||
| ed209 |
Warum ist es schade? Nur weil die Sprache für dich nicht interessant ist? Ich bevorzuge die Sprache Java, wegen des höheren Grades an Abstraktion. Die Sprache ist klar definiert (Der Java Language Spec stehen mehrere C++ und C Standards sowie ABIs für die verschiedenen Platformen gegenüber, die alle berücksichtigt werden müssen). lch grad mal wieder im Genuß C++ zu programmieren und ärger mich grad über wirre Compiler/Linker-Meldungen, bei denen ich Probleme habe zu verstehen was der Compiler überhaupt will (Und Compilerbau war mein Schwerpunkt). Bei Java reicht ein Blick in die Spec und ich weiß genau was erwartet wird. Und grad einem Anfänger ist nicht geholfen, wenn ihm erzählt wird er habe eine undefined referenced auf die vtable. Deine strikte Trennung von Schnittstellen zur Implementation existiert auch nur aus sicht eines Programmierers der linear programmiert, nicht objekt-orientiert. Interfaces als Typen wie in Java gibt es in C++ nur behelfsmäßig über abstrakte Klassen. Versteh mich nicht falsch, C++ hat sicher seine Berechtigung. Aber es ist ganz und gar nciht verwunderlich einem Anfänger zu Java zu raten. Da finde ich genug Gründe: - klare Objekt-Orientierung (auch wenn nicht unbedingt strikt) - hohes Abstraktionslevel (verglichen mit C++, keine Pointer, kein Speicherverwaltung) - Klare Laufzeitumgebung (bei dem meisten Standardzeug kann man erwarten daß es überall gleich läuft) - Verständlichere Compilermeldungen Also vom ED ein klares: Go for Java
Gruß, ED209 |
||||||||||
| 14.07.2010, 14:14 | Auf diesen Beitrag antworten » | ||||||||||
| David_pb |
Naja, wie mans nimmt. Compilermeldungen sind kein Sprachbestandteil, und wirkliche Probleme die Meldungen zu verstehen hatte ich bisher auch nicht.
Versteh ich nicht, das ist eigentlich nicht was ich angesprochen hab. Was hat es mit linearer Programmierung zu tun wenn ich das Interface (nein, der Begriff bezieht sich nicht nur auf Interfaces die von Java ode C# bekannt sind) und dessen Implementierung trenne? Das hat in erster Linie nichts mit irgendwelchen Paradigmen zu tun sondern ist ein Ding der Übersichtlichkeit.
Nun, du nennst hier wieder genau die Gründe die immer genannt werden. Zum Beispiel der erstgenannte Punkt: Wie gesagt ich empfinde den zwang zur Objektorientierten Programmierung eher als Negativbeispiel. Ich will als Programmierer lieber Freiheit bezüglich Problemlösungen haben. Objektorientierung bildet sich einfach manchmal nicht gut auf Problemlösungen ab und ich möchte lieber einen Prozeduralen Ansatz, oder ich schieß mit einem "funktionalen" Ansatz auf das Problem... Ich musste bisher ein Projekt in Java entwickeln und hab aus diesen 6 Monaten wirklich nichts mitgenommen ausser das Java eigentlich alle interessanten Features von C++ entfernt hat. |
||||||||||
| 14.07.2010, 14:50 | Auf diesen Beitrag antworten » | ||||||||||
| ed209 |
Da hast du ein valides Argument. Vielleicht ist g++ an der Stelle einfach nur mangelhaft. GCC ist nun wirklich kein guter Freund.
Ich halte das sehrwohl für ein Pardigma, eins das aus der modularen Programmierung kommt. Turbo Pascal und Modula-2 haben eine ähnliche Art Schnittstelle und Implementierung zu trennen. In Java hast du Implementierung genau so sauber von den Schnittstellen getrennt.
Du siehst das ganze aus der Programmierer/Hacker sicht und da ist es natürlich ein Vorteil alles machen zu können wonach einem grad ist. Aber es sind nicht nur Programmierer an der Softwareentwicklung beteiligt. Und wenn ich ein großes Projekt erbe und erstmal 100k Zeilen Code verstehen muß, bin ich froh über jede Grenze die meinem Vorgänger gesetz wurde
Ich würde einem Anfänger zu objektorientierter Programmierung raten fürs Erste. Die Frage war nicht welche Programmiersprache die beste ist (die Diskussion ist eh müßig, sondern womit man anfangen sollte. Ein Anfänger braucht nicht unbedingt zig Möglichkeiten um an gutem Prorgrammierstil vorbeizuprogrammieren.
Ich hab nicht wirklich Lust hier die alte Diskussion zwischen Uni-geprägten Softwareentwicklern und eingefleischten Programmierern aufleben lassen. Es ging mir nur darum daß es tatsächlich gute Gründe dafür gibt mit Java anzufangen, nicht mit C++. |
||||||||||
| 14.07.2010, 15:33 | Auf diesen Beitrag antworten » | ||||||||||
| David_pb | Naja, die Diskussion ist tatsächlich wenig erträglich. Abgesehen von allen Argumenten die ich als Softwareentwickler gegen Java habe halt ich C++ trotzdem nicht für eine falsche Wahl, auch für Anfänger. Bei uns an der Uni wurde z.B. Programmieren mit C++ begonnen, Java kam dann erst später. |
||||||||||
|
|
Verwandte Themen
| Die Beliebtesten » |
| Die Größten » |
|
| Die Neuesten » |


Ich bin eher für c++ allein wegen der performance, aber java ist grundsätzlich einfacher für einsteiger...is einfach so
