Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Programmieren lernen » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Seiten (2): « vorherige 1 [2] Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen Programmieren lernen
Beiträge zu diesem Thema Autor Datum
« Vorherige Seite
 RE: Programmieren lernen David_pb 12.07.2010 19:17
 RE: Programmieren lernen CookieMonsta 12.07.2010 22:13
 RE: Programmieren lernen David_pb 12.07.2010 23:38
 RE: Programmieren lernen 3FingerbreitNougat 13.07.2010 00:37
 RE: Programmieren lernen David_pb 14.07.2010 15:33
 RE: Programmieren lernen magna 24.11.2010 00:46
 RE: Programmieren lernen newsjunkie 13.02.2011 21:59
 RE: Programmieren lernen Ibn Batuta 13.01.2011 22:41
 Konzepte sind wichtiger als Sprachen UC7520 16.01.2011 00:24

Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
David_pb
Mitglied


Dabei seit: 01.06.2007
Beiträge: 44

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Original von CookieMonsta
[...] is einfach so


Ist aber keine besonders gute Begründung! :P
12.07.2010 19:17 David_pb ist offline E-Mail an David_pb senden Beiträge von David_pb suchen Nehmen Sie David_pb in Ihre Freundesliste auf
CookieMonsta
Jungspund


Dabei seit: 09.06.2010
Beiträge: 16

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Zitat:
Original von David_pb
Zitat:
Original von CookieMonsta
[...] is einfach so


Ist aber keine besonders gute Begründung! :P


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

__________________
mhhhh... cookies!
12.07.2010 22:13 CookieMonsta ist offline Beiträge von CookieMonsta suchen Nehmen Sie CookieMonsta in Ihre Freundesliste auf
David_pb
Mitglied


Dabei seit: 01.06.2007
Beiträge: 44

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Wenn ich das mal kommentieren darf:

Zitat:
Original von CookieMonsta
Keine Header schreiben

-- Ok, das mag für Anfänger wirr erscheinen ist aber an sich ein sehr gutes Konzept das ich auf keinen Fall missen möchte (saubere Trennung von Interface und Implementierung). Und so wirklich problematisch ist das auch wieder nicht.

Grosse übersichtliche Bibliotheken

-- C++ bietet in seiner Standard Bibliothek (als auch TR1 und quasi C++ integriert boost (etcpp)) einen Haufen Bibliotheken an. So unübersichtlich sind die gar nicht. Bei C++ gibts eher dann Probleme wenn man Bibliotheken von Drittanbietern integrieren will und deren Konzepte sich, von z.B. der STL, unterscheiden. Allerdings macht die Java Library auf mich z.T. auch nen "patchwork" Eindruck, irgendwie wirkt das Ganze nicht so schön wie z.B. das .NET Framework. UND das Javazeug leidet extrem an nem Überdesign, schon wenn man sich die krassen Ableitungsbäume anschaut könnt man echt meinen, dass die Autoren manche Kernideen der OOP einfach missverstanden haben.

Kein pointer und referenzwirrwarr

-- Ich weiß nicht, und hab jetzt auch schon vermehrt die Zustimmung von Anfängern bekommen, wieso Pointer und Referenzen so einen schlechten Nachgeschmack hinterlassen, wenn davon gesprochen wird.

bessere Debugger zur Verfügung

-- Da muss ich dir wiedersprechen. Ich kenn keinen besseren Debugger als der den Visual Studio mitliefert.

Keine "unerklärlichen" Laufzeitfehler aufgrund von irgendwelchen Variablen
die aber const sein müssten und so quatsch

-- Das Argument versteh ich leider nicht ganz.

Bessere Tutorials Online

-- Für C++ gibts auch einige gute

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)

-- Das hat beim lesen Vorteile find ich. Und zur Not gibts ja die Möglichkeit Funktionen vorher zu deklarieren.
12.07.2010 23:38 David_pb ist offline E-Mail an David_pb senden Beiträge von David_pb suchen Nehmen Sie David_pb in Ihre Freundesliste auf
3FingerbreitNougat
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

@Princess
  1. Schreib "Java" und "C++" groß über die Hälfte jeweils.
  2. Augen zu und das Blatt auf den Boden werfen.
  3. Blatt mit verschlossenen Augen suchen und finger zufällig drauf.
  4. Augen auf. Du hast entschieden =)


MfG

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von 3FingerbreitNougat: 13.07.2010 00:37.

13.07.2010 00:37
David_pb
Mitglied


Dabei seit: 01.06.2007
Beiträge: 44

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

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.
14.07.2010 15:33 David_pb ist offline E-Mail an David_pb senden Beiträge von David_pb suchen Nehmen Sie David_pb in Ihre Freundesliste auf
magna
unregistriert
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

C++ ... Java ... warum nicht einfach eine anfängerfreundliche Sprache, die man wahlweise prozedural oder objektorientiert schreiben kann und sich nicht die Finger blutig tippen muß um erste Erfolge zu verzeichnen.

Denn gerade lange Quelltexte verwirren doch jemanden der sich gerade das erste mal mit der Programmiererei auseinendersetzt.

Ich würde definitiv zu Python oder Ruby raten.

