Entscheidungsfrage: Java, C#, C++, C

Java, C#, C++, C

  • Java

    Stimmen: 32 35,6%
  • C#

    Stimmen: 12 13,3%
  • C++

    Stimmen: 41 45,6%
  • C

    Stimmen: 5 5,6%

  • Anzahl der Umfrageteilnehmer
    90
  • Umfrage geschlossen .
Wenn Du diese Anzeige nicht sehen willst, registriere Dich und/oder logge Dich ein.
wie sieht es denn eigentlich mit VBA aus?...hat diese Sprache Zukunft?
 
Ich enthalte mich bei der Abtsimmung, würde aber, wenn du komplett neu anfängst ein Auge auf D werfen. Ich programmiere in c++ und dass auch nur, weil ichs muss. Vorlieben gibt es glaub ich nicht durch die Sprachen an sich, sondern nur, ob du mit Ihnen klar kommst oder nicht.
 
mhh toller Thread ;)
Eigentlich muss man alles können ;)
In modernen Firmen interagieren und Kommunizieren ziemlich oft verschiedene Systeme und verschiedene Sprachen miteinander. Wenn man nur ein System kennt, kann man nicht wirklich gut verstehen wie man den eigenen Code schreiben muss, damit dieser perfomant und stabil ist. Daher würde ich Dir auch sagen: Such Dir die Sprachen(n) nach dem Projekt aus.

Allgemein geht die Richtung bei Sprachen in Bytecode intepreter wie Java oder C# ( Nur mal so nebenbei C# ist NICHT C+++++, sondern eigentlich JavaC. In C# wird der Code auch in einen Bytecode übersetzt, der dann von einer Runtime Umgebung (bzw. Virtual Machine) ausgeführt... bei C# braucht man dafür das .NET Framework und in Java die installiert man sich das JRE, bei beiden wird dann eine Runtimeumgebung installiert)

Java hat in den letzten Jahren stark zugelegt und ist mitlerweile ziemlich schnell. Im August gibts eine neue JRE (nach meinen Infos) mit jeder Menge Eyecandy...man darf gespannt sein.

Diese Technologie (also C#/Java) ist auf jedenfall die Zukunft..ABER!! Du lernst die Hardware des PCS's damit nicht so gut kennen wie bei C++. Es ist zimlich oft wichtig, das man weiss wie genau die Speicherzugriffe funktionieren oder wie genau ein Parser aufgebaut ist, um einschätzen zu können, ob er auch noch bei 20000 Textzeilen gleichzeitig funktioniert. Bytecode Sprachen nehmen dir sowas nämlich oft ab und das gibt für den unerfahrenen Coder dann "komische" Effekte und man weiss nicht woher die kommen.

Mein Tipp: Mit C++ anfangen und dann mit diesem Wissen auf was moderneres umsteigen.

bye Toc

P.S. Du könntest ja auch mal mit was richtig abgedrehtem anfangen: Ruby bzw. Ruby Raids...klingt wirklich toll. Damit zu entwickeln, ist wie einen Astin Martin aus den 60ern zu fahren...seeeehr exclusiv ;)
 
ich hab zwar den thread nicht gelesen, aber ich stand schonmal vor der selben frage und hatte dazu auch einen langen thread, vll schaust dir den mal an
 
Du musst als Innenausstatter nicht wissen, wie man ein Haus stuckiert ('verputzt').

Ein Architekt muss wissen wie gemauert wird, da er sonnst die Statik nicht richtig berechnen kann.
Dein Innenenaustatter ist der Photoshop Anwender...das Haus ist längst fertig. (Bauen ~ Coden, Haus nutzen ~ Programm nutzen)
 
So klingt das erstmal gut... ;)

Nur wass ist jetzt der "Putz" ?
Du hattest den Vergleich mit dem Innenausstatter gebracht, weil Du die Meinung vertritts, dass ein Entwickler nicht zwingend verstehen muss wie die Software intern (also auf assembler Ebene) arbeitet?!

Ok...der Innenausstatter ist jetzt mal der Softwareentwickler. Wenn dieser z.B. ein Hängeregal anbauen will und die Wand dahinter aus Presspappe ist, dann sollte er das schon wissen. Er sollte auch wissen was in ein Regal rein soll, bzw. wie viel die Tragen sollen.

Wenn ich z.B. einen XML Parser nutze weil ich große (also zig MB) XML Files verarbeiten will, dann sollte ich wissen wie genau der funktioniert, weil ich sonnst mit ewigen Wartezeiten oder Heap überläufen zu kämpfen habe. Und IMO reicht da die Unterscheidung zwischen SAX und DOM nicht aus.

Du stellst dir das irgendwie falsch vor:

Und nun sag mir mal, wo mein Vergleich hinkt, und erklär mir deinen doch bitet plausibel.
 
Klar ist das mein fehler wenn der heap überläuft...deswegen sollte man ja auch wissen wie der parser funktioniert bevor man einen aussucht. Alle Parser durchzutesten und zu schauen welcher funktioniert...dafür fehlt mir dann die Zeit.

Zu deinem XML Parser Beispiel: warum sollte mich das interessieren? Ich gucke /teste welche Struktur performanter/sinnvoller für die weitere Datenverarbeitung ist, mehr interessiert mich nicht und mehr hat mich als Softwareentwickler auch nicht zu interessieren.
Wenn du nen Heap Overflow erzeugst, hast DU etwas falsch gemacht, nicht der XML Parser. Und wenn der Parser einen erzeugt, dann wird es Zeit für einen neuen Parser - auch dann ist mir wieder egal wie er funktioniert, ich habe meine dokumentierte Schnittstelle zum Parser und das wars, um sich mit mehr auseinanderzusetzen, dafür fehlt einem als Softwareentwickler eindeutig die Zeit.
 
Ok, C ist also draußen.
Für die anderen wurden leider keine weiteren Vorteile genannt.
 
Zuletzt bearbeitet:
setze dich zu erst mit der OO Programmierung im allgemeinen auseinander.


Microsoft:

C++ 2005 trennt sich ja in managed und unmanaged code.
C# ist zwingend managed code jedoch kann hier unmanaged code integriert werden.

Nur C++ bietet dir Plattformunabhängigkeit, aber auch nur dann wenn unmanaged code geschrieben wird. => Prozessorabhängige Kompilierung

Wenn du immer managed code schreibst, dann ist es in .Net egal welche Sprache du verwendest. Die Geschwindigkeit ist zwangsläufig die gleiche, da der Code ja in CLR Assemblies vorliegt.

Letzendlich kommt es auf das Projekt/Arbeitsumfeld und die persönlichen Vorlieben an.
Wer eher aus PHP kommt mag C++, C#, Java eher.

Ich zum Beispiel bin Datenbankprogrammierer und verwende ein dafür spezialisierte Entwicklungsumgebung. FoxPro 9.

Durch die Integration der dort vorhandenen Techniken in dem kommenden VS.Net 2008 (z.B. LINQ) und der immer stärker ins Feld rückenden Systemprogrammierung werden wir teilweise wechseln zu C# und VB.Net.

Besonders in C# und VB-Net wird MS für uns wichtige Implementierungen vorantreiben.

Je schneller du dein Ziel erreichen willst/musst desto mehr Code miuss im Hintergrund für dich erzeugt werden.

Zum lernen würde ich C# nehmen.

Hauptvorteil:
von der ECMA zertifiziert und damit ein offener Standard.
C# ist die Hauptsprache des .Net Frameworks
sowohl stärke Systemprogrammierung wie auch RAD Entwicklung möglich.



Zu Delphi kann ich keine Aussage treffen, da ich hier persönlich keine notwendigkeit sehe.


Ich hoffe ich konnte auch mal eine etwas neue Sichtweise einbringen.

Grundsätzlich: Es gibt keine perfekte Programmiersprache - Wahl sollte durch persönliche Vorlieben und Einsatzbereich entschieden werden.

Diskutieren - Ja , Streitthema - Nein.

:-)
 
Für embedded Systems ist reiner Assembler noch immer das einzig wahre. Zumindest für echte ES...

Aber wie schon so oft geschrieben: Ich empfehler erste eine nicht-oo Sprache (warum nicht Turbo-Pascal, C, Delphi, Basic? Hier lernt man noch "wirklich" coden), und dann was oo-tes, ob nun C++/C# oder Java ist relativ egal, da geht eh eher ums oo-Konzept verstehn, als um die Sprache. Kann man das eine, dauerts nen halben Tag und man kann das andre min. genauso gut...
 
Das Coden (egal ob nicht OO oder OO) dürfte kein Problem sein, das habe ich schon vor langer Zeit gelernt. Es geht hier eher um die Sprache, für die es sich lohnt das Wissen extrem zu vertiefen.
 
Hardwareluxx setzt keine externen Werbe- und Tracking-Cookies ein. Auf unserer Webseite finden Sie nur noch Cookies nach berechtigtem Interesse (Art. 6 Abs. 1 Satz 1 lit. f DSGVO) oder eigene funktionelle Cookies. Durch die Nutzung unserer Webseite erklären Sie sich damit einverstanden, dass wir diese Cookies setzen. Mehr Informationen und Möglichkeiten zur Einstellung unserer Cookies finden Sie in unserer Datenschutzerklärung.


Zurück
Oben Unten refresh