SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

C#たんと学ぶ/わりと硬派なソフトウェア開発講座

C#たんと学ぶ/わりと硬派なソフトウェア開発講座
第1.5回「頼れ!Visual Studio」

C#たんと学ぶ わりと硬派なソフトウェア開発講座(2)


プロジェクトの作成

 Visual Studio(あるいは無料版のVisual C#)を立ち上げて最初にすることは、「プロジェクト」を作る/開くことです。何か難しそうに聞こえますが、Visual Studioはプロジェクトのテンプレートを用意してくれているので、数クリックで作れます。例として、Visual C#で新規プロジェクトを作るところまでをお見せしましょう。

 結果、以下のような画面が得られると思います。

 ここで、「ソリューション」と「プロジェクト」という2つの言葉を覚えていただきたいです。

  • ソリューション:プログラムを作るというのは、何か問題があって、それを解決したいから作るわけです。問題解決のためのプログラム(1つとは限らない)一式のことをソリューション(solution: 解法、解決策)と呼びます。
  • プロジェクト:ソリューションを構成するプログラム(もしくはライブラリ)1つ1つを作るのがプロジェクトです。複数のC#ソースコードや、画像、アイコンなどから構成されます。

 もちろん、1つのプログラムだけでソリューションになる(問題を解決できる)場合もあります。今回とりあえず作ろうとしているプログラムは、1つだけで「Xboxのゲーム一覧を取得する」という目的を果たしています。

 ここで、例えば、「取得してきたゲーム一覧の表示方法を変えたい」「文字での表示だけでなく、ウィンドウ中のリストボックスに表示するなど、GUI化もしたい」という要望がでてくると、ソリューションに複数のプログラムでできます。

ウェブアクセス

C++たんにっこり
C++たん
さて、ようやく、プログラム作成の解説に入れるのかしら。何から説明していくの?
C#たん真顔
C#たん
Bingれ!
ググるのでも可。
vbたん困惑
VBたん
うわっ、いきなりそれ?
C#たん真顔
今回のテーマとしては、実務でプログラムを作っている人が、普段どういう流れで開発しているかをある程度お見せしたいんです。
たいてい、最初にやることはウェブ検索だったりしますから、それを忠実に。
C++たん真顔
なるほど。ならBingれ!としか言いようないわねぇ。

 ということで、まずウェブ検索していただくわけですが、今回の場合は、まず、ウェブページのHTMLソースコードを取得する方法から調べることになります。キーワードは、そうですねぇ、この場合、「HTML 取得 C#」とかでしょうか。

 実際に検索してみると、「WebClientってものを使えばいいらしい」という話にたどり着くはずです。じゃあ、ちょこっとプログラムを書いてみましょうか。

 xbox.comのゲーム一覧ページのソースコードを表示するだけのプログラムになっています。いくつか補足説明を入れていきましょう。

スマートタグ(利用可能な選択肢の提示)

 最初に、検索で得られた情報を元にWebClientと入力しているわけですが、何かエラーが出ています。WebClientクラスというのは、フルネームでいうと、System.Net.WebClientという名前になっていて、System.Netの部分(名前空間と呼びます)を解決してやる必要があります。

 動画中では、Visual Studioが名前空間の解決を補助してくれています。WebClientと入力した部分にマウスカーソルを合わせてみると、スマートタグが表示され、「このクラスはSystem.Net名前空間のものですか?」と聞いてくれるわけです。

 また、この操作はキーボードだけでも可能です。スマートタグが表示可能な状況下で、Ctrlキーと「.」(ドット)を入力してみてください。スマートタグが開かれます。

IntelliSense(コード補完)

 おや? 「client.」まで打ったらVisual Studioの様子が!

 これは、WebClientクラスがどういうメソッドを持っているのか、一覧表示してくれます。さらに続けて、( を入力することで、引数に関するヘルプも見れます。

 これは、メソッドや引数の一覧に限らず、文脈に応じて様々な補完をしてくれる機能で、IntelliSense(インテリセンス)と呼ばれています。

 スクリーンショット中の左側に出ているように、各操作の簡易なヘルプも表示されます。この機能があれば、参考書やウェブサイトを見て調べながらコードを書く必要は全くなくなります。新しいクラスを使うときは、まずこれを使ってメソッド一覧を眺めてみるといいでしょう。

 IntelliSenseウィンドウは状況に応じて自動表示されますが、一度閉じてしまった場合、Ctrlキーとスペースキーを押せば再度表示されます。

次のページ
文字コード

この記事は参考になりましたか?

C#たんと学ぶ/わりと硬派なソフトウェア開発講座連載記事一覧

もっと読む

この記事の著者

C#たん ソフトウェア開発講座 制作委員会(シーシャープタン)

ソフトウェアに求められる要求の高度化とともに大きくなる開発者への負担を、開発ツールやフレームワーク、時には萌え力を頼りに軽減できないか考えるプロジェクト。C#たんは単なるマスコットかと思いきや、割と毒舌。自分のことは棚に上げて、「萌えればいいってもんじゃないですよ?」が信条。twitter: @cs...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/5696 2011/06/30 11:19

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー