Microsoft Visual Studio 2017 für macOS veröffentlicht

Impcaligula

Impcaligula

Aktives Mitglied
Thread Starter
Dabei seit
17.05.2010
Beiträge
8.165
Reaktionspunkte
7.921
Microsoft hat heute die finale Version von Visual Studio 2017 veröffentlicht - unter C# .Net können damit Applikationen für iOS, watchOS, tvOS und macOS entwickelt werden. Dazu noch "nebenbei" Android Applikationen und Web Anwendungen.

Allerdings ist es mehr ein "umgebautes" Xamarin Studio - welches es ja schon länger gegeben hat. Natürlich vielversprechend ist die gleiche Sprachplattform durch C# .Net mit Windows Teams. Ob die einfache Zusammenarbeit mit unter Windows VS2017 erstellten Projekten so einfach sind, wird sich erst zeigen müssen.

Aber natürlich eine nette Alternative zu Xcode und die von Apple angebotenen Sprachen. Eine Sprache unter Windows und Apple für alle gängigen Applikationen. Man wird sehen ob das so einfach sich umsetzen lässt.

http://apfelstudio.net/microsoft-veroeffentlicht-finale-version-visual-studio-apple-macos
 
Zuletzt bearbeitet von einem Moderator:
  • Gefällt mir
Reaktionen: DoroS, medeman, iPhill und 2 andere
Die angebenen Systeme sind Apple only. Hm. Warum sollte man von Xcode umsteigen - Xcode ist eines der produktivsten (wahrscheinlich DAS) produktivste Entwicklungswerkzeug das ich kenne.

Keine Windows-Apps, kein Android. Es erschließt sich mir nicht, was MS damit bezweckt.
 
Während ich zwar Windows 10 mit jedem Feature Update mehr hasse, finde ich es echt spannend, was MS so auf anderen Plattformen macht.

@Loki Mephisto Android-Apps kannst du damit basteln:

Bildschirmfoto 2017-05-10 um 23.34.54.png
 
Während ich zwar Windows 10 mit jedem Feature Update mehr hasse, finde ich es echt spannend, was MS so auf anderen Plattformen macht.

@Loki Mephisto Android-Apps kannst du damit basteln:

Anhang anzeigen 208418
Ok. Naja - war nie ein Fan von Ximian und/oder C#, zu buggy es immer gewesen ist.
Dann doch lieber das offizielle Android Studio oder, einigermaßen plattformübergreifend, Qt Creator. Gutes altes C++ insbesondere mit ohne Garbage Collector
 
Die angebenen Systeme sind Apple only. Hm. Warum sollte man von Xcode umsteigen - Xcode ist eines der produktivsten (wahrscheinlich DAS) produktivste Entwicklungswerkzeug das ich kenne.

Keine Windows-Apps, kein Android. Es erschließt sich mir nicht, was MS damit bezweckt.

Zu Xcode. Ich finde Xcode eines der schlimmsten IDE und absolut nicht intuitiv. Wir geben oft Seminare mit Java (Eclipse / Netbeans) und Windows Programmierer (Visual Studio) und in all den Jahren gab es noch keinen der Xcode intuitiv und besser fand. Aber - die Meinung will ich Dir lassen, denn das ist Geschmacksache und was Dir als IDE besser gefällt haben nicht andere zu entscheiden.

Wieso aber Visual Studio für alles? Vorteile?

Einmal für den Entwickler. Du bist ein Java Entwickler. Gratulation. Du kannst Android Apps genauso entwickeln wie Server Applikation, Web Applikationen und so weiter. Java Entwickler haben ein sehr großes Feld an Möglichkeiten - auch wenn eine Sparte nicht so gefragt ist.

Du bist C# Nett Entwickler. Auch hier hast Du sehr viele Möglichkeiten ähnlich wie Java. C# ist nur der Träger...von der Desktop Applikation über Server Web Datenbanken Cloud Office SharePoint ...und eben jetzt auch Android und iOS ... ein weites Feld.

Du bist Xcode Spezialist und kannst ObjectiveC oder Swift. Ja dann ... OK läuft gerade nicht so die iOS Entwicklung...dann kannst Du...ja was noch? Fachidiot. Pech.

Bei uns stehen gerade sehr viele Mac Entwickler Schlange. Können kaum was Anderes. Und weil viele dachten iOS Dev ist eine Goldgrube - haben sich da viele spezialisiert. Viel mehr als man braucht.

------

Und bei den Softwarehäuser ist es ebenso. Ich hab ein Projekt X ... da will ich so wenig verschiedene Sprachen wie möglich einsetzen müssen. Bedeutet auch weniger verschiedene Programmierer. Wenn das Projekt zu 95% aus Java besteht und ich so 9 Java Entwickler und sagen wir noch einen DB Spezialisten brauche - super!

Und das ist auch der Vorteil der MS Strategie. Eine Sprache mit C# .Nett und damit versuchen alles an zu decken. Das ist für uns als Softwarehaus ideal. Gibt heute so breit gestreute Projekte - ich kann doch nicht für jedes Projekt immer und immer verschiedene Sprachexperten einstellen.

Im Endeffekt bietet Java das ja schon lange was MS nun macht. Ist nur eine logische Konsequenz. Und auch richtig so.
 
  • Gefällt mir
Reaktionen: wegus
Stmmt, Xcode hat eine Lernkurve. Aber: Wenn man weiss wie der Hase läuft... Swift/Cocoa & Storyboards sind, jedenfalls im mobilen Segment, derzeit schwer zu schlagen (auch weil Android Studio noch nicht wirklich angekommen ist).

Meine Tools nach Bedarf: C++ auf Unixoiden (CUDA, Tensorflow, Keras), dazu etwas Java/Google Cloud SDK. Java/Netbeans. Python, etwas Shell scripting, Perl und Ruby (für Metasploit) sowie Xcode (Obj-C, weniger Swift).
Vor längerer Zeit, zugegeben: C# (.NET).
Dabei war ich grad nicht sooo begeistert von VS und/oder C#, und da C# derzeit jedenfalls nicht wirklich plattformübergreifend ist und auch nicht über die Massen performant (jedenfalls im Vergleich mit C++ el al.) fehlt mir einfach der Anwendungsfall. Nichts, was nicht ein anderes plattformübergreifendes Tool mindestens ebensogut könnte.

Was nicht heissen soll dass das nicht interessant werden kann in Zukunft. Und zwar dann, wenn VS am Mac weitgehend gleich ist wie unter Win und Projektmappen da wie dort - unverändert - laufen. Motto "write once, compile everywhere".
Wenn es dann auch noch mit CUDA, Tensorflow und Co zusammenarbeitet... ja dann. Aber nur dann. Das ist aber natürlich recht subjektiv, nicht jeder hat meine "Bedürfnisse"

Davon abgesehen: mir scheint die Sprache weniger wichtig als vor allem: Requirements Elicitation, Change Management und (continuous?) Integration. Das sind meiner Erfahrung nach eher die Problemfelder in großen Projekten, ein recht aktives Feld offenbar noch immer.
Und Zustimmung: VS/C# sind eher noch nicht dort, wo Java schon länger ist.
Immerhin: es bleibt spannend zu sehen ob sich MS neu aufstellen kann was seine Werkzeuge betrifft. Eine Strategie scheint vorhanden, bin nur noch nicht ganz sicher wohin die Reise geht
 
Zuletzt bearbeitet:
Habe einfach schlechte Erfahrungen damit gemacht. Die Zwangs-Updates sind mir schon mehrmals in den Weg geraten (teilweise wurde mittendrin einfach neu gestartet), bei einem Notebook lies sich ein Feature Update gar nicht installieren, bis ich die Festplatte ausgebaut habe und via VMware an eine VM angehangen habe. Ich kann den Windows Defender nicht deaktivieren ohne ein anderes AV-Programm zu installieren (hat Spaß gemacht bei 3 TB Resilio Sync synchronisieren, das Programm war super langsam). Ich will auch nicht bei Neuinstallation das Startmenü öffnen und Werbung für irgendwelche Apps sehen, die noch nicht einmal von Microsoft sind. Außerdem gibt es nach wie vor "heimliche" automatische App-Installationen von bspw. Facebook (Netflix und Candy Crush wurden ebenfalls schon mehrfach automatisch installiert)...sorry aber geht's noch? Ich würde gerne noch selbst entscheiden können, was ich installiere und wann ich es installiere.

Über Gruppenrichtlinien und Registry-Änderungen kann man gegensteuern...aber das kann es doch wohl nicht sein!

Mit macOS hatte ich persönlich noch keine Probleme bei Updates o.Ä. Im Endeffekt habe ich deswegen auch das 2016er MBP gekauft. Wenn mir Windows 10 besser gefallen würde hätte ich auch vielleicht keinen Mac mehr gekauft.

Disclaimer: Persönliche Erfahrung und persönliche Meinung.
 
Im Endeffekt bietet Java das ja schon lange was MS nun macht. Ist nur eine logische Konsequenz. Und auch richtig so.
Naja, ob das so richtig ist wage ich zu bezweifeln. Java gibt es nicht erst seit gestern und so wirklich durchgestartet ist Java bis heute nicht. Es hat sicher Vorteile wenn man mit einer Sprache zig Systeme abdecken kann aber es hat auch Nachteile wie man u.a. bei Java sehen kann. Der größte Nachteil bei den ganzen Cross-Plattform-Sachen ist, dass die Geschwindigkeit auf der Strecke bleibt. Wenn es hier ans Eingemachte geht ist Spezialisierung IMO gar nicht verkehrt.
 
Immerhin: es bleibt spannend zu sehen ob sich MS neu aufstellen kann was seine Werkzeuge betrifft. Eine Strategie scheint vorhanden, bin nur noch nicht ganz sicher wohin die Reise geht
Hoffe das MS das auch weiß :D

Java gibt es nicht erst seit gestern und so wirklich durchgestartet ist Java bis heute nicht.
What? :D ... Hast Du Dir mal angeschaut welchen Prozentanteil Java basierende Projekte bei neuen Projekten hat?

Es hat sicher Vorteile wenn man mit einer Sprache zig Systeme abdecken kann aber es hat auch Nachteile wie man u.a. bei Java sehen kann
Logisch. Es gibt eh nicht "die eine" Sprache die alles besser kann - es gibt m.E. eh zu jedem Projekt besser oder schlechter passende Techniken.
 
  • Gefällt mir
Reaktionen: medeman
Wenn man sich C# mal ansieht, dann hat es viele Vorteile gegenüber java. Es tat MS gut, dass sie keine Lizenz von SUN bekamen und ihr eigenes "Java" machen mußten. .Net Core sieht vielversprechend aus und das MS nun die OS Grenzen überschreitet ist zu begrüßen.

Xcode ist eine Katastrophe und keine GUI. Visual Studio ist da schon ein Schritt nach vorn. Wenn ich persönlich aber doch die IDEs von Netbeans oder IntelliJ vorziehe. Ich finde es spannend was da passiert. Wenn nun noch neue Macs rauskommen nächstes Jahr...vielleicht ersetze ich dann meinen derzeitigen LINUX Desktop mal wieder mit nem mac, wer weiß.
 
  • Gefällt mir
Reaktionen: Impcaligula
Du bist Xcode Spezialist und kannst ObjectiveC oder Swift. Ja dann ... OK läuft gerade nicht so die iOS Entwicklung...dann kannst Du...ja was noch? Fachidiot. Pech.

Bei uns stehen gerade sehr viele Mac Entwickler Schlange. Können kaum was Anderes. Und weil viele dachten iOS Dev ist eine Goldgrube - haben sich da viele spezialisiert. Viel mehr als man braucht.

