socket でサーバー - クライアント型のチャットソフト作った。
ぼくが Python 始めたての頃にも socket でチャット作ろうとしていろんな人のブログ記事でコード読んでまわったんだけど、 1:1 でしかやり取りできなかったり、「サーバー側でも発言できるようにしてみました」とか言ってて混沌としてたために、実装できずじまいだった。
そのことをソケットプログラミング HOWTO — Python 2.7ja1 documentation 読んでたら思い出したので作ってみた。 一日くらいかかったけど特に躓くことなく作れたので、 curses でちょっとビジュアライズなクライアント作ってみたらこいつが思いの外クセモノだった。
ソースコードはここに置いてある。 yosida95 / Socket Chat / overview — Bitbucket。 gist に貼り付けるにはちょっと頑張りすぎたので、リポジトリとして公開してある。
実験してないけど、理論的にはネットワーク帯域食いつぶすまでクライアント増やせるはず。 詳しいことはコード読んでね。