Zusammenfassung: ----------- C# & Java: sehr ähnlich, für Web, Desktop, Apps, Objektorientiert, ähnlichen Schreibstil, besitzen beide Interfaces und Abstrakte Klassen __________________________________ C#: verwenden für Windows (ist von Microsoft), für Spiele(unity) Java: für jedes Gerät (alle Systeme)
Es ist vollkommen richtig, dass viele Jahre die Plattfomunabhängigkeit der große Vorteil von Java war. Dieser große Vorteil wird aber durch .NET Core aufgeholt und spätestens ab .NET 5, das im November 2020 erscheint nichtig wird. Weil dadurch direkt mit der .NET-Implementierung und C# zusätzlich zu Windows auch für Linux, Android, iOS, MacOS und anderen Plattformen entwickelt werden kann. Microsoft sagt auch schon seit mehreren Jahren ganz klar, dass sie sich diesen Plattformen auch öffnen wollen - und handelt auch so.
Problem an beiden Sprachen ist halt, daß beide Sprachen ihre entsprechende Runtime Umgebung brauchen, die auf dem Rechner installiert sein muss. Zudem kostet das Interpretieren zur Laufzeit auch mehr Zeit. Also langsamer als C oder C++. Trotzdem würde ich mich wahrscheinlisch für C# entscheiden, da Sprachen wie C++ derart aufgeblasen und unnötig verkompliziert daherkommen, daß das ganze ziemlich ätzend zu lernen ist. Ich hab irgendwann mal mit C angefangen und hatte da recht schnell keine Lust mehr drauf. Dieser ganze Mindfuck mit der Speicherverwaltung, "Zeiger" oder diese 100000 verschiedenen Variablentypen sind nur 3 der Dinge bei denen ich mir dachte: "WARUM? Hätte man das nicht anders lösen können?" Ich fand das alles ungeheuer umständlich.
Ich habe mit JavaScript als Einsteigersprache angefangen und wollte dich fragen auf welche Fundament-Programmiersprache man jetzt wechseln sollte. Mir kamen jetzt als Fundament Sprachen C++, Java und C# im Sinn. Alle drei Sprachen sind nahe zu Zukunftssicher, aber welche würdest du allgemein für die persönliche als auch für die berufliche Karriere langfristig empfehlen.
Na ja, es hängt halt davon ab, was du machen willst, aber ich gebe @brain2fog da auch recht man sollte sich nicht nur auf eins fokussieren, aber mein Persönlicher tipp lerne 1 Sprache wirklich gut und versuch eventuell Funktionen, die du sonst nur aus einer lib nimmst, mal selber zu bauen, das gibt dir einen tieferen Einblick, wirkt Wunder, glaub mir und wenn du eine Sprache richtig gut kannst, dann lernst du andere auch schneller, ich würde für so was C nehmen, da es eine Lowend Sprache ist, bei der du noch sehr viel selber machen musst und wenn du C und dann C++ kannst, ist der Rest kindergarten
@@TheRealHoernchen Mittlerweile würde ich statt C und C++ schon eher Rust als systemnahe Programmiersprache lernen. Die Sicherheitsbehörden und andere unabhängige Sicherheitsforscher raten wegen (gravierenden) Speicherfehlern mittlerweile auch zu sicheren Sprachen wie Rust, Java, C# usw.
@@coloneljacensolo2011 Nun, das ist erst einmal ein Problem, das der Programmierer verursacht hat, da er für die Speicherverwaltung und das Freigeben von Speicher verantwortlich ist. Andererseits war es ja nur ein Tipp, mit dem ich lernen würde, weil der Rest dann einfach Kindergarten ist.
genau desshalb findest Du das Video auch cool - wie wäre es mal mit programming skills die nicht von einer sprache abhängig sind? schua mal wie geil: erstelle ein coordinatensystem . . daraus machst du zahlenlandkarten - paralelle dimensionen im koordsys- zeige auf pos x4y5 das Multiplikationsergebnis, Additionsergebnis . . allerelei rechnungen die mit x und y als formel zu erstellen wären und ein zahl liefern als ihr ergebnis . . . das halt mit jeder posi im coordiantensystem machen heisst bei einen 10x10 sind es 100 rechnungen die du addierensubrahieren lässt oder durch eine eigene Formel pumpst. Bei der multiplaktionszahlenlandkarte wie ich sie nenne - sagst du einfach mal zeige nur ergebnisse an die zb unter oder über 20 sind . . . . auf diese weise habe ich eine Elipse oder Kreis (eckige gerundete kannten) erstellt ohne die zahl Pi zu verwenden . . . es hat ja nur ein centerpunkt benötigt um dann manuale achenspiegelungen zu erstellen als puzzle teile für den Kreis . . . Das hat mir keiner vorher gezeigt. . . Einstein hat selber gedacht -nachdem er zugriff und zugang durch eine vorwelt erlangte . . . kaum ein Mensch kann sich vorstellen wie der als kleiner Junge gelebt hatte und welche Probleme der Mann hatte. Betrachten wir ständig andere Leute, so ist das nicht die eigene Pflanze die da wächst und sich wissen nennt. Inner cicle outer circle . . . wo setzt du auf und wo willst du hin?
Was man noch ergänzen kann ist, wenn man eine Sprache kann und dann umsteigen möchte, ist das kein großes Problem. Wer Java kann der kann auch schnell auf C# umsteigen. Und wer C# kann der kann auch sehr schnell auf Java umsteigen. Deswegen würde ich sagen, dass es gar nicht so wichtig ist mit welcher Sprache man anfängt. Wenn man später die andere Sprache braucht, dann ist der Umstieg sehr einfach.
C# ist eine Sprache, .NET ein Framework was auch von VB verwendet wird. C# wird auch in Azure verwendet, genauso wie Java und andere Sprachen. MS pusht Azure, schon lange nicht mehr Windows. Dann, vor 2 Jahren war auch schon bekannt das .NET-Framework, welches im Video beschrieben wird - Windows optimiert, abgekündigt ist. Und auch wohin sich das schon etablierte .NET Core hin entwickelt.
Ich selber mache jetzt ca 1 und nen halbes Jahr c# und ich muss schon sagen visual Studio ist sehr nice das schreibgefühl von c# gefällt mir einfach super Aber ich habe auch schon oft Java Code gesehen und die basics geschrieben finde es auch sehr schön Kann jedem empfehlen beides anzuschauen Nur nervig das visual Studio kein Java unterstützt und ich dann 900 Millionen neue Sachen installieren muss :)
Der zentrale Punkt des Videos ist schlicht falsch. Dieses Video war schon 2019 veraltet, und heute ist es komplett irreführend, weil das plattformübergreifende .NET Core inzwischen Mainstream ist, aber im Video komplett ignoriert wird. Mit C# kann man heute gut für Windows, Mac, Linux, iOS und Android entwickeln. C# hat sich als Sprache in den letzten Jahren m.E. auch schneller weiterentwickelt als Java.
Ich finde, nur die Sprachen alleine zu vergleichen ist nicht so Sinnvoll, weil eben ähnlich. Wichtiger fände ich, dass man den TechStack vergleicht, in dem die Sprachen verwendet werden.
Also wenn ich z. B. ich 2 Jahre C# schon lerne, kann ich ohne Probleme Java dann auch verstehen & Programmieren. naja aufjeden fall nicht so flüssig dann wie C# natürlich
@LetsGameDev :D , schade dass das mit dem Markieren net funzt. Mein ehem. sagte einst "Beherrscht man eine Sprache, kann man alle" weil die Grundsyntax haben die meisten Hochsprachen gemein. :)
Das Them ist zwar schon alt aber: Ich habe etwas Probleme mit C# obwohl ich diese eigentlich schön finde. Aber man soll alles abgenommen bekommen. Ich möchte aber nicht, das mir alles abgenommen wird. Jedes mal bei der Frage C# o. Java heißt es, C# sei nur was für faule & solche die nie richtig Programmieren (lernen) wollen. Ich lerne C++ und mein Lieblingsthemen sind Zeiger & Referenzen. Diese gibt es soweit ich weiß weder in C# noch in Java. wäre aber auch kein Ausschlusskriterium. Möchte mich allerdings nicht nur auf C++ fixieren und schwanke zwischen C++ & Java oder C++ & C#. Die Frage: was willst du erreichen bzw. welche Probleme willst du mit welcher Sprache lösen, stellt sich für mich nicht, da beide, C# und Java, für Windows nutzbar sind ( Linux lasse ich mal kurz weg). Schöne grüße an alle & danke.
Die Grundkonzepte kann man in C#, Java oder C++ lernen. Du kannst durchaus Pointer in C# nutzen (ich sehe meist nur nicht warum man sie benutzen will). Das coole an C# ist , dass vieles intuitiver ist als in Java. In C# ist vieles abstracter als in C++,was manche als faul andere aber al großen Vorteil sehen.
@@tornoutlaw Ja mehrfachvererbung, kann praktisch sein, muss es aber nicht. Und du kannst halt wirklich auf Hardware zugreifen und damit arbeiten, was C# nicht kann, da es interpretiert werden muss. Und es läuft nicht nativ auf mikrocontroller.
Hey, sende bei solchen Problemen einfach eine E-Mail an hendrikpruin@programmieren-starten.de, dann können wir das Problem sofort lösen und bereinigen :)
Am Ende des Tages ist es Geschmacks Sache und java ist auch in vielen Fällen c# überlegen das eine hat Vorteile gegenüber dem anderem und genau so auch andersrum
Das ist leider eine komplette falsch Aussage, ich kann dir direkt 3 Beispiele nennen: - Delegaten (Java 10+ ebenfalls) - Events - using Statement - String Interpolation - C# ist grundsätzlich performanter Und beide Sprachen sind Plattform unabhängig, C# sogar mehr da dort Mono bspw. fast immer mitgeliefert wird. Java muss als separate Anwendung installiert werden.
Hey, wir verkaufen lediglich unsere Kurse auf unserer Webseite. Privaten Unterricht geben wir nicht, da unserer Meinung nach Videokurse das beste Tool zum lernen sind und wir uns damit etwas dazu verdienen können :)
@@Supergeckos1000 Assembly ist nur ein Binary-Framework, 01101100011001010111001001101110011001010010000001101100011010010110010101100010011001010111001000100000011001110110110001100101011010010110001101101000001000000110110101101001011101000010000001100101011010010110111001110011001000000111010101101110011001000010000001101110011101010110110001101100001000000111101001110101001000000101000001110010011011110110011101110010011000010110110101101101011010010110010101110010011001010110111000100001001000000101100001000100
Zusammenfassung:
-----------
C# & Java:
sehr ähnlich, für Web, Desktop, Apps, Objektorientiert, ähnlichen Schreibstil, besitzen beide Interfaces und Abstrakte Klassen
__________________________________
C#: verwenden für Windows (ist von Microsoft), für Spiele(unity)
Java: für jedes Gerät (alle Systeme)
C# ist plattformunabhängig
Es ist vollkommen richtig, dass viele Jahre die Plattfomunabhängigkeit der große Vorteil von Java war.
Dieser große Vorteil wird aber durch .NET Core aufgeholt und spätestens ab .NET 5, das im November 2020 erscheint nichtig wird. Weil dadurch direkt mit der .NET-Implementierung und C# zusätzlich zu Windows auch für Linux, Android, iOS, MacOS und anderen Plattformen entwickelt werden kann.
Microsoft sagt auch schon seit mehreren Jahren ganz klar, dass sie sich diesen Plattformen auch öffnen wollen - und handelt auch so.
5:50 Gibts da nicht noch das Cross Platform .NET Core oder jetzt einfach nur noch .NET 5?
Hättest ja mal etwas zu .NET Core/Standard sagen können...
Problem an beiden Sprachen ist halt, daß beide Sprachen ihre entsprechende Runtime Umgebung brauchen, die auf dem Rechner installiert sein muss. Zudem kostet das Interpretieren zur Laufzeit auch mehr Zeit. Also langsamer als C oder C++.
Trotzdem würde ich mich wahrscheinlisch für C# entscheiden, da Sprachen wie C++ derart aufgeblasen und unnötig verkompliziert daherkommen, daß das ganze ziemlich ätzend zu lernen ist.
Ich hab irgendwann mal mit C angefangen und hatte da recht schnell keine Lust mehr drauf. Dieser ganze Mindfuck mit der Speicherverwaltung, "Zeiger" oder diese 100000 verschiedenen Variablentypen sind nur 3 der Dinge bei denen ich mir dachte: "WARUM? Hätte man das nicht anders lösen können?" Ich fand das alles ungeheuer umständlich.
deswegen fängt man eher nicht ohne grund nicht mit c/c++ an
Endlich weiß ich was ich brauche - Danke
was genau bedeutet "zur Laufzeit"? Etwa während das Programm ausgeführt wird?
Korrekt :)
Ich habe mit JavaScript als Einsteigersprache angefangen und wollte dich fragen auf welche Fundament-Programmiersprache man jetzt wechseln sollte. Mir kamen jetzt als Fundament Sprachen C++, Java und C# im Sinn. Alle drei Sprachen sind nahe zu Zukunftssicher, aber welche würdest du allgemein für die persönliche als auch für die berufliche Karriere langfristig empfehlen.
Keine - du musst von allem das Wissen sammeln - bitte nicht wie jemand klingen der nur eine Unterhose sein ganzes Leben trägt
Na ja, es hängt halt davon ab, was du machen willst, aber ich gebe @brain2fog da auch recht man sollte sich nicht nur auf eins fokussieren, aber mein Persönlicher tipp lerne 1 Sprache wirklich gut und versuch eventuell Funktionen, die du sonst nur aus einer lib nimmst, mal selber zu bauen, das gibt dir einen tieferen Einblick, wirkt Wunder, glaub mir und wenn du eine Sprache richtig gut kannst, dann lernst du andere auch schneller, ich würde für so was C nehmen, da es eine Lowend Sprache ist, bei der du noch sehr viel selber machen musst und wenn du C und dann C++ kannst, ist der Rest kindergarten
@@TheRealHoernchen Mittlerweile würde ich statt C und C++ schon eher Rust als systemnahe Programmiersprache lernen. Die Sicherheitsbehörden und andere unabhängige Sicherheitsforscher raten wegen (gravierenden) Speicherfehlern mittlerweile auch zu sicheren Sprachen wie Rust, Java, C# usw.
@@coloneljacensolo2011 Nun, das ist erst einmal ein Problem, das der Programmierer verursacht hat, da er für die Speicherverwaltung und das Freigeben von Speicher verantwortlich ist. Andererseits war es ja nur ein Tipp, mit dem ich lernen würde, weil der Rest dann einfach Kindergarten ist.
Echt cooles Video, nur Schade das ich bei C# deinen Crashkurs schon durch habe und jetzt bei der Unity Einführung bin. :)
Fr33zer _01 danke :))
genau desshalb findest Du das Video auch cool - wie wäre es mal mit programming skills die nicht von einer sprache abhängig sind?
schua mal wie geil: erstelle ein coordinatensystem . . daraus machst du zahlenlandkarten - paralelle dimensionen im koordsys- zeige auf pos x4y5 das Multiplikationsergebnis, Additionsergebnis . . allerelei rechnungen die mit x und y als formel zu erstellen wären und ein zahl liefern als ihr ergebnis . . . das halt mit jeder posi im coordiantensystem machen heisst bei einen 10x10 sind es 100 rechnungen die du addierensubrahieren lässt oder durch eine eigene Formel pumpst. Bei der multiplaktionszahlenlandkarte wie ich sie nenne - sagst du einfach mal zeige nur ergebnisse an die zb unter oder über 20 sind . . . . auf diese weise habe ich eine Elipse oder Kreis (eckige gerundete kannten) erstellt ohne die zahl Pi zu verwenden . . . es hat ja nur ein centerpunkt benötigt um dann manuale achenspiegelungen zu erstellen als puzzle teile für den Kreis . . . Das hat mir keiner vorher gezeigt. . . Einstein hat selber gedacht -nachdem er zugriff und zugang durch eine vorwelt erlangte . . . kaum ein Mensch kann sich vorstellen wie der als kleiner Junge gelebt hatte und welche Probleme der Mann hatte. Betrachten wir ständig andere Leute, so ist das nicht die eigene Pflanze die da wächst und sich wissen nennt. Inner cicle outer circle . . . wo setzt du auf und wo willst du hin?
Was man noch ergänzen kann ist, wenn man eine Sprache kann und dann umsteigen möchte, ist das kein großes Problem. Wer Java kann der kann auch schnell auf C# umsteigen. Und wer C# kann der kann auch sehr schnell auf Java umsteigen. Deswegen würde ich sagen, dass es gar nicht so wichtig ist mit welcher Sprache man anfängt. Wenn man später die andere Sprache braucht, dann ist der Umstieg sehr einfach.
Was ich bei c# und auch c++ für Anfänger sehr schön finde ist Windows forms sprich ein drag and drop ui (das backend muss man selbst coden)
Ja :)
C# ist eine Sprache, .NET ein Framework was auch von VB verwendet wird.
C# wird auch in Azure verwendet, genauso wie Java und andere Sprachen.
MS pusht Azure, schon lange nicht mehr Windows.
Dann, vor 2 Jahren war auch schon bekannt das .NET-Framework, welches im Video beschrieben wird - Windows optimiert, abgekündigt ist. Und auch wohin sich das schon etablierte .NET Core hin entwickelt.
"Mäc Osssss" 😄
Was ist mit .Net Core?
genau meine Frage))
Ja endlich!
Ich selber mache jetzt ca 1 und nen halbes Jahr c# und ich muss schon sagen visual Studio ist sehr nice das schreibgefühl von c# gefällt mir einfach super
Aber ich habe auch schon oft Java Code gesehen und die basics geschrieben finde es auch sehr schön
Kann jedem empfehlen beides anzuschauen
Nur nervig das visual Studio kein Java unterstützt und ich dann 900 Millionen neue Sachen installieren muss :)
Sehr cool und danke für das Teilen deiner Erfahrungen :)
Der zentrale Punkt des Videos ist schlicht falsch. Dieses Video war schon 2019 veraltet, und heute ist es komplett irreführend, weil das plattformübergreifende .NET Core inzwischen Mainstream ist, aber im Video komplett ignoriert wird. Mit C# kann man heute gut für Windows, Mac, Linux, iOS und Android entwickeln. C# hat sich als Sprache in den letzten Jahren m.E. auch schneller weiterentwickelt als Java.
7:10 😂🤣😂😂
😂
eigentlich sind beide Sprachen plattformunabhängig...
inzwischen ja :)
Ich finde, nur die Sprachen alleine zu vergleichen ist nicht so Sinnvoll, weil eben ähnlich. Wichtiger fände ich, dass man den TechStack vergleicht, in dem die Sprachen verwendet werden.
Hallo welche sprache ist besser für programm Entwicklung ?
Das Video ansehen und dann abwägen :) Kommt immer auf den Use Case drauf an :)
Wobei man nicht vergessen darf, dass OOP schon seit längerem sehr umstritten ist.
Also wenn ich z. B. ich 2 Jahre C# schon lerne, kann ich ohne Probleme Java dann auch verstehen & Programmieren.
naja aufjeden fall nicht so flüssig dann wie C# natürlich
@LetsGameDev :D , schade dass das mit dem Markieren net funzt.
Mein ehem. sagte einst "Beherrscht man eine Sprache, kann man alle" weil die Grundsyntax haben die meisten Hochsprachen gemein. :)
ehem. Chef*
Das Them ist zwar schon alt aber:
Ich habe etwas Probleme mit C# obwohl ich diese eigentlich schön finde. Aber man soll alles abgenommen bekommen.
Ich möchte aber nicht, das mir alles abgenommen wird. Jedes mal bei der Frage C# o. Java heißt es, C# sei nur was für faule & solche die nie richtig Programmieren (lernen) wollen. Ich lerne C++ und mein Lieblingsthemen sind Zeiger & Referenzen. Diese gibt es soweit ich weiß weder in C# noch in Java. wäre aber auch kein Ausschlusskriterium. Möchte mich allerdings nicht nur auf C++ fixieren und schwanke zwischen C++ & Java oder C++ & C#. Die Frage: was willst du erreichen bzw. welche Probleme willst du mit welcher Sprache lösen, stellt sich für mich nicht, da beide, C# und Java, für Windows nutzbar sind ( Linux lasse ich mal kurz weg). Schöne grüße an alle & danke.
Die Grundkonzepte kann man in C#, Java oder C++ lernen. Du kannst durchaus Pointer in C# nutzen (ich sehe meist nur nicht warum man sie benutzen will). Das coole an C# ist , dass vieles intuitiver ist als in Java. In C# ist vieles abstracter als in C++,was manche als faul andere aber al großen Vorteil sehen.
2
Yeah! :) Schön das Ihr euch freut, wenn neue Videos von uns rauskommen!
2 ist einfach der beste Kommentar
Manno ich hab gehofft c++ würde kommen, aber die anderen sind auch interessant
Hey, momentan liegt der Fokus noch auf Java und C#. C++ wird auf diesem Kanal aber auch noch kommen :)
@@ProgrammierenStarten Hm, kann C++ irgendetwas, was C# nicht ermöglicht? Oder ist C++ noch direkter/abstrakter?
@@tornoutlaw c++ hat man mehr Freiheiten was das memory Management angeht.
@@naimcool36 aber sonst ändert sich eig ned viel
@@tornoutlaw Ja mehrfachvererbung, kann praktisch sein, muss es aber nicht.
Und du kannst halt wirklich auf Hardware zugreifen und damit arbeiten, was C# nicht kann, da es interpretiert werden muss.
Und es läuft nicht nativ auf mikrocontroller.
Hmmmmm kann mich auf eurer Webseite nicht mehr einloggen.... gibt`s da gerade irgendwelche Fehler?
Hey, sende bei solchen Problemen einfach eine E-Mail an hendrikpruin@programmieren-starten.de, dann können wir das Problem sofort lösen und bereinigen :)
@@ProgrammierenStarten OK thx
Was ist jetzt besser für die Android- App Entwicklung ?
Im Prinzip Geschmackssache. Ich würde Java wählen :)
Ich würde Dir Kotlin empfehlen für die native Android-Entwicklung.
Funktioniert Spring Boot mit C# ? Der Punkt hat gefehlt.
Hört sich ein bischen an wie BastiGHG
.NET Core/Standard gekonnt ausgeklammert. 🤣
Das Video ist somit nicht mehr aktuell.
JAVA is the best
yeah :D
Könnten Sie eigentlich eine Tutorial Serie über HTML und CSS machen?
In die Richtung werden definitiv auch noch Serien kommen. Allerdings noch nicht in der nächsten Zeit :)
Schlechtes Video, die aktuelle Entwicklung von C# völlig außen vor gelassen. Ich würde behaupten C# entwickelt deutlich besser als Java.
Am Ende des Tages ist es Geschmacks Sache und java ist auch in vielen Fällen c# überlegen das eine hat Vorteile gegenüber dem anderem und genau so auch andersrum
Das ist leider eine komplette falsch Aussage, ich kann dir direkt 3 Beispiele nennen:
- Delegaten (Java 10+ ebenfalls)
- Events
- using Statement
- String Interpolation
- C# ist grundsätzlich performanter
Und beide Sprachen sind Plattform unabhängig, C# sogar mehr da dort Mono bspw. fast immer mitgeliefert wird. Java muss als separate Anwendung installiert werden.
@@Dustyy01 "Java muss als separate Anwendung installiert werden." - Ja, und ?
Gibst du auch "privaten" Unterricht für bestimmte Sprachen?😂😂
Hey, wir verkaufen lediglich unsere Kurse auf unserer Webseite. Privaten Unterricht geben wir nicht, da unserer Meinung nach Videokurse das beste Tool zum lernen sind und wir uns damit etwas dazu verdienen können :)
java
Erster
Yeah! :)
@@ProgrammierenStarten Beide Sprachen sind nur ein C Framework... also lernt lieber gleich C ;-)
@@cyberpanda8813 C ist nur ein Assembly-Framework, also lern lieber gleich Assembly
@@Supergeckos1000 Assembly ist nur ein Binary-Framework, 01101100011001010111001001101110011001010010000001101100011010010110010101100010011001010111001000100000011001110110110001100101011010010110001101101000001000000110110101101001011101000010000001100101011010010110111001110011001000000111010101101110011001000010000001101110011101010110110001101100001000000111101001110101001000000101000001110010011011110110011101110010011000010110110101101101011010010110010101110010011001010110111000100001001000000101100001000100
@@cyberpanda8813 Einsen und Nullen sind nur ein Transistor-Framework!