Frage

Ich werde eine XMPP (Jabber) bietet schreiben, und ich brauche, in welcher Sprache zu entscheiden, soll ich es schreiben. Derzeit bin ich in Anbetracht Python, Java und PHP.

Da ich den Bot ich erwarte die meiste Zeit zu laufen (das heißt 23,5 / 7), gibt es einige konkrete Argumente für oder gegen eine dieser Sprachen verwenden? (Beispielsweise nicht "$ x ansaugt", sondern oder "$ z Lecks memory" "$ y gute Daemon Bibliothek")

Der Zweck der Bot wird meist auf Benutzereingaben werden reagieren.

Wenn keine dieser Sprachen scheinen zu Ihnen passen, was würden Sie empfehlen?

War es hilfreich?

Lösung

Ich würde Python sagen mit dem Verdrehte Rahmen. Twisted ist erstaunlich Rahmen für asynchrone Vernetzung und die meiste Zeit hat er bereits die Unterstützung für das Protokoll die Sie suchen. Es gibt eine leichte Lernkurve aufgrund des Reactor aber einmal überwinden Sie mit der kleinsten Menge an Code erstaunliche Dinge tun können. Wie für das IRC-Protokoll bereits hat sie verdreht, so, während ich kein Experte für IRC-Bots bin, würde ich auf jeden Fall Python and Twisted empfehlen.

BTW, ist dies die erste, die mit Google kam:

Andere Tipps

Wenn Sie für mehrere Benutzer gleichzeitig bedienen wollen (wahrscheinlich Sie wollen), PHP kann nicht eine gute Wahl sein, da sie nicht unterstützt (oder experimentell unterstützen) Threading, haben Sie eine Kopie Ihrer Anwendung gabeln für jeden Benutzer.

Ich empfehle Java für diesen Zweck. Sun beschreibt Java als "einfache, objektorientierte, verteilte, interpretierte, robust , sichere, architekturneutrale, portable, High-Performance, multithreaded und dynamisch.".

Meiner Meinung nach mit Ausnahme von zeitkritischen Jobs Java besten für die Client-Server-Architektur.

Von den Optionen, die Sie geschrieben, hätte ich Java vorschlagen. PHP, für einen, einfach wird nicht tun, was Sie wollen es; es sollte eine Web-Skriptsprache, nicht etwas anderes-Skriptsprache sein. Python ist in der Lage zu tun, was Sie wollen, aber ich denke, Java für die Funktionalität mehr out-of-the-box-Unterstützung werden Sie zu erreichen versuchen.

Persönlich würde ich mit der beginnen ejabberd Code-Basis und von dort aus arbeiten - für einen Headless-Netzwerk-Server Mittel, würde Erlang die Sprache / Plattform sein, die ich für die erste erreichen würde, es sei denn, es gab überzeugende Argumente für eine andere Technologie. Unveränderlicher Daten und akteursbasierte Parallelität schiebt alle normalen Housekeeping Code unten in die Plattform, damit Sie sich auf die Bits zu konzentrieren, die wirklich sind, was Ihre Anwendung ist etwa.

Schrieb vor Bot für IRC einige Jahre delphi verwenden. Es ist viel besser als Dolmetscher Sprachen - isst weniger Speicher, arbeitet viel schneller, und Sie können sicher sein, dass es große Reserve an Geschwindigkeit haben, wenn Sie mehr und mehr Funktionen in Zukunft hinzufügen müssen - sie Parsen Benutzer Phrasen, verarbeiten. Zum Beispiel meines bieten besonders alle Chat angemeldet und durchgeführt schnelle Suche nach Benutzeranforderung (User schrieben gerade Suche Wort / Phrase - bietet Suche durchgeführt, und als kurze Zitate zu Benutzern Ergebnisse gesendet, so könnten Benutzer wählen Sie eine der Zitate und mehr Beiträge um sie von log) erhalten. Es ist fast unimplementable zum Beispiel mit PHP, weil es zu langsam ist. Wenn Bot wird vorgeschlagen, unter * nichts zu arbeiten - nur verwenden, c / c ++:)

Wenn Sie nur Sprachen in einem Beitrag aufgezählt verwenden möchten - dann nur Java mir in den Sinn. Lesen Sie oben, warum.

Python Jabberbot

Dies ist eine ziemlich einfache Möglichkeit, eine jabberbot mit Python zu erstellen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top