C ++ Netzwerkprogrammierung

8

Hey, ich möchte mein Wissen in C ++ erweitern, also nehme ich zuerst die Netzwerkprogrammierung in Angriff.

Ich möchte einen IRC-Bot machen (was mich hoffentlich über Socket-Programmierung und Netzwerk-Themen lehren wird), aber ich habe keine Ahnung, wo ich anfangen soll. Wenn mir irgendjemand erklären könnte, wie IRC-Bots funktionieren und wie man sie macht und mich zu einigen Lernressourcen führt, wäre das wirklich großartig. Einfache Schnipsel wären auch super ...

Danke!

bearbeiten:

habe vergessen zu erwähnen, dass ich ubuntu verwende, also ist der Windows-Weg keine Option

    
Lockhead 24.04.2011, 21:36
quelle

5 Antworten

9

Um Sockets zu verstehen und sie richtig zu benutzen, brauchst du Die Sockets-Bibel:

W. Richard Stevens, Unix-Netzwerkprogrammierung, Band 1: Die Sockets-Netzwerk-API (3. Edition)

Sie müssen unbedingt dieses Buch haben, bevor Sie sich hinsetzen, um eine Codezeile zu schreiben. Verlasse das Haus nicht ohne es. Ja wirklich. Ab ca. $ 35 verwendet bei Amazon .

BEARBEITEN: Das OP fragte nach anderen Bänden. Hier sind zwei andere:

W. Richard Stevens,     UNIX-Netzwerkprogrammierung, Band 2:     Interprozesskommunikation (2     Ausgabe)
W. Richard Stevens,     TCP / IP Illustriert, Vol. 1: Die     Protokolle

Sie sind von Stevens gewohnter und erwarteter Qualität. Ich weiß nicht, was seine Pläne waren, all diese Bücher zu integrieren,

    
Pete Wilson 24.04.2011, 21:53
quelle
8

booten . asio ist (meiner Meinung nach) der De-facto-Standard für das Schreiben von plattformunabhängigem Netzwerkcode in modernem C ++.

    
ildjarn 24.04.2011 22:01
quelle
3

Meine Empfehlungen:

  1. Ich würde den Bot zuerst in einer schnell zu schreibenden, leistungsstarken Hochsprache wie Python schreiben. Gewöhne dich an die Arbeit mit net-Tools, dem IRC-Protokoll und so weiter.

  2. Erfahren Sie mehr über Sockets und Netzwerke auf niedriger Ebene. Für Unix würde ich sagen, Unix Network Programming.

  3. Schreiben Sie Ihren Bot in C ++! Mache Fehler, behebe sie und behalte sie bei.

slezica 24.04.2011 21:41
quelle
2

Die beste Anleitung zum Lernen der Socket-Programmierung in C / C ++ muss Beej's Guide to Network Programming

    
efr4k 24.04.2011 21:57
quelle
2

Beginnen Sie mit einem einfachen Client-Server-Beispiel. Es ist sehr einfach mit Qt-Framework. Zum Beispiel:

server.cpp:

%Vor%

client.cpp:

%Vor%

Alles, was Sie tun müssen, ist, das erste Programm in einem Terminalfenster und das zweite in dem anderen Terminalfenster auszuführen.

Sie finden weitere Qt-Netzwerkbeispiele hier

    
cpp 18.09.2013 10:44
quelle