2012年6月17日のブックマーク (5件)

  • 【C#】 List - LinkedList 第2回 ジェネリック - @IT

    ジェネリックとは何か? 前回は、C# 2.0がC# 1.xとはまったく異質な言語であることを示したが、今回のテーマである「ジェネリック(Generic)」にはそのような大胆さはない。あくまで、C# 1.xプログラミングを行っているときに日常的に感じる不満を解消する新機能として理解することができる。 それではC# 1.xプログラミングの不満とは何だろうか。 具体的にはいろいろあると思うが、恐らく以下の点については、ほとんどのC# 1.xプログラマーが不満と感じているだろう。 コレクションの要素にアクセスする際、キャストが要求される 具体的にいえば、以下のようなことである。 using System; using System.Collections; class Program { static void Main(string[] args) { ArrayList list = new

    sy_temp81
    sy_temp81 2012/06/17
    ジェネリック
  • 第5回 匿名メソッドとデリゲート(1/4) - @IT

    おかずでもデザートでもなくご飯 この連載の構成を考えたとき、匿名メソッドはC# 1.0から見れば飛躍が大きいので、後に回した方がよいと考えた。しかし、実際にはこれまでの連載の中のサンプル・コードで、すでにしばしば匿名メソッドを使用している。 それが何を意味しているのか、事に例えてみよう。 典型的な事は、ご飯、おかず、デザートなどで構成されている。ご飯はいつも同じようなものが出てくるが、おかずは毎回変わることが多い。そして、デザートは事のメインではないが、特に目立つ花形である。 この中で、int型のような基的なデータ型はもちろんご飯に当たる。どのようなプログラムでも変わりなく使われ、しかも使用量がいつも多いからだ。 一方、ASP.NET用のクラスなどは、おかずに当たるだろう。それは作るプログラム次第ではまったく使われないこともあるが、逆に非常に「おいしく」活用できることもあるからだ。

  • 第13章 処理を委譲するデリゲート

    このソース・コードのポイントは、20行目に記述したsampleというデリゲート呼び出しによって、実際には8~10行目のmethodというメソッドが呼び出されているということである。つまり、sampleが代表者で、実際の処理をmethodメソッドに委譲しているということである。 では、具体的なコーディングについて説明しよう。まず、5行目のdelegateキーワードが目に付くと思う。delegateキーワードから書き始めた宣言は、デリゲートのデータ型を規定する。この後述べるように、デリゲートはさまざまなメソッドを呼び出すために使用できるが、あくまで同じ戻り値、同じ引数のメソッドに限られる。そこで、どのような戻り値、どのような引数のメソッドを対象とするかを、ここで明確にしておくわけである。ここでは、戻り値としてdelegateキーワードの次のintが指定されている。引数は括弧内に記述されたとおり

    第13章 処理を委譲するデリゲート
  • 連載:C# 3.0入門 第1回 ラムダ式 − @IT

    C# 3.0とは何か? C#も順調にバージョンアップを重ね、ついに「3.0」である。連載を開始するに当たり、前置きとしてこの連載で扱うC# 3.0とは何かを簡単に紹介しておこう。 C# 3.0は、動的かつタイプセーフなオブジェクト指向プログラミング言語である。「動的」とは、実行するまで内容が確定しない要素が多いことを意味し、「タイプセーフ」とは、あらゆるデータに「型」が存在し、コンパイル時、あるいは実行時にそれが厳格にチェックされることを意味する。そして「オブジェクト指向プログラミング言語」とは、データとプログラムの入れ物である「オブジェクト」を前提とした言語であることを示す。 しかし、これらの特徴はC# 2.0から継承されたものであって、必ずしもC# 3.0固有のものではない。C# 3.0ならではの特徴とは何だろう? 筆者の個人的な印象だが、C# 3.0は言語が持つ個々の機能について技術

  • C#ラムダ式 基礎文法最速マスター - @IT

    ■0. まえがき 稿では、小さいテーマではあるが、まだまだ慣れ親しんでいない開発者が少なくないと考えられる「ラムダ式(C#)」についての基礎文法を簡潔にまとめる。「ラムダ式、どう書くんだっけ?」という場合のリファレンスとして活用していただけるとうれしい。また、ラムダ式を敬遠しているという方は、まず稿が学び始める取っ掛かりになるかもしれない(もちろん稿の説明は充実しておらず、すべてを学べるわけではないので、じっくり学ぶには「連載:C# 3.0入門 第1回 ラムダ式」を参照してほしい)。 今年(2010年)に入ってインターネット上では、プログラミング言語の基文法を簡潔にまとめた「○○言語 基礎文法最速マスター」(以降、最速マスター・シリーズ)というブログ記事が多数投稿されている。参考までに、そのいくつかを示そう(そのほかについては、こちらを参照されたい)。 C#基礎文法最速マスター:n