AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Plattformunabhängig programmieren

Ein Thema von fkerber · begonnen am 14. Jan 2011 · letzter Beitrag vom 16. Jan 2011
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#1

Plattformunabhängig programmieren

  Alt 14. Jan 2011, 19:54
Hi,

ich muss jetzt mal eine wahrscheinlich etwas naive Frage stellen, seht es mir nach.
Im Netz habe ich nicht so recht die Infos gefunden, die ich gesucht habe.

Uni-bedingt verbringe ich meinen Programmieralltag überwiegend mit Java (bzw. auch Python, aber das ist ein anderes Thema).
Das hat auch für das, was ich bisher so machen musste, einen enormen Vorteil: Es lief überall ohne nennenswerte Probleme. Soll heißen, bei dem was ich bisher so gemacht habe, musste ich mich wenig bis gar nicht darum kümmern, was der Empfänger meiner Arbeit so für ein Betriebssystem hat.
Auch Teamarbeit mit Mac, Windows, Linux war nie ein Problem.
Was das verteilen der Programme angeht, wage ich einfach mal die Prognose, das nahezu jeder irgendwo eine JRE oder gar ein JDK installiert hat, da es ja auch im Web immer mal wieder vorkommt etc... (Diese Aussage ist zumindest für das akademische Umfeld in Saarbrücken wahr )

Klarer Nachteil von Java in meinen Augen:
GUI-Entwicklung ist einfach grausam.

Jetzt habe ich in einem anderen Thread gelesen, dass jemand Java insgesamt als Nachteil empfindet.


Da drängt sich mir doch die Frage auf: was gibt es denn da sonst so?

Was ich dabei meine, ist eine Programmiersprache, mit der ich auf allen drei System und für alle drei Systeme programmieren kann.
Dabei sollen keine Anpassungen für die einzelnen Systeme erforderlich sein (klar, jetzt nicht bei superspeziellen Features, aber die letzten Jahre hat das mit Java immer geklappt).
Damit ich jetzt einen Vorteil sehe, sollte man einfach ne nette GUI basteln können (oder man müsste mich überzeugen, dass trotz, dass das nicht geht, die Sprache andere Vorteile hätte).
Sinnvoll wäre natürlich auch eine fähige IDE und ganz wichtig:
Die erstellten Programme sollten auch auf einer breiten Zahl von Systemen laufen (ich meine, auch Windows-Exen kann man per Wine unter Linux laufen lassen, aber das gehört ja nicht gerade zum Standardweg - ich denke, ihr versteht was ich meine).

Ich wage nicht davon auszugehen, dass es das Ganze auch unbedingt noch in kostenlos gibt, aber ein Nachteil wäre es sicherlich nicht.


Also schreibt mal drauf los
Dankeschön!


Liebe Grüße,
Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#2

AW: Plattformunabhängig programmieren

  Alt 14. Jan 2011, 20:10
Qt, inkl. IDE, lauffähig unter Windows, Linux und Mac, ist eine C-Sprache und kostenlos. Unter Windows muss man seine EXE allerdings mit ein paar DLLs ausliefern, dass die Qt-Unterstützung geht.

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Plattformunabhängig programmieren

  Alt 14. Jan 2011, 20:13
-.Net/Mono
-gcc QT/Gtk/wxLib, ...
-Delphi/c-Builder XEx .O.B.d.A. x > 1
...
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von patti
patti

Registriert seit: 20. Okt 2004
Ort: Mittelfranken
665 Beiträge
 
Turbo Delphi für Win32
 
#4

AW: Plattformunabhängig programmieren

  Alt 14. Jan 2011, 20:15
Ich glaube, dass Java das Maß aller Dinge ist, wenn es um das plattformunabhängige Programmieren geht. Sicher gibt es beispielsweise den Nachteil mit der komplizierten GUI-Entwicklung, aber auch dafür gibt es ja Tools, die einem einen Haufen Arbeit abnehmen können (habs zugegeben selber noch nie wirklich ausprobiert, aber man liest so einiges ). Immerhin gibt es unzählige Programme (und ich meine damit nicht nur die "kleinen Tools"), welche eine aufwändige Oberfläche haben und komplett in Java geschrieben wurden. Ich kann mich über Java nicht wirklich beschweren (gut, wenn man von Delphi kommt, sind manche Dinge wie beispielsweise die Syntax vielleicht etwas gewöhnungsbefürftig, aber das ist eine andere Sache...). Den großen Vorteil sehe ich neben der Plattformunabhängigkeit (nicht nur für Dekstop-Rechner, sondern auch für Android & co) auch darin, dass es völlig kostenlos ist...

