Programmiersprachen, Windows-Entwicklung
13.03.2011 um 14:19Hallo!
Seit mehr als 10 Jahren arbeite ich nun ausschließlich im Bereich der Software-Entwicklung. Im Schwerpunkt habe ich stets mit Delphi gearbeitet und dürfte in dem Bereich (was selbstredend nicht gleichzusetzen ist mit der Kenntnis aller Bibliotheken etc.) durchaus Experten-Status erreicht haben. Nun ist die Marktpräsenz von Delphi im deutschsprachigen Raum eher mangelhaft was wohl vor allem dem schlechten Marketing von (ehemals) Borland zuzuschreiben ist. Die Möglichkeiten der Sprache als auch die IDE stehen nur in sehr wenigen Bereichen hinter denen von bspw. C++ zurück, soweit dies die Windows-Entwicklung betrifft (Treiber etc. ausgenommen).
Mit Kylix hatte Borland auch eine schöne IDE für Linux im Angebot, die seiner Zeit jedoch vermutlich weit voraus war. Die Dinge bessern sich, man arbeitet wieder und auch endlich daran, die Sprache und Delphi-Plattform voranzubringen. Die Sprache hat aufgeholt und schließt wieder, nach Jahren der Stagnation, an moderne Sprachen an. Auch ein 64Bit-Compiler ist in der Pipeline, ebenso Cross-Plattform-Entwicklung für Macintosh und Linux. Mit Delphi Prism bietet sich eine schöne Möglichkeit (theoretisch, getestet habe ich sie noch nicht) Delphi-Code in .NET-Anwendungen zu integrieren.
In den Jahren gab es sicherlich auch Projekte, die mit anderen Sprachen und Plattformen umgesetzt worden sind. Beispielsweise mit Java (in meinem Fall ist das aber sehr lange her, damals wurden gerade JSP und Servlets spezifiziert...) als auch recht intensiv mit .NET und C#. Letzteres stellt für einen gestandenen Delphianer ohnehin keine große Herausforderung dar, im Gegenteil fühlt man sich vom ersten Moment an sehr heimisch und vieles ist vertraut.
Lange Rede, kurzer Sinn: ich bin derzeit auf Jobsuche und natürlich würde ich gerne weiter mit Delphi entwickeln. Auf der anderen Seite: ich kann mir das nicht aussuchen, die Stellen sind mehr als rar gesät. Meine C#-Kenntnisse sind zwischenzeitlich auh nicht mehr taufrisch, jedoch mit Sicherheit in relativ kurzer Zeit zu aktualisieren.
Gleichzeitig möchte ich jemanden ein wenig an die Programmierung heranführen - Delphi wäre aus meiner Sicht für einen Einsteiger (und natürlich auch da ich es im Schlaf beherrsche) ideal. Jedoch ist damit kein Blumentopf (mehr) zu gewinnen und C# wäre sicher die bessere Alternative.
Somit habe ich gleich zwei Fragen: was empfiehlt der versierte Software-Entwickler mir, um beruflich voranzukommen, was empfiehlt der versierte Software-Entwickler, was ich einem potentiellen Einsteiger lehren sollte? PHP (und andere schwach oder nicht typisierte Sprachen) als auch C oder C++ betrachte ich für einen Einsteiger als nicht zumutbar und auf lange Sicht für absolut kontraproduktiv was bspw. einen "sauberen" Stil betrifft auf den ich persönlich allerhöchsten Wert lege. Klar, dass ich dabei auch Kompormisse eingehe und vieles nicht so funktioniert bzw., aus welchen Gründen auch immer, der "reinen Lehre" entsprechend umgesetzt werden kann. Aber das ist wieder ein ganz anderes Thema.
Meine Frage bezieht sich dann auch dahingehend, ab welchem Zeitpunkt man Themen wie "Refactoring", "Design Patterns" oder gar UML einem Einsteiger nahebringen sollte.
Über (hoffentlich) viele Anregungen, Beiträge und Kritik freue ich mich dann mal :-)
Seit mehr als 10 Jahren arbeite ich nun ausschließlich im Bereich der Software-Entwicklung. Im Schwerpunkt habe ich stets mit Delphi gearbeitet und dürfte in dem Bereich (was selbstredend nicht gleichzusetzen ist mit der Kenntnis aller Bibliotheken etc.) durchaus Experten-Status erreicht haben. Nun ist die Marktpräsenz von Delphi im deutschsprachigen Raum eher mangelhaft was wohl vor allem dem schlechten Marketing von (ehemals) Borland zuzuschreiben ist. Die Möglichkeiten der Sprache als auch die IDE stehen nur in sehr wenigen Bereichen hinter denen von bspw. C++ zurück, soweit dies die Windows-Entwicklung betrifft (Treiber etc. ausgenommen).
Mit Kylix hatte Borland auch eine schöne IDE für Linux im Angebot, die seiner Zeit jedoch vermutlich weit voraus war. Die Dinge bessern sich, man arbeitet wieder und auch endlich daran, die Sprache und Delphi-Plattform voranzubringen. Die Sprache hat aufgeholt und schließt wieder, nach Jahren der Stagnation, an moderne Sprachen an. Auch ein 64Bit-Compiler ist in der Pipeline, ebenso Cross-Plattform-Entwicklung für Macintosh und Linux. Mit Delphi Prism bietet sich eine schöne Möglichkeit (theoretisch, getestet habe ich sie noch nicht) Delphi-Code in .NET-Anwendungen zu integrieren.
In den Jahren gab es sicherlich auch Projekte, die mit anderen Sprachen und Plattformen umgesetzt worden sind. Beispielsweise mit Java (in meinem Fall ist das aber sehr lange her, damals wurden gerade JSP und Servlets spezifiziert...) als auch recht intensiv mit .NET und C#. Letzteres stellt für einen gestandenen Delphianer ohnehin keine große Herausforderung dar, im Gegenteil fühlt man sich vom ersten Moment an sehr heimisch und vieles ist vertraut.
Lange Rede, kurzer Sinn: ich bin derzeit auf Jobsuche und natürlich würde ich gerne weiter mit Delphi entwickeln. Auf der anderen Seite: ich kann mir das nicht aussuchen, die Stellen sind mehr als rar gesät. Meine C#-Kenntnisse sind zwischenzeitlich auh nicht mehr taufrisch, jedoch mit Sicherheit in relativ kurzer Zeit zu aktualisieren.
Gleichzeitig möchte ich jemanden ein wenig an die Programmierung heranführen - Delphi wäre aus meiner Sicht für einen Einsteiger (und natürlich auch da ich es im Schlaf beherrsche) ideal. Jedoch ist damit kein Blumentopf (mehr) zu gewinnen und C# wäre sicher die bessere Alternative.
Somit habe ich gleich zwei Fragen: was empfiehlt der versierte Software-Entwickler mir, um beruflich voranzukommen, was empfiehlt der versierte Software-Entwickler, was ich einem potentiellen Einsteiger lehren sollte? PHP (und andere schwach oder nicht typisierte Sprachen) als auch C oder C++ betrachte ich für einen Einsteiger als nicht zumutbar und auf lange Sicht für absolut kontraproduktiv was bspw. einen "sauberen" Stil betrifft auf den ich persönlich allerhöchsten Wert lege. Klar, dass ich dabei auch Kompormisse eingehe und vieles nicht so funktioniert bzw., aus welchen Gründen auch immer, der "reinen Lehre" entsprechend umgesetzt werden kann. Aber das ist wieder ein ganz anderes Thema.
Meine Frage bezieht sich dann auch dahingehend, ab welchem Zeitpunkt man Themen wie "Refactoring", "Design Patterns" oder gar UML einem Einsteiger nahebringen sollte.
Über (hoffentlich) viele Anregungen, Beiträge und Kritik freue ich mich dann mal :-)