News Programmiersprachen: Java 9 kommt erst im März 2017

CaptainStor schrieb:
Jedes große Java Projekt ist eine mittlere Katastrophe. Sämtliche Java IDEs sind auch Schrott.
Woher nimmst Du diese Weisheit? Warst Du tatsächlich bei allen großen Java-Projekten dabei? Mit welchen Java IDE's hast Du bereits intensiv gearbeitet um alle als Schrott zu bezeichnen?

CaptainStor schrieb:
Der einzige Grund der früher für Java gesprochen hat war Crossplatform, aber mitlerweile gibt es viel bessere Alternativen und deswegen wird Java hoffentlich irgendwann sterben.
Danke für die Warnung! Ich werde sofort zu den Alternativen wechseln. Welche sind das denn?
 
@darthbermel

Wie ich schon schrieb HTML5 Apps oder wie schon angesprochen wurde Swift. Das sind auf die schnelle zwei gute Alternativen die auch überall lauffähig sind.
 
Swift ist erstmal nur eine Sprache. Ein GUI-Framework gibt es derzeit nur für OSX und iOS. Und wenn es sowas gibt, müssen auch diese erstmal besser als Java unter Windows und Linux funktionieren.
HTML5-Apps finde ich auch sehr gut. Allerdings ist HTML5 ohne Frameworks erstmal nur für Mini-Apps geeignet. Für richtig große Anwendungen (z.B. Single Page Applications) braucht man passende Frameworks (AngularJS, React, Dojo, ...), die auch nicht auf jeder Umgebung rund laufen.
Und HTML5-Apps benötigen meist ein Backend, welches die Daten und den Content liefert. Womit soll da entwickelt werden?
 
Cool Master schrieb:
@darthbermel
Wie ich schon schrieb HTML5 Apps oder wie schon angesprochen wurde Swift. Das sind auf die schnelle zwei gute Alternativen die auch überall lauffähig sind.
Swift ist anscheinend für iOS und OSX, was soll ich damit. HTML5 braucht ein Backend und da ist Java nach wie vor sehr beliebt.

Wer Java grundsätzlich ablehnt hat einfach keine Ahnung, sorry. Java selber ist sicher etwas verstaubt und in gewissen Teilen auch etwas spiessig, aber die vielen Libraries die es drumherum gibt, sind einfach fantastisch und im Business-Umfeld nur schwer weg zu denken. C# z.B. ist wirklich cool um schnell was hübsches kleines zu erstellen. Aber wenn du damit ein 50 Millionen Projekt, welches später 10 Jahre laufen soll, umsetzen musst, glaube ich wird es etwas mühsam (natürlich nicht unmöglich). Java hat in dem Bereich einfach mehr Erfahrung und viele nützliche Tools, auch wenn viele natürlich mitlerweile auf andere Sprachen portiert wurden.

Was mit den IDE's das Problem sein soll, verstehe ich wirklich auch absolut nicht. IntelliJ ist eine sehr moderne und beliebte IDE und ich persönlich habe auch wirklich keine Probleme mit Eclipse. Wenn man mal ausserhalb von Java und C# nach IDE's sucht, erlebt man teilweise sein blaues wunder. Da wird oft nicht mehr als ein einfacher Editor gebraucht, im besten Fall sogar noch VIM oder sowas.
 
Ziustag schrieb:
C# z.B. ist wirklich cool um schnell was hübsches kleines zu erstellen. Aber wenn du damit ein 50 Millionen Projekt, welches später 10 Jahre laufen soll, umsetzen musst, glaube ich wird es etwas mühsam (natürlich nicht unmöglich). Java hat in dem Bereich einfach mehr Erfahrung und viele nützliche Tools, auch wenn viele natürlich mitlerweile auf andere Sprachen portiert wurden.

