Ist es besser, Apps mit einer plattformspezifischen Technologie oder Webtechnologien zu entwickeln? [geschlossen]

8

Ich habe neulich einen interessanten Artikel gelesen, in dem es darum ging, mobile Anwendungen mit Javascript und HTML5 zu erstellen. Ein interessanter Punkt, den sie herausbrachten, war, wie dieser Ansatz auf mehreren Plattformen, unterschiedlicher Hardware (z. B. Bildschirmgröße) und Software (z. B. iPhone, WP7, Mac, Windows) funktioniert.

Ich habe auch etwas Interessantes bemerkt, das auf der Build-Website von Microsoft für die bevorstehende Konferenz veröffentlicht wurde. Sie scheinen viel Wert auf HTML5 und JavaScript zu legen. Es scheint ideal zu sein, eine einzelne Anwendung zu entwickeln (natürlich wären noch geringfügige Änderungen erforderlich) und sie auf Tablets, PCs, Mobilgeräten, Fernsehgeräten oder so ziemlich jedem internetfähigen Gerät zu verwenden.

Ist das ein Trendwechsel?

Offensichtlich macht es keinen Spaß, eine Technologie zu lernen, nur um ein Jahr später herauszufinden, dass sie heruntergefahren wird. Meiner Meinung nach scheint es ziemlich schwierig zu sein, bestimmte Funktionen wie Animationen oder Datenbindung (mein Favorit!) Mit HTML5 und JavaScript im Vergleich zu Silverlight auszuführen. In diesem Fall ist es allein aufgrund der Tools eine bessere Wahl (Expression Blend und Visual Studio 2010). Ich bin jedoch besorgt, weil es immer einfacher geworden ist, Dinge im Web zu tun, die noch vor wenigen Jahren nicht möglich waren.

Gibt es noch einen Platz für Technologien wie Flash und Silverlight, wenn es um die Entwicklung von Anwendungen geht, oder sollten wir versuchen, unsere Apps auf webspezifische Technologien wie HTML5, CSS3 und JavaScript auszurichten?

Edward
quelle

Antworten:

9

Die große Verlagerung in Richtung HTML5 / JS erfolgte kürzlich mit der Einführung der Hardwarebeschleunigung in IE9 und jetzt in anderen Browsern. Früher konnten Sie mit HTML nicht die Leistung erzielen, die Sie mit Silverlight und Flash erzielen konnten. Sie hatten Zugriff auf Hardware und HTML nicht.

Die überwiegende Mehrheit der mobilen Browser unterstützt HTML5 , ebenso wie ihre Webansichten in Apps, die beispielsweise von Phonegap genutzt werden. Im mobilen Bereich ist HTML5 / CSS3 / JS eine perfekte Option, je nachdem, wie viel Hardware Sie verwenden möchten.

Unter Windows 8 wird es HTML5-Apps in der neuen Tablet-Ansicht geben, aber native Apps sind immer noch der Kern der Erfahrung (Visual Studio wird zum Beispiel kein HTML5 sein ... glaube ich nicht). Da das Markup / JS jedoch hardwarebeschleunigt ist, kann es jetzt genauso schnell sein wie eine native Anwendung.

Um zu wissen, ob Flash und Silverlight einen Platz haben - die Benutzeroberfläche von Windows Phone 7 basiert auf Silverlight, daher bin ich mir sicher, dass es noch eine Weile dauern wird. Außerdem sind diese Technologien immer noch die einzige Möglichkeit, mit älteren Browsern wie IE7, die in der XP-Welt noch sehr lebendig sind, ein umfassendes Webmedienerlebnis zu erzielen. Bis jeder Benutzer, den Sie anzeigen möchten, davon abweicht, benötigen Sie eine Fallback-Methode. Flash eignet sich immer noch hervorragend für Videos und Grafiken.

