人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

『俺流プロトコル実装入門 ~Private Implementation Protocol~』という本を読もうと思っています。この本では、Javaでネットワークプログラミングが実装されているのですが、そのままJavaで書き写すだけでは物足りないので、違うプログラミング言語で書き換えようかと思うのですが、こういったプログラムを手軽に書く(Java程度に)のに適した言語はどれでしょうか?(自分の経験はJavaとCです)
できるだけ環境構築が楽なのがいいのですが…

●質問者: rapuntuleru
●カテゴリ:コンピュータ インターネット
✍キーワード:Java ネットワーク プログラミング プログラミング言語 プログラム
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● a-kuma3
●25ポイント

Ruby かなー。

Perl でも、同じだと思うけど、僕が嫌いなので >Perl


2 ● km1981
●25ポイント

その本はなんちゃってSIPを作ってみる内容なので

Windowsで書くならVisualC++.NETが適当だと思います

LinuxでC++で書いたほうが勉強になるかもしれません

◎質問者からの返答

C++でも、Linuxで書くのとWindowsで書くのとで、違ってくるのでしょうか?


3 ● km1981
●25ポイント

>C++でも、Linuxで書くのとWindowsで書くのとで、違ってくるのでしょうか?

Windowsには.NETフレームワークが用意されているので

かなり違います

Linuxには同じようなフレームワークがないので(僕が知らないだけかもしれない)

より低次元のレベルからプロトコルを書くことになるので勉強になります


4 ● a-kuma3
●25ポイント

C++でも、Linuxで書くのとWindowsで書くのとで、違ってくるのでしょうか?

Linux と Windows で書くのが違うのではなくて、Visual C++ (with .NET) でやるのが

(Microsoft の言い方で) ネイティブな c++ と違います。


ざっくり言うと、.NET で C++ をやるときには、WIN32 な API が使えるというのはもちろんですが、

new で確保した領域がガーベッジコレクション (以降 GC) の対象となるのが大きく違います。

GC の対象となる、ということは、GC によってメモリ配置が変わる可能性があるので、

ポインタの意味も違ってきます。


Windows でも、g++ を使えば、ほとんど一緒のプログラムになります。

「ほとんど一緒」というのは、OS レベルの API が違うので、

ファイルハンドルやシグナルなんかについては、非互換があります。

後、Windows には fork() が無いですし。


後、STL を使うとしたら、どの実装を使うか、によっても違ってきます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