Hallo. Ich beschäftige mich „hobbymäßig“ mit Programmieren. Bisher habe ich mit C und (berufsbedingt) mit LabView programmiert. Ich möchte jetzt auch „privat“ wesentlich tiefer und professioneller ins Programmieren einsteigen und bin derzeit auf der Suche nach einer geeigneten Programmiersprache für mich. Ein wichtiges Kriterium für mich ist, eine Programmiersprache mit Perspektive zu finden. Auch wenn man heute nur schwer beurteilen kann was in 10 Jahren ist. Linux kann ich nichts abgewinnen, daher wird Windows als Plattform dienen. Für Embedded-Programmierung werde ich weiterhin bei C bleiben. Zeit ist knapp, das gilt leider besonders bei mir derzeit. Daher will ich mich wirklich auch eine Sprache konzentrieren um dort entsprechend tief einzusteigen. Ich habe mir schon selbst einige Gedanken gemacht, würde aber jetzt gerne mal eure Meinung zu folgenden Programmiersprachen hören: - C++ bzw. Visual C++ (Express) - D (von manchen als „die Zukunft“ gepusht?) - Visual Basic - Java - C# Dies sind die Programmiersprachen zwischen denen ich schwanke. Alle haben scheinbare Vor- und Nachteile. Ich freue mich über eure Meinungen und erhoffe mir davon weitere Aspekte, die ich vielleicht bisher noch nicht bedacht habe. Danke vorab für jede Hilfreiche Meinung.
Es kommt immer darauf an, WAS du damit programmieren willst. Jede Sprache hat ihre Stärken. Ich würde C/C++ empfehlen. Es ist auf jeden Fall das universellste. Damit kann man alles machen. (Wenn auch nicht immer am leichtesten) Ausserdem ist es für jede Hardware und jedes Betriebssystem verfügbar, was auf alle anderen eher nicht zutrifft.
>Es kommt immer darauf an, WAS du damit programmieren willst. >Jede Sprache hat ihre Stärken. Ich eher zu Java als zu C++ tendieren. -Java wird mittlerweile öfter nachgefragt http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html -Sehr einfach und schnell zu lernen -Gute Entwicklungsumgebungen -Stärken im Enterprise - Umfeld (J2EE) -Starke externe Libs (Apache commons, Java3D, JavaMediaFramwork,...) -... Ist aber wieder ein Glaubenskrieg
Um die immerwährende Diskussion etwas abzukürzen (als ob es noch nie eine Programmiersprachen-Diskussion gegeben hätte ...): [ ] Sind alle scheiße [ ] Sind alle super [ ] $X ist super, alle anderen scheiße
Wie bereits gesagt wurde, je nach Einsatz und Branche sind andere Programmiersprachen üblich. Was ich so kenne und schon gesehen habe: C -> Mikrocontroller, einfache Konsolenprogramme für Linux und co. C++ -> PC Software die einigermassen portabel sein soll, Treiber, Zeitkritische Anwendungen C# -> Stark am aufkommen für kleine, mittlere bis sehr grosse Softwareprojekte für Windows. Gute Unterstützung von Teamarbeit. Java -> Embedded Geräte, Software für Banken Visual Basic -> Software für Testsysteme in Produktionsstätten Habe nie jemanden D programmieren sehen, das war eine ziemliche Totgeburt und daran wird sich so schnell auch nichts ändern.
Sag mal etwas genauer, welche Art Programme du schreiben willst. "Hardwarenah" programmieren kann man auf Windows eigentlich gar nicht mehr, außer man schreibt Device-Treiber, aber das ist Hardcore und zum Einstieg nicht zu empfehlen. Zu C++: Du kannst schon C, würdest also vermutlich relativ zügig kompilierbaren C++-Code hinkriegen und kennst auch ein paar der typischen Fallen (Pointerfehler und so). Trotzdem, ein Do-it-yourself-Umstieg auf C++ geht oft schief, weil man zuerst komplett umdenken muss auf Objektorientierung, bevor man C++ "richtig" einsetzen kann, und viele lernen das nie - warum denn, geht doch auch so. Es spricht also viel für einen klaren Schnitt und einen Neuanfang mit einer modernen Sprache (C# oder Java). Ein Knackpunkt könnte die Schnittstelle zum Betriebssystem (WinAPI) sein. Die wird in C++ natürlich voll unterstützt. Ich weiß nicht, ob in Java alles geht. In C# ja - was nicht von .NET unterstützt wird, muss man sich über Platform-Invoke holen. PI-Code sieht nicht gerade schön aus, und man muss sich einlesen, aber die hässlichen Teile können danach in einem Interface-Modul konzentriert werden, und der Rest bleibt sauber. Außerdem gibts nicht mehr wirklich viel, wofür man PI braucht. Also auch hier keine Notwendigkeit für C++. C# oder Java würde ich für Applikationen ohne Einschränkung empfehlen, je höher der Level (Oberfläche, Workflow, Kommunikation), desto besser. Die zur Verfügung stehenden Sprachmittel lassen kaum Wünsche offen. Die Ähnlichkeiten zwischen Java und C# sind groß, so dass da hauptsächlich der persönliche Geschmack den Ausschlag geben dürfte. Beide haben leistungsfähige Compiler und robuste Laufzeitumgebungen, die beim Debuggen gute Unterstützung geben. Die wichtigste IDE für C# ist Microsoft Visual Studio, es gibt auch eine Express-Version. Daneben gibts noch SharpDevelop, aber das kenne ich nicht. Für Java gibts mehrere populäre IDEs, hier entscheidet der Geschmack. D hab ich in freier Wildbahn noch nie gesehen, das halte ich für eine Randerscheinung.
C# ist eindeutig die beste Programmiersprache für Standard Windowsapplikationen. Die Sprache hat z.B. viel viel weniger Fallstricke als C++. Viele Fehlerquellen von C++ Programmen werden schon durch die Sprache vermieden. Die Unterstützung von Windowsfunktionen ist durch das .Net Framework einfach traumhaft. (Im Gegensatz zu Java.) Wenn du wirklich nur einfache Programme (d.h. nichts mit Live Videoverarbeitung o.ä.) nur für Windows programmieren willst, dann nimm C#.
Ich will hier mal für MEIN Lieblingstool in die Bresche springen: RealBasic. Es ist neben Java m.E. die einzige echte Cross-Platform-Umgebung. Welches Produkt bietet sonst noch identische Versionen (IDEs) für Windows, Mac OSX und Linux, auf denen man jeweils für die eigene und die anderen Systeme lauffähige Programme erstellen kann? Und das noch dazu ohne vorher irgendwelche Virtual Machines installieren zu müssen? RealBasic erstellt echte Compilate. Und wenn jetzt einer "iii Basic!" schreit - es ist ein sehr modernes objektorientiertes Basic mit Klassen, Methoden, Events ... man kann eigene Klassen und Objekte erstellen bzw. ableiten. Auf Netzwerk, Internet, Sound, SQL-Datenbanken und Grafik kann zugreifen. Ausserdem hat man Zugriff auf alle möglichen Systemfunktionen, z.B. über API-Calls oder Declare-Statements (dann aber um den Preis der Plattformabhängigkeit). Frank
Wobei viele der Meinung sind, das C# nicht unbedingt die Zukunft gehört. C++ hingegen hält sich seit Ewigkeiten, wird auch noch lange in der Zukunft eine wichtige Rolle spielen und man kann damit nahezu alles Programmieren.
Wo ist das Problem; wenn man heute C# lernt heisst es ja nicht, dass man nicht übermorgen auch C++ lernen und umsteigen kann, falls bis dahin C# ausgestorben sein sollte. In der Technik ist ja nichts konstant ausser der Veränderung, das sollte jedem bewusst sein, welcher in diesem Gebiet arbeiten möchte.
> Wobei viele der Meinung sind, das C# nicht unbedingt > die Zukunft gehört. Ich wäre sehr gespannt, hierfür eine Begründung zu hören. Ich bin fest vom Gegenteil überzeugt. C#-Programme haben nach meiner Erfahrung eine kürzere Time-to-Market und weniger Restfehler als vergleichbare C++-Programme. In allen Anwendungsbereichen, in denen ein kleiner Performance-Nachteil entweder in Kauf genommen oder durch schnellere Hardware kompensiert werden kann, wird C++ durch C# verdrängt werden, oder ist schon verdrängt.
Für das Zielsystem Windows: Egal welche Sprache, das Help System der Entwicklungsumgebung muss gut sein. Und da ist Microsofts MSDN Library kaum zu schlagen. Für einmalige Programme würde ich C# nehmen weil alles vorgefertigt ist man damit schnell zum Ziel kommt. Bei einem eigenen Produkt, welches ich auch in 10 Jahren in Version 5 verkaufe, nur C++ mit MFC.
C sollte man können, wenn man sich ernsthaft mit Programmieren beschäftigt, ist einfach Standard. Man muss ja nicht jeden Trick und jedes Detail begreifen, aber man sollte m.E.n. zumindest in der Lage sein, C-Quellen zu lesen und richtig zu deuten. Einen riesigen Vorteil könnte man z.B. in frei implementierten Sprachen (Java, C, C++, C# usw.) sehen: Ich kann mir alles Nötige (Compiler, Laufzeitumgebung) runterladen und archivieren -- es bleibt trotzdem lauffähig und für immer wartbar. Dreht Microsoft dagegen irgendwann mal .NET und C# ab, steh ich erstmal aufm Schlauch, wohingegen ich z.B. meine GCC-Quelltexte habe, die laufen mir nie mehr davon. Alles andere --> ausprobieren, es gibt weder Patentlösungen noch 'die universelle Sprache'. C kann letztlich sicher 'alles', aber nicht unbedingt einfach. C++ kann auch 'alles', aber alles auf hundert verschiedene Arten und hat einige Dinge, die man gerne als 'Designfehler' sehen könnte: http://yosefk.com/c++fqa/defective.html
hi ich kann C/C++, C++/CLI empfehlen. Ist bei Visualstudio C++ bei. C kannst du ja schon. Man kann C Quellcodeteile mit geringen Änderungen in C++/CLI übernehmen. Treiber sind leicht einzubinden. C++/CLI ist eine .net Sprache, als diese ist es auch leicht in Labview einzubinden.
> daher wird Windows als Plattform > dienen. Für Embedded-Programmierung werde ich weiterhin bei C bleiben. C++ bzw. Visual C++ (Express): Grundsätzlich: C++ (auch der kommende C++0x-Standard) wird in Zukunft bei weitem nicht die Expressivität und Funktionalität erreichen, die in anderen Sprachen möglich ist. U.a. sind Reflexion, Introspektion, dynamische Typisierung, Metaprogrammierung und funktionale Programmierung entweder nur stark eingeschränkt (bis zur Unbrauchbarkeit) oder überhaupt nicht möglich. D (von manchen als „die Zukunft“ gepusht?): Hat zwar einige sehr gute Ansätze, ist aber weitestgehend eine Insel (es sind z.B. verglichen mit C++, C# oder Java nur sehr wenige Bibliotheken vorhanden http://www.dsource.org/projects/ bzw. http://www.wikiservice.at/wiki4d/wiki.cgi?AllLibraries) Java: Für Windows-Desktop-Anwendungen nicht zu empfehlen. Visual Basic: Wer's mag soll es benutzen... C#: Standardsprache für das .NET-Framework Zu den .NET-Sprachen / dem Framework noch ein paar Punkte: - Man kann sich die Sprachen/Paradigmen aussuchen mit denen man ein Problem lösen will, von VB über C#, oder funktional mit F# (1), oder mit Ruby, Ada etc. - Ist für so gut wie alles vom Embedded Gerät mit Micro/Compact Framework bis hin zu Webanwendungen (ASP.Net und Silverlight auf der Clientseite) und wirklich großen Projekten einsetzbar. - Gute Dokumentation, viel Source-Code verfügbar (z.B. www.codeproject.com und www.codeplex.com) - Sehr gute Unterstützung für GUIs insbesondere WPF (benötigt zwar etwas mehr Einarbeitung als WinForms, ist dafür aber auch wesentlich flexibler als andere Lösungen) (1) AutoCad und F# http://through-the-interface.typepad.com/through_the_interface/ Allgemeine Links, Blogs und Code http://cs.hubfs.net/ Entwickler-Blog http://blogs.msdn.com/dsyme/ Henry wrote: > Für das Zielsystem Windows: > > Egal welche Sprache, das Help System der Entwicklungsumgebung muss gut > sein. Und da ist Microsofts MSDN Library kaum zu schlagen. > > Für einmalige Programme würde ich C# nehmen weil alles vorgefertigt ist > man damit schnell zum Ziel kommt. > > Bei einem eigenen Produkt, welches ich auch in 10 Jahren in Version 5 > verkaufe, nur C++ mit MFC. Überspitzt formuliert: Das Programm soll erst in 10 Jahren bestenfalls Alpha-Status erreicht haben, dann aber auch hoffnungslos veraltet und gleichzeitig unwartbar sein... Sven P. wrote: > Einen riesigen Vorteil könnte man z.B. in frei implementierten Sprachen > (Java, C, C++, C# usw.) sehen: Ich kann mir alles Nötige (Compiler, > Laufzeitumgebung) runterladen und archivieren -- es bleibt trotzdem > lauffähig und für immer wartbar. > Dreht Microsoft dagegen irgendwann mal .NET und C# ab, steh ich erstmal > aufm Schlauch, wohingegen ich z.B. meine GCC-Quelltexte habe, die laufen > mir nie mehr davon. 1. Warum sollte das nicht mehr wartbar sein? VM mit OS, Libs, IDE, Quelltexten etc. archivieren reicht (sollte man auch bei anderen Projekten machen) 2. CLI und Sprache sind standardisiert C# http://www.ecma-international.org/publications/standards/Ecma-334.htm bzw. http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=42926 und CLI http://www.ecma-international.org/publications/standards/Ecma-335.htm bzw. http://www.iso.org/iso/iso_catalogue/catalogue_ics/catalogue_detail_ics.htm?csnumber=42927 3. Es gibt mit der SSCLI schon seit längerem eine Referenzimplementation der grundlegenden Bibliotheken und Compiler im Quelltext http://www.microsoft.com/downloads/details.aspx?FamilyID=8c09fd61-3f26-4555-ae17-3121b4f51d4d&displaylang=en 4. Die Quelltexte des aktuellen .NET-Frameworks sind vollständig verfügbar: http://weblogs.asp.net/scottgu/archive/2008/01/16/net-framework-library-source-code-now-available.aspx 5. Mit mono und dotgnu existieren zwei alternative Implementationen Gast wrote: > Wobei viele der Meinung sind, das C# nicht unbedingt die Zukunft gehört. > C++ hingegen hält sich seit Ewigkeiten, wird auch noch lange in der > Zukunft eine wichtige Rolle spielen und man kann damit nahezu alles > Programmieren. Sagt wer? Die gleichen Leute die auch sonst ohne die geringsten Kenntnisse FUD verbreiten?
Welches Paket verwendt ihr eigentlich für eure GUI's? mfg Michael
>Java: >Für Windows-Desktop-Anwendungen nicht zu empfehlen. Wie kommst du den auf den Mist ??? Desktopanwendungen sind genauso gut wie von jeder anderen Programmiersprache auch (siehe Swing, SWT)
Marc wrote: >>Java: >>Für Windows-Desktop-Anwendungen nicht zu empfehlen. > > Wie kommst du den auf den Mist ??? > > Desktopanwendungen sind genauso gut wie von jeder anderen > Programmiersprache auch (siehe Swing, SWT) Definitiv nicht. Nur mal ein paar Beispiele: - Look&Feel der Komponenten (egal ob SWT oder Swing, SWT ist nur näher an einer nativen Anwendung als Swing) - Window und Komponenten-Refresh beim Ändern der Fenstergröße - Rendering von Fonts und Renderingunterschiede zw. Java2D und SWT und dem nativen UI - Performance/Antwortverhalten Dazu kommen noch eine ganze Reihe von Gründen die aus Entwicklersicht gegen Swing und SWT sprechen. Neben der fehlenden Akzeptanz auf dem Desktop, ist dies u.a. die wesentlich geringere Produktivität.
>Es ist neben Java m.E. die einzige echte Cross-Platform-Umgebung. >Welches Produkt bietet sonst noch identische Versionen (IDEs) für >Windows, Mac OSX und Linux, auf denen man jeweils für die eigene und >die anderen Systeme lauffähige Programme erstellen kann? >Und das noch dazu ohne vorher irgendwelche Virtual Machines >installieren zu müssen? RealBasic erstellt echte Compilate. ganz einfach ;) Lazarus Ist ein Delphi Klon der Delphi vielerorts schon fast verdrängt hat. Läuft und erzeugt in/für Windows,MacOS,Linux,WinCe,*BSD,Solaris. Der Compiler (Freepascal) kann für fast jede CPU code erzeugen (sehr ähnlich gcc) avr z.b. ist gerad in der mache. Die Klassenbibliothek ist weitestgehend (nicht ganz immer möglich bei Plattformunabhängigkeit) kompatibel zur Delphi VCL. Man hat damit sehr schnell ein Programm zusammengeklickt, und Pascal ist eine sehr schöne saubere Sprache.
Hatte früher in Delphi programmiert, bis ich dann auf Visual Studio mit C# umgestiegen bin. Pascal war nicht so übel, aber man schreibt sich fast die Finger wund ;-) (z.B. begin/end statt {/} in C, C++ oder C#)
Wie lange hast du denn Delphi programmiert ? Ich programmier C und Pascal und bin wirklich dankbar für das begin/end weil man den Code hinterher 10x besser lesen kann trotz gleicher codeführung. Ich schreib im AVR Studio ca 6x so viel wie im lazarus da die Funktionsrümpfe und Klassengerüste und Variablendeklarationen alles automatisch vom lazarus erzeugt werden. Glaub ich hab schon seit 2 Jahren kein begin/end mehr geschrieben.
Ich fange mal mit dem Bashen an: Wer heutzutage noch neue Projekte mit C++ anfängt, der hat einen an der Waffel. Ich habe schon ziemlich viele Projekte erlebt. Die grausamsten wurden in C++ umgesetzt. Sprachen mit Zukunft sind meiner Meinung nach Java und C# im Bereich "normaler" Anwendungen. Python und Ruby finde ich ganz attraktiv. Delphi wird scheinbar viel in kleinen Softwareschmieden eingesetzt. Für den Hobby-Bereich: Mal ehrlich. Wie will man da tief einsteigen? Als Hobby-Programmierer kratzt man doch eigentlich immer an der Oberfläche. Meine Empfehlung an den Op: Nimm etwas einfaches, was leicht zu erlernen ist und nicht allzuviele Teergruben hat. C++ hat dermaßen viele Teergruben, daß ich es uneingeschränkt überhaupt nicht empfehlen kann. Außerdem soll Hobby doch Spaß machen? Vielleicht schaust Du Dir mal Python an? Dann noch: Wenn Du wirklich was mit Zukunft lernen willst, dann kauf' Dir Bücher über Objektorientierung. Bitte nicht die Schinken von Markt&Technik. Uneingeschränkt empfehlen kann man die Autoren Martin Fowler, Bertrand Meyer (obwohl der manchmal etwas schläfrig schreibt), Kent Beck, Cay Horstmann (Core Java, das Buch zur Sprache schlechthin). Wenn möglich nimm' die englische Originalversion, die Übersetzungen sind meist fragwürdig. Die Schlacht ist eröffnet, wer schmeißt mit Fischen? :-)
Noch mal zu Java Progamm auf Windows. Ich persönlich habe das Gefühl, dass diese "träge" sind. Beispiel MATLAB. Rechnen kann es ja fix aber die Grafikausgabe oder einfach nur ein Menü anzuklicken dauert merklich länger als bei vergleichbaren Programmen. Geht's euch auch so?
Ja kommt mir auch so vor (rein subjektiv) auch bei .Net programmen Beispiel das Paint.Net von Microsoft selbst.
Java besitzt aus meiner Sicht den Vorteil, das es moderne Anforderungen wie GUI-Klassen schon aus dem Sprachumfang bedient. Dies ist aber mit den C++-Bibliotheken Qt oder wxWidgets mehr als wettgemacht. Erleichternd bei der Programmerstellung mit modernen IDE's wie Eclipse ist weniger die Sprache an sich als der Umstand, das das Programm eben die ganze Zeit im Hintergrund mitcompiliert wird und man Fehler schon beim Tippen angezeigt bekommt. Auch dieser Vorteil ist mit der Verfügbarkeit von C++-Entwicklungsumgebungen und Plugins für Eclipse teilweise wieder wettgemacht. Ein echtes Plus für Java ist die Ausführbarkeit von den Programmen auf verschiedensten Plattformen ohne Neuübersetzung. Gut um kleinere Sachen von der eigenen Homepage mal schnell vorzuführen. Zu den Nachteilen von Java, wie ich sie empfunden habe: Da ist zum einen der nicht zu verleugnende Performanceverlust, den man gerade bei größeren Datenmengen (große Bilder etc.) deutlich spürt. In dieser Hinsicht ist die Java-JIT-Compilierung nicht wirklich die Lösung. Warum? Zwei meiner Ansicht nach wesentliche Punkte: 1. Java baut auf dem kleinsten gemeinsamen Nenner aller Rechnerarchitekturen auf, der 0-Adreß-Maschine. Maschinencode für solche 0-Adreß-Maschinen gerade in Hinsicht auf die immer wichtiger werdende Parallelverarbeitung (SIMD-Befehle) oder der Registervielfalt der x86-Nachfolger umzuwandeln ist deutlich schwieriger als wenn man den Hochsprachenalgorithmus vor sich hat. 2. Der JIT-Compiler wird sich nie den Überblick über den Code leisten können wie ein traditioneller Offline-Compiler. Ansonsten wäre sein Resourcenbedarf viel zu hoch! Gerade diese weitreichende Codeanalyse verhilft dem GCC in der letzten Zeit zu Leistungssprüngen. 3. Man vergesse nicht, den Ressourcenbedarf des JIT-Compilers mit zu erfassen! Auch der Umgang mit Hauptspeicher kann schnell dazu führen das der PC zum Auslagern gezwungen wird und so richtig quälend langsam wird. Auch andere Sachen finde ich bei C++ besser gelöst. Zum Beispiel den starken Overhead bei Java, bedingt durch die Ableitung aller Klassen von Object. Definiere ich mir unter C++ einen Komplex-Wert complex<double> a; so belegt dieser nur den Platz für zwei Double-Werte. Bei Java habe ich den gesamten, durch Object mitgeschleppten Overhead! Das spielt bei einem komplexen Wert nicht die Rolle, aber wie sieht es bei einer 1024x1024x1024-3D-Matrix aus? Überhaupt finde ich die Template-Sache bei C++ viel besser gelöst als die Schein-Templates unter Java, die über zeitraubende dynamic_casts über die Object-Basisklasse laufen. Die C++-Templates erlauben mir, Algorithmen generisch aber hocheffizient umzusetzen - gerade auch durch die Möglichkeit der Spezialisierung. Desweiteren vermisse ich oft bei Java die unsigned-Datentypen. Viele Berechnungen in der Bildverarbeitung oder auch anderswo müssen in Java sehr kompliziert gestaltet werden weil eben kein unsigned-Wert vorhanden ist. Das in C++ integrierte C-Erbe finde ich auch nicht unpassend. Man soll ja nach dem natürlichsten Sprachmittel greifen, und was ist für mathematische Funktionen natürlicher als Funktionen? sin(x) liest sich leichter als java.lang.Math.sin(x). Überhaupt kann die C-Untermenge manchmal recht hilfreich sein. Ein parameterisierter Dateiname ist mit sprintf() noch immer am schnellsten zusammengefügt, und zuweilen ist mir der Zugriff auf die "rohen" Bytedaten auch ganz hilfreich. Gerade im mathematischen Umfeld finde ich die Operatorenüberladung von C++ recht gut. Was liest sich besser? Java: Vector y = M.prod(x).add(o); -oder- C++: Vector y=M*x+o; Gerade bei komplizierteren Formeln erleichtert die C++-Notation deutlich die Fehlersuche.
Arc Net wrote: > Definitiv nicht. > Nur mal ein paar Beispiele: > - Look&Feel der Komponenten (egal ob SWT oder Swing, SWT ist nur näher > an einer nativen Anwendung als Swing) > - Window und Komponenten-Refresh beim Ändern der Fenstergröße > - Rendering von Fonts und Renderingunterschiede zw. Java2D und SWT und > dem nativen UI > - Performance/Antwortverhalten > Dazu kommen noch eine ganze Reihe von Gründen die aus Entwicklersicht > gegen Swing und SWT sprechen. Neben der fehlenden Akzeptanz auf dem > Desktop, ist dies u.a. die wesentlich geringere Produktivität. Hmmmm .... deswegen hat sich also Eclipse so stark verbreitet?
Stefan May wrote:
> Ich kann das für Eclipse nicht bestätigen.
Eclipse ist auch mit SWT realisiert, was recht Systemnah progarmmiert
ist.
Das Vorurteil von langsammen Java-Anwendungen betrifft eigentlich immer
die Swing-Anwendungen.
> Wie lange hast du denn Delphi programmiert?
Habe Delphi 4, 5, 6 ein paar Jahre eingesetzt, allerdings nicht als
Hauptaufgabe, sondern nur für kleine Tools um z.B. Daten per serieller
Schnittstelle mit Elektronik auszutauschen, darzustellen, in DB ablegen
etc.
Wie gesagt, ich fand Delphi super, aber in C# oder so schreibt man
tendenziell schon weniger. Ich war damals auf C# und .NET umgestiegen,
weil Delphi immer mehr zu einem Schattendasein und Nischenprodukt
"runtergekommen" war. Mit C# Kenntnissen hat man heutzutage einfach die
besseren Jobaussichten und der Support im Internet durch MSDN, Foren,
Kollegen, ... ist unerschöpflich.
Und genau das ändert Lazarus gerade grundlegend da die Plattformunabhängigkeit immer wichtiger wird, und Lazarus nicht nur Plattform sondern sogar Widgetsetunabhängig ist. Man kann z.b. unter Linux mal eben für QT und GTK2 ein programm ausliefern was in anderen Sprachen und Systemen unmöglich ist.
Als ich das erste mal von Lazarus las, war ich richtig begeistert. Dann habe ich mich auf die Suche ins Web begeben, um ein Lazarus zu downloaden und auf meinem Mac oder PC zu installieren. Ähm ... naja, das wars dann erstmal. Nicht dass man da einen Installer fände und loslegen könnte. Nein, nach einigem Suchen bin ich drauf gekommen, dass man sich da mehrere Pakete zusammensuchen muss, einzeln installieren und selber complieren. Sorry, nette Idee, aber da warte ich besser noch zwei Jahre und bis dahin bleibe ich bei RealBasic. Das kommt in einem Stück und funktioniert auf Anhieb. Ok, dafür ist es auch nicht kostenlos. Wobei ich glaube, dass die Notwendigkeit des "Zusammenfrickelns" bei Lazarus keine Frage des Preises ist. Dieses Detail ist wohl eher auf (für mich) merkwürdigen ANsichten der Autoren zurückzuführen ... Frank
Das stimmt gar nicht, da hast du was falsch gelesen. Für Windows gibts komplett installer. Unter Linux kommts auf die Distribution an bei Ubuntu z.b. braucht man nur eine Paketquelle hinzufügen und kann es einfach über die Software repositores installieren. Auch für MacOS gibts nen installer. Kannst dich gern an mich oder das Deutsche Lazarus Forum (http://www.lazarusform.de) wenden mit deinem konkretem Betriebsystem dann kann man dir die einfachste Methode aufzeigen.
Ok, dann war ich wohl nicht sorgfältig genug. Wo fnde ich einen "out of the box"-Installer für Mac OS X? Danke und sorry. Frank
Im Fall vom MacOS(X) würd ich nen daily Snapshot nehmen die sind immer ne ecke weiter als die Stable, gerade bei MacOS welches quasi die neuste unterstützte Plattform ist macht das noch ne menge aus. Du musst zuerst den freepascal Compiler+ Sources installieren und dann Lazarus. Alle drei pakete findest du in den neusten Versionen hier: http://snapshots.lazarus.shikami.org/lazarus/
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.