------

Und bei den Softwarehäuser ist es ebenso. Ich hab ein Projekt X ... da will ich so wenig verschiedene Sprachen wie möglich einsetzen müssen. Bedeutet auch weniger verschiedene Programmierer. Wenn das Projekt zu 95% aus Java besteht und ich so 9 Java Entwickler und sagen wir noch einen DB Spezialisten brauche - super!

Ich beobachte das in meinem Umfeld (international tätige Konzerne) anders - da wird ausschließlich nativ entwickelt, weil die Apps mittlerweile die wichtigste Schnittstelle zu Kunden sind, und man da keine Kompromisse eingehen (und neue Technologien sofort einsetzen) will .
 
Ich beobachte das in meinem Umfeld (international tätige Konzerne) anders - da wird ausschließlich nativ entwickelt, weil die Apps mittlerweile die wichtigste Schnittstelle zu Kunden sind, und man da keine Kompromisse eingehen will.

Passt schon. Aber aus Sicht der Entwickler. Der iOS / macOS Markt ist gesättigt.

Eine eigene App entwickeln? Erstens gibt es für iOS so gut wie jede App bereits schon. Und selbst bei Nischen Apps gehst Du unter bei der Anzahl vorhandener Apps. Außer Du entwickelst das eine geniale Spiel oder hast die eine geniale App Idee. Da kannst aber auch drauf hoffen bei DSDS entdeckt zu werden.

Bleibt also als App Entwickler in Projekten. Aber auch hier haben die meisten Unternehmen ihre Apps bereits draußen. Neue große Projekte werden Jahr für Jahr weniger.

Und so hast Du zur Zeit mehr iOS / macOS Entwickler als Projekte. Ich bekomme zur Zeit sogar Anfragen aus Berlin von iOS Entwickler die für Dumping Preise hier in Stuttgart arbeiten würden. Wöchentlich bewerben sich unzählige iOS Entwickler.

Und das meinte ich mit Java und C# ...Du bist deutlich breiter aufgestellt und kannst auch Mal Projektflauten in Bereichen abfangen.

Wir suchen übrigens ganz händeringend gute Android Entwickler. Die richtig guten hängen inzwischen in Java Projekten und wir finden kaum jemanden. Selbst Recruter wie GULP Computaservice und Co suchen gerade mehr Android Leute als der Markt annähernd her gibt...
 
Das kann ich so nachvollziehen - mir ging es mehr um das Technische - und da sehe ich (bisher) wenige, die eine geschäftskritische iOS-App mit Xamarin oder anderen Code-once-deploy-anywhere-Tools, erstellen.
 
  • Gefällt mir
Reaktionen: Impcaligula
Ich bin da auch noch etwas skeptisch was das nicht-native Entwickeln angeht. Die Erfahrungen unter Windows Visual Studio + Xamarin + iOS App waren nicht immer sehr positiv und oft sehr holprig.
 
Ich habe die letzten 5 Monate, versuchsweise, an zwei Kundenprojekten sowohl VS2017 mit Xamarin, als auch Xamarin Studio (Visual Studio for Mac Preview) genutzt. Es gab genau 0 Probleme, nervig aber war: Das Zeilenumbruchverhalten sorgt in seiner Standardeinstellung dafür, dass eine in VS2017 geöffnetes und gespeichertes (aber unverändertes) Codefile in der Versionsverwaltung dann für Projektfremde wie "komplett neugebaut" ausssieht.

In der Praxis waren an den 2 Projekten (eine Social-Media App und eine IoT Anwendung (Steuerung von Luftreinigungsanlagen)) mehrere chinesische Kollegen, wie auch ich in Deutschland zugange. Während die Kollegen ausschließlich Xamarin nutzten, habe ich Visual Studio in einer Windows VM auf meinem Mac genutzt.

