derf schrieb:
1. Gibt es eine Möglichkeit die Anwendung von einem C#-Projekt zu PHP zu migrieren?
Das kann man wohl mit nein beantworten. Da gibts einiges an groben Unterschieden zwischen den Sprachen, schon allein im Ansatz der Sprache. PHP ist eine Interpreter-Sprache, um eine PHP-basierte Webseite darzustellen brauchst du einen PHP-fähigen Webserver (also quasi: irgend einen). Dafür sind die Scripte portierbar. Fast aller Code läuft ohne Änderung unter Linux, Windows, OSX,... C# hingegen muss kompiliert werden und du würdest nicht nur die Seite schreiben, sondern auch den ganzen restlichen Webserver drum herum. Außerdem läuft es dann nur auf Windows zuverlässig. Mono ist... fragwürdig.
2. Welche Voraussetzungen sind zusätzlich nötig, wenn die Anwendung unter ASP.NET oder Silverlight läuft?
Schreib die Seite in ASP.NET und lass sie auf einem Microsoft IIS laufen. Apache (via Mono) geht zwar theoretisch, praktisch hab ich es aber nie wirklich in Gang bekommen. Das ist halt der gravierende Nachteil an ASP/ASP.NET: Proprietärer Scheiß, der nur auf anderem proprietärem Scheiß lauffähig ist. Kein Apache, kein nginx, kein Cherokee,...
Was mir am meisten Sorgen bereitet, ist meine fehlende Kenntnisse PHP-Projekte zu testen.
Die Dokumentation ist gut und die Syntax weitestgehend verständlich. Das klappt schon. Im Zweifel hüllst du das ganze Ding in ein Framework wie Symfony2 oder Zend und lässt das Framework die ganze Arbeit machen.
Drexel schrieb:
Dafür wird C# von einem Hersteller vorangetrieben, der etwas Ahnung von Softwareentwicklung hat... Und es ist gut dokumentiert, was auch ein nicht zu unterschätzender Vorteil ist.
Ja... mit Betonung auf das
"etwas" vor Ahnung...
Microsoft und gute Software? Microsoft hatte nur die beste Marketing-Abteilung und die gemeineren Anwälte. Das ist alles. Anständige Software sieht durchweg anders aus. Wenn MS wirklich Ahnung von Software hätten, dann erklär mir doch den IE<=10... Erklär mir Windows 8 und das Zurückrudern in 8.1. Erklär mir Reboot... Reboot... Reboot..
PHP ist herstellerseitig ziemlich gut dokumentiert und dank seiner brutalen Verbreitung gibts auch noch tausende zusätzlicher Datenquellen.
Drexel schrieb:
Dass PHP auch ein Manual hat weiss ich auch, aber ich finde es teilweise dürftig.
Das Geheimnis ist: Lies nicht nur die Funktionsreferenz, sondern auch die ersten paar User-Kommentare zur Funktion.
DaZpoon schrieb:
Einzig die Performance von PHP ist schlecht. Solltest du größere serverseitige Aufgaben planen, müsstest du noch CGI-Skripte und Applikationen auf dem Server entwickeln.
PHP ist performant genug für ziemlich umfangreiche Aufgaben. Die größte Schwachstelle ist da ein schlecht konfigurierter Server.
Mal als Vergleich: Wir hatten ein recht komplex modifiziertes Magento-System erst über suPHP via Apache2-MPM-Prefork laufen. Das konnte man tatsächlich getrost als langsam bezeichnen. Ein einfacher Wechsel auf MPM-ITK brachte bereits eine spürbare Beschleunigung. Nachdem zusätzlich zu MPM-ITK noch PHP5-FPM eingesetzt wurde und somit auch ein OpCode-Cache (in dem Falle APC) möglich wurde rannte die Seite nur so. Die Time To First Byte hat sich um ca. 60% gesenkt. Weitere Modifikationen am Datenbankserver etc. brachten nur noch Verbesserungen im einstelligen Millisekunden-Bereich.
Wem dann ein Setup mit PHP5-FPM noch zu lahm ist, der kann getrost auf die HipHop-Engine der Facebook-Entwickler zurückgreifen und aus seinem PHP-Code hübsch schnellen C-Code generieren, den man dann dem CGI (FCGI/FCGID) zum Fraß vorwirft. Hat bei Facebook für einige Millionen User genug Leistung erzeugt...