Tutorials für Lazarus und Freepascal

Für Dinge rund um die Unterstützung des offizielen Lazarusprojekts, wie Übersetzungsabsprachen und anderem.
Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Tutorials für Lazarus und Freepascal

Beitrag von Michl »

Eine Weile beobachte ich immer wieder hier im Forum, dass nach guten Einsteiger-Tutorials gefragt wird. Ein gutes Aushängeschild für Lazarus wäre es, wenn wir es schaffen würden, dann auf Lazarus-Tutorials zu verweisen und nicht auf allgemeine Pascal- oder Delphitutorials. Unser Wiki ist im Bereich Wissen schon recht stark, im Bereich Tutorials könnten wir mehr tun.

Eine allgemeine Einführung in Lazarus ist hier: http://wiki.freepascal.org/Lazarus_Documentation/de

Das Einsteiger-Tutorial für Lazarus befindet sich hier: http://wiki.freepascal.org/Lazarus_Tutorial/de

Alle weiterführenden Lazarus-Tutorials hier: http://wiki.freepascal.org/Category:Tutorials/de

Ich möchte daher in diesem Thread alle Einsteiger auffordern uns (diesem Forum) mitzuteilen, welche Tutorials fehlen oder überarbeitet werden müssten?!

Weiter möchte ich alle Profis und "Halbwissenden" auffordern die Tutorials zu erweitern, aus dem Englischen zu übersetzen und möglichst auf diese zu verweisen, denn nur wenn bekannt ist, dass es sie gibt, werden Fragen diesbezüglich kommen und damit die Chance sie zu verbessern.

Was haltet Ihr davon, wenn wir jede Woche (oder alle zwei Wochen / 1 mal im Monat) ein neues Tutorial hier im Forum diskutieren und auf Vordermann bringen?! Somit gäbe es ein Feedback und man fände evtl. mehr Helfer?!

Danke für Eure Anregungen / Meinungen / Ideen

Michael

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Socke
Lazarusforum e. V.
Beiträge: 3158
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: Tutorials für Lazarus und Freepascal

Beitrag von Socke »

Auch wenn ich kein Einsteiger bin, würde ich mich über weitere Infos zum Streaming freuen ... und in den nächsten Tagen etwas zu JSON-Streaming hinzufügen.* Erledigt: http://wiki.freepascal.org/Streaming_JSON/de
Michl hat geschrieben:Was haltet Ihr davon, wenn wir jede Woche (oder alle zwei Wochen / 1 mal im Monat) ein neues Tutorial hier im Forum diskutieren und auf Vordermann bringen?! Somit gäbe es ein Feedback und man fände evtl. mehr Helfer?!

In der Zwischenzeit muss genug Zeit für Verbesserungen und Feedback bereitstehen; ansonsten sind nach 3 Wochen alle Leute mit Tutorials zugedeckt und der ganze Prozess gerät ins Stocken. Daher plädiere ich für 1-monatige Runden; die Liste der notwendigen Überarbeitungen kann ja schon vorher abgearbeitet werden.
Zuletzt geändert von Socke am So 18. Mai 2014, 16:37, insgesamt 1-mal geändert.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: Tutorials für Lazarus und Freepascal

Beitrag von theo »

Ich finde die Tuts auf Delphi Treff gut.
V.A. das hier:

http://www.delphi-treff.de/tutorials/ob ... ammierung/

Da steht eigentlich alles wichtige zum Grundverständnis der objektorientierten Programmierung auf sehr übersichtliche Weise.

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Tutorials für Lazarus und Freepascal

Beitrag von Michl »

Zur Vervollständigung, ich finde Marco Cantus Essential http://www.marcocantu.com/epascal/German/default.htm auch noch gut, schöner (auch wegen der Darstellung im Web) die Anleitungen vom Delphi Treff. Leider kann man die Texte nicht einfach ins Wiki übernehmen.

Allerdings möchte ich mit diesem Thread eher eine Diskussion anstoßen, ob wir uns in steten Abständen ein Tutorial vornehmen sollten, über dessen Inhalt diskutieren und entsprechend ändern (also ob ich Euch z.B. einmal im Monat mit einer Wiki-Seite nerven soll) oder man das Wiki-Prinzip so belassen sollte?!

Außerdem, und das richtet sich vor allem an Einsteiger, welche Tutorials werden/wurden zum Anfang vermisst, zu welchem Thema sollte man noch einen Absatz schreiben?!

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Marsmännchen
Beiträge: 294
Registriert: So 4. Mai 2014, 21:32
OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
CPU-Target: 64bit
Wohnort: Oranienburg

