Zum Inhalt springen

.Net Programmierung mit Mono/Xamarin sinnvoll?


Empfohlene Beiträge

Geschrieben

Moin Moin :),

ich habe eine Frage und hoffe ihr könnt mir weiterhelfen! Bei uns in der Abteilung wird momentan geplant unser Kundenportal eigenständig weiterzuentwickeln. Das Portal wurde damals von einer Fremdfima entwickelt und programmiertechnisch betreut. NUn besteht aber der Wunsch das bei uns miteinzugleidern und wir sind überein gekommen das ich mich langsam in die Technologien einarbeiten soll die dafür nötig sind. Bedeutet ich werde mich neben ILE RPG nun auch noch mit C# und ASP.net beschäftigen. 

Meine Frage ist nun da ich privat komplett unter Linux unterwegs bin ob es Sinn macht das ich die Einarbeitung in die Grundlagen usw.  mittels Mono/Xamarin mache oder ob ich dafür dann gezwungen bin ein Windows zu installieren. Ich habe mir schon ein paar oberflächliche Youtubevideos dazu angeschaut und die machten einen guten Eindruck bzgl. Mono/ASP.net unter Linux, aber ich bin keine Experte und frage daher euch ob ihr meint da tut sich nicht viel oder ob ihr sagt nimm umbedingt ein Windows um mit den MS Tools zu arbeiten.

Grüße

 

Geschrieben

Hallo,

je nachdem welche Datenbank und Fremdbibliotheken genutzt werden soll, kommst du um Windows nicht drum herum.

Mit dem aktuellen .Net Core lassen sich zwar einige Komponenten Plattformübergreifend nutzen, die Auswahl ist aber noch nicht sehr groß.
Mein Fazit bis jetzt: Entwickle auf der Plattform, auf der die Anwendung nachher laufen soll.
In deinem Fall IIS(Express) mit Windows 7 oder höher.

Geschrieben

In Fachkreisen munkelt man, dass ASP.Net MVC in den kommenden Jahren tot sein wird. Der Grund ist, dass inzwischen immer mehr sog. Single-Page Application (SPA) entwickelt werden. Das generieren des HTML-Dokumentes übernimmt dann nicht mehr der Server, sondern der Client, weil die Clients immer Leistungsstärker werden und somit den Server entlasten. Angenommen wir haben eine Webseite, die pro Stunde von 10.000 Nutzern aufgerufen wird. Da ist es für den Server schon eine Belastung, wenn er für alle 10.000 Nutzern noch das HTML-Dokument generieren muss. Bei SPA wird nur ein HTML-Dokument an den Client geschickt und der Client aktualisiert den Inhalt mittels AJAX und WebAPI-Aufrufe selber. Das bedeutet, dass der Server nur noch JSON-Dateien zum Client schicken muss  und man somit den Server entlastet. Frameworks für SPA-Anwendungen sind z.B. AngularJS oder Aurelia.

Xamarin ist aber nicht dafür da, um ASP.Net MVC-Anwendungen zu bauen, sondern Mobile-Apps. Mit Hilfe von Xamarin kann für die unterschiedlichen Plattformen (iOS, Android und Windows) einen gemeinsamen Code schreiben und für die jeweilige Plattform kompilieren (für iOS benötigt man weiterhin ein Mac). Xamarin übernimmt auch das Look-and-Feel der einzelnen Systeme. So generiert Xamarin z.B. schon automatisch den Zurück-Button in iOS, während dieser Button in Android schon im System vorhanden ist. Auch werden weiterhin die einzelnen Bedienelemente für die jeweilige Zielplattform angepasst.

Geschrieben
vor einer Stunde schrieb Whiz-zarD:

In Fachkreisen munkelt man, dass ASP.Net MVC in den kommenden Jahren tot sein wird. Der Grund ist, dass inzwischen immer mehr sog. Single-Page Application (SPA) entwickelt werden. Das generieren des HTML-Dokumentes übernimmt dann nicht mehr der Server, sondern der Client, weil die Clients immer Leistungsstärker werden und somit den Server entlasten.

Der heiße scheiss ist ASP.NET MVC schon lange nicht mehr, ich denke trotzdem nicht, dass es tot sein wird. Zu viele große Business Applikationen basieren auf ASP.NET MVC wo die Bedienung von Massenweise Clients in der Größenordnung sowieso nicht im Fokus steht. Sieht man ja auch am Threadersteller, er will ja ASP.NET vor allem deswegen lernen, weil eine bestehende Applikation weiter entwickelt werden soll. Vorstellbar ist auch, dass sich ASP.NET insgesamt einem neuen Paradigma/Pattern was auch immer anpassen wird ... wäre nicht das erste mal.

Ich meide ASP.NET wo es geht. Viele unserer Projekte laufen auf dem MEAN Stack (MongoDB, express.js, AngularJS, node.js). Gefällt mir persönlich auch vom coden her besser - one language to rule them all B) ... Ob das aber in 5 Jahren auch noch aktuell ist? Keine Ahnung.

Geschrieben

Wenn du eine bestehende ASP.NET-Anwendung hast, würde ich dir auf jeden Fall dazu raten, das unter Windows zu entwickeln. Umstellung von .NET auf Mono ist für kleinere Projekte nicht wirklich schwierig (solange alle Libraries mitspielen) - aber für einen Neuling in Sachen C# und ASP.NET nicht unbedingt zu empfehlen.

Zur Einarbeitung also auf jeden Fall "klassisches" .NET unter Windows. Wenn du drin bist, kannst du dir ja Gedanken machen, ob eine Umstellung auf .NET Core Sinn machen könnte (wobei ich mir das kaum vorstellen kann, wenn es bereits eine etablierte MS-Infrastruktur gibt).

Geschrieben (bearbeitet)

Mhm ok danke für das Feedback. Werde mir dann mal ein Windows besorgen :)

Vllt. auch nicht so verkehrt, meine Firma arbeitet Windows only, sicher nicht verkehrt wenn ich da dann auch kompetenzen aufbaue ;)

 

Grüße aus Hamburg

Bearbeitet von cid0m

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...