Der Ausgangspunkt für das Erlernen von Java – was Sie wissen sollten und was ich gerne gewusst hätte

Veröffentlicht: 2020-04-14

Der Einstieg in die Programmierung ist einfacher, wenn es ein Teil Ihres College-Lehrplans ist. Dann müssen Sie sich nicht entscheiden, welche Sprache Sie lernen, welche Argumente Sie überspringen und welchen Konzepten Sie mehr Aufmerksamkeit widmen möchten.

Als ich aufs College ging, war C die erste Programmiersprache, die ich lernte, dann gaben uns Professoren einen Kurs über C++ und später, wenn Sie wollten, konnten Sie Java, Python und andere Sprachen lernen.

Wenn ich jedoch mit Softwareentwicklern auf Einstiegsniveau spreche, empfehle ich nicht, Ihre Programmierausbildung mit C zu beenden. Stattdessen schlage ich normalerweise vor, Java zu lernen – ich werde etwas später darauf eingehen, warum.

Obwohl die Java-Community meiner Meinung nach randvoll mit Lernmaterialien ist, fragen mich angehende Entwickler oft: „Also, wo fange ich an?“ oder „Muss ich die Theorie lesen oder gleich anfangen Code zu schreiben?“.

Anscheinend ist es nicht einfach, selbst programmieren zu lernen. Als erfahrener Entwickler habe ich mich entschlossen, Anfängern zu helfen und sie durch die Fallstricke der Java-Lernkurve zu führen. In diesem Beitrag erfahren Sie, welche Praktiken beim Java-Lernen bahnbrechend sind, wo viele Java-Entwickler scheitern und wie Sie sicherstellen können, dass Sie die Konzepte, die Sie beherrschen, am Arbeitsplatz anwenden können.

Aber warum Java?

Wenn Ihr erster Instinkt ist, eine Debatte mit mir zu beginnen und zu erklären, dass Python einfacher ist oder dass C eine traditionellere Art ist, Softwareentwicklung zu lernen, lassen Sie mich Ihnen versichern, dass ich verstehe, woher Sie kommen könnten.

Ich sehe Java objektiv als das, was es ist, erkenne seine Nachteile (z. B. Geschwindigkeit und Speichereffizienz) – dennoch glaube ich, dass es keine bessere Sprache gibt, die man als Einsteiger-Entwickler lernen kann.

Hier ist, warum ich Java als Ausgangspunkt für die Programmierung so mag:

  • Die Konzepte von Java werden von mehreren Programmiersprachen verwendet. Objektorientierte Programmierung, typisierte Variablen oder Ablaufsteuerung sind alles Konzepte, die Sie später beim Arbeiten in C oder C++ verwenden können. Wenn ein Python-Entwickler nur weiß, wie man in Python codiert, haben Sie eine Brücke zwischen Java und anderen Web- und Mobilsprachen (Kotlin zum Beispiel verdankt einen Großteil seiner Funktionalität Java). In Bezug auf die Vielseitigkeit ist die Wahl von Java definitiv ein Gewinn gegenüber jeder anderen Sprache.
  • Programmieren in Java ist vielseitig. Für Ihre erste Entwicklungssprache wollen Sie nicht nur eine lukrative Technologie, die Ihnen Fähigkeiten und einen Job verschafft. Vielmehr ist es in Ihrem besten Interesse sicherzustellen, dass Ihnen eine unterhaltsame Fahrt bevorsteht – und Java ist genau das, wonach Sie suchen. Wenn Sie gerade erst anfangen, könnte Sie das Gefühl verfolgen, dass C einfacher ist, weil Sie weniger tippen müssen (es ist irreführend, wie Sie später verstehen werden). Wenn ich mich jedoch an meine Programmiersprachen-Lerntage erinnere, übertrumpft keine andere Lernerfahrung die Einmischung in Java. Es gibt einfach so viel Raum für Kreativität und Beispielanwendungen zum Erstellen – textbasierte RPGs, konsolengesteuerte Spiele und vieles mehr. Darüber hinaus finden Sie Projekte für alle Schwierigkeitsgrade – Sie müssen nicht monatelang theoretische Konzepte lernen, bevor Sie zum praktischen Lernen übergehen.
  • Weit verbreitete Sprache. Manchmal ist es so einfach – man möchte eine Sprache lernen, mit der man alles machen kann, und es gibt kaum etwas Besseres als Java. Die Sprache eignet sich hervorragend für Web-Apps, Software, Android-Projekte und interne Tools. Nachdem Sie sich mit Java vertraut gemacht haben, werden Sie das Gefühl haben, dass Sie mehr oder weniger alles können. Zugegeben, es wird immer noch notwendig sein, sich in Skriptsprachen wie JavaScript einzumischen – es wäre jedoch nicht so beängstigend wie das Erlernen einer Programmiersprache von Grund auf, wenn Sie mindestens auf dem mittleren Niveau von Java sind.

Stellenmarkt für Java-Programmierung – alles gut?

Lernen Sie, die Entwicklung zu programmieren
Bild: KnowTechie Store

Java zu lernen mag Spaß machen und alles, aber werde ich nicht arbeitslos und verhungern, wenn dies die einzige Sprache ist, die ich beherrsche?

Da Java bei Einsteigern so beliebt ist, haben Sie vielleicht das Gefühl, dass jeder weiß, wie man es benutzt, und niemand mehr Programmierer einstellen wird. Höchstwahrscheinlich erleben Sie die klassischen Auswirkungen des Primings – Sie denken, dass, weil Sie eine Menge von etwas sehen, es schmerzhaft alltäglich sein könnte.

Ich habe einige Statistiken über den Java-Stellenmarkt gesammelt, um zu beweisen, dass es für einen einigermaßen qualifizierten Entwickler viel Arbeit gibt:

  • Java ist laut der neuesten Umfrage von Stack Overflow die Programmiersprache mit dem höchsten Rang;
  • Laut Glassdoor beträgt das Durchschnittsgehalt eines Java-Entwicklers in den USA 79.137 US-Dollar;
  • Anzahl der derzeit auf Indeed verfügbaren Java-Entwicklungsangebote – 27.049

Wenn Sie die allgemeinen Trends in der Tech-Welt berücksichtigen – wie die steigende Nachfrage nach Tech-Talenten und die wachsende Verbreitung von Android-Geräten (Java ist eine weit verbreitete Android-Entwicklungssprache), wird deutlich, dass Ihnen die Jobs nicht ausgehen irgendwann bald.

Also, anstatt zu zögern, ob Sie Java ausprobieren sollten oder nicht, packen Sie es an und beginnen Sie noch heute mit dem Erlernen der Sprache.

Dinge, die ich auf meiner Java-Lernreise gerne gewusst hätte

Damals, als ich Java lernte, gab es nicht einmal halb so viele Tools und Ressourcen, abgesehen von ein paar Dutzend Tutorials, Büchern und offizieller Dokumentation. Warum ich denke, Entwickler haben es jetzt einfacher, da es viele Ressourcen gibt, viele Programmierer der Einstiegsebene sind verwirrt und überwältigt von der Vielfalt der Tools.

Obwohl es keine feste Strategie für den Erwerb von Softwareentwicklungskenntnissen gibt, sind hier ein paar Dinge, von denen ich mir wünschte, jemand hätte sie mir früher gesagt.

1. Lerne Problemlösung, nicht Programmieren

Web-Entwickler
Bild: Pexels

Ich sehe viele Anfänger, die Tutorials nach Tutorials durchblättern und Muster und Konzepte aufgreifen. Obwohl dies Ihnen beim Erlernen der Java-Syntax helfen wird, sind Sie immer noch weit entfernt von der Denkweise eines Programmierers.

Gleich nachdem ich die Java-Tutorials abgeschlossen hatte und meine Fähigkeiten einsetzen musste, war ich verwirrt und herausgefordert. Anstatt Anwendungen in bewegliche Teile zu zerlegen und zu sehen, wie ich sie von Grund auf selbst bauen könnte, sah ich jedes Projekt wie einen hohen Berg, den ich nicht erklimmen konnte.

Glücklicherweise habe ich unterwegs viele Ressourcen gefunden, die mir geholfen haben, sicherer in der realen Java-Entwicklung zu werden:

  • Denken Sie wie ein Programmierer – ein Buch, das Ihnen hilft, sich die Denkweise eines Entwicklers anzueignen, unabhängig davon, welche Sprache Sie lernen
  • Codegym – eine Plattform, die sich speziell dem Java-Lernen widmet und den Schwerpunkt auf die praktische Anwendung theoretischer Konzepte legt. Dank diesem habe ich von mehreren nützlichen Hacks erfahren, die mir geholfen haben, in die Projektentwicklung einzusteigen.
  • Stack Overflow – Ich weiß, dass Sie viel davon gehört haben, hier zu lauern – obwohl ich nicht empfehle, Code-Bits aus SO einzufügen, bringt Sie das Durchblättern von Foren sicherlich einen Schritt näher an die Denkweise eines Entwicklers.

2. Ich habe Hilfstechnologien unterschätzt

Irgendwie war ich glücklicherweise unwissend, wie hilfreich Java-Bibliotheken und -Frameworks sein können. Als angehender Entwickler möchten Sie natürlich alles selbst erledigen – aber an einem Tag können Sie nur so viel tun, und die Suche nach Abkürzungen ist oft entscheidend.

Wenn ich meine Java-Lernreise neu starten würde, wäre ich bei der Auswahl eines Toolsets, mit dem ich die Sprache koppeln könnte, wesentlich gründlicher.

Hier sind die Tools, die ich Entwicklern zum Ausprobieren empfehlen würde:

  • JUnit – ein praktisches Testwerkzeug für Java-Programmierer
  • JRat – ein Java-Performance-Profiler, mit dem Entwickler die Ausführung ihrer Produkte überwachen können;
  • Mockito – ein Open-Source-Framework, das Java-Mocking erleichtert;
  • Ehcache – ein Caching-Tool, das speziell für die Java-Programmierung entwickelt wurde.

Im Folgenden werde ich die wichtigsten Bibliotheken, Frameworks und APIs für das Java-Lernen auflisten.

3. Ich hatte keinen Lernplan

Ich vertraute sehr auf Tutorials und Online-Ressourcen und fing völlig kopflos an, Java zu lernen. Ich hatte keinen Zeitplan für meine Reise, keine Vorstellung davon, wie ich meine Fähigkeiten einsetzen würde, oder einen ausgearbeiteten Lernalltag. Meine Motivation war einfach und dumm – Java schien trendy zu sein, ohne zu wissen, dass es sich wie ein Versäumnis anfühlt, also warum lerne ich es nicht?

Wenn Sie in die Softwareentwicklung einsteigen, sollten Sie gründlicher überlegen, wo Sie am Ende des Tages hinwollen. Lassen Sie sich auch nicht von Ihrem Ziel blenden – das Erlernen einer Programmiersprache sollte immer mit den Grundlagen beginnen, auch wenn Sie ein Full-Stack-Entwickler – ein Tausendsassa – werden wollen.

Wenn ich jetzt Java von Grund auf neu lernen müsste, wäre dies ungefähr mein Fahrplan:

JDK-APIs:

  • Java-IO
  • Java-Sammlung
  • Java-Parallelität
  • Java 8

Java-Frameworks:

  • Frühling
  • Frühlingsstiefel
  • Überwintern
  • Mikronaut
  • Eclipse-Mikroprofil

Bibliotheken testen:

  • Gurke – erleichtert geschäftsorientiertes Testen
  • Robot Framework – hilft bei der Optimierung von Integrationstests
  • JUnity für Komponententests
  • Mockito für Mockup-Tests.

Für ein detaillierteres Lernmodell zur Java-Entwicklung werfen Sie einen Blick auf die folgende Grafik.

Ich würde jedem dieser Blöcke eine Frist zuweisen, um sicherzustellen, dass ich nicht nachlasse und Fortschritte mache.

Fazit

Wenn ich sage, dass das Erlernen von Java Spaß macht, beziehe ich mich in erster Linie auf die Nostalgie und die glücklichen Erinnerungen, die Sie empfinden werden, nachdem Sie die Kenntnisse beherrschen. Was den Prozess betrifft, werden Sie sowohl das Hochgefühl erleben, die richtige Antwort auf das Problem zu bekommen, als auch das Tief, nicht zu verstehen, was zur Hölle Ihre Lernressource von Ihnen will.

Wie bei jedem Lernen ist das Beherrschen einer Programmiersprache Blutschweiß und Tränen. Solange Sie jedoch durchhalten und die anfängliche Schwerfälligkeit von Java überwinden, wird der Lernprozess nach und nach angenehmer und weniger anstrengend.

Haben Sie irgendwelche Gedanken dazu? Lassen Sie es uns unten in den Kommentaren wissen oder übertragen Sie die Diskussion auf unseren Twitter oder Facebook.

Empfehlungen der Redaktion:

  • Steigern Sie Ihre JavaScript-Kenntnisse mit diesem Anfängerkurs für 13 $
  • 9 müssen Decks lernen, um mit Java auf dem Laufenden zu bleiben
  • 3 Dinge, die Sie über Java-Hosting wissen sollten
  • Warum ist Java-Programmierung für Unternehmen beliebt?