ネットワークプログラミングの勉強をする人へ… – natural days

自分の根っこの、根っこ部分はネットワーク寄りな部類だと思っている。

もちろん、HTML/UIや最近は画像処理の簡単なもの、検索周りやWebアプリ・Android…とか色々な言語で書くけど、IPv4/v6ヘッダ・プロトコル、TCPの状態遷移やシーケンスを叩き込まれて、今でも自分の基礎を形成している。

IPv4/v6とTCP/UDP, socketを実装した時もだけど、ぶっちゃけfreebsdのkernelを見た方が良いぜ!!と言う訳でもないし(読んだ方が勉強になると思うけど)、Linuxのkernelを読んだりしても良いし、インターネットにある情報を頼りに何をやってもネットワーク周りは勉強できると思う。
ちなみに、自分的にはfreebsdのkernelの方がlinux 2.6系のip, tcp周りのソースより読み易かった。

自分自身あまり本は買わないんだけど・・・まぁ、けど、こういう本もあって、ネットワーク周りのプログラミングをする人にはお勧めかな。(といっても、ほとんど自分の周りの人は持っていると思うけどw

■ 詳解TCP/IP〈Vol.1〉プロトコル (W.リチャード スティーヴンス )

この本を持っていないでネットワーク周りのプログラミングやアプリについてっている人を見たことが無い。
たぶん、ほとんどのインターネットに関わる会社の書籍棚には必ずあると思われ。

少し古いけど、内容がとっても充実しているし、わからない時に調べるのでもね。
同じく、故・W.リチャード スティーヴンスさんの本で、詳解UNIXプログラミング、UNIXネットワークプログラミング〈Vol.1〉ネットワークAPI:ソケットとXTIあたりも名著だと思う。

ほかにも自分でsocketとかTCP周りを実装してみたい人には、freebsdのkernelと共に詳解TCP/IP〈Vol.2〉実装がお勧め。(ただ、kernelの改訂に本の方は古いのもあって、差分が大きいのがアレだけど)
翻訳で連なっている名前が蒼々たる面々なのと、分厚さもあって本当に重いと思われ。

■ マスタリングTCP/IP 入門編

アマゾンで見てみたら・・・凄いシリーズ化されてるのね。これもほとんどの会社の書籍棚には必ずあると思うけど。
詳解TCP/IPが古典だとしたら、こっちは今に合っていると思うから、初めての人はこっちの方がいいかな。
ネットワークプログラミング・アプリが分からない・・・という人は、まずは入門編からでも。そして、応用編までは持っていて損は無いと思う。

■ OpenSSL―暗号・PKI・SSL/TLSライブラリの詳細

原書のNetwork Security with OpenSSL(洋書)から、翻訳版が出たときは、(ごく一部?では)話題になったww
ネットワークプログラミングからはズレるけど、OpenSSLを使ってネットワークプログラミングをする人のほとんどは(洋書版でも)、最初に手にする一冊だと思う。
マスタリングTCP/IPでもSSL/TLSがあるみたいだけど、マスタリングTCP/IP SSL/TLS編は読んだことが無いから分からない。

あとは御供にWireSharkを入れてねっ。

極論言ってしまえば、どれもこれもソースもRFCもネット上にあるから、それを読めばOKなんだけど、「何でこうなの?」とかって理由や意味づけを知るには、解説してある本を字引として読む方が正しいアプローチなのかもね。
こういう本を読んでも、物として作らなきゃ意味なしぉな訳で、その時に手にする一冊としてね。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中