2009-03-09 9 views
18

Ich bin ein erfahrener Desktop Entwickler arbeitet in C++/C#/WinForms/etc. Bis zu diesem Punkt habe ich sehr wenig in Bezug auf Web-Entwicklung getan. Ich bin an den Punkt meiner Karriere gekommen, wo ich glaube, ich sollte anfangen, Web-Entwicklung zu machen - nicht um meine Desktop-Erfahrung zu ersetzen, sondern als Entwickler besser abgerundet zu werden.Sollte ich Silverlight oder JavaScript/JQuery/CSS/HTML lernen?

Ich kenne bereits einige HTML und JavaScript, aber ich bin keineswegs kompetent. Ich bin sehr zufrieden mit .NET.

Also was ist deine Meinung? Sollte ich mich darauf konzentrieren, HTML/CSS/JavaScript/JQuery zu beherrschen (mit ASP.NET oder PHP am Backend), oder sollte ich meine .NET-Erfahrung fördern und in Silverlight eintauchen?

Ich bin neugierig auf Faktoren wie Leistung, Adoptionsrate usw. und andere Ratschläge, die meine Entscheidung leiten sollten.

PS: Und ich habe this Artikel gelesen, aber es ist etwas anders als meine Frage.

Antwort

25

Wenn Sie wirklich Ihre Fähigkeiten als Entwickler wachsen und den Übergang in die Welt der Web-Entwicklung machen wollen. Ich empfehle dringend, mit der HTML-, CSS-, JavaScript-, jQuery-, ASP.NET AJAX-Route zu beginnen.

Es gibt viele Gründe dafür, aber mehr als alles andere sind die Grundlagen der Web-Entwicklung. Am Ende wird alles dem Benutzer in HTML gerendert, und Javascript/CSS sind Dinge, mit denen wir uns regelmäßig beschäftigen müssen. CSS und Cross-Browser-Funktionalität ist immer noch und Problem und Verständnis, wie das funktioniert, ist ein grundlegendes Stück zu einem fähigen Entwickler sein. Die JavaScript/JQuery-Funktion ist eine grundlegende Anforderung in vielerlei Hinsicht, da die Benutzer reichhaltige, funktionale Benutzeroberflächen erwarten und verstehen, wie diese Technologien genutzt werden können.

Sliverlight ist großartig zu lernen, aber ich denke, dass das Basiswissen und Erfahrung mit allgemeinen Web-Entwicklungstechniken zuerst benötigt wird. Zumal Silverlight in den meisten Fällen nur ein kleiner Teil einer Website ist.

5

Esp. Wenn es Ihr primäres Ziel ist, als Entwickler besser abgerundet zu werden, sollten Sie zuerst versuchen, in die grundlegenden Webtechnologien einzusteigen und erst danach (wenn Sie ein Problem finden, das Sie nicht lösen können) dieses mit Ihrem Wissen darüber zu kombinieren. NETZ.

Während Silverlight und Flash großartige Werkzeuge sind, die bei der Lösung bestimmter Probleme helfen, sollten sie bei der Webentwicklung nicht die erste Wahl sein.

3

Persönlich würde ich gehen, um Ihre Fähigkeiten mit XHTML/CSS/JS/einigen Backend zu stärken. Während Silverlight im Web immer schneller wird, wird es immer noch wie Flash sein - ein kleiner Teil der gesamten Webprogrammierung. XHTML/etc ist überall, es ist die Grundlage, und Sie werden mehr Nutzen und Nachfrage dafür finden.

Wenn Sie nicht nach "etwas lernen, um mir einen Job zu bekommen" und eher etwas, um Ihnen eine stärkere Programmierung zu machen, würde ich sehr empfehlen, diejenigen in Kombination mit PHP zu lernen. Es wird ein sehr großer Unterschied zu dem, was Sie gewohnt sind. Völlig andere Dinge zu lernen macht dich zu einem viel stärkeren Programmierer.

17

Gelegentlich können Sie Silverlight verwenden, ubiquitär verwenden Sie XHTML/JS/CSS. Die Wahl sollte selbstverständlich sein.

+2

+1, Verwendung des Wortes "ubiquitously" ... :) – mwigdahl

+0

Es sei denn, Sie erhalten einen Job als Silverlight-Entwickler –

+0

Nun offensichtlich, aber das ist der Punkt fehlt. Es ist wesentlich weniger wahrscheinlich, dass Sie einen silverlight Job als etwas in dem viel breiteren xhtml/js/css Sektor finden. – annakata

3

Ok, das ist sicherlich eine Meinung Frage, aber hier ist meins ... Jeder Entwickler sollte heute in HTML, JavaScript, CSS und SQL versiert sein.

Ich habe gerade eine Benutzergruppentour beendet, bei der ich Teil eines Panels zu Entwicklungstechnologien (.NET (me), PHP, Python und Java) war und jeder von uns stimmte, Sie müssen die Web- "Sprachen" kennen " zuerst. Selbst wenn Sie dann in einem Silverlight-Engagement enden und wissen, dass die Websprachen Ihnen helfen werden, zu sehen, wie Ihr Silverlight-Zeug in das größere Bild passt.