Was mit den IDE's das Problem sein soll, verstehe ich wirklich auch absolut nicht. IntelliJ ist eine sehr moderne und beliebte IDE und ich persönlich habe auch wirklich keine Probleme mit Eclipse. Wenn man mal ausserhalb von Java und C# nach IDE's sucht, erlebt man teilweise sein blaues wunder. Da wird oft nicht mehr als ein einfacher Editor gebraucht, im besten Fall sogar noch VIM oder sowas.

Als .Net Entwickler würde ich eher das genaue Gegenteil behaupten. In dem Moment in dem ein Projekt eine anständige Größe errreicht wird .Net immer interessanter und Java ein immer größerer krampf. Das fängt mit so "kleinen" Sachen wie LINQ an, die die Menge an zu schreibendem Code einfach extrem eindampfen. Geht dann weiter mit der massiv besseren Multicore und Async Unterstützung (TPL, async await), viel mächtigeren UI Frameworks (was mächtigeres als WPF muss man erst mal finden wenn das UI dynamisch, animiert, gestylt, datenbasiert, lokalisierbar und nicht zuletzt GPU beschleunigt sein soll) und geht über die ganzen restlichen MS Bibliotheken so weiter.

Und ganz ehrlich, wer einmal mit Visual Studio und Intellisense entwickelt hat, der kriegt einen mittelgroßen Anfall wenn er wieder mit Eclipse oder IntelliJ arbeiten soll.
 
dgschrei schrieb:
Und ganz ehrlich, wer einmal mit Visual Studio und Intellisense entwickelt hat, der kriegt einen mittelgroßen Anfall wenn er wieder mit Eclipse oder IntelliJ arbeiten soll.

Ansich mag ich IntelliJ aber ich bekomm einfach bei Java allgemein immer wieder ein Krampf :D Finde da auch VS und C# deutlich angenehmer :daumen:
 
Java ist konservativ und nicht-hip, aber gerade deswegen so beliebt und man kann es i.d.R. lesen wie ein Buch.
 
Zuletzt bearbeitet:
Allerdings ist HTML5 ohne Frameworks erstmal nur für Mini-Apps geeignet. Für richtig große Anwendungen (z.B. Single Page Applications) braucht man passende Frameworks (AngularJS, React, Dojo, ...), die auch nicht auf jeder Umgebung rund laufen.
Richtig große Anwendungen gehen auch ohne Frameworks umzusetzen. Vorrausgesetzt ist ein deutlicher Mehraufwand und sehr gute Kenntnisse.

Und HTML5-Apps benötigen meist ein Backend, welches die Daten und den Content liefert. Womit soll da entwickelt werden?
Wenn mit HTML5 Apps klassische Webapplikationen gemeint sind dann natürlich mit Node.js
Wenn mit HTML5 Apps Crossplattform Desktopapplikationen gemeinst sind dann natürlich mit Electron oder Node-Webkit (NW).

HTML5 braucht ein Backend und da ist Java nach wie vor sehr beliebt.
Eben nicht siehe oben ...
 
Zuletzt bearbeitet:
noch bischen Basics aus meinem kleinen Java Buch zu ende, Interfaces, und abstrakte Klasen, objektorientierung noch wärmer werden und Synchronisierung und volatile dann bin ich mit der JSE bischen durch...dann noch die erste Insel 1500 Seiten mit JSE und die 1500 Seiten zweite Insel, wobei JavaFX wird iwie standardmäßig out of the box geblockt hmm wollt ich eigentlich auch lernen..is geil eigentlich...Applets brauch ich nich dann noch SQL auf jeden funzt perfekt vorwärts und rückwärts local, remote egal was...JEE kürz ich glaub ab auf 'zwei kleine main files jeweils Server und Client und JBoss, Tomcat, Builds, Ants und Generation fällt weg xDD.
JSPs damals waren noch einfach... wenn ich den Code von ServerFaces und Facelets mit Javascript-Injections so anschaue denke ich wtf. Nach Android müsst eigentlich auch gehen, Markup mit pure Java auf den ersten Blick. OpenGL mit Processing wäre noch geil aber will die externe lib nich benutzen...aber geile fluffige Performance auf Webseiten.
Wenn's zu hart wird dann schöne GIFs mit 60frames/sec kriegt man auch nice Website bestimmt hin xD
GUIs klappen hier schonma ganz gut...mache grad geile Wecker Application, aber bischen tricky die Updates zu schützen und die Datenberechnung auszulagern. Und dann noch Performance und Security und allgemein Architektur...puh glaub ich brauch noch 10 Jahre
 
Zuletzt bearbeitet:
Was genau möchtest du uns mit diesem Beitrag sagen? Man kann ihn übrigens nahezu gar nicht verstehen, weil jegliche Interpunktion - so denn überhaupt vorhanden - wie mit dem Würfelbecher über die Sätze verteilt wurde.
 
hab die 8er Inseln noch hier und muss noch bischen was im anderen Buch fertig machen...hab in die 9er Erweiterungen noch nich reingeschaut, ja gut bisher bin ich von Java 2 nach 8 auf Generics und erweiterte for Schleife gestoßen...ja gut kommt halt immer wieder was neues. Nur von JSPs nach diverse Faces kommt's mir auf den ersten Blick wie Alientechnologie vor.
 
dgschrei schrieb:
Und ganz ehrlich, wer einmal mit Visual Studio und Intellisense entwickelt hat, der kriegt einen mittelgroßen Anfall wenn er wieder mit Eclipse oder IntelliJ arbeiten soll.
Ich habe mit .NET angefangen und bin jetzt bei Java und Eclipse und ich habe wirklich keine Probleme. Das C# eine modernere Sprache als Java ist, ist keine Frage und man hat out of the box wirklich einige Vorteile. Java hat aber eine riesen Open-Source community und die mir bekannten Nachteile (wie z.B. kein Lync) lassen sich damit problemlos beheben (guava, lamdaj usw.). Abgesehen davon, hat Java 8 wirklich massiv aufgeholt. Ausserdem gibt es immer noch diverse alternative Sprachen, welche auch auf der JVM laufen (Groovy, Scala usw.).

Es kommt halt immer darauf an was man tun will und worauf sich eine Unternehmung spezialisiert hat. Ich denke aber abgesehen von Java und .NET gibt es im Moment einfach nichts, was im Business-Umfeld wirklich eine ernsthafte Alternative bietet. Python ist gerade relativ "in" und auch schon recht weit gekommen, aber als ernsthafte alternative sehe ich es aktuell einfach noch nicht.

Ich denke es ist ähnlich wie C++ wohl auch noch ewig seinen Platz bei Computerspielen halten wird. Oft ist es weniger die Sprache selber, die entscheidend ist, sonder einfach die ganzen Frameworks und das KnowHow der Entwickler.

Wenn mit HTML5 Apps klassische Webapplikationen gemeint sind dann natürlich mit Node.js
Wenn mit HTML5 Apps Crossplattform Desktopapplikationen gemeinst sind dann natürlich mit Electron oder Node-Webkit (NW).
Ich sehe ja ein, dass Node.js seine Daseinsberechtigung hat, aber ein Backend mit JavaScript zu schreiben ist für eine konservative, grosse Unternehmung ein absoluter Albtraum. Hier ist nicht mal in erster Linie das Tooling das Problem, die Sprache ist einfach nicht wartbar. JavaScript ist einfach viel zu offen, was automatisch zu furchtbarem und verbuggtem Code führt.
Warum man nun aber auch noch Desktop-Applikationen damit schreiben soll, ist mir wirklich scheierhaft. Ich freue mich aber schon auf Photoshop und Premiere in HTML5, das wird bestimmt ein Spass.
 
Welche Sau interessieren irgendwelche Fat Clients? Server-side dominiert Java und das wird auf absehbare Zeit auch so bleiben, da keine andere Programmiersprache mit der Unzahl an marktführenden Frameworks konkurrieren kann.

@palace4d
Wer hip sein will, der programmiert sein Backend natürlich in Go. ;)
 
Zuletzt bearbeitet:
Ich sehe ja ein, dass Node.js seine Daseinsberechtigung hat, aber ein Backend mit JavaScript zu schreiben ist für eine konservative, grosse Unternehmung ein absoluter Albtraum. Hier ist nicht mal in erster Linie das Tooling das Problem, die Sprache ist einfach nicht wartbar. JavaScript ist einfach viel zu offen, was automatisch zu furchtbarem und verbuggtem Code führt.

Du scheinst wohl nur eine begrenzte Sichtweise auf JavaScript zu haben. Wer die Konzepte und Funktionsweise der Sprache verstanden hat ist damit in der Lage eine skalierbare, wartbare und performante Applikation umzusetzen.
Auch dir sollte bewußt werden das Konzepte/Konstrukte die in Java/C# gültig sind sich nicht so einfach auf JavaScript anwenden lassen.

Hier ein paar Beispiele für große Node.js "Unternehmungen" ... die aus deiner Sichtweise ja nicht möglich sind: Paypal, Mobile.de, Netflix, Trello, LinkedIn Mobile, Walmart und viele weitere

Ich freue mich aber schon auf Photoshop und Premiere in HTML5, das wird bestimmt ein Spass.
Experimentell schon verfügbar mit reduzierten Funktionsumfang:

http://www.golem.de/news/design-ber...on-photoshop-ist-open-source-1506-114818.html
 
Zuletzt bearbeitet:
palace4d schrieb:
Hier ein paar Beispiele für große Node.js "Unternehmungen" ... die aus deiner Sichtweise ja nicht möglich sind: Paypal, Mobile.de, Netflix, Trello, LinkedIn Mobile, Walmart und viele weitere
Haben die wirklich ihr Kerngeschäft mit Node.js umgesetzt? Netflix macht auf Java (siehe auch Spring Cloud). Einige der anderen Kandidaten auch. Im mobilen Bereich werden RESTful Services eingesetzt, die JSON als Format verwenden. Hier kann ich mir Node.js vorstellen. Die Schicht dahinter aber bestimmt (noch) nicht. Bei Dingen wie Transaktionssicherheit, Two-Phase-Commit, Messsage-Queues usw. sind große Player immer noch recht konservativ.
 
Ziustag schrieb:
Wer Java grundsätzlich ablehnt hat einfach keine Ahnung, sorry. Java selber ist sicher etwas verstaubt und in gewissen Teilen auch etwas spiessig, aber die vielen Libraries die es drumherum gibt, sind einfach fantastisch und im Business-Umfeld nur schwer weg zu denken. C# z.B. ist wirklich cool um schnell was hübsches kleines zu erstellen. Aber wenn du damit ein 50 Millionen Projekt, welches später 10 Jahre laufen soll, umsetzen musst, glaube ich wird es etwas mühsam (natürlich nicht unmöglich). Java hat in dem Bereich einfach mehr Erfahrung und viele nützliche Tools, auch wenn viele natürlich mitlerweile auf andere Sprachen portiert wurden.

Wenn ich das schon lese: 3th party libraries + Business Umfeld + Großprojekt = Desaster

Das ganze noch auf 10 Jahre = Nicht erwartbaren Code, da nicht mehr nachvollzogen werden kann wo genau die Bugs herkommen.

.NET (und nicht nur C#) kann alles was Java bietet und noch viel mehr. Es ist eine deutliche Verbesserung und gute Symbiose aus Java und C++.
 
Ned Stark schrieb:
Wenn ich das schon lese: 3th party libraries + Business Umfeld + Großprojekt = Desaster
Bei .NET werden nur Libraries eingesetzt, die auch zu .NET gehören? Keine 3. Party? Wow! Wo ist den der SAP-Adapter? Wie binde ich Tuxedo ohne 3. Party ein? Datenbanken? Alles direkt von MS?

Ned Stark schrieb:
Das ganze noch auf 10 Jahre = Nicht erwartbaren Code, da nicht mehr nachvollzogen werden kann wo genau die Bugs herkommen.
Das ist weniger das Problem von Java und 3. Party Libraries, sondern von mieser Projektumsetzung. Seit einigen Jahren schreibt man für so etwas Unit- und Integrationstests, die permanent laufen und jeden eingecheckten Code bauen und analysieren. Wenn der eigene Code oder eine neue Version einer Lib Ärger bereitet, findet man dies schnell raus.

Ned Stark schrieb:
.NET (und nicht nur C#) kann alles was Java bietet und noch viel mehr. Es ist eine deutliche Verbesserung und gute Symbiose aus Java und C++.
Bis auf die klitzekleinigkeit, dass manche Firmen keine Windows-Server im RZ haben wollen. Linux, Solaris, AIX und andere Systeme sind recht beliebt. Die JVM (und nicht nur Java) funktioniert auch auf diesen Plattformen. Danke übrigens für den Hinweis. Hier werden zu oft Laufzeitumgebung und Sprache vermischt und verwechselt ;-)
 
Ziustag schrieb:
Hier ist nicht mal in erster Linie das Tooling das Problem, die Sprache ist einfach nicht wartbar. JavaScript ist einfach viel zu offen, was automatisch zu furchtbarem und verbuggtem Code führt.

So wie ich das erlebe, scheitert das eher daran, dass die meisten die Sprache erst gar nicht verstehen - ist ja nur so ein bisschen "Script". Wenn man die Sprache nicht versteht, kann man Code sowieso nicht warten. Versteht man die Sprache, kann man "merkwürdige" Konstrukte auflösen und ggf. in allgemein ausgehandelte (z.B. in der Entwicklungsabteilung) Konventionen überführen. Unwartbaren Code kann man in jeder Sprache erzeugen, wenn man ohne jede Konvention arbeitet.

Inwiefern soll JavaScript "zu offen" sein?
 
Haben die wirklich ihr Kerngeschäft mit Node.js umgesetzt? Netflix macht auf Java (siehe auch Spring Cloud)Einige der anderen Kandidaten auch.

Oh ja im Kerngeschäft ...

Netflix: http://www.talentbuddy.co/blog/building-with-node-js-at-netflix/
Paypal: https://www.paypal-engineering.com/2013/11/22/node-js-at-paypal/
Mobile.de: http://www.technology-ebay.de/the-teams/mobile-de/blog/nodejs-es6-war-story
Trello: http://blog.fogcreek.com/the-trello-tech-stack/
Walmart: http://venturebeat.com/2012/01/24/why-walmart-is-using-node-js/
LinkedIn: http://venturebeat.com/2011/08/16/linkedin-node/

Weitere hier im Blog zu lesen ... http://www.talentbuddy.co/blog/

Ich hoffe du kannst mit der Gewissheit umgehen das Projekte auch mit anderen Technologien umsetzbar sind als mit der eigens präferierten ...
 
Ich denke das kann ich. Ich versuche nur für jeden Zweck das beste Werkzeug für mich zu benutzen. Im Backend- / Enterprise-Bereich ist das bisher JVM-basierend. Node.js hatte ich eher für den Presentation-Layer auf dem Schirm. Vielleicht bekomme ich ja meinen Brötchengeber irgendwann dazu, uns in diese Richtung forschen zu lassen. Bis dahin darf ich nur die präferierten Technologien einsetzen ;-)
 
Zuletzt bearbeitet von einem Moderator: (Fullquote des direkten Vorposter entfernt)

Ähnliche Themen

Antworten
8
Aufrufe
2.035
Anonymous
A
Zurück
Oben