Mac OS Xネットワークプログラミング
Mac OS Xでのネットワークプログラミングを勉強しながら、少しずつ公開していくコーナー。
コードを書く前の準備
まず、gccを使える状態にしないといけません。 Mac OS Xを普通にインストールしただけでは開発環境は入りません。 Xcodeを含むMac OS X開発環境はOS DVDなどに入っています。
次に、エディタが必要になります。 標準開発環境であるXcodeを利用して書くことができます。 一方で、UNIXやLinuxなどで一般的なエディタであるmule、emacs、xemacsなどを利用することも可能です。 個人的にはviが好きです。
Cocoa
ファイル単体をそのままコピペしてgccでコンパイルできるCUIとして書いているので多少特殊な書き方をしている気がします。 GUIを使う場合はNSRunLoopではなく、NSApplicationMainを使ったりするのでご注意下さい。
各サンプルコードをコンパイルするには、各コードを「.m」がつくファイルとして保存し、「gcc -framework Cocoa filename.m」というコマンドを入力してください。 「filename.m」の部分は、保存したファイル名です。
ローカルについているIPアドレスを全て表示 (NSHost)
Core Foundation
CF系APIを使った方法です。
各サンプルコードをコンパイルするには、各コードを「.m」がつくファイルとして保存し、「gcc -framework Cocoa filename.m」というコマンドを入力してください。 「filename.m」の部分は、保存したファイル名です。
HTTPクライアント:HTTP Status Lineを表示(Core Foundation)
HTTPクライアント:HTTP Status Codeを表示(Core Foundation)
BSDソケットを使う方法
C言語でBSDソケット(POSIXソケット)を使う方法です。 C言語APIを直接使うよりCocoaを使う方が一般的であるため、setsockoptなどの生APIに近い処理が必要なときや、速度を求めたりBSDやLinux用のコードを移植するときなどに利用する事になると思われます。
関連情報
- インターネット入門(基礎技術)
- インターネットの仕組みを初心者向けに説明しています。
- Linuxネットワークプログラミング
- Linuxでネットワークプログラミングを行いたい方はこちらをご覧ください。
- Windowsネットワークプログラミング
- WinSockを使ってWindows上で通信プログラムを書きたい方はこちらをご覧ください。
- Perlネットワークプログラミング
- Perlによるネットワークプログラミング解説です。
- Rubyネットワークプログラミング
- Rubyによるネットワークプログラミング解説です。