Ryan Hayes
quelle
tolle Erklärung. Ich wusste, dass es einen Grund geben musste, warum es in letzter Zeit einen solchen Sprung für Webtechnologien gab, und es war Hardwarebeschleunigung.
Edward
JavaScript-JITs, die es schon etwas länger gibt, haben ebenfalls zu einem enormen Leistungssprung bei der Ausführung von js beigetragen.
Erik Reppen
2

IMHO ist eine Technologie, die möglicherweise mit jedem Gerät auf dem Markt kompatibel ist (wenn sie gut implementiert ist), der richtige Weg.

Portabilität war schon immer eine der wichtigsten Eigenschaften erfolgreicher Sprachen wie C.

HTML5 bietet Ihnen zusammen mit JavaScript und serverseitigen Sprachen alles, was Sie zum Entwickeln umfangreicher Anwendungen benötigen (nicht nur Web, wie die neuesten Microsoft-Ankündigungen unter Windows 8 zu zeigen scheinen).

Technologien wie Flash und Silverlight werden immer einen Markt haben, aber ich sehe die große Welle in Richtung HTML / JS.

Die Leichtigkeit, mit der komplexere Dinge mit Silverlight möglich sind, ist nur eine Frage der Zeit. Das neue HTML5 und die vielen JS-Frameworks wachsen und werden von Jahr zu Jahr besser.

Ich hätte keine Zweifel daran, meine Zeit in eine so wachsende Technologie zu investieren.

Jose Faeti
quelle
2
wenn gut implementiert Dies ist der Schlüssel. Nur weil es sich um eine Website handelt, bedeutet dies NICHT, dass sie auf jedem Gerät eine native Anwendung ersetzt. Layouts für ein Touch-Gerät unterscheiden sich stark von Desktops und es wird fast immer plattformspezifischen Code geben.
Unholysampler
1
... weshalb CSS, JS und HTML speziell entwickelt wurden, um sich an solche Umstände anzupassen. Anstatt Ihren Code auf jeder einzelnen Plattform in der erforderlichen Sprache vollständig neu zu schreiben, verwenden Sie einen anderen Medientyp und sind bereits auf dem größten Teil des Weges dorthin.
Ben Brocka
2

Es ist unmöglich zu wissen, was "besser" ist, wenn keine Anforderungen und ein Gefühl für die verfügbaren Ressourcen vorhanden sind. HTML5 ist großartig, aber wenn Ihr Geschäftsmodell auf In-App-Käufen beruht oder wenn Sie ein Team haben, das Flash fließend beherrscht, werden Sie wahrscheinlich eine andere Richtung wählen. "Am besten" löst Ihr spezielles Problem am besten. In der Zusammenfassung bedeutet es nicht viel.

Caleb
quelle
0

Meine persönliche Meinung dreht sich darum, sowohl von der Plugin-Seite als auch von der rohen HTML / CSS / JS-Manipulation den größtmöglichen Vorteil zu erzielen.

Ich sehe allmählich einen Trend, der Ihr Gedankenmuster auf eine Technologie ausrichtet. Anstatt es so anzugehen, komme ich eher zu den Ideen, die hinter diesen Veränderungen stehen.

Beispiel:

1) Sowohl HTML5 als auch Silverlight / Flash erlauben Canvas. Wie unterschiedlich sind die Möglichkeiten, wie Sie Pixel steuern können, und die programmatische Logik, um Spiele in beiden zu erstellen?

2) Es ist allgemein bekannt, dass Sie über Plugins das DOM des Browsers direkt bearbeiten können. Wie einfach ist es, das Plugin für nicht übliche Verwendungen unsichtbar zu machen? Können Sie das Plugin verwenden, um beispielsweise große Datenmengen abzurufen?

Die Mitarbeiter von Microsoft und Adobe unterstützen Sie bei der Verwendung ihrer Produkte auf jede erdenkliche Weise. Wie einfach ist es, mit Plugins und sofort einsatzbereiten Webstandards sowie Skriptsprachen gierig zu werden, um eine Lösung zu liefern?

Ich finde, dass meine Gedanken mehr Fortschritte machen, wenn ich entlang dieser gepunkteten Linien denke. YMMV

gsvolt
quelle