* kurze und eingängige Syntax
* frei
* genügend Tutorials
* geeignet für Standalone- und Webanwendungen
24.11.2010 00:46
newsjunkie newsjunkie ist weiblich
Grünschnabel


Dabei seit: 16.11.2010
Beiträge: 7

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich stimme magna voll zu. Ich habe auch mit Python begonnen und es war SEHR einfach. Dieses Buch ist kostenlos online oder gedruckt auf deutsch und englisch verfügbar und erklärt die Sachen wirklich gut.

Was ist jetzt der Unterschied zwischen Java, C++ und Python? Python ist ein bisschen wie ein Automatik-Auto, während Java eher eine manuelle Gangschaltung hat (über C++ kann ich leider nichts sagen). Natürlich ist es sinnvoll, erst den 'Führerschein' für die manuelle Schaltung, d.h. Java, zu machen, weil man dann alles mal gelernt hat und auch mit automatik zurechtkommen wird. Das Problem ist nur, dass Programmieren für Anfänger so komplex ist, dass es besser ist, es in kleinen Schritten zu lernen. Deshalb würde ich empfehlen, zuerst Python zu lernen und später auf Java zu erweitern.

Es stimmt auch, was UC7520 gepostet hat, dass es eigentlich weniger um Sprachen, sondern eher um die Denkweise geht, die beim Programmieren gefordert ist.
13.02.2011 21:59 newsjunkie ist offline Beiträge von newsjunkie suchen Nehmen Sie newsjunkie in Ihre Freundesliste auf
Ibn Batuta Ibn Batuta ist männlich
Mitglied


images/avatars/avatar-45.jpg

Dabei seit: 02.01.2011
Beiträge: 26

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Weil im 2. Beitrag Code::Blocks erwähnt Wurde. Code::Blocks ist der größte Mist auf Erden.

Dann doch lieber Bloodshed, bevor man sich mit Code::Blocks rumärgern muss...

Ich für meinen Teil verwende auch Netbeans für C bzw. C++.


Ibn Batuta
13.01.2011 22:41 Ibn Batuta ist offline Beiträge von Ibn Batuta suchen Nehmen Sie Ibn Batuta in Ihre Freundesliste auf Fügen Sie Ibn Batuta in Ihre Kontaktliste ein
UC7520
Grünschnabel


Dabei seit: 16.01.2011
Beiträge: 1

Konzepte sind wichtiger als Sprachen Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hallo

Du willst Programmieren lernen und die Sprache ist egal (das sage ich auch immer)?
Dann empfehle ich das Buch:

"Programmieren Lernen"
http://www.ofv.ch/index.php?&ID=bkDet&nr=14505
Es ist unabhängig von einer Programmiersprache und enthält über 150 für Anfänger gedachte Übungen.
Zu den Übungen gibt es eine Webseite (http://www.programmieraufgaben.ch), wo alle Aufgaben entweder in Java oder Python, manchmal in beiden Sprachen und manchmal sogar in diversen anderen Sprachen gelöst sind.

Denk einfach nicht: Programmieren kann man so schnell schnell lernen. Ich habe 1984 damit begonnen. Es hat mich seither nicht losgelassen. Wenn es Dich packt, ist die Wahl der Programmiersprache unwichtig. Die meisten Sprachen, auf denen ich gelernt hatte, existieren heute nicht mehr. Heute mache ich PHP, JavaScript, BASH und Java. Was in 2-3 Jahren sein wird, ist nicht wichtig. Wenn Du die Grundkonzepte verstanden hast, dann ist der Wechsel der Sprache eine Kleinigkeit. Aber, was oben im Forum bereits erwähnt wurde, kann sicher als Entscheidungshilfe dienen. Auch die Lösungen unter http://www.programmieren-lernen.ch können eine Entscheidung zur Programmiersprache erleichtern.

Hier die Grundkonzepte aus meiner Sicht, um die Du nicht herumkommen wirst:
  • Ausdrücke und Datentypen
  • Sequenzen
  • Selektion und Iteration
  • Unterprogramme
  • Felder (Arrays und Matritzen)
  • Zeichenketten und Formattierung
  • Datenstrukturen (Struct, Record, Klasse) und Sammelobjekte
  • Algorithmen und Rekursion
  • Delegation und Kapselung
  • Vererbung
  • Polymorphismus
  • Graphische Benutzerschnittstellen und deren API (Application Programmer Interface)



Vielleicht kann ich es auch so formulieren: Wenn Du Autofahren willst, musst Du am Berg anfahren, einparken, überholen, .... Der Wagen ist sekundär. Aber dennoch: Lernen mit einem Testosterossa ist doch sicher spaßiger als mit einem 2CV ;-) Und ohne Wagen gehts wohl schlecht mit "Übung macht den Meister".


Viel Spaß in der Gemeinde der Programmierer

Gruß

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von UC7520: 16.01.2011 00:29.

16.01.2011 00:24 UC7520 ist offline Beiträge von UC7520 suchen Nehmen Sie UC7520 in Ihre Freundesliste auf
Seiten (2): « vorherige 1 [2] Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Informatiker Board » Themengebiete » Theoretische Informatik » Programmieren lernen