Beschränken Sie sich nicht, lernen Sie das Internet.

1

Ich neige dazu zu glauben, dass die Silverlight/Flash-Entwicklung echten Designern überlassen werden sollte ... Menschen, die nicht nur Grafikdesign haben, sondern auch den Ablauf von Animationen verstehen. Wenn Sie mit Web-Technologien (insbesondere HTML und CSS) arbeiten, können Sie sehr gut mit Designer-Comps arbeiten, indem Sie ein schönes Web-Interface erstellen und von diesem Framework aus arbeiten, um es mit JavaScript/Jquery zum Leben zu erwecken.

Noch wichtiger ist, dass die Breite und der Umfang von Web-Anwendungen so breit ist, dass sie eine große Vielzahl von Problemen angeht, wo die Anwendungen von Silverlight und Flash viel begrenzter sind. Während Sie einen starken Vorteil haben, direkt mit Ihren bestehenden Fähigkeiten in Silverlight zu springen, ist die installierte Basis von Silverlight leicht genug, dass Sie Ihre Arbeit nicht leicht von jedem sehen lassen können.

Außerdem haben Sie (von einem ASP.NET MVC-Programmierer kommend) reichlich Gelegenheit, Ihre .Net-Kenntnisse in einem ASP.Net-Bereich zu pflegen. Was ich am meisten an der MVC-Strategie liebe, ist, dass ich wieder volle Kontrolle über meinen HTML-Code habe (ein Plus für das Look-and-Feel) und über eine komplette Tool-Palette, die es mir ermöglicht, in einem Bruchteil der Zeit wahnsinnig komplexe, datengesteuerte Sites zu erstellen dass es mich immer mitgenommen hat. Der einzige Unterschied zwischen Web-Entwicklung und Winforms-Entwicklung ist das Medium, das Sie verwenden, um mit dem Benutzer zu interagieren.

2

Ich habe einen ähnlichen Hintergrund, und ich habe mich entschieden, mich auf Silverlight 2 für die Webentwicklung zu konzentrieren. Es hängt wirklich von der Art der Entwicklung ab, die Sie tun möchten. Einige Arten von Anwendungen sind besser für einander geeignet.

Ich habe eine kleine Menge von ASP.NET (mit AJAX) und PHP gemacht. Ich persönlich mag diese Art der Entwicklung nicht. Der Umgang mit HTML/CSS-Problemen in verschiedenen Browsern ist für die Vögel. Das Debuggen von Silverlight 2 C# gegenüber dem Debuggen von HTML/CSS/JavaScript ist eine andere Welt. Während es sicherlich einige großartige Web/AJAX-Anwendungen gibt, kann ich nicht anders, als zu fühlen, dass dies eine Stop-Gap-Maßnahme ist. Versteht mich nicht falsch, HTML/CSS/JavaScript/AJAX wird immer eine größere Präsenz im Netz haben als Silverlight, Flash, etc. Aber ich arbeite an Branchenanwendungen und mache das traditionelle Webmodell immer für diese Zwecke führt zu riesigen UI-Kompromissen. Ich bin nie in Flash/Flex gekommen, deshalb ist Silverlight 2 das erste Mal, dass ich eine browserbasierte Anwendung bereitstellen konnte, die ich ähnlich wie Desktop-Anwendungen erstellen/debuggen/unterstützen kann.

Wie Rich B's Kommentar zu JavaScript/AJAX Fähigkeiten zur Verwendung von Silverlight, das konnte für Silverlight 1, aber nicht für Silverlight 2 gelten. Natürlich ist die Möglichkeit, Silverlight mit traditionellen Web-Entwicklung zu integrieren, aber ist nicht zwingend erforderlich.

0

