Es ist sicherlich nicht unüberwindbar, aber ich denke nicht, dass es besonders gut auf Sie zutrifft.
Sie sagen also, Sie kommen mit Java-IDEs nicht klar. Nun, Dinge wie Eclipse haben ihre Vor- und Nachteile, aber sie sind seriöse, häufig verwendete Toolchains, die funktionieren und mit anderen Sprachangeboten wie Visual Studio gleichwertig oder oft besser sind als diese.
Ich bin also nicht davon überzeugt, dass es sich um ein Java-Problem handelt, sondern eher um IDEs im Allgemeinen. Es wirft die Frage auf, in was Sie Code schreiben – ein anderes Toolset oder nur eine Notizblock-Software? – was wiederum die Frage aufwirft, wie Sie sich verhalten. Ist das, was Sie tun, hacky oder ist es Engineering mit einem Prozess und Toolset dahinter?
Dann gibt es Java selbst, das weit mehr ist als das Toolset. Wir können uns den ganzen Tag darüber streiten – andere Sprachen sind eleganter (z. B. die Eigenschaften von C #), andere Sprachen sind leistungsfähiger (z. B. die Speicherverwaltung von C ++), andere Sprachen und Methoden sind weitaus moderner. Aber weißt du was, es ist wieder eine Schwergewichtssprache, die ernst genommen wird und extrem weit verbreitet ist.
Obwohl die Branche oft Wert auf eine spezifische Sprache und Erfahrung mit dem Framework legt, schätze ich den anpassungsfähigen Generalisten wirklich. Jemand, der die ersten Prinzipien guter Technik aufgreifen kann, der gute Verhaltensweisen und Einflüsse aus der Erfahrung, in einer beliebigen Sprache etwas zu tun, auf etwas Neues anwenden kann.
Schließlich geht es für mich beim Software-Engineering darum, das Schwierige und Neue zu lösen, wohin auch immer der Weg Sie führt, und das Alte nicht endlos zu wiederholen.
In diesem Sinne verstehe ich mich mit Evangelisten und religiösen Eiferern nicht wirklich. Wenn Sie auf einer bestimmten Sprachauswahl bestehen – nämlich “Ich hasse Java” oder eine der anderen Antworten paraphrasieren, “Ich muss die Kontrolle über das Gedächtnis haben” -, wenn Sie auf einer bestimmten Toolchain bestehen, wenn Sie dies nicht können Anpassung an etwas Neues, wir werden wahrscheinlich Probleme haben.
Stellen Sie sich das so vor: Wenn jemand Ihnen sagt: “Java ist Mist”, bedeutet dies, dass Millionen von Benutzern und erfahrenen Ingenieuren sich irren und nicht nur irren, sondern auch dumm sind und es besser wissen. Wie groß ist die Wahrscheinlichkeit, dass diese eine Person ein blinzelnder Idiot ist?
Also: Was können Sie persönlich tun? Ich schlage vor: nicht aufgeben. Anpassen.
Holen Sie sich mehr Erfahrung . Nachwuchsingenieure tendieren eher dazu, diese sehr starken Meinungen zu vertreten, aber letztendlich lässt sie mit der Zeit nach. Probieren Sie also absichtlich einige neue Dinge aus und “saugen Sie es” für eine Weile auf. Wenn Sie zwischen IDEs oder Sprachen wechseln, sind einige Dinge – die Unterschiede – nur ein Schmerz im Arsch. ‘Warum hat sich das geändert? Warum funktioniert das so, obwohl der andere Weg perfekt war? ‘ Und dann, wenn Sie zurückgehen , haben Sie plötzlich das gegenteilige Problem. “Das ist so altmodisch!” Komisch das.
Setzen Sie einen positiven Hut auf und klammern Sie ihn an Ihren Kopf. Was Sie tun, ist neu. Es wird schwer. Fortdauern. Fragen Sie sich bei jedem kurzfristigen Kampf mit Ihrer IDE, der nach endlosem Ringen aussieht, woher ich das am Ende habe. Sehen Sie sich an, wie die Überwachung und Verwaltung Ihres Projekts mit zunehmender Größe von entscheidender Bedeutung wird. Untersuchen Sie, was das Toolset und die Sprache gut können. Schauen Sie sich die übertragbaren Fähigkeiten an, die Sie erwerben. Verwenden Sie das Tool falsch und vermissen etwas, das es besser kann? Und so weiter.
Hör auf, ein Perfektionist zu sein . Manche Dinge werden niemals so funktionieren, wie Sie es möchten, manche Dinge werden niemals hübsch sein. Vergiss es. Die Sprache und das Toolset bestimmen weder Sie noch Ihre Fähigkeiten. Es ist nur ein Fahrzeug, mit dem Sie dorthin gelangen, wohin Sie fahren – und was für ein Fahrzeug, es ist ein Mietwagen. Sie polieren und wachsen den Mietwagen nicht.
Finde deinen glücklichen Platz . Was ich hier versucht habe, ist, dass Sie aufgeschlossener sind, denn das Tragen von absolut aufgeschlossenen Verordnungen kostet Sie Chancen, und diese Chancen hätten zu einer weitaus besseren Karriere geführt. Aber es ist in Ordnung, eine Präferenz zu haben. Es ist in Ordnung zu sagen: “Ich mache das lieber, das Frontend motiviert mich” oder “Mobile liefert mir sehr schnell greifbare Ergebnisse” oder “Ich mag die Art und Weise, wie Unternehmenssoftware-Frameworks Dinge tun” und versuche, dem Weg zu folgen das passt zu dir Stellen Sie einfach sicher, dass Sie dies von einer informierten Position aus tun, anstatt Angst und das Einzige, was Sie wissen.
Oder, wissen Sie, Burger umdrehen. Aber Sie können wahrscheinlich ein ausgezeichneter Softwareentwickler werden. Viel Glück!