![]() |
特集:フレッシュマン企画2008新人プログラマーのためのInsider.NETの歩き方 デジタルアドバンテージ 一色 政彦2008/05/13 |
開発者として一人前になるまでには、さまざまな開発知識を習得しなければならない。本稿ではその最初の一歩となる指針を提供したい。
インターネット上には開発(プログラミング)に関する情報があふれている(参考:「【2006年度版】.NET開発者のためのオンライン・リソース・ガイド」)。だからといって、それらの情報を手当たり次第に学習しようとしても、同じ情報をさまざまなサイトで繰り返し読む羽目になったりして非常に効率が悪い。まずは、じっくり腰を据えて、1つの情報源から着実に学ぶことをお勧めしたい。
そして読者諸氏が「.NET」(詳細後述)のプログラマーを目指す新人であれば、ぜひ@IT/Insider.NETをその情報源として活用していただきたい。@IT/Insider.NETは、「.NET」という開発技術が世に紹介された2000年から、.NET開発者の支援を目的として設立されたWebメディアであり、これ以後.NETの発展と歩調を合わせながら、約7年以上にわたりさまざまな技術情報を公開してきた。すべてではないが、初心者を意識した記事は数多い。.NETプログラマーを目指す読者に必要なひととおりの情報は網羅されていると自負している。
しかし単純に記事数が多いこと、また1冊の入門書とは異なり、必ずしも記事の公開順序が初心者の学習ステップにのっとっていないなどの理由から、初心者にとっては、まず何から読み始めればよいのか、どのような順序で読み進むのが理解しやすいのかが分かりにくいのも事実である。
そこで本稿では、.NETの初学者が最初に学ぶべき段階を次の5つに分け、各段階ごとにお勧めの既出記事を紹介することにした。まずは、以下で紹介する記事を1つずつ読破していただきたい。
- 第1段階:Microsoft .NETについて学ぶ
- 第2段階:開発環境の使い方を覚える
- 第3段階:C#/Visual Basic言語を覚える
- 第4段階:Windows/Webアプリケーション開発を学ぶ
- 第5段階:データベース開発を学ぶ
もちろん「これだけ読めばすぐに一人前の開発者になれる」といっているわけではない。やはり、開発者としての十分な知識を得るには、それぞれの会社で行われる研修と、実際の開発作業での経験の積み重ねが、何よりも重要である。しかし@IT/Insider.NETの記事で開発の基本を学ぶことは、そうした実戦知識を吸収するための手助けになるはずだ。
それでは各段階についてそれぞれお勧めの記事をピックアップしていくことにしよう。なお、この5段階の記事を読む前に、ウォームアップとして「初めてでも安心! 1日で作れるWebアプリ講座」という記事を読んで、プログラミングの楽しさを知ることから始めてもよいだろう。
■第1段階:Microsoft .NETについて学ぶ
何よりもまずは、開発技術の中心となる「.NET」について理解しておく必要がある。この技術はマイクロソフトから提供されているもので、正式には「Microsoft .NET」と呼ばれる。しかしこの「Microsoft .NET」は、それが登場した2002年ごろと6年が経過した現在では、その意味合いが変化してきているので注意が必要だ。
初期のMicrosoft .NETには、いまよりももっと思想的な意味合い、要するにマイクロソフトのITに対するビジョンが色濃く反映されていた(そのビジョンについては本稿では割愛する。詳しくは「初めてのMicrosoft .NET ―.NET初心者のためのMicrosoft .NET入門―」を参考にしてほしい)。それを実現するための基盤となる物理的な開発技術が「.NET Framework」という開発プラットフォーム(=基本フレームワーク)である。
当時のビジョンと現実のソフトウェアの世界が数年を経てかい離していくにつれて、「.NET」という単語は徐々にその思想的な意味合いを失っていった。現在では、「.NET」というと、通常は、物理的な.NET Framework(開発プラットフォーム)を指すことがほとんどである。
従って現在、.NETを理解することは、.NET Frameworkについて理解することに等しい。そのために役立つのが次の記事である。
![]() |
| 特集:.NET Framework入門(全9ページ) |
実はこの記事は2000年12月に書かれた記事であり、かなり古い。そのため、当然、先ほど述べた思想的な意味合いが1ページ目と2ページ目には含まれているのだが、それを差し引いても「.NET Frameworkがどんなものか」を知るうえでは必要かつ十分な記事である(もちろん.NETの最新情報は含まれていないが、それはおいおい学んでいけばよいだろう)。
■第2段階:開発環境の使い方を覚える
次に、.NETの開発を学ぶためには、その開発環境の使い方について学ばなければならない。開発環境がなければ、開発を始められないからだ。
.NETでは、「Visual Studio」という開発環境を使うのが一般的だ。そのVisual Studioの最も入門的な使い方を説明しているのが次の連載記事である。なお、(執筆段階で)最新のVisual Studioは「Visual Studio 2008」になるが、この記事では「Visual Studio 2005」を使っている。しかしVisual Studio 2008でも基本的な操作方法は変わっていないので参考になるはずだ。
![]() |
| 連載:簡単!Visual Studio 2005入門(全25ページ) |
開発環境の使い方を覚えたら、実際にその開発環境を使いながら、プログラミング言語を覚える。そのプログラミング学習の際に頻繁に利用することになるのが、コンソール・アプリケーションである。そのように利用することになる理由は、コンソール・アプリケーションが、GUIを持たないプログラムであるためにプログラミングのコード(=記述)が最もシンプルになるからである。このコンソール・アプリケーションの最も基本的な開発方法については、先ほど示した連載にある「プロジェクトを新規に作成する」の項が参考になるだろう。
■第3段階:C#/Visual Basic言語を覚える
ここからがプログラミング習得の本番となる。この段階ではプログラミング言語を習得するが、これはプログラミングを学ぶうえで最も骨の折れる作業の1つである。ここは気合いを入れて取り組んでほしい。
最初にプログラミング言語を選ぶ。.NET開発であれば、一般的にC#かVisual Basic(以降、VB)のどちらかであろう。その決定は、会社でどちらの言語をメインに使っているかによって変わるので一概にはいえない。どちらでも選択できるという状況であればC#をお勧めする。理由は、VBは.NET開発において最も人気のある言語だが、C#は.NET以外のC++やJavaなどにも言語構文が似ているので、プログラミング技術の汎用性が高いからだ。
どのプログラミング言語を習得するかに合わせて、次のいずれかの記事を読んで、実際にコンソール・アプリケーションでプログラムを動かしながら、プログラミング言語を習得していってほしい。
![]() |
| 連載:改訂版 C#入門(全76ページ) |
![]() |
| 連載:改訂版 VB.NETプログラミング(全73ページ) |
■第4段階:Web/Windowsアプリケーション開発を学ぶ
プログラミング言語を習得して、ようやくアプリケーションが作れるようになる。
現在の企業では、「Webアプリケーション」か「Windowsアプリケーション」のどちらかを開発することが一般的である。この選択も、所属する企業(その企業が得意とするアプリケーション種別)や、プロジェクトの目的などによって変わってくる。ちなみに@IT/Insider.NET(やVB研)のこれまでのアンケート調査を見る限りでは、それぞれを中心的に開発しているプログラマーは、どちらもほぼ同数程度存在するようである。どちらでも選択できるという状況であれば、まずはWebアプリケーションを習得することをお勧めする。理由は、Webアプリケーションが属するインターネットの世界はこれからもますます発展する可能性が高いからだ。
どちらの種類のアプリケーションを開発するかに合わせて、次のいずれかの記事を読んで、実際にプログラムを作成しながら、アプリケーションの開発方法を学んでいってほしい。
![]() |
| 連載:プログラミングASP.NET(全61ページ) |
![]() |
| 連載:実例で学ぶWindowsプログラミング(全15ページ) |
なお、WindowsアプリケーションはWebアプリケーションよりも古くからある技術であるため、入門的な開発方法の記事のニーズがそれほどないと考えていた。そのため、@IT/Insider.NETでは、Windowsアプリケーション開発の入門記事はほとんど提供してこなかった。また、特にこれまではWebアプリケーション開発の方に勢いがあったというのも提供してこなかった理由の1つである。上記の「実例で学ぶWindowsプログラミング」も、入門というよりも、やや業務処理寄りの内容になっている。また、大変申し訳ないが、このWindowsプログラミングの連載は途中で中断されている。
■第5段階:データベース開発を学ぶ
以上までの学習で、取りあえずアプリケーションが開発できるようになったはずである。しかし、実際のアプリケーションでは、データベース(=データを蓄積して検索可能にしたシステム)を扱うことがほとんどだ。そこで、.NET開発者の学習過程における最終段階は、このデータベースを扱う開発の方法の習得である。
これには次の記事が役立つ。この記事もVisual Studio 2005が使用されているが、Visual Studio 2008における開発でも十分に参考になるだろう。
![]() |
| 連載:Visual Studio 2005でいってみようDBプログラミング(全44ページ) |
■
以上の5段階が.NET開発の入門的な基礎を習得するうえで最初に読むべき記事群である。もちろん完ぺきにこのとおりに読み進める必要はないが、自分の状況に合わせて上手に活用していただけるとうれしい。本稿の内容がプログラミングを習得するうえでの何らかのヒントになれれば幸いだ。![]()
ホワイトペーパー(TechTargetジャパン)
- .NET TIPS - .NET開発のテクニックとヒント集 - (2010/3/18)
− GridViewコントロールを階層表示させるには?
− Windowsフォームのボタンに画像を表示するには?
− C#でnullチェックを簡潔に行うには? - Chapter15:LINQとクエリ式 (2010/3/17)
C# 3.0の目玉機能であるLINQについて、さまざまな記述例を交えながら徹底解説。書籍『[完全版]究極のC#プログラミング』より転載 - VBラムダ式 基礎文法最速マスター (2010/3/16)
今度はVB。ラムダ式の基礎文法を、短い説明と簡単なコードでまとめる。「ラムダ式、どう書くんだっけ?」という場合の簡易リファレンスとして活用できる - ASP.NET MVC 2がリリース (2010/3/15)
ASP.NET MVC 2の正式版(VS 2008のASP.NET 3.5向け、VS 2010には標準で含まれる予定)のリリースについてのお知らせ
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
| 「いつかは壊れるサーバ」そんな故障に 迅速で安価に手軽に対応する方法とは? New! |
| 「特権ユーザー」の事件を防げ! 万能権限を持つユーザーの管理方法とは? New! |
| 仮想環境の構築とデータ保護の特効薬?! 実績と信頼性の高いパッケージで安心運用 |
| 仮想環境のバックアップもこれまでどおり 「まるごと取ってまるごと戻す」簡単運用 |
| おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |
| その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |
| 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |
| 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | TomcatやJBossなどAPサーバ環境に関する 情報を集約! “業務”用APサーバ大百科 New! |
| ◆ | 一気に解説! 最新のクラスタストレージ 「RAIDを超えたストレージ基準」……など New! |
| ◆ | クラウド的ユーザー体験の変化は脅威か? 仮想化技術を使いこなす運用管理術を紹介 New! |

| ◆ | 上司や部下、部署内メンバーとの情報共有 を“ガラッ”と変えるコラボツールとは? New! |
| ◆ | おばかアプリ選手権、第4弾開催中!! ムダにカッコよくてくだらない作品求ム! |
| ◆ | 社内ファイルサーバを“クラウド”に統合 VPN直結「クラウド型ストレージ」を紹介 |

| ◆ | Twitterのアカウントはなぜ突破された? メールによる新手の攻撃手法とその対策 |
| ◆ | もう仮想化のお試しフェイズは終わりだ! Hyper-V 2.0が基幹システムも仮想化 |
| ◆ | 美人!? まあまあ? 気になる いやし系!! PV急増で「美人時計」がとった手段とは? |

| ◆ | クライアント企業から求められる人材 ⇒IT技術と経営戦略を併せ持つ「戦略家」 |
| ◆ | .NET編集長が実践する「技術情報検索術」 サンプル・コードを簡単に探す“技”は? |
| ◆ | 業務効率と情報セキュリティ対策を両立! 手間なく確実に機密情報を守る方法とは? |

| ◆ | 進化を続ける富士通ストレージETERNUS DX 製品開発者の自信を裏付けるものとは何か |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |

| ◆ | 【CTC事例】約30の基幹システムを統合! 膨大なバッジジョブを制御した方法は? |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |
| ◆ | その数、なんと400台以上! グループ内 サーバの「統合管理」によるメリットは? |