Wenn man Visual Studio for Windows nutzen kann, dann tut man es auch, das umbenannte Xamarin Studio ist leider noch nichtmal in der Nähe was Stabilität, Performance und Usability angeht. Zudem muss man auf wichtige Drittanbieter-Tools wie ReSharper oder diverse Testrunner verzichten, die nicht nur Nice-To-Have sind, sondern erheblich zur Codequalität beitragen _können_ (namespaces anyone?).

Das Gute: Man kann tatsächlich ein Projekt aus einem Repository ziehen und es spielt keine Rolle, mit welchem VS es erstellt wurde - man kann es, nach Wiederherstellung der Pakete, direkt bauen (iOS, Droid). Zudem kann die PCL (shared) mit richtigem Zielframework auch für Consolen-Aanwendungen unter macOS/Linux weiterbenutzt werden - wenn das kein Plus ist! Storyboards (iOS) sind natürlich auch kein Problem.

Nach regem Austausch mit einem native iOS Entwickler sind wir zu dem Schluss gekommen, dass ein Xamarin Native Project (native für iOS oder Droid) seinem nativen Gegenstück in nichts nachsteht. Der Vorteil der Nutzung ergibt sich dann aus der Erfahrung des entsprechenden C# Entwicklers. Was aus meiner Erfahrung der letzten 5 Monate gar nicht geht, ist Xamarin Forms. Hier geht man zuviele Kompromisse ein und muss dann schlussendlich fast immer Custom Renderer für verschiedene Sachen bauen, weil es sich nicht auf beiden Platformen gleich verhält und somit "nativ" gebaut werden _muss_. Hier rechtfertigt der Aufwand auf keinen Fall den Ertrag. Hat man nur einfache Formular-Apps im Sinn (Dateneingabe etc), dann lohnt sich das, ansonsten: direkt richtig machen (Xamarin Native/Platform native).
 
  • Gefällt mir
Reaktionen: Madcat, wegus, Impcaligula und eine weitere Person
Das kann ich so nachvollziehen - mir ging es mehr um das Technische - und da sehe ich (bisher) wenige, die eine geschäftskritische iOS-App mit Xamarin oder anderen Code-once-deploy-anywhere-Tools, erstellen.

Das war der bislang einzige Weg, daher die Verbreitung. Ob es langfristig der wirtschaftlichste ist, wird sich noch zeigen.

Die letzten 5 Monate habe ich für einen großen Hersteller von Luftreinigungsanlagen eine App zur Steuerung dieser Geräte gebaut. Ziel: ASAP einen funktionierenden iOS Dummy für den Vertrieb (die neuen Geräte spielen ihren Vorteil nur mit dieser App aus) und mittel- bis langfristig noch eine Droid App.

Beides läuft, mit Xamarin gebaut, anstandslos und performant (lokale Netzwerk- wie Cloudcommunication).
 
  • Gefällt mir
Reaktionen: Impcaligula
Auf jeden Fall wird das den Mac/iOS Entwicklermarkt aufmischen.
Die Lernkurve für andere Entwickler ist nun massiv abgeflacht.

In jedem Falle ist es aber gut, wenn Xcode mal Konkurrenz bekommt. Xcode hat sich die letzten Jahre zu einem instabilen Monster aufgebläht.
 
  • Gefällt mir
Reaktionen: Impcaligula
Auf jeden Fall wird das den Mac/iOS Entwicklermarkt aufmischen.
Die Lernkurve für andere Entwickler ist nun massiv abgeflacht.

Da ist nichts abgeflacht. Der Lernaufwand ist der gleiche, wenn man C# schon mitbringt. Ansonsten steigt dieser natürlich erheblich. Wer in C# nicht sicher unterwegs ist, kommt über einfache HelloWorld Apps nicht hinaus. Und plattformspezifisches Wissen bleibt unumgänglich. Wem "Provisioning Profile" oder Pushtokens kein Begriff ist, wird so schnell keine* App für iOS bauen.

* eine App mit Mehrwehrt, keine HelloWorld Apps.
 
Zurück
Oben Unten