Wieso immer Java

Für allgemeine Fragen zur Programmierung, welche nicht! direkt mit Lazarus zu tun haben.
Mathias
Beiträge: 6167
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Wieso immer Java

Beitrag von Mathias »

Leider ist die C-Syntax sehr verbreitet. Ich kenne kaum eine Sprache wo sie nicht vorkommt.

Der C-Syntax finde ich gar nicht so schlecht, C hat recht viele Vorteil, welche Pascal nicht bieten kann.
Man kann z.B. in der for-Schleife etwas anderes als 1 für den Schritt nehmen.

Code: Alles auswählen

int main()
{
    for (int i = 0; i <= 6; i += 2)
    {
        std::cout << i;
    }
}
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2636
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Wieso immer Java

Beitrag von m.fuchs »

Code: Alles auswählen

for i := 0 to 3 do
    WriteLn(i * 2);


Sonst noch irgendwelche "Vorteile"?
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Wieso immer Java

Beitrag von mschnell »

Mathias hat geschrieben:Man kann z.B. in der for-Schleife etwas anderes als 1 für den Schritt nehmen.

Je mehr man "machen kann" umso weniger durchschaubar ist der Programmcode später.

Ich mache 90 % C weil ich muss, aber immer Pascal wenn ich kann.

-Michael

Mathias
Beiträge: 6167
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Wieso immer Java

Beitrag von Mathias »

Je mehr man "machen kann" umso weniger durchschaubar ist der Programmcode später.

Das stimmt auch wieder.

Lustiges Beispiel:

Code: Alles auswählen

for( int i=0,j=1,k=1 ; k<=1000 ; i+=6,j+=i,k+=j ) 
        cout<<k<<'\n';
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Soner
Beiträge: 623
Registriert: Do 27. Sep 2012, 00:07
OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
CPU-Target: x86_64-win64
Wohnort: Hamburg

Re: Wieso immer Java

Beitrag von Soner »

Vorteil von Java ist, dass es gute Standardbibliotheken für alle Fälle hat, die auch sehr gut dokumentiert sind. Sowohl Delphi als auch Freepascal fehlen einige Standards z.B. gute Grafik- und Netzwerkbibliotheken. Leute wollen meistens nicht raten was ein Bibliothek kann und was eine Funktion tut, sondern wollen es z.B. in Form von Dokumentation wissen.

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: Wieso immer Java

Beitrag von Socke »

Soner hat geschrieben:Vorteil von Java ist, dass es gute Standardbibliotheken für alle Fälle hat, die auch sehr gut dokumentiert sind. Sowohl Delphi als auch Freepascal fehlen einige Standards z.B. gute Grafik- und Netzwerkbibliotheken. Leute wollen meistens nicht raten was ein Bibliothek kann und was eine Funktion tut, sondern wollen es z.B. in Form von Dokumentation wissen.

Sowohl bei Netzwerk als auch bei Grafik fallen mir spontan jeweils mindestens 2 ausgereifte Bibltiotheken ein. Das größere Problem dürfte wohl eher sein, dass diese nicht im Standard enthalten sind und somit von jedem selbsständig eingebunden werden müssen.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Wieso immer Java

Beitrag von mschnell »

Socke hat geschrieben: Das größere Problem dürfte wohl eher sein, dass diese nicht im Standard enthalten sind und somit von jedem selbsständig eingebunden werden müssen.


Das stimmt. Nicht jeder will sich die Mühe machen und im Internet nach Lösungen zu suchen und alles, was da möglicherweise rumliegt, auszuprobieren

Wenn Lazarus in der Lage wäre (z.B. im Hilfe-System) bei Bedarf eine leicht zu befolgende Anleitung auszuspucken, wie man zur Lösung für bestimmter Probleme die passende verifizierte (open-Source-) Library einbindet, wäre sicher viel geholfen.

-Michael

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: Wieso immer Java

Beitrag von Socke »

mschnell hat geschrieben:Wenn Lazarus in der Lage wäre (z.B. im Hilfe-System) bei Bedarf eine leicht zu befolgende Anleitung auszuspucken, wie man zur Lösung für bestimmter Probleme die passende verifizierte (open-Source-) Library einbindet, wäre sicher viel geholfen.

Es gibt dazu zwei parallele Paketverwaltungen. Zum einen könnte man recht einfach Lazarus-Pakete herunterladen und in die IDE einbinden. Zum anderen gibt es die Free-Pascal-Pakete inklusive Management-Tool. Ersteres gibt es nicht und letzteres ist nicht wirklich dokumentiert.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Wieso immer Java

Beitrag von mschnell »

Eben: vieles geht, das meiste auch einfach, aber man findet es nicht.

-Michael

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

Re: Wieso immer Java

Beitrag von theo »

