Es ist OK , um eine Web - Anwendung mit C ++ zu machen IF die Vorteile die Kosten überwiegen, offensichtlich. Google, Amazon und Facebook sind alle mit C ++ ausgestattet, um Geschwindigkeit, Speicher und Energie zu optimieren - auch bekannt als Serverkosten.
Wie Sie jedoch vermutet haben, hat die Verwendung von C ++ hierfür Nachteile. Es hängt jedoch von Ihren Werkzeugen ab.
Lassen Sie mich zunächst die cppcms- Website dazu zitieren :
Wann sollte CppCMS verwendet werden?
Die C ++ - Sprache ist aus vielen Gründen bei weitem nicht beliebt für die Webentwicklung: Mangel an geeigneten Tools, Fähigkeiten von Entwicklern und vielem mehr.
Es gibt jedoch Bereiche, in denen die C ++ - Webprogrammierung mit CppCMS sehr nützlich und effizient wird, und einige, in denen dies nur Zeitverschwendung ist.
Wann sollte oder kann CppCMS verwendet werden?
1. Hochlastige Websites und Anwendungen mit Hunderten und Tausenden Treffern pro Sekunde, bei denen hohe Leistung, Effizienz und Skalierbarkeit erforderlich sind.
2. Anwendungen, die skalierbare Comet / Server Push-Technologien erfordern --- CppCMS kann Hunderte und Tausende gleichzeitige HTTP-Verbindungen mit minimalem Ressourcenverbrauch effizient verarbeiten.
3. Einbetten der Weboberfläche in vorhandene C ++ - Anwendungen / Dienste mit geringen Kosten für zusätzliche Bibliothek.
4. Eingebettete Geräte mit geringer Leistung - CppCMS ermöglicht die Erstellung umfangreicher Anwendungen mit relativ geringen Hardwarekosten, die eine relativ schnelle Leistung erbringen würden.
Wann nicht verwenden?
Wenn Sie kleine Webanwendungen erstellen, die keine hohe Auslastung erfordern und eine sehr kurze Markteinführungszeit erfordern, sind Tools wie Django oder RoR für solche Aufgaben wahrscheinlich besser geeignet.
Die für C ++ spezifischen Nachteile sind:
- Die Kompilierungszeiten können im Vergleich zu anderen Sprachen sehr, sehr, sehr langsam sein. Dies kann sich auf Iterationen, das Veröffentlichungsintervall, aber auch auf die Moral des Entwicklers auswirken. Stellen Sie sicher, dass es sich lohnt.
- Meistens müssen Sie Änderungen kompilieren. Es kann vermieden werden, aber es ist das Übliche.
- Das Schreiben von modernem C ++ macht es einfach (lernen, lesen, schreiben, debuggen usw.), aber viele C ++ - Entwickler wissen nicht, was modernes C ++ ist. Wenn Sie also im Team arbeiten, müssen Sie vom gesamten Team über gute Kenntnisse in Modern C ++ verfügen. Wenn nicht, werden Sie leicht in sehr komplizierte Fehler geraten. Das heißt, es ist eher ein Menschenproblem als ein Sprachproblem. Es ist nur so, dass die C ++ - Geschichte nicht dazu beigetragen hat, es einfach zu verstehen. Guter Unterricht ist nicht so verbreitet wie in moderneren (historisch) Sprachen.
- Unicode wird von der C ++ - Kernsprache immer noch schlecht unterstützt, was es zu einer potenziellen Quelle großer Schmerzen macht. Verwenden Sie UTF-8 einfach überall und einige Bibliotheken (siehe Boost), um es zu verwalten.
- C ++ Standard weiß nicht, was eine Bibliothek ist. Daher verwenden wir herkömmliche Methoden, um sie auf verschiedenen Compilern / Linkern / Betriebssystemen zu verwalten. Dies kann ein Problem sein, wenn Sie anfangen, plattformübergreifenden Code zu verwenden, der einige Module "on the fly" laden / entladen muss.
Vielleicht einen Blick auf CPPCMS werfen? Oder vielleicht wt, wenn Sie eine Website im GUI-Stil erstellen möchten?
Überprüfen Sie auch diese Fragen: