News Microsoft erklärt den .NET-Stack zu Open Source

Eine interessante Geschichte. Besonders weil es sich bei den freigegebenen Dingen nahezu ausschließlich um Servertechniken geht mit denen Webdienste und Webanwendungen erstellt werden.
Das passt zur "Cloud first, mobile first"-Strategie wie die Faust aufs Auge. Hauptsache nen Fuß in der Tür haben, egal welchen :D

B.XP schrieb:
Dann hat noch jeder Hersteller für Embedded-Platinen, Chips etc. noch nen eigenen Debugger, da hat man dann wenig Auswahl.

Einige Hersteller haben sogar komplett eigene Entwicklungsumgebungen speziell für ihre Produkte. Einer unserer Entwickler hat jetzt bereits 3 Stück davon aufm Rechner und alle haben Eclipse als Basis. Er meinte man könnte die zwar zusammenführen aber die Arbeit tut er sich nicht an.
 
Zuletzt bearbeitet:
B.XP schrieb:
Ironietags vergessen? Schon mal was von Python gehört? Leichter, schneller durchdachter als Java ;)
Python schneller als Java? Wobei genau und auf welche Python Implementierung beziehst du das?

C/C++ ist sehr hardwarenah und das ist prinzipiell gut so für den Einsatzzweck. Damit muss man auch hardwarenah denken. Oft ist es nur eine Sache der Tools wie komfortabel oder unkomfortabel das Ganze geht. Visual Studio ist da echt genial. Debuggen mit Eclipse: Horror. Dann hat noch jeder Hersteller für Embedded-Platinen, Chips etc. noch nen eigenen Debugger, da hat man dann wenig Auswahl.
In der Java Welt gibt es aber auch mehr als die Eclipse IDE. Ich verwendete z.B. seit einem Jahr IntelliJ IDEA welche wesentlich komfortabler ist als Eclipse und auch einen besseren Debugger besitzt.

Aber ja, man kann anstelle von C++ ja auch gerne Java verwenden. Das mag zwar die Entwicklungszeit halbieren, und dann kommt man drauf dass das ganze Langsam wie Sau ist und fängt an zu "optimieren", was leider aussichtslos ist weil die Java-VM von gewissen Operationen komplett überfordert ist. Und bis man darauf kommt winkt der C++-Entwickler im Vorbeigehen. Aber der Vergleich hinkt sowieso. Das Pendant zu JAVA wäre eh .NET, und das wiederum erlaubt die Verwendung von C#, was so ziemlich alles besser als C++ und Java macht. Und es erlaubt für hardwarenahe Schnittstellen das Einbinden von C/C++-Modulen.
Java muss nicht langsam sein, genauso wenig wie C++ automatisch schneller ist.

€dit: Was ist der Unterschied zwischen den Elektrotechnik/Mechatronik und Informatik-Studiengängen? Informatiker lernen bis zum vierten Semester nur Java. Und sind dann mit allem was näher an die Hardware geht erstmal überfordert.
Was für ein Schwachsinn. In den ersten beiden Semestern im Informatik Studium hatten wir z.B. C und C++. Auch hat das Abstraktionsvermögen wohl kaum etwas damit zu tun welche Programmiersprache man als erstes gelernt hat. Ein bekannter von mir hat z.B. Elektrotechnik studiert und ich hab öfter mal Code zugeschickt bekommen weil etwas bei ihm nicht funktionierte. Dessen Code war weder durchdacht oder gut lesbar und er wird ganz bestimmt nicht sonderlich schnell gewesen sein!
 
dcc22 schrieb:
Java ist die durchdachteste Sprache der Welt.
Naja, hier kann geteilter Meinung sein! Gewiss WAR das Java mal. Aber zwischenzeitlich ist Java so aufgeweicht, dass davon nicht mehr die rede sein kann.

Angefangen von den halbherzig implementierten Generics bis die jetzt in Java 8 hinzugefügten Features um z.B. implementierungen in Interfaces unterzubringen (default / static implementation). Da wurden viele ursprüngliche Paradigmen über Board geworfen.


Allein schon der Komfort bei der Ausgabe der Errors !
Das ist ein feature der IDE bzw. des Compiler und hat mit der Sprache selbst gar nichts zu tun!

In C/C++ bricht man sich einen Ast ab nur das geringste zu debuggen, was Java einem direkt zeigt.
Man kann durchaus sagen, mit Java halbiert sich die Entwicklungszeit.
Auch der Debugger hat nur indirekt was mit der Sprache zu tun.

Was allerdings die Entwicklungszeit angeht, so steht und fällt diese mit der Qualität der Programmierer, wobei du rein technisch natürlich recht hast. Garbage Collector und Co. machen das Entwicklerleben durchaus angenehmer :)

Greetz
hroessler
 
Sehr schön und überraschend, das .NET nun eine neue Lizenz bekommt.
.NET als solches ist eine interessante Technologie.
Bisher hatte es jedoch das Problem, dass es offiziell nur unter Windows läuft.
Im Web Bereich ist das natürlich unschön, da dort Linux der Platzhirsch ist.
Es gibt zwar Mono, doch aus unternehmerischer Sicht war das bisher immer ein riskantes Spiel.

Doch das wird sich nun wohl ändern.
Mono darf sich nun beim .NET Source bedienen und müssen nicht alles selber nachprogrammieren.
Wenn Mono dann noch einen offiziellen Microsoft Stempel aufgedrückt bekommt (direkt oder indirekt), eröffnen sich völlig neue Möglichkeiten.

Das Ganze ist aber auch ein Angriff gegen Java.
Eines der Pro Java Argumente war bisher, dass es überall läuft.
Doch damit steht Java bald nicht mehr alleine da.
Und .NET hat eine klasse Entwicklungsumgebung.

Ich bin gespannt was in den nächsten Jahren alles passieren wird.
 
Der letzte Absatz ist wirklich etwas unnötig. Nichts gegen Kritik, aber man sollte die Kritik dann auch möglichst sachlich benennen.
"Too little too late" verstehe ich in dem Zusammenhang nicht. Für wen ist es too late? Es klingt so als hätte Linux schon 95% Marktanteil und deswegen käme MS zu spät. Das ist aber nicht der Fall. Und warum "too little" ? Reicht die MIT-Lizenz nicht?

Klingt eher nach einer persönlichen Abneigung von irgendwelchen Individueen. Ist auch ok, kann jeder seine Meinung haben. Sollte aber dann vielleicht nicht unbegründet den Weg in den Artikel finden.
 
Der letzte Satz ist eine Einwandvorwegnahme des Autors. Damit wird jede hier geäusserte ähnliche Kritik auf die selbe Stufe der Bedeutungslosigkeit gestellt. Clever und weit verbreitet in den Medien. ;)
 
Jetzt gehen die Grundsatzdiskussionen wieder los ^^

Ich hab Java und C#/.NET genutzt und ich muss sagen:

.NET ist besser HAAAAAALT!!!! Lasst mich erklären:

Bei Java ist es weniger die Sprache selbst. Die is ganz gut.
Was mir auf den Sender geht ist alles um JAVA herum.
Allen voran Eclipse, was so ziemlich jede Firma nutzt.

Dieses RAM fressende Monster von einem...Codeflickwerk!

Ich habe 3 Jahre damit zugebracht über dieses Ding zu fluchen.

Und nein NETBeans und andere durfte ich nicht nutzen! -.-
 
Schonmal was von Android, IOS gehört? Die sollen angeblich auf über 95% aller Smartphones und Tablets weltweit laufen.

Das Desktop-Betriebssystem ist (leider) nicht mehr das primär wichtigste.

Oder man schaue sich an, wie heute viele Applikationen funktioneren (übers Web), da werden Serverseitig nicht unbedingt .NET verwendet.
Klassische Desktop Programme sind langsam in der Unterzahl.
Der nächste logische Schritt ist nun, dass diese WebApps auch als Desktop Apps laufen und da arbeitet ja sogar Microsoft selbst dran -> siehe Office 365.