Nur mal so meine Meinung...
Patrick Kreutzer
[Informatik-Student im 4. Semester]
http://www.patti-k.de/
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.641 Beiträge
 
#5

AW: Plattformunabhängig programmieren

  Alt 14. Jan 2011, 20:57
Es wurde schon erwähnt: Mono - also analog zu .NET.

Schau Dir allein mal MonoDevelop an: Es ist eine IDE und damit nicht gerade ein Leichtgewicht an GUI-Software. Die Oberfläche ist mit Gtk# entworfen und läuft stabil und gut zu bedienen auf Windows, dem Mac und Linux. Oberflächen-Design mit Gtk ist zwar doch etwas unterschiedlich von Delphi, aber bei weitem nicht so ein pain wie bei Java.

Bei RemObjects haben wir auch einen internen Bugtracker, der für Mac und Windows mit Gtk# geschrieben ist, und die gleichen Libraries laufen auch im iPad/iPhone Client. Wo wir beim nächsten Bereich sind: Das .NET auf dem Windows Phone läuft ist ja selbstverständlich. Mit MonoDroid bzw. MonoTouch kann man für Android und iOS entwickeln. Allerdings betreten wir hier dann tatsächlich einen kostenpflichtigen Bereich.

Das schöne an .NET/Mono ist auch, dass man hier in der Wahl der Sprache recht frei ist. Klar, C# ist der Favorit, aber wenn Du Delphi magst ist Prism da (auf Mac und PC - Entwicklung auf Linux ist in der Mache, wird aber nicht so wirklich nachgefragt. Hauptsache das Kompilat läuft da.). Und dann gibt es natürlich noch zig andere Sprachen in einer .NET Fassung wie z.B. auch IronPython, was Deinen Python-Code den Du erwähntest auch auf der gleichen Plattform laufen lässt - bei Bedarf sogar innerhalb der restlichen Anwendungen.

Ein weiterer massiver Vorteil: Der C# Compiler in Mono und die Runtime unterliegen der MIT/X11 Lizenz. Das heisst im Prinzip: Jeder darf alles damit machen, sogar in closed-Source Software einsetzen und unter eine andere Lizenz stellen und verkaufen. Es gibt eine Einschränkung für embedded Systeme, die dem Nutzer nicht die Möglichkeit lassen die Mono runtime upzudaten wenn er will, sowie wenn man die Mono runtime statisch linkt (also für den User nicht austauschbar/updatebar macht). Für diese Fälle gibt es aber auch auf Anfrage Lizenzen.
MonoDevelop steht unter GPL, aber das sollte kein Beinbruch sein.

Java untersteht hingegen einer nicht freien Lizenz. Auch wenn der Source einsehbar ist: derivative Werke darf man davon nicht verbreiten. Sollte sich Oracle heute entscheiden Java künftig zur Nutzung kostenpflichtig zu machen gibt es keine Alternative als zu zahlen oder auf der aktuellen Version zu bleiben. In dem Zustand wie sie sich befindet - auch das veröffentlichen von Bugfixes wäre nicht erlaubt.

.NET / Mono ist halt das bessere Java - und hier wurde es richtig gemacht. Vor allem der Architektur der Basis-Namespaces sieht man an das Anders Heijlsberg seine Finger da drin hatte und als Delphianer findet man sich schnell zurecht.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#6

AW: Plattformunabhängig programmieren

  Alt 15. Jan 2011, 00:17
Hi,

also verstehe ich das richtig?
Mono ist quasi das .Net für Nicht-Windows-Systeme?
Und "glücklicherweise" sind diese beiden Systeme (zumindest bis .NET 2, wenn Wiki recht hat) kompatibel. D.h. wenn ich unter Mac was mit z.B. MonoDevelop programmiere, dann wird es auch unter Windows laufen, wenn dort ein passendes .NET-Framework installiert ist?

Bzgl. dem Programmieren an sich:
Mit MonoDevelop wäre die Sprache der Wahl dann vermutlich C#?


