Laden...

Silverlight als Technologie noch einsetzbar?

Erstellt von Maruu vor 11 Jahren Letzter Beitrag vor 11 Jahren 4.841 Views
M
Maruu Themenstarter:in
121 Beiträge seit 2006
vor 11 Jahren
Silverlight als Technologie noch einsetzbar?

Hallo zusammen,

als kleines 3-Mann Unternehmen haben wir aktuell ein Hauptprodukt auf C#/.NET Basis, eine klassische Desktopanwendung. Nun steht aber die Entwicklung einer größeren Business-Anwendung an und daher werden die möglichen Technologien durchleuchtet. Dabei handelt es sich um ein klassisches Client-Server System, wobei die Server-Seite uns wenig Kopfzerbrechen macht (.NET Service). Clientseitig sieht es hier schon deutlich anders aus. Generell wäre auch hier eine Desktopanwendung möglich, allerdings gefällt uns der Gedanke dass der Client in einem Browser läuft sehr gut, da man dadurch recht leicht die Version des Clients kontrollieren kann, von überall darauf zugreifen kann und je nach Technologie auch Betriebssystem unabhängig ist.

Silverlight scheint hier das optimale Produkt zu sein:

  • Es gibt Plugins für viele Browser
  • Es gibt Plugins für Windows und Mac
  • Die Softwareverteilung erfolgt zentral und der Client kann problemlos aktualisiert werden
  • Zugriff von nahezu jedem Rechner möglich ohne Installationsrechte
  • Keine Darstallungsprobleme bei unterschiedlichen Browsern/Auflösungen usw.
  • Die Entwicklung findet in C# statt
  • kaum Einarbeitungsaufwand für normale .NET Entwickler
  • Optionaler Of-Browser-Modus und Trusted-Modus für Dateisystem/Registry/...-Zugriff

Kurz und knapp wir hatten bisher keinen Kontakt mit Silverlight aber die Pro Argumente im Gegensatz zu ASP.NET, Click-Once, Desktopanwendung haben uns mehr als überzeugt.

Und dann kahm das Erwachen. Die aktuelle Politik von Microsoft scheint Silverlight keine Beachtung mehr zu schenken. Nach dem Lesen endloser Threads, Blogs und sonstiger Artikeln scheint mir die Zukunft von Silverlight sehr ungewiss. Ofiziell wird eine Unterstützung bis 2021 garantiert. Aber mit Windows 8 wird auf WinRT und HTML 5 gesetzt, von Silverlight ist kaum noch die Rede.

Daher meine Frage, wie sollte man als (kleines) Unternehme mit Silverlight umgehen. 10 Jahre Supportzeit ist viel, was innerhalb von 10 Jahren passiert weiß niemand. Aber ist es wirklich sinnvoll jetzt noch auf Silverlight zu setzen und mit einer Neuentwicklung zu starten von der man weiß das die Technologie vermutlich abgekündigt ist?

Was sind die Alternativen? HTML 5 ist noch kein offizieller Standard, außerdem fehlt uns intern die nötige Erfahrung mit HTML 5 / JS. Bei ASP.NET sehe ich den Entwicklungsaufwand deutlich höher und man kämpft mit Problemen wie unterschiedliche Browserdarstellung usw. Gibt es also aktuell überhaupt sinvolle alternativen?

Ich freue mich von euch zu hören.

Gruß

Hannes

PS: Ein ofizielles Statement zu der Zukunft von Silverlight wäre vermutlich nicht nur für uns ein Segen.

6.911 Beiträge seit 2009
vor 11 Jahren

Hallo Maruu,

wenn die Anwendung im Intranet laufen soll, so können WPF-Browseranwendungen eine Alternative darstellen. Das ist noch näher am üblichen WPF als Silverlight dran, da es eben WPF ist mit ein paar Besonderheiten.

Sonst sehe ich das ähnlich wie du - und ich würde auf Silverlight setzen.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

M
Maruu Themenstarter:in
121 Beiträge seit 2006
vor 11 Jahren

Leider handelt es sich um einen Mischbetrieb, der Einsatz ist sowohl im Intranet wie auch im Internet (vermutlich hauptsächlich) geplant. XBAP (WPF-Browseranwendungen) ist jedoch stark von den Sicherheitseinstellungen des Browsers abhängig und leider nur unter Windows (und dort nur IE und Firefox) anwendbar. Daher eher eine Alternative mit Einschränkungen.

Gruß Hannes

T
50 Beiträge seit 2010
vor 11 Jahren

Hallo Hannes,