Viele Entwickler haben auch von den "fetten" Systemen genug, alle 2 Jahre komplette umgewöhnung und nach 10 - 12 Jahren ist es eh alles für die Tonne. Daher gibts ja auch so einen run auf kleinere einfache Sprachen und Systeme.
Ergänzung ()

Also findest du halt schlicht den .NET "Editor" besser.
Das hat 0 komma nix mit der Sprache zu tun.

Die ganze Diskussion ist sinnlos.

"Use the right tool to get the job done."

Und wenns Java ist, dann halt Java, wenns .NET ist, dann .NET, oder Python, oder Javascript, oder PHP, oder Brainfuck.

"Ich kenn mich damit aus und darum ist es besser" Diskussionen sind wirklich unnötig.
 
Aus meiner Sicht (Anwender von .NET und JAVA-Anwendungen) finde ich das richtig gut. Ich bekomme jedes mal das kotzen, wenn ich mit den JAVA-Anwendungen arbeiten muss. Total langsam, träge, bei ner neuen Version der Anwenung muss ich mir auch wieder irgend ne spezielle Java Version xyz_update 165 installieren damit alles läuft, oder den JAVA-Cache löschen... einfach nur nervig. Dann benutze ich ne .NET Anwendung und es läuft alles butterweich. Jetzt kann ich nur noch drauf hoffen, dass viele der Anwendungen hier, in .NET entwickelt werden...
 
Wictale schrieb:
Wenn Mono dann noch einen offiziellen Microsoft Stempel aufgedrückt bekommt (direkt oder indirekt), eröffnen sich völlig neue Möglichkeiten.

Ich glaube das wird nicht passieren, allerdings wird es ähnlich wie bei den Linux-Distros nun Dienstleister geben die kundenspezifisch supporten. Schließlich öffnet man damit Linux Tür und Tor.

Andererseits ist .NET für Kleingeräte mit beschränkten Ressourcen nach wie vor ein ganz schöner Klotz. Die automatische Speicherverwaltung hat da nicht immer Vorteile. Allerdings werden diese Geräte ja zunehmend leistungsfähiger.
Ergänzung ()

Sumatrabarbe schrieb:
Aus meiner Sicht (Anwender von .NET und JAVA-Anwendungen) ... Total langsam, träge, ... einfach nur nervig. Dann benutze ich ne .NET Anwendung und es läuft alles butterweich

Der Beobachtung kann ich zustimmen, allerdings liegt das sicherlich auch einfach daran dass die .NET Runtime - welche ja grundsätzlich auf Windows ausgelegt war/ist - deutlich spezifischer Systemaufrufe verwenden kann. Java hat ja eigentlich genau den gegenteiligen Ansatz von .NET: 1 Sprache, mehrere Plattformen, d.h. die Runtime muss deutlich mehr abstrahieren.
 
DaZpoon schrieb:
Ich glaube das wird nicht passieren, allerdings wird es ähnlich wie bei den Linux-Distros nun Dienstleister geben die kundenspezifisch supporten. Schließlich öffnet man damit Linux Tür und Tor.
Das ist die große Frage.
Schau dir mal die offizielle MS-Meldung dazu an:
http://news.microsoft.com/2014/11/1...tudio-2015-net-2015-and-visual-studio-online/
On Wednesday, Microsoft Corp. reinforced its commitment to cross-platform developer experiences by open sourcing the full server-side .NET stack and expanding .NET to run on the Linux and Mac OS platforms.
Delivering on its promise to support cross-platform development, Microsoft is providing the full .NET server stack in open source, including ASP.NET, the .NET compiler, the .NET Core Runtime, Framework and Libraries, enabling developers to build with .NET across Windows, Mac or Linux. Through this implementation, Microsoft will work closely with the open source community, taking contributions for future improvements to .NET and will work through the .NET Foundation.

In dem Sinne würde es ja reichen, wenn eine Art offizielle Testsuite gibt, welche andere .NET Implementierungen bestehen müssen, um als kompatibel zu gelten.
Aber wir werden sehen, was unterm Strich bei rum kommt.
Von heut auf morgen wird da sowieso erstmal nichts passieren.
 