Re: Tutorials für Lazarus und Freepascal

Beitrag von Marsmännchen »

Wow,
ein Thread in dem mein Nichtfachwissen gefragt ist :D

Ich finde übrigens das Buch "Start Programming using Object Pascal" von Motaz Abdel Azeem sehr gut, das ich grad als Einstieg durcharbeite (bin bei referenzierten Parametern).

Was würde mich interessieren? Hmmmm....
Also was ich mit Sicherheit brauchen werde, ist Formularhandling.
Wie rufe ich von Formular a das Formular b auf?
Wie übergebe ich dabei Parameterwerte von a nach b, die dort weiterverarbeitet werden?
Wie prüfe ich, ob bestimmte Formulare bzw. Formulartypen offen sind und wie spreche ich sie dann an?
Wie kann ich eine Datenquelle (muss keine DB sein, sondern zB ein Array von Objekten) so einbinden, dass alle Formulare diese Quelle benutzen?
Wie kann ich Formular-Events nutzen (zB, damit sich Formulare automatisch aktualisieren, wenn sich die Datenbasis ändert)?

Ich weiß ja nicht, ob in meinen Tutorials diese Fragen eh beantwortet werden, aber ein Tutorial zum Thema Formularbau stünde einer RAD-IDE doch recht gut zu Gesicht, oder?

Liebe Grüße aus der Umlaufbahn
Marsmännchen
Ich mag Pascal...

Bauer321
Beiträge: 465
Registriert: Sa 21. Aug 2010, 21:30
OS, Lazarus, FPC: Windows 7 Ultimate (L 1.2.2 FPC 2.6.4 32-bit)
CPU-Target: 64-Bit
Wohnort: nahe Bremen
Kontaktdaten:

Re: Tutorials für Lazarus und Freepascal

Beitrag von Bauer321 »

weitere Informationen zum Multithreading (also ueber das hinaus was bisher im Wiki steht) waeren auch sehr interessant & wie man diese am besten Debuggt.

Sent from my GT-I9505 Using ForumTouch for Android

Marsmännchen
Beiträge: 294
Registriert: So 4. Mai 2014, 21:32
OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
CPU-Target: 64bit
Wohnort: Oranienburg

Re: Tutorials für Lazarus und Freepascal

Beitrag von Marsmännchen »

Noch ein Thema: Interaktion mit dem User.
Natürlich habe ich im Gui-Bereich diverseste Eingabe- und Selektionsfelder.
Aber was ist mit Keyboard und Maus (fragen vor allem angehende Spieleentwickler). Wie fange ich die ab, wie werte ich die aus?
Wie validiere ich Nutzereingaben? Das könnte gerne auch über reine Konvertierungsfunktionalität hinausgehen rein ins Strategische. Wo siedelt man so etwas an? In VB hatte dafür praktisch jedes Objekt ein OnValidation-Event (was bei mir dafür sorgte, dass ich die Validation hoffnungslos über meine gesamten Programme zersplitterte). Muss man in ObjektPascal das alles händisch machen, oder ist dafür Funktionalität eingebaut bzw. gibt es dafür Frameworks?
Ich mag Pascal...

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Tutorials für Lazarus und Freepascal

Beitrag von Michl »

Marsmännchen hat geschrieben:Also was ich mit Sicherheit brauchen werde, ist Formularhandling.
Wie rufe ich von Formular a das Formular b auf?
Wie übergebe ich dabei Parameterwerte von a nach b, die dort weiterverarbeitet werden?

Das habe ich mal in Angriff genommen, habe es allerdings versucht so einfach zu erklären, dass auch absolute Neueinsteiger (Schüler) hoffentlich damit zurecht kommen http://wiki.freepascal.org/Form_Tutorial/de.

Ansonsten vielen Dank an Dich Marsmännchen, dass Du Dir so viele Gedanken gemacht hast, werde demnächst versuchen noch andere von Dir aufgezählte Punkte in Angriff zu nehmen.

Bauer321 hat geschrieben:weitere Informationen zum Multithreading (also ueber das hinaus was bisher im Wiki steht) waeren auch sehr interessant & wie man diese am besten Debuggt.
Ich glaub, da kann ich mit meinem Halbwissen nur bedingt beitragen, generell könnte man da einen Thread hier im Forum eröffnen, der dann den Ausgangspunkt für Wiki-Ergänzungen bildet?!