mschnell hat geschrieben:
Socke hat geschrieben: Das größere Problem dürfte wohl eher sein, dass diese nicht im Standard enthalten sind und somit von jedem selbsständig eingebunden werden müssen.


Das stimmt. Nicht jeder will sich die Mühe machen und im Internet nach Lösungen zu suchen und alles, was da möglicherweise rumliegt, auszuprobieren


Das sehe ich nicht so eng. Bei Delphi waren doch früher auch irgendwelche Internet Komponenten dabei und die meisten Leute haben trotzdem andere verwendet (Synapse, ICS).

Im Internet nach Lösungen suchen gehört doch heute zum Handwerk. Auch bei der Arbeit mit Javascript, HTML/CSS, PHP etc. ist man doch dauernd online am irgendwelche Libraries und Snippets zussammenkramen, bevor man das Rad neu erfindet.
Halbwegs verstehen sollte man den so "geklauten" Code natürlich schon. :wink:

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Wieso immer Java

Beitrag von Christian »

Ich glaub ne aktuelle Delphi lag so bei 1600 Eur, wenn du mir das zahlst bau ich dir Bespiele. Wenn nicht hör doch auf zu labern und mach dann haben auch andere was davon.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

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: Wieso immer Java

Beitrag von Euklid »

mschnell hat schon Recht.
Lazarus selbst erscheint mir schon ziemlich ausgereift. Durch eine klar und übersichtlich gegliederte Dokumentation mit ausreichend Details zu Standardproblemen würde die Entwicklungsumgebung weiter an Attraktivität gewinnen. Man bräuchte halt jemanden, der sich dessen annimmt.

Socke und ich hatten vor einiger Zeit mal versucht, eine Einführung in das Programmieren mit Lazarus zu schreiben. Das Projekt scheiterte von meiner Seite schließlich daran, dass meine Freizeitressourcen nach dem Studium in den Keller gingen.

Die Leute, die entsprechende Dokumentation schreiben könnten, haben sicherlich mit ähnlichen Problemen zu kämpfen.

- Euklid

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

Re: Wieso immer Java

Beitrag von theo »

Euklid hat geschrieben:Man bräuchte halt jemanden, der sich dessen annimmt.


Ich schlage mschnell vor.
Er hat das Problem erkannt, hat anscheinend genügend Zeit und ist seit gefühlten 20 Jahren ein intimer Kenner von Delphi / Kylix / Lazarus.
Wer, wenn nicht er?

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Wieso immer Java

Beitrag von mschnell »

Christian hat geschrieben:wenn du mir das zahlst bau ich dir Bespiele.
Von "Beispielen" hat keiner geredet. Ich meine auch, umfassende und korrekte Doku wäre wichtiger als Beispiele. Aber wie Du richtig andeutest: Doku kostet Zeit und Geld und kann man deshalb von einem Freeware-Projekt nicht erwarten. Aber das ändert nichts daran, dass das ein Hauptgrund für die mangelnde Akzeptanz ist.

-Michael
Zuletzt geändert von mschnell am Do 25. Dez 2014, 14:26, insgesamt 1-mal geändert.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Wieso immer Java

Beitrag von mschnell »

Euklid hat geschrieben:Man bräuchte halt jemanden, der sich dessen annimmt.
Ich habe auch schon versucht, mich bei der Erweiterung der (englischen) Doku für Lazarus zu beteiligen. Leider sind die Tools, die für das Doku-System benutzt werden müssen nicht wirklich brauchbar und alle schreien nach Veränderung aber verständlicher Weise hat keiner Lust und Zeit. Es existieren verschiedene inkompatible Ansätze.

Wir haben vor ca. 2 Jahren darüber in der englischen Mailing-Liste genügend diskutiert. Ergebnis: man müsste das System auf Wiki-Basis aufbauen, damit Freiwillige eine Chance haben, mitzumachen. Damit das Sinn macht, muss die Software für die "F1" - Hilfe in Lazarus so angepasst werden, dass sie auf die Datenbank mit dem Wiki-Text zugreift und außerdem muss ein Konverter geschrieben werden um den vorhandene Hilfetext komplett in Wiki-Form zu überführen.

Dabei gibt es (wie in dem sehr guten Hilfe-System von Delphi) mehrere "Bücher" mit Hilfe-Texten:
- fpc Syntax
- RTL (fpc runtime Library)
- Lazarus IDE Verwendung
- LCL (Lazarus Standard Library)
- Windows API
- Linux API
- MAC API
- ...

Dazu kommen dann noch "assozierte" 3rd Party Libraries (das war der Ausgangspunkt in diesem Thread)

Und das System muss ständig gepflegt werden.

Viel Spaß ! :evil:

-Michael
Zuletzt geändert von mschnell am Do 25. Dez 2014, 14:38, insgesamt 4-mal geändert.

Antworten