dedlfix: C# - Standpunkt, Aussicht, eure Meinung und ein paar Fragen

Beitrag lesen

echo $begrüßung;

Also wie schon erwähnt interessiert mich die Webbasis. Ich möchte das was ich in PHP kann, schneller, effektiver machen.
Gehen wir mal davon aus das mein PHP Code super strukturiert, optimiert ist und meine Datenbankqueries auch optimiert sind. Sprich ich kann an PHP nichts mehr rausholen.

Auch nicht mit Opcode-Caches und dergleichen? Zu den Geschwindigkeiten kann ich nicht viel sagen. Ich betreibe keine Hochleistungsanwendungen.

Ich denke mir wenn ich meine Anwendungen in C# übertrage, welches viel enger mit dem OS zusammenarbeitet, viel schneller laufen.

Das OS ist übrigens Windows, am besten in der Server-Variante, zusammen mit dem IIS. Mit Mono hast du zwar was auf Unix-Basis, aber da musst du selbst mal sehen, ob dir das reicht. Als ich vor wenigen Monaten nach einer Mono-ASP.NET-IDE Ausschau hielt, fand ich im Vergleich zum Visual Studio nichts angenehmes.

Zu erwähnen ist halt, das ich mit C# auch auf MySQL oder PostgreSQL zugreifen müsste.

MySQL geht definitiv. Wenn du aber sowieso auf Windows umsteigen musst, kannst du auch Microsofts SQL Server (Express Edition) nehmen, das ist zumindest was aktuelle Entwicklungen (Entity-Framework, LINQ) angeht, wesentlich besser in das .NET-Framework integriert. Für MySQL gehen mehr oder weniger nur ADO.NET-DataSets.

» Syntax allein ist es nicht. [...]
Das habe ich jetzt auch gemerkt. Es gibt doch noch vieles mehr wie Events, Delegates, Indexer usw.. Dinge - die ich nicht kenne und die mir noch einiges an Konzentration abrauben werden um dort durchzublicken. Wann diese Dinge Sinn machen usw..

Wie gesagt, die syntaktischen Unterschiede sind das eine. Die Philosophie des Drumherum das andere. Zur Syntax gibt es bei Galileo ein Openbook zu Visual C# 2008. ASP.NET wird dort eher nicht behandelt. Aber das findest du bei www.asp.net (auf Englisch).

» » Ist C# schneller als PHP?
» Kann man nicht so pauschal sagen. Da unterschiedliche Herangehensweisen nötig sind, ist das nicht direkt vergleichbar.
Könntest du das ein wenig mehr erläutern?

Um bei meinem Array-Beispiel zu bleiben. Es reicht nicht einfach nur wie unter PHP ein Array zu erstellen, du brauchst wegen der Typsicherheit eine spezialisierte Klasse für einen Datensatz, die grob gesagt für alle Felder eine Eigenschaft enthält. Und für eine Sammlung von Datensätzen nimmt man eine Collection oder eine Liste. Und da kannst du noch froh sein, denn es gibt mittlerweile auch Generics, mit denen man nicht mehr spezialisierte Collectionsklassen erstellen muss (wenn man Typsicherheit haben und auch nicht ständig casten will).

» »» Kann C# mehr?
» Brauchst du mehr?
Bisher konnte ich fast alles auch in PHP umsetzen. Ich habe aber gemerkt, das sich in C# einige Vorgänge vereinfachen lassen.

Manche auch nicht. Siehe oben. Zumindest auf den ersten Blick sind typisierte Datensammlungen aufwendiger zu erstellen, aber andererseits ist man beim Verwenden und mit Intellisense im Vorteil.

Viel eher frag ich mich dann, wie arbeitet C# mit Webservern wie Lighttpd usw zusammen - sprich nicht dem klassischen Apache(2).

Das musst du selbst herausfinden. Für mich bilden ASP.NET und der IIS (und damit auch Windows (Server)) eine Einheit. Das aufdröseln zu wollen ... viel Spaß!

» » Angenommen ich schreibe ein großes Forum - PHP oder C#?
» Mit beidem kannst du zum Ziel kommen.
Das weiß ich, aber unter den Aspekten schnell und trotzdem sicher? - das dass paradox klingt weiß ich.

Sicherheit ist nicht programmiersprachenabhängig. Kontextgerechtes Behandeln von Werten und Maßnahmen gegen diverse web-basierende Angrifsszenarien sind in jedem System im Prinzip gleichermaßen zu beachten.

echo "$verabschiedung $name";