Wie ist das mit Delphi-Prism?
Ich hab auf der Download-Seite gesehen, es gibt die IDE für Mac und Windows. Gilt dann hier quasi das selbe wie oben? Ich entwickele unter Mac und das Ganze wäre dann unter Windows mit .NET-Framework lauffähig? Und die Sprache ist dann quasi Delphi im .NET-Style?


Eine zentrale Frage wäre für mich jetzt noch:
Die Verbreitung irgendeiner .NET-Framework-Version unter Windows dürfte wohl recht weit sein - aber wie sieht es auf der anderen Seite für Mac und Linux aus?
Wenn ich das richtig verstanden habe, muss dort ja dann das Mono-Framework installiert sein - das wäre jetzt bei mir beispielsweise nicht der Fall.
Daher meine Frage, ob es da vllt. irgendwo Statistiken/Zahlen (auch wenn ich sie nicht selbst gefälscht habe ) gibt, die dazu was sagen.

Dann noch eine letzte Frage:
Auf der Mono-Download-Seite habe ich jetzt auch eine Windows-Version gesehen. Da frage ich mich nun, warum?
Unterstützt die dann Mono-Anwendungen besser, als das .NET-Framework es tut?


Liebe Grüße,
Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#7

AW: Plattformunabhängig programmieren

  Alt 15. Jan 2011, 00:33
Bzgl. dem Programmieren an sich:
Mit MonoDevelop wäre die Sprache der Wahl dann vermutlich C#?
Mono und C# sind 100% zueinander kompatibel, sind aber von der Entwicklung her zwei komplett andere Sprachen. Die Entwickler von Mono haben sich zum Ziel gesetzt, C#.net multi-platform-fähig zu machen. Das ist ihnen auch gelungen.

Bernhard

PS: Irgendwo habe ich mal gelesen, dass Mono in der Linux-Welt nicht gern gesehen ist, weil es eben kompatibel zu .net ist.
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#8

AW: Plattformunabhängig programmieren

  Alt 15. Jan 2011, 00:49
Hi,

Achso, also Mono ist sowohl Framework wie auch eigene Sprache?

Ich ging nach diesem Wiki-Zitat
Zitat:
MonoDevelop unterstützt mehrere Programmiersprachen, unter anderem C#, Visual Basic .Net, Java, Boo und Nemerle. Neu mit der Version 1.0 Beta 1 kam eine Unterstützung für C/C++ hinzu.
davon aus, dass es da nix eigenes gibt.
Auch http://www.mono-project.com/Languages erweckt nicht den Eindruck.
Wo kann man denn Infos über die Sprache finden?


LG, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.944 Beiträge
 
Delphi 12 Athens
 
#9

AW: Plattformunabhängig programmieren

  Alt 15. Jan 2011, 01:35
Lazarus freepascal lässt sich für so ziemlich jedes system kompilieren...
man muss nur "richtig" Programmieren (den Dateisystem seperator nicht hard codieren und so).

Geht soweit ich das überblicken kann auf Windows (in 64 bit und 32 Bit), Linux, Mac (wenn man es dort installiert bekommt, was anscheinend nicht so einfach ist), Iphone OS, Windows CE ARM(crosscompiler).

Du kannst entweder mit den Standard GTK oberflächen oder mit QT (kylix ähnlich) arbeiten. Mir gefällt es mehr und mehr...
musst eben nur ein Build für jedes System ausführen ...der code kann weitestgehen gleich beleiben...wenn man "richtig" programmiert.


Ansonnsten gibt es noch Morfik damit kannst du Webanwendungen schreiben (in Basic, Objectpascal und c# ) die werden dann nach Javascript Html5 Css "compiliert" halt wie das GWT für Java.
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
mquadrat

Registriert seit: 13. Feb 2004
1.113 Beiträge
 
Delphi XE2 Professional
 
#10

AW: Plattformunabhängig programmieren

  Alt 15. Jan 2011, 09:11
Wenn plattformunabhängig entwickelt werden soll, nehmen wir aktuell auch Java. Sind von Eclipse zu Netbeans gewechselt, weil da der GUI Builder brauchbar ist.

Mono hab ich mir noch nicht angeschaut, wird sicher eine Alternative sobald .NET 4 vollumfänglich unterstützt wird.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 4  1 23     Letzte »    


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz