Java-Programmierer Roberto Cortez - über das Erlernen von Java und wichtige Einflussfaktoren

Roberto Cortez- Java-Entwickler mit über zehn Jahren Erfahrung, Leiter von Coimbra JUG und Gründer der JNation Conference in

Portugal.

Coimbra-Krug– eine Gemeinschaft von Programmierern, die in der Sprache arbeitenJava. Vereint hauptsächlich Programmierer aus Coimbra und der Zentralzone in Portugal. Coimbra JUG organisiert Veranstaltungen zu Java und Technologien im Zusammenhang mit der JVM (Java Virtual Machine, dem Hauptbestandteil des Java-Laufzeitsystems – Hi-Tech) mit dem Ziel, diese Sprache zu entwickeln und bekannt zu machen. Die bekannteste Konferenz ist die JNation Conference, die sich den neuesten Entwicklungen in Java widmet. Findet jährlich in Coimbra statt.

Über Java

- Was sind die Stärken und Hauptaspekte von Java als Programmiersprache?

- Stabile und ausdrucksstarke Sprache. Für mich ist das Beste an Java das Ökosystem. Es gibt eine Vielzahl von Open Source-Bibliotheken, mit denen sich die Anwendungsentwicklung vereinfachen lässt. Sie sind gut dokumentiert und getestet, sodass Sie sich auf die tatsächlichen Geschäftsanforderungen konzentrieren können.

- Java verändert sich aktiv. Welche Trends geben heute in diesem Bereich den Ton an?

- Natürlich die Wolke. Und dies ist eine sehr interessante Aufgabe für Java, da die Sprache schon lange existierte, bevor wir die Cloud überall und für alle haben. Darauf war er also nicht vorbereitet und musste sich auch anpassen. Wenn Sie sich die Geschichte von Java ansehen, erscheinen alle drei bis vier Jahre wichtige Veröffentlichungen. Jetzt wurde die Sprache angepasst, um geplante Veröffentlichungen alle sechs Monate zu veröffentlichen, um den Herausforderungen von heute und morgen besser gerecht zu werden.

Neue Java-Trends:

  1. Java JShell Interpreterzum Erlernen der Sprache und zum Prototyping-Code.
  2. NodeJSum Programme für Desktop-Geräte und Serveranwendungen zu erstellen, ohne einen Browser zu verwenden.
  3. Entwicklungsframeworks für Web- und mobile Apps:ReactJS, AngularJS, Meteor.js und andere. Vereinfachen Sie die Entwicklung erheblich.

Über die Arbeit eines Programmierers

- Was würden Sie Programmieranfängern zum Eintauchen in eine Fach- und Jobsuche empfehlen?

- Wie wäre es nur mit Bloggenoder eine andere Art von Webseite? Viele Leute haben auf diese Weise angefangen, und dies ist eine großartige Möglichkeit, um zu programmieren. Ich habe auch mit einem Blog angefangen. Zuerst mit HTML, das an sich keine Programmiersprache ist, aber am Ende fing ich an, immer fortgeschrittenere Dinge zu erstellen, die mich dazu zwangen, JavaScript und dann Java zu verwenden. Viele Leute beginnen mit Python, was auch großartig ist. Es ist nicht sehr schwierig und Sie können erstaunliche Ergebnisse erzielen.

- Welche Technologien sind erforderlich, um von einem Java-Programmierer untersucht zu werden?

- Jeder Programmierer benötigt eine Reihe von Grundlagen undDies gilt nicht nur für Java, das ihm dabei helfen wird, eine allgemeine Vorstellung davon zu bekommen, wie alles funktioniert. Ich denke, diese Liste kann in Frage gestellt werden, aber ich würde Algorithmen, Netzwerke, Betriebssysteme, Datenbanken, verteilte Systeme, Sicherheit und Mathematik einbeziehen.

- Sollte sich ein Programmierer zwischen einem (universellen) Full-Stack-Entwickler und einem Spezialisten entscheiden?

- Jetzt ist es extrem schwer sich zu konzentrierenauf eine bestimmte Technologie, weil sich alles sehr schnell entwickelt und verändert. Es ist jedoch noch schwieriger, mit vielen Technologien Schritt zu halten. Sie müssen offen sein für alles, besonders zu Beginn Ihrer Karriere, und entscheiden, was Ihnen am besten gefällt, und sich dann auf etwas Weiteres spezialisieren.

- Es gibt eine Meinung, dass es in Java keine freien Mitarbeiter gibt, und diese Sprache ist hauptsächlich für die Unternehmensentwicklung gedacht. Ist Java Freelance eine Ausnahme?

- Ich denke so nicht. Meiner Erfahrung nach warten Unternehmen, die Freiberufler einstellen, auf eine Person mit viel Erfahrung, die sie bei der Bewältigung von Problemen unterstützen kann. Wenn Sie sich auf eine bestimmte Technologie konzentrieren, können Sie diese Erfahrung sammeln und sich spezialisieren. Als erfahrener Spezialist können Sie sowohl als Freiberufler als auch in einer Organisation arbeiten.

- Sie nennen sich einen leidenschaftlichen Entwickler. Ist Programmieren für Sie in erster Linie eine Kreation oder ein technischer Prozess?

- Programmierung beinhaltet vielKreativität. Wenn Sie etwas tun möchten, gibt es viele Möglichkeiten. Es kommt vor, dass diese Methode überhaupt nicht existiert. Sie müssen sie selbst erstellen. Sie müssen überlegen, Optionen ausprobieren, scheitern und erfolgreich sein. Andererseits entwickelt sich unsere Sphäre technisch gesehen rasant, es ist notwendig, ständig zu forschen, neue Entwicklungen zu studieren und Qualifikationen zu verbessern. Sie müssen leidenschaftlich sein, was Sie tun, um mit der Zeit, den neuesten Nachrichten und den besten Lösungen Schritt zu halten.

Über Java-Communitys

- Warum werden Java-Communities benötigt und was macht der von Ihnen geleitete Coimbra JUG?

- Ich leite die Coimbra JUG Community inPortugal. Coimbra ist eine kleine Stadt, also kennt sich jeder in der Gemeinde. Die Leute treffen sich gerne, um ihre Erfahrungen und Eindrücke auszutauschen und natürlich die Neuigkeiten über die Entwicklungen in der IT-Welt zu hören. Wir organisieren auch eine Konferenz namens JNation. Dies ist eine eintägige Veranstaltung, bei der wir einige der bekanntesten Redner der Java-Community einladen.

- Welche Krüge sind die bekanntesten und einflussreichsten?

- Ich würde die LJC (London Community) nominierenJava - "High Tech") und SouJava (brasilianische Java User Community - "High Tech"). Beide Communities sind aktiv an der Unterstützung von JCP, AdoptOpenJDK oder MicroProfile beteiligt.

Java Community Process (JCP)– Ein formeller Prozess wurde 1998 gegründet und ermöglicht es interessierten Parteien, sich an der Gestaltung zukünftiger Versionen der Spezifikationen der Java-Sprachplattform zu beteiligen.

Java Development Kit (JDK)- Kostenloser Vertrieb durch OracleCorporation ist ein Java-Anwendungsentwicklungskit, das einen Compiler, Standardklassenbibliotheken, Beispiele, Dokumentation, verschiedene Dienstprogramme und ein Ausführungssystem enthält.

Mikroprofile, (Eclipse Mikroprofile)ist ein offener Standard, der innerhalb der Eclipse Foundation von EE-Serveranbietern, Drittorganisationen und einfach Freiwilligen entwickelt wurde.

Andere berühmte JUG-Communities:

  1. JUG.ru (St. Petersburg, Russland).Es hält monatliche Treffen in St. Petersburg ab, bei denen Java-Experten Vorträge zu den dringendsten Themen halten.
  2. Philly JUG (Philadelphia, USA).Gibt es seit über 15 Jahren und führt Fortbildungskurse für Java-Programmierer in Philadelphia durch.
  3. Marokko Krug (Marrakesch, Marokko).Hält jährliche Konferenzen und Schulungen online und offline.

- Sie sind auch Mitglied des Java Champions. Wie ist seine Interaktion mit dem Java-Entwickler Oracle?

- Java Champions ist im Kern exklusivEine Gruppe begeisterter Technologieführer und Communities, die von der Community selbst gefördert werden. Wir geben Feedback, Ideen, Anleitungen und Anleitungen, die Oracle dabei unterstützen, die Java-Plattform zu erweitern und die Sprache im Allgemeinen weltweit zu fördern. Das Interessanteste an dieser Gruppe ist, dass sie zwar von Oracle unterstützt wird, jedoch völlig unabhängig ist. Deshalb können wir, wenn angebracht, frei loben und kritisieren.

- Welche der regelmäßig stattfindenden Konferenzen von Java-Entwicklern ist die interessanteste und bedeutendste?

- Jetzt finden überall interessante Konferenzen statt. Die meisten Entwickler können Veranstaltungen an ihrem Standort finden, so dass der Abdeckungsbereich gut ist und er jedes Jahr weiter wächst. Sie können sich immer auf die JNation-, jPrime- oder JBCNConf-Konferenzen verlassen, die erst vor wenigen Jahren stattfanden, sich jedoch schnell zu einem Vorbild entwickelten.

jPrime- eine Konferenz, die über Java spricht,verschiedene Sprachen in JVM, mobile Geräte, Web-Technologien und die besten Entwicklungen. Der Veranstalter ist die bulgarische Community von Java-Entwicklern. Findet jährlich im Mai im Sofia Technopark statt.

JBCNConf- jährliche Java-Konferenz, organisiert vongemeinnütziger Verein Barselona JUG, veranstaltet in Barcelona. Auf der Konferenz werden JVM-Sprachen (Java, Scala, Clojure, Groovy, Kotlin), funktionale Programmierung, Tests, Design, Blockchain, maschinelles Lernen, künstliche Intelligenz und vieles mehr diskutiert.

— Was hatte den größten Einfluss auf Ihre berufliche Entwicklung?

- Ich würde sagen, dass die ersten paar Konferenzen. Dies ermöglichte es, die erstaunliche Java-Community kennenzulernen, und ich bin mehreren Menschen dankbar, die mich geleitet oder gezwungen haben, etwas zu tun. Ich erinnere mich, dass ich mich beschwert habe, dass die Gemeinschaft in Portugal nicht sehr aktiv ist, und Adam Bean sagte mir: „Warum erschaffst du nicht deine eigene?“ So wurde die Coimbra JUG-Gemeinschaft geboren. Andres Almirai und Heather Van Cuira stellten mich Hackergarten vor, wo ich anfing, an Open-Source-Projekten mitzuwirken. Schließlich war David Blevins mein Mentor und half mir, sowohl technisch als auch mental zu wachsen. Vor allem aber drängte er sich, ein Mentor für andere Menschen zu werden. Das ist es, was ich jetzt versuche.

Adam Bin (Deutschland)- Berater, Trainer, Entwickler, Mitglied der Expertengruppe Java Champion und viele andere mit Bezug zu Java.

Andres Almirey— Java/Groovy-Entwickler und Java-Champion, mehr17 Jahre Erfahrung in Softwaredesign und -entwicklung. Er entwickelt seit den Anfängen von Java Web- und Desktopanwendungen. Gründungsmitglied des Griffon-Projekts und der Hackergarten-Community.

Heather van Heilung- Vorsitzender von JCP, Organisator von Hackergarten-Community-Konferenzen zu Java-Technologien.

David stinkt- Gründer der Projekte Apache TomEE, OpenEJB und Geronimo, Mitglied der Expertengruppen EJB 3.2 (JSR 345) und Java EE 7 (JSR 342), Autor von Materialien für die komponentenbasierte Softwareentwicklung.