bei Silverlight wäre ich sehr vorsichtig. So wie es sich abzeichnet, wird Silverlight 5.1 die letzte Version sein - auch wenn sie noch recht lang gepflegt wird. Ich befürchte, dass die Browserunterstützung über die Zeit immer schlechter werden wird. Ich persönlich würde die Finger davon lassen - leider. Finde es eigentlich eine gute Idee. Vielleicht kommt später noch einmal etwas ähnliches, was dann auf der Basis von Windows 8 Apps aufgesetzt wird.

Um Apple und Co zu erreichen, wäre auch eine Überlegung auf Mono zu gehen. Sonst kann ich als zusätzliche Alternative zu einem Clientsystem nur eine Web basierte Lösung empfehlen. Hier bietet sich ASP.NET (MVC) durchaus an. Ich persönlich habe mit ASP.NET schon sehr gute Erfahrungen gemacht und mein Auftraggeber betreibt inzwischen schon ein sehr großes Intranet mit diversen Anwendungen auf dieser Basis. Die Browserkompatibilität ist aber ein Graus, wird aber meines Erachtens von Jahr zu Jahr immer besser. Tendentiell würde ich hier ganz klar auf HTML5 mit CSS3 setzen. Da gibt es inzwischen auch schon eine gute Auswahl an Browsern, die auf allen möglichen Systemen laufen.

Grüße,
Ronny

M
Maruu Themenstarter:in
121 Beiträge seit 2006
vor 11 Jahren

Danke für die Antwort.

In den letzten Tagen habe ich viel über HTML 5 und Silverlight gelesen. Der Ansatz von HTML 5 gefällt mir gut (Plattformübergreifend, Stadardisiert) aber ich scheue mich noch davor es als universelle Wunderwaffe zu verwenden. Im Bereich normale Webseiten mag HTML 5 die Lösung sein, für (größere) Businessanwendungen bezweifle ich das aber.

Mit Javascript bekommen wir auf einen Schlag wieder viele Probleme die wir über Jahre hinweg u. a. mit C# / .NET abgeschafft haben. Dazu gehören:

  • Laufzeitprobleme
  • keine stark typisierten Datentypen
  • unterschiedliche Darstellungen in verschiedenen Browsern (ja, auch HTML 5 und CSS 3 werden dies nicht 100% lösen)
  • Sicherheit? JS ist eine Browsersprache, der ganze Quellcode wird also zum Client übertragen und kann von jedem gelesen werden. Wer sagt mir das der Konkurrent nicht einfach die Applikation kopiert?
  • 3-4 verschiedene Technologien gleichzeitig. Neben HTML 5 muss CSS (3), JS und ggf. noch eine Serversprache wie PHP verwendet werden, alles um eine! Anwendung zu erstellen.
  • Unterschiedliche JS Frameworks, ein richtiger Standard hat sich noch nicht etabliert.

Weiterhin ist die Unterstützung von HTML und CSS in VS 2012 noch nicht so optimal wie man sich das wünscht.

Als Firma stellt sich jetzt die Frage auf eine Technologie zu setzen die ausgereift ist die aber (inoffiziell) abgekündigt wurde oder auf eine Technologie zu setzen die noch nicht ausgereift ist und ggf. so schnell auch nicht wird.

Den Marketingkrieg hat wohl HTML 5 deutlich gewonnen, ob das allerdings so gut ist wage ich zu bezweifeln.

Gruß

Hannes

* Wenn ich von HTML 5 spreche meine ich immer die Kombination aus HTML 5, CSS (3) und JavaScript

5.657 Beiträge seit 2006
vor 11 Jahren

Hi Maruu,

die Probleme mit Javascript dürften dank TypeScript der Vergangenheit angehören: Webcast: Anders Hejlsberg erklärt TypeScript.

TypeScript ist eine objektorientierte, typensichere ScriptSprache, die vom Compiler in JavaScript übersetzt wird.

Christian

Weeks of programming can save you hours of planning

M
Maruu Themenstarter:in
121 Beiträge seit 2006
vor 11 Jahren

Hi Christian,

Danke für den Link. TypeScript kannte ich bisher nicht. Ich hab den Wikipediaeintrag und einige andere Blogbeiträge kurz dazu durchgelesen. Generell finde ich den Ansatz interessant, ich sehe jedoch trotzdem noch Probleme:

  • Wie kann ich ordentlich debuggen? Einen Debugger in VS gibt es meines Wissens nach nicht und den übersetzten JS Code zu debuggen sehe ich als wenig sinnvoll an.
  • Wenn HTML 5, CSS 3 und JS eine so große Neuerung für die komplette IT Welt sind, wieso sind bewährte Konstrukte wie Classen, Objekte, typisierte Variablen usw. nicht längst im JS Standard? JS ist meiner Meinung nach eine gewachsene Sprache und nie für große Projekte ausgelegt gewesen.