Microsofts jährliche MIX-Konferenz beginnt am 18. März. Diese Konferenz konzentriert sich auf Microsofts Web-Technologien. In der Vergangenheit wurden die Sitzungen innerhalb von 72 Stunden online gestellt (http://visitmix.com/).

Wenn man bedenkt, dass wir so nahe am 18. März sind, würde ich empfehlen, abzuwarten, was angekündigt wird. Es kann etwas sein, das dich in Bezug auf die eine oder andere Technologie begeistert.Ich denke, es wird für Sie vorteilhafter sein, etwas zu finden, auf das Sie sich freuen. Dies wird den Lernprozess angenehmer machen.

Chad Campbell Autor von Silverlight 2 in Aktion

0

Ich denke, dass Silverlight (und Flash) ihre Verfallsdaten schnell nähert. Da JavaScript schneller wird, wenn JIT-Compiler auftauchen (wie in Chrome, Firefox 3.1 und Safari 4) und HTML-Unterstützung besser wird (HTML5), wird die Notwendigkeit von Plugins zum Anzeigen von phantasievoll gerenderten Widgets abnehmen. Ich bin selbst heute noch erstaunt, was mit HTML + CSS + JS möglich ist, Dinge, die ich mir nie ohne etwas wie Silverlight hätte vorstellen können.

+0

Einverstanden - siehe http://gomockingbird.com/mockingbird/ Kein Blitz/silverlight .. Zugegeben in Cappucino, aber immer noch getan – tim

4

Ich bin im selben Boot. Mein Gefühl ist, dass es ziemlich schwer ist, mit einer Technologie, die seit Jahren läuft, aufzuholen. Es gibt Entwickler, die dich immer auf Javascript/Ajax usw. umbringen werden ... Ich wäre also eher ein Early Adopter von Technologie. Auf diese Weise wirst du wirklich gut in etwas und lernst/machst Fehler ohne den Druck der anderen, die so viel besser sind als du, weil sie einen 3-jährigen Vorsprung haben.

In Bezug auf Silverlight/Flash nähern sich ihre Verfallsdaten. Ich stimme nicht zu. 60% der Zeit, die für die Erstellung von RIA-Apps in Ajax/Html aufgewendet wird, wird damit verbracht, Dinge gut aussehen zu lassen (oder sie einfach wie etwas aussehen zu lassen ...). Für die meisten Entwickler, die von Winforms oder etwas ähnlichem kommen, ist dies nicht gerade sinnvoll. Wenn du fragst, ob dein "div" -Panel richtig angezeigt wird, dann ist es Zeit für die 80er!

IMO, Silverlight wird massiv für interne Business-Anwendungen. Es ist nur EINFACHER! Günstiger zu bauen, billiger zu testen und sieht besser aus! Für eine 30-Sekunden-Installation auf einem Unternehmenscomputer können Sie Probleme mit der Bereitstellung und eine App haben, die in Ihrem Browser wie eine Desktop-App aussieht. Warum würdest du Asp.net benutzen? Es wird auch einfacher, einen Designer für die Erstellung Ihrer App zu finden, da Silverlight entworfen wurde, um Design/Programmierung richtig zu teilen.

Für die Welt außerhalb von Unternehmens-Desktops wird die Einführung langsamer sein, weil Entwickler von Barrierefreiheit getrieben werden und die meisten Leute mit ihren Sachen bekommen (weil jeder versucht, dieses Geld zu verdienen!). Die Kompatibilität mit mobilen Geräten würde die meisten Unternehmen davon abschrecken, Silverlight oder Flash in diesem Bereich zu verwenden. Daher erwarte ich, dass Ajax für eine Weile die beliebteste Form der Web-App ist.

Im Moment denke ich, dass ich lieber in einem bestimmten Entwicklungsbereich als der Tausendsassa toll wäre. Und es sieht nach viel mehr Spaß aus, als mein Leben in einem Feuerwurm zu verbringen, der sich fragt, warum mein CSS nicht in Kraft getreten ist! :-)

0

Mein Cousin ist ein Webdesigner/Entwickler und er erzählte mir, dass viele Leute wollen, dass Sie das Action Script hinter Flash kennen, nicht nur den Designteil. Also, auf der anderen Seite, um das Beste aus Flash zu machen, müssen Sie ein anständiger Programmierer sein. Flash ist im Grunde eine Kombination aus Design und Programmierung .... so offensichtlich müssen Sie in der Lage sein, beides zu tun, wenn Sie das Programm meistern werden. Ein guter Designer kann es hübsch aussehen lassen und das war's. Sie müssen programmieren, um ihm Funktionalität zu geben.

Es sei denn, es gibt einige magische Flash-Action-Drehbuchautor, über die ich keine Ahnung habe. =/

2

Wie jeder sagen würde, hängt die Antwort von der Aufgabe ab.

Das heißt, ich wähle Silverlight 2. Ich mache Line-of-Business-Anwendungen. Im letzten Dezember habe ich begonnen, eine neue App in ASP.NET MVC zu erstellen. Frustriert mit Streitigkeiten mit DIVs, CSS und JS, habe ich in den Ferien kleine Stealth-Arbeit geleistet und alle bereits codierten Funktionen meiner kleinen App in Bruchteilen von Zeit neu implementiert.

Es half mir, dass ich bereits mit XAML vertraut war (von der WPF-App, die ich früher gemacht habe), aber der Hauptgewinn bei meinem Chef war Schnelligkeit und einfache Entwicklung. Plötzlich verbrachte ich keine Zeit mehr mit der Optimierung meiner Präsentationsebene, sondern mit der Kodierung von Geschäftsregeln.

Bis jetzt sieht alles gut aus. Meine Kodierung tuckert im stetigen Tempo, meine Arbeitszufriedenheit ist höher, ich genieße es wieder zu programmieren :)

Punkt ist, für LOBs, in kontrollierten Umgebung, gewinnt Silverlight 2 Hände runter. Ich bin mit Flex nicht vertraut, aber ich habe gehört, dass es SL2 in der Art des Dev-Workflows ziemlich ähnlich ist.

Verwandte Themen