B.XP schrieb:
€dit: Was ist der Unterschied zwischen den Elektrotechnik/Mechatronik und Informatik-Studiengängen? Informatiker lernen bis zum vierten Semester nur Java. Und sind dann mit allem was näher an die Hardware geht erstmal überfordert.

Ich kann dich beruhigen, das ist in meinem Informatik Studium (Hochschule Darmstadt) definitiv nicht der Fall gewesen. Stattdessen haben wir uns mit C, C++, ARM-Assembler, Matlab, VHDL und Verilog und ab dem dritten Semester eben auch mit Java beschäftigt.

Zudem gehe ich davon aus, dass sich Elektrotechnik/Mechatronik in mehr als diesem Punkt von der Informatik unterscheiden ;-)
 
Fucking amazing!

Hoffentlich gibts die runtime bald frei Haus @linux distris.
Leider aber würde das gleichzeitig den Tod für JAVA bedeuten.

mfg,
Max
 
flappes schrieb:
Schonmal was von Android, IOS gehört? Die sollen angeblich auf über 95% aller Smartphones und Tablets weltweit laufen.
Und laufen auf Android, iOS, Windows Phone oder Blackberry Geräten JVMs? Nö.

Mono hingegen ist dort lauffähig. Wer als Entwickler als nicht zig unterschiedliche Sprachen verwenden möchte um eine Anwendung auf allen Systemen zu veröffentlichen, der ist mit Mono und C# am Besten bedient, da man damit lediglich das UI und gerätespezifische Dinge separat anpassen muss.
 
B.XP schrieb:
€dit: Was ist der Unterschied zwischen den Elektrotechnik/Mechatronik und Informatik-Studiengängen? Informatiker lernen bis zum vierten Semester nur Java. Und sind dann mit allem was näher an die Hardware geht erstmal überfordert.

Also bei uns an der FH in Darmstadt gab es kein Java. Da wurde C++ gemacht was ich sehr gut fand aber auch etliche Kommilitonen teils überfordert hat. Zugegeben da war die VL nicht unschuldig dran.

Die Mathe und E-Techniker hatten dafür Java ;)

Edit: War wohl nicht der einzige aus Darmstadt hier :D

@Topic einfach nur genial ich bevorzuge C# so dermaßen vor Java und hoffe der MS Trend in richtung OS wird in diesem Stil forgesetzt!
 
Zuletzt bearbeitet:
noxon schrieb:
Und laufen auf Android, iOS, Windows Phone oder Blackberry Geräten JVMs? Nö.
Natürlich läuft auf auf Android und Blackberry eine JVM, nur halt nicht die von Oracle. Auf Android heißt die dann Dalvik bzw. die neue ART(Android Runtime). Wie die bei Blackberry heißt weiß ich grade nicht, aber da dort auch Android Apps laufen gibt es zwangsläufig eine JVM.
 
Fonce schrieb:
Natürlich läuft auf auf Android und Blackberry eine JVM, nur halt nicht die von Oracle. Auf Android heißt die dann Dalvik bzw. die neue ART(Android Runtime). Wie die bei Blackberry heißt weiß ich grade nicht, aber da dort auch Android Apps laufen gibt es zwangsläufig eine JVM.
Dann versuch dort mal normale jar files zu starten. Die Dalvik Runtime ist etwas vollkommen anderes als eine herkömmliche Java Runtime.
 
Nein, sie ist nicht etwas vollkommen anderes. Sie bietet nicht alle Funktionen der Oracle JVM, aber das ist kein Kriterium dafür das es eine JVM ist.
Auch dein Beispiel ist nicht gut gewählt. In den APK Files sind auch nur die für die Anwendung benötigten JAR Files verpackt. Das man nicht jedes beliebige JAR File starten kann liegt dann eben daran das diese Funktionalität nicht geboten wird.
Trotzdem bleibt Dalvik eine, wenn auch eingeschränkte, JVM!
 
Zurück
Oben