it-swarm-eu.dev

Wann wird PHP oder ASP.NET verwendet?

Ich habe ausgiebig an der Entwicklung von Webanwendungen mit PHP und ASP.NET) gearbeitet, aber eine der Fragen, die mir Kunden ständig stellen, ist, ob ich mit einer PHP-Website oder einem Asp fortfahren soll. Netzwebsite.

Das erste, was mir in den Sinn kommt, ist natürlich, die Frage wie folgt zu beantworten:

PHP ist Open Source und ASP.NET stammt von Microsoft.

Normalerweise hat der Kunde nach so etwas einen leeren Gesichtsausdruck. Anscheinend macht die Tatsache, dass einer Open Source ist und der andere nicht, sie nicht wirklich beunruhigen. Und das aus gutem Grund, denn als ich es zum ersten Mal hörte, sagt es mir wirklich nicht viel.

Ich weiß aus der Arbeit mit beiden, dass jeder seine Unterschiede bei der Entwicklung von Websites hat.

Meine Frage ist, was sind die Unterschiede zwischen ASP.NET und PHP soweit

  1. Eigenschaften
  2. Sicherheit
  3. Erweiterbarkeit
  4. Frameworks
  5. Durchschnittliche Entwicklungszeit

Ich versuche, eine Liste von Fakten zusammenzustellen, um sie mit dem Kunden vergleichen zu können, damit eine fundierte Auswahl auf der geeigneten Entwicklungsplattform getroffen werden kann.

46
Edward

Funktionen, Sicherheit und Erweiterbarkeit werden mehr oder weniger gleich sein. Was mit PHP gemacht werden kann, kann mit ASP.NET gemacht werden.

Frameworks - Auch wenn es um Funktionen von Frameworks geht, wird es mehr oder weniger gleich sein. Da Sie jedoch spezifischer als die Sprache selbst sind, sollten Sie Folgendes berücksichtigen:

  • Womit sich Ihre Entwickler am wohlsten fühlen. Wissen = Effizienz.
  • Auf Projekt-zu-Projekt-Basis passt ein Framework in einer Sprache möglicherweise besser als ein Framework in einer anderen. Spezifischer als die Sprache selbst zu sein, bedeutet, dass ein Framework nicht anders kann, als für einige Aufgaben gut und für andere weniger gut geeignet zu sein.

Durchschnittliche Entwicklungszeit - Ihre durchschnittliche Entwicklungszeit für ein sehr kleines Projekt könnte mit PHP seitdem besser sein Webhosts sind so einfach zu finden und Entwicklungsmaschinen so einfach einzurichten. Mit etwas Größerem wird es jedoch wahrscheinlich eine Wäsche sein, solange Sie gute Entwickler haben oder bereits für beides eingerichtet sind.


Die wichtigste Überlegung, die Sie machen sollten, ist mit welchem ​​Technologie-Stack Ihr Kunde in Zukunft verbunden sein möchte. Keiner passt gut (leicht) zum anderen. Sie haben möglicherweise Entwickler, die mit dem einen oder anderen vertraut sind.

  • Wenn Ihr Client die Idee mag, mit Microsoft verbunden zu sein, wählen Sie ASP.NET. Einige Clients haben mehr Komfort hinsichtlich zukünftiger Unterstützung, Upgrades usw. mit MS.

  • Wenn ihnen die Idee von Open Source- und Linux-Servern gefällt, wählen Sie PHP . Dies kann einige Kunden aufgrund der Übertragbarkeit von Webhosts, freier Software usw. interessieren.

Und schließlich, wenn es ihnen egal ist, dann gehen Sie mit dem, was Sie am besten können. Darüber hinaus steckt nicht viel dahinter.

39
Nicole

Um einen Hintergrund darüber zu geben, worauf ich meine Antworten stütze, habe ich PHP] seit mehr als 6 Jahren professionell entwickelt. Ich habe ungefähr die letzten 3 Jahre mit ASP.NET MVC herumgespielt. 4 Monate, und ich mache C # -Programmierung ungefähr so ​​lange wie PHP Programmierung.

Für mich ist dies eher ein PHP vs C # -Argument als ein PHP vs ASP.NET-Argument).

Feature/Erweiterbarkeit
Ich denke, das ASP.NET gewinnt hier und dies liegt eher an der Fähigkeit, eine Sprache wie C # zu verwenden. C # ist eine weitaus bessere Sprache als PHP kommt damit zu OO Unterstützung. Ich bin auch eine Person, die eine statisch typisierte Sprache bevorzugt (auch mit C # 4.0 gedacht) Ich glaube, dass Sie dynamisch typisierte Variablen ausführen können.) Das einzige, was PHP über C # hatte, was eine Sprachfunktion betrifft, waren optionale Parameter, aber das ist eine andere Sache, die in C # 4.0 hinzugefügt wurde (nicht sicher, wie gut es funktioniert, da ich es noch nicht ausprobiert habe).

Sicherheit
Ich würde wahrscheinlich sagen, dass es eine Wäsche zwischen den beiden ist. Ich denke, beide verfügen über Funktionen zur Unterstützung der Sicherheit, aber letztendlich ist es Aufgabe des Programmierers, sicherzustellen, dass ihre Anwendung sicher ist.

