タグ

ブログ記事に関するichirokunigoのブックマーク (2)

  • ruby の inject をわかりやすく説明してみる - Λάδι Βιώσας

    ruby の inject って慣れないと少し理解しづらいよなーと思ったので、極力わかりやすい説明をしてみるテスト。 わかりやすいかもしれない説明 さて、1 から 10 までの合計を求めるこんな↓コードがあった場合 sum = 0 (1..10).each {|i| sum = sum + i } p sum # => 55 inject を使ってこのよう↓に書けます。 p (1..10).inject(0) {|sum, i| sum + i } each と inject でどのように書き変わってるかを図で示すとこんな↓感じ。 injectの引数 0 は、ブロックローカルな sum 変数の初期値になってます。で、ブロックの実行結果の値が sum に代入されて、2回目以降のループを実行します。ループしている間の、各変数とブロックの中身はこんな↓感じ。 sum i ブロックの中身(sum

    ruby の inject をわかりやすく説明してみる - Λάδι Βιώσας
  • C# と .NET Framework で作る簡単プロキシサーバ - さよならストレス

    前回よりも安定して動作するようになりました。 このプログラムは .NET Framework で用意されている HttpListener クラスと HttpWebRequest を使ってプロキシサーバ (Proxy Server) を実現します。 System.Net.HttpListener の仕様上、プラットフォームに制限があります。 このクラスは、Windows XP SP2 または Windows Server 2003 のオペレーティング システムを実行しているコンピュータでしか使用できません。それ以前のオペレーティング システムを実行しているコンピュータで HttpListener オブジェクトを作成しようとすると、コンストラクタから PlatformNotSupportedException 例外がスローされます。 非常にテキトーな作りになっていますので、実用的に使うことはで

    C# と .NET Framework で作る簡単プロキシサーバ - さよならストレス
  • 1