Schwierigkeiten bei Python/Repi erlernen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
khati
User
Beiträge: 5
Registriert: Mittwoch 9. November 2011, 20:59

Hallo Leute,

mit diese Post bitte ich euch nicht um den Lösung von der Hausaufgabe, sondern um den Lösung wie ich diese Sprache lernen kann, damit ich die hausaufgabe mache. Ich muss nämlich ein chatserver programmieren und habe ich nichtmal anhaltspunkte

da sind Hauptmaterien worauf ich besitze:

1. https://seattle.cs.washington.edu/wiki/RepyTutorial
2. https://seattle.cs.washington.edu/wiki/PythonTutorial
3. https://seattle.cs.washington.edu/wiki/RepyApi

ich habe erste link durchgearbeitet und schon beim kapitel 2.2 fängt für mich chinaisisch an. In java API gibt es so viel vordefinierte methoden , auch editor welche diese Sprache unterstützt und ist viel übersichtlicher

wie habt ihr Python gelernt?



Khati
Benutzeravatar
jbs
User
Beiträge: 953
Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam

Durch Sachen lesen und ausprobieren.

Wo ist denn jetzt dein konkretes Problem?
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
khati
User
Beiträge: 5
Registriert: Mittwoch 9. November 2011, 20:59

Also ich habe verständnisschwierigkeiten. Ich kann nicht in diese Sprache reinkommen :(
Benutzeravatar
jbs
User
Beiträge: 953
Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam

[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
BlackJack

@khati: Das Repy-Tutorial setzt schon einiges an Wissen voraus. Das steht im zweiten Absatz des ersten Abschnitts (`Introduction`). Grundlagenwissen in Netzwerkprogrammierung und in Python werden vorausgesetzt.

Was verstehst Du denn konkret an dem Quelltext in Kapitel 2.2 vom Repy-Tutorial nicht? Der reine Python-Anteil dort ist nicht besonders schwer. Wenn man schon Java kann und das Python-Tutorial durchgearbeitet hat, sollte man eigentlich die Syntax und die statische Programmstruktur verstehen. Neben den Python-Funktionen `len()` und `int()` und des Typs `Exception` sind alle anderen Namen, die nicht in dem Quelltext selbst definiert werden, Teil der Repy-API. Da muss man also in der Repy-Dokumentation nachlesen was sie bedeuten, das hat nichts mit Python als Sprache zu tun.

In der Python-Standardbibliothek gibt es auch sehr viele Funktionen, Klassen, und Methoden. Leider lässt Repy die nicht zu. Editoren/IDEs für Python gibt es auch. Die Autovervollständigung ist dort nicht immer so umfangreich wie in Java, was daran liegt, dass man in dynamisch typisierten Programmiersprachen den Typ eines Objekts nicht immer statisch ermitteln kann. Ansonsten ist in Python auch nicht so viel IDE-Unterstützung nötig, weil man viel weniger „bloilerplate code“ als in Java schreiben muss. In Java wäre das „Hello World“-Beispiel deutlich komplexer. Man hätte in Java wahrscheinlich von einer `Repy` (oder `ReJava`) Klasse ableiten müssen oder `callfunc` und `callargs` von einem Singleton abfragen müssen. Auf dieser Klasse müssten dann auch die ganzen Repy-API-Funktionen vordefiniert sein. Der Quelltext auf Modulebene müsste in einer Methode stehen. Für die `hello()`-Funktion hätte man eine ganze Klasse mit einem vorgegebenen Interface schreiben müssen, weil in Java Methoden keine Objekte sind und man sich dort einfache Callbacks üblicherweise als anonyme Klassen definiert. Das wäre die minimale API für Java. Java wäre aber nicht Java wenn das alles nicht in unzählige Interfaces und Klassen aufgeteilt und aufgeblasen würde.
Antworten