Das sind Ansätze die in Zukunft mit in den Standard fließen bzw. passende Tools vorhanden sind, jetzt aber eine neue Applikation mit einem der vielen proprioritären Systemen zu starten gleicht doch genauso Selbstmord wenn man nicht weiß ob die sich zum Standard entwickeln.?!

Und selbst wenn, das behebt nur eines der im letzten Post genannten Probleme.

Gruß

Hannes

5.657 Beiträge seit 2006
vor 11 Jahren

Hi Maruu,

also ich finde ja, bei Stichworten wie "Marketingkrieg" und "Selbstmord" ist eine objektive Diskussion einfach nicht möglich. Was sollte man auch dazu sagen, und was versprichst du dir davon?

Daß JS keine typisierte Sprache ist, sollte klar sein. Darüber kannst du dich beschweren, oder dir eine Alternative suchen. Welche Klassen bzw. Objekte fehlen dir denn in JS, um HTML5-Webseiten zu erstellen bzw. damit zu interagieren?

Christian

Weeks of programming can save you hours of planning

M
Maruu Themenstarter:in
121 Beiträge seit 2006
vor 11 Jahren

Vielleicht war es ein wenig überspitzt ausgedrückt aber ich kann den Hype inkl. Marketing um HTML 5 einfach nicht ganz verstehen.

Mir fehlen keine bestimmten Klassen sondern generell in JS die Möglichkeit Klassen zu verwenden. Auch wenn wir die Sprachkonstrukte von JS außen vor lassen, da man hier wirklich über gut und böse streiten kann, wie sieht es mit den anderen Punkten aus.

Wie schütze ich meine Anwendung davor das kein konkurrent den Quellcode kopiert?
Wie bringe ich einer (kleinen) Firma bei, das sie nun statt ausschließlich .NET nun neben dem .NET Entwickler für die Serverseite Entwickler für HTML, CSS, JS und ggf. PHP benötig?

Gruß

Hannes

5.657 Beiträge seit 2006
vor 11 Jahren

Hi Maruu,

tja, wenn man Webseiten erstellen möchte, muß man sich eben mit HTML und CSS beschäftigen. Für JS gibt es ja inzwischen die Alternative TypeScript, und wozu du PHP brauchst, ist mir nicht ganz klar, wenn du doch serverseitig einen .NET-Webservice einsetzt.

Wenn man eine Desktopanwendung schreibt, muß man sich auch mit WindowsForms oder XAML auseinandersetzen, deshalb verstehe ich wirklich nicht, worauf du eigentlich hinauswillst. Oder ob du dich einfach nur beschweren willst - in dem Fall sind wir allerdings der falsche Ansprechpartner.

Christian

Weeks of programming can save you hours of planning

T
50 Beiträge seit 2010
vor 11 Jahren

Hallo Maruu,

In den letzten Tagen habe ich viel über HTML 5 und Silverlight gelesen. Der Ansatz von HTML 5 gefällt mir gut (Plattformübergreifend, Stadardisiert) aber ich scheue mich noch davor es als universelle Wunderwaffe zu verwenden. Im Bereich normale Webseiten mag HTML 5 die Lösung sein, für (größere) Businessanwendungen bezweifle ich das aber.

Deine Abneigung gegenüber Javascript kann ich durchaus nachvollziehen. Ich arbeite nun seit über 4 Jahren in der ASP.NET-Welt und habe immer noch eine gewisse Abneigung gegen Javascript. Inzwischen habe ich mich mit Javascript arrangiert. HTML ist durchaus für größere Businessanwendungen geeignet. Ich selbst arbeite an solch einer Lösung mit. Im Endeffekt vermeiden wir Javascript da, wo es geht. Somit ist der bei uns in Verwendung befindliche Anteil von Javascript recht gering und relativ einfach gestrickt.

Ich kann nur empfehlen, dass Ihr ein kleineres Projekt mit HTML umsetzt und einfach Erfahrungen sammelt. Es gibt viel zu lernen und die richtigen Konzepte für die Umsetzung einer Businessanwendung in HTML kommen erst mit den Erfahrungen.

Grüße,
Ronny

PS.: In Javascript ist es durchaus möglich, mit Klassen zu arbeiten. Der Ansatz von Javascript verleitet nur sehr gerne, ohne Klassen zu arbeiten.