Frameworks
Nun PHP scheint viel mehr Mainstream-Frameworks (CakePHP, Codeigniter, Symfony, Zend Framework) und viele andere kleinere Frameworks als ASP.NET zu haben. ASP.NET hat 2 Haupt-Frameworks von Microsoft, WebForms (ein absoluter Mist) und ASP.NET MVC (der Grund, warum ich angefangen habe, in die ASP.NET-Entwicklung einzusteigen). Während PHP hat mehr Frameworks, finde ich das Das ASP.NET MVC 3-Framework ist besser als jedes der PHP Frameworks).

durchschnittliche Entwicklungszeit
Ich denke, dass für kleinere Projekte die Entwicklungszeit in PHP] viel besser ist. Wenn Ihr Projekt jedoch größer wird, skaliert C # in dieser Hinsicht besser.

Kosten
Einige, die angesprochen werden sollten, sind Kosten. PHP gewinnt zweifellos an dieser Front. Während Sie ASP.NET unter Mono unter Linux ausführen können, hat es seine eigenen Probleme.

Wenn Sie ein kleines bis mittelgroßes Projekt durchführen und/oder die Kosten eine Rolle spielen, PHP gewinnt. Wenn Sie ein großes Projekt durchführen, würde ich ASP.NET mit C # und ASP wählen .NET MVC.

29
ryanzec

PHP vs ASP.NET ist wie der Vergleich von Äpfeln und Orangen, die für verschiedene Lösungen bestimmt sind.

PHP ist ein besser geeignetes Framework für kleine Start-up-Lösungen. PHP wird ausgeführt oder Linux, Windows ohne zu viele Anforderungen. Microsoft ASP.NET ist ein industrielles Framework, das alles bietet, was Sie sich vorstellen können, und mehr. ASP.NET ist eine sehr funktionsreiche Umgebung Viele werden argumentieren, dass ASP.NET teuer ist, was vor einigen Jahren der Fall war, aber nicht mehr. Erstens sind die Tools kostenlos (Express-Editionen), die Datenbankoptionen sind kostenlos (SQL Compact oder SQL Server 2005) oder über Express). Purchase Hosting ist jetzt sehr günstig, daher stellt sich nicht die Frage, welches besser ist, sondern was zu Ihrer Lösung passt. Ich persönlich bevorzuge ASP.NET, aber das liegt daran, dass ich in einer Unternehmensumgebung arbeite, in der Flexibilität und Skalierbarkeit sehr wichtig sind Somit bestimmen die Lösungen den Rahmen.

Eine sehr wichtige Sache ist, in welcher Sprache Sie am besten sind? Dies sollte der letzte Faktor bei der Entscheidung sein.

Wenn Ihr Ziel darin besteht, einen Kunden zu überzeugen, ist asp.net die bessere Option. Wenn ein großer Firmenname eine Sprache unterstützt, fühlt sich ein Kunde wohl. In diesem Fall sind die besten Optionen (Microsoft) ASP.NET und (Oracle) Java JSP).

EDIT : Funktionsreich - ASP.NET bietet zwei Alternativen zum Erstellen einer Website WebForms und den MVC-Ansatz. Da es sich nicht um das .NET Framework handelt, müssen Sie über sehr leistungsstarke Funktionen verfügen, z. WF (Workflow), DLR (Dynamic Language Runtime), Parallel Linq, Linq, Routing, verschiedene Formen der Datenstatusverwaltung: HTTPContext-Elemente, ViewState, Runtime Cache, Seitenausgabecache, drei verschiedene Typen der Sitzungsimplementierung InProc, State und SQL Server. ASP.NET implementiert verschiedene Formen der Sicherheit, z. B. Mitgliedschaftsanbieter und Rollenanbieter. Ich möchte PHP nicht einpacken, aber ASP.NET spielt in einer anderen Liga.

8
Nickz

Nachdem Sie intensiv mit beiden gearbeitet haben, wissen Sie bereits, dass die Antworten je nach Problem und Kunde unterschiedlich sein werden. In einem sehr allgemeinen Sinne:

  • PHP eignet sich hervorragend für Projekte, bei denen ein begrenztes Budget erforderlich ist. Zum Beispiel werden Sie nicht von hohen Lizenzgebühren für Datenbanken betroffen sein.
  • ASP.NET eignet sich hervorragend für Projekte, die die von Microsoft bereitgestellte Unterstützung und Entwicklerkultur benötigen.

Wenn Sie eine Liste mit Fakten für Ihre Kunden zusammenstellen, stützen Sie sich auf das, was Sie wissen. Ihre Forschung, egal wie voreingenommen Ihre Ergebnisse sind, ist in Ordnung, um Ihre Stichpunkte zu erhalten.

6
Fred Wilson

.net-Steuerelemente sind viel besser als das, was Sie mit einer PhP-Plattform finden können. Schauen Sie sich zum Beispiel Infragistics an, was ist das Äquivalent für eine LAMPE?

1
Totor