PS: Vielen Dank an Dich für Deine bisher zum Wiki-Ausbau investierte Zeit!


Ansonsten zeigt mir der Diskussionsverlauf und die Meldungen von den üblichen Verdächtigen (bis auf Marsmännchen) keinen argen Handlungsbedarf zum Wiki-Push hier im Forum...

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Marsmännchen
Beiträge: 294
Registriert: So 4. Mai 2014, 21:32
OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
CPU-Target: 64bit
Wohnort: Oranienburg

Re: Tutorials für Lazarus und Freepascal

Beitrag von Marsmännchen »

Hallo Michl, ich habe mir dein Tutorial mal angesehen und ich finde es prima. Es behandelt genau die Basics, an denen man als Anfänger häufig scheitert. Und glaub mir, ich kenne das aus meiner VB-Zeit aus entsprechenden Foren. Ich musste auch oft genug nachfragen. Auf Dauer ist das sowohl für die Fragenden als auch die Gefragten sehr nervig.

... kommt echt gut. Falls mir noch weitere Themen einfallen, melde ich mich.
Ich mag Pascal...

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Re: Tutorials für Lazarus und Freepascal

Beitrag von Euklid »

theo hat geschrieben:Ich finde die Tuts auf Delphi Treff gut.
V.A. das hier:

http://www.delphi-treff.de/tutorials/ob ... ammierung/

Da steht eigentlich alles wichtige zum Grundverständnis der objektorientierten Programmierung auf sehr übersichtliche Weise.


Da der Link zu diesem hervorragenden Crashkurs inzwischen ins Leere führt, hier eine Aktualisierung:

https://www.delphi-treff.de/tutorials/o ... crashkurs/

Requion
Beiträge: 106
Registriert: Mi 3. Feb 2016, 09:39
OS, Lazarus, FPC: Linux(Arch Linux(+ARM)/Minibian) (L 1.6.0 FPC 3.0.0)
CPU-Target: 32/64Bit,ARM(RPi)
Wohnort: nahe Grimma

Re: Tutorials für Lazarus und Freepascal

Beitrag von Requion »

Also ich finde ich Idee sehr gut, vorallem das ganze mal zu sammeln. Ich hatte das erst vor ungefähr einem Jahr. Da habe ich die Firma gewechselt und musste mich wieder in Delphi/Pascal einarbeiten. Informationen findet man zu allem, aber der Weg dahin ist mehr als steinig. Vorallem wenn man keinen durchblick hat und manchmal garnicht weiß nach was man suchen muss.

Also ich wäre, soweit mein Wissensstand dies erlaubt, sehr daran interessiert dabei mit zu helfen.

Ein paar (wenige) Ideen habe ich mir schon für Themen überlegt. Wenn schon etwas ausreichend vorhanden ist kann es einfach ignoriert werden (habe jetzt nicht so genau geschaut).
Des weiteren weiß ich auch nicht was davon "Allgemeine PG / OOP" ist und was davon Lazarus betrifft.

- eigene Events (sowohl in selbstgebauten Komponenten als auch in einfachen Klassen) und allgemein das Thema Event-Driven-Programming in Lazarus/Pascal
- mehr Infos zum Thema Multithreading (Stichwort Debugging, danke @Bauer321)
- Netzwerkprogrammierung (also nicht nur "Nutze Komponente X und stelle dort IP und Port ein")
- verarbeitung von Nutzerinput, Formularvalidierung usw. (danke @Marsmännchen)
- Sound und Multimedia (UOS ist schon ganz gut im Wiki beschrieben, könnte aber ausgebaut werden. BASS fehlt komplett, hat das einen Grund?)
- fortsetzung folgt...

Und ein Punkt bei dem ich nicht weiß ob er hier passt, ich ihn aber trotzdem mit reinschmeiße.
Best Practices für verschiedene Themen
Also:
- Lebenszeit von Variablen, Klassen, Formularen usw.
- Netzwerkprogrammierung Verbindungsaufbau / -dauer / -abbau
- arbeit mit Dateien (wann wird geschrieben? Lebensdauer des Speichermediums relevant?)
- arbeit mit Events (z.B. jedes EditOnChange einzeln oder eine Prozedur für mehrere Edits oder...)

Das wars erstmal was mir spontan einfällt. Wenn irgendwas schon ausreichend beschrieben oder unpassend ist streich ich es gern wieder.
Mfg Requion

Das beste an Standards ist, dass es so viele davon gibt.

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: Tutorials für Lazarus und Freepascal

Beitrag von pluto »

- Sound und Multimedia (UOS ist schon ganz gut im Wiki beschrieben, könnte aber ausgebaut werden. BASS fehlt komplett, hat das einen Grund?)

Ich hatte mir mal die BASS lib angesehen, sie geht unter Lazarus, Problemlos ist vielleicht nicht ganz so einfach zuverwenden für Anfänger.

Zu den Zeitpunkt wo ich es getestet hatte, waren noch nicht alle Teile nach Linux Portiert. Z.B. Videos nicht.
Mit der VLC Lib und mit der Xine Lib habe ich gut Erfahrung gemacht. Wobei die Xine-Lib zeigt auf dem PI ein eigenartiges Verhalten, ob es jetzt immer noch so ist, müsste ich mal ausprobieren. Das Problem war, dass die Callback Funktionen nicht aufgerufen wurden(meine ich).

Die VLC Lib ist schon nicht schlecht, ich glaube hier war das Problem, dass man es nicht in einem Fenster Intrigieren konnte.

Gerade den Multimedia Bereich würde ich nicht unbedingt als Anfänger Tauglich halten. Außer ihr verwendet das mplayer control.

Die XINE Lib unterstützt auch Videos und Audio Dateien. Die Videos kann man in einem From einbauen.

Ob es noch mehr Möglichkeiten gibt? VLC Lib dürfte Plattform Übergreifend sein, XINE-Lib bin ich mir gerade nicht sicher, es war geplant, ob es umgesetzt wurde? Bass ist auf jedenfall Plattform übergreifend.
MFG
Michael Springwald

Warf
Beiträge: 1908
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Tutorials für Lazarus und Freepascal

Beitrag von Warf »

Ich hatte, vor etwa 1,5 Jahren ein Pascal Tutorial für ein anderes Forum angefangen, um ein paar jüngeren Leuten Pascal näherzubringen. Ich arbeite wporadisch immer noch dran, hänge grade aber bei OOP, und ein Paar übungsaufgaben, da mir kaum schöne Beispielsprogramme (u.a. mit den RTL Klassen) einfallen.

Wenn es fertig ist wollte ich es auch hier vorstellen, da allerdings dieser Thread ausgekramt wurde, könnte ich einfach mal Fragen ob jemand eventuell mal drüber lesen will und Verbesserungsvorschläge hat. Link.

Requion
Beiträge: 106
Registriert: Mi 3. Feb 2016, 09:39
OS, Lazarus, FPC: Linux(Arch Linux(+ARM)/Minibian) (L 1.6.0 FPC 3.0.0)
CPU-Target: 32/64Bit,ARM(RPi)
Wohnort: nahe Grimma

Re: Tutorials für Lazarus und Freepascal

Beitrag von Requion »

@Warf geiles Ding. :)

Warf hat geschrieben:Wenn es fertig ist wollte ich es auch hier vorstellen, da allerdings dieser Thread ausgekramt wurde, könnte ich einfach mal Fragen ob jemand eventuell mal drüber lesen will und Verbesserungsvorschläge hat.

Also ich bin natürlich noch nicht durch mit Lesen. Ich würde mir das ganze auf jedenfall mal durchlesen. Wenn ich Verbesserungsvorschläge habe werde ich sie dir mitteilen.

Bei dem was ich bisher gelesen habe, habe ich bereits den einen oder anderen kleinen Fehler (Rechtschreibung/Satzbau) gefunden. Wenn du das möchtest würde ich bereit erklären mal Korrektur zu lesen.
Für diesen Fall würde ich mich aber gern noch bezüglich des Ablaufs mit dir in Verbindung setzen. Entweder hier oder einfach per PN :).
Mfg Requion

Das beste an Standards ist, dass es so viele davon gibt.

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: Tutorials für Lazarus und Freepascal

Beitrag von Michl »

@Warf: Hey, super geschrieben!!! Bin begeistert!!!

Ich habe einige Rechtschreibfehler gesehen, willst du diese wissen?
Leider funktioniert bei "Weiter zu Kapitl 8: Rekursion" der Link nicht.

Als Anregung: Willst du dieses Tutorial evtl. ins Wiki stellen, dann könnte ich (oder wer auch immer einen festellt) Rechtschreibfehler beheben. Außerdem wäre eine Übersetzung recht unkompliziert ins Englische möglich.

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Antworten