はじめに
プログラミングをなにに活かしたいですか?
多くの方は仕事にするためにプログラミングを学んでいることでしょう。
しかし、プログラミング能力は簡単に他人に見せることができません。
スキルがあるのに他人に示せないのではもったいないですよね。
簡単にスキルを示す一番の方法は「資格」を取ることです。
この記事では、C#プログラマーの方のためにオススメのマイクロソフト資格を紹介していきます。
資格により難易度はさまざまですので、自分の実力にあった資格を取得してみましょう。
試験70-483 Programming in C#
マイクロソフトが実施するC#の公式資格です。
C#全般の基本的なプログラミング能力が試されます。
出題範囲は、大きくわけて次の4つの分野から均等に出題されます。
一つ目はプログラムフローです。
基本的なif/switch文などの制御文や例外処理、イベント、コールバック、マルチスレッド処理の知識が問われます。
特に、マルチスレッド処理はやや難しいので注意しておきましょう。
二つ目は、型(クラス)についてです。
クラスの作成方法や使い方、ライフサイクルの管理などクラスの基本的な知識が求められます。
オブジェクト指向についても理解しておく必要があるでしょう。
また、高度な内容としてリフレクションも範囲に入っているため要注意です。
三つ目は、デバッグとセキュリティです。
ディレクティブの指定やログの取得などデバッグの際に必要な知識が必要です。
また、入力に対するチェックやデータの暗号化など、基本的なセキュリティ対策も範囲となっています。
四つ目は、データアクセスです。
プログラミングではデータを処理することが多く、ファイル操作やデータベースアクセス、コレクション、シリアル化は必須の知識です。
特に、データをより簡潔に処理できるLINQについてよく理解しておきましょう。
試験70-486 Developing ASP.NET MVC Web Applications
C#のウェブアプリケーションフレームワークである「ASP.NET MVC」の資格試験です。
ウェブ開発には必須の知識でしょう。
こちらの試験は、大きくわけて5つの分野から出題されます。
一つ目は、アプリケーションアーキテクチャです。
ASP.NET MVCはその名の通りMVC(Model-View-Controller)アーキテクチャです。
このため、それぞれの役割を理解して適切にコードを分離しなければいけません。
二つ目は、ウェブページの設計です。
ASP.NET MVCでは、通常Razorビューエンジンを使ってウェブページ(UI)を作成します。
とはいえ、基本はHTMLとCSSによるデザインなので、それほど難しいものではありません。
三つ目は、ウェブページの開発です。
MVCアーキテクチャでは、コントローラー(クラス)にアクション(メソッド)を実装して、それをウェブページから呼び出す形となります。
アクションは特定のURLから呼び出されるため、URL設計も重要な要素です。
四つ目は、デバッグとトラブルシューティングです。
ウェブアプリケーションは、デスクトップアプリとはデバッグ方法が異なります。
MVCアーキテクチャの特徴を活かして、正しく単体テストを作成しましょう。
五つ目は、セキュリティです。
ウェブアプリケーションは攻撃にさらされることが多く、しっかりしたセキュリティ対策が必要です。
また、アプリケーションによっては認証を行い、特定のユーザーにのみアクセスを許可するといったことも必要になります。
試験70-497 Software Testing with Visual Studio
C#の統合開発環境Visual Studioによるテストに関する資格試験です。
アプリケーションの品質を保つためにはテストが欠かせません。
テスターでなくともテストの知識は役に立ちます。この試験は3つの分野から出題されます。
一つ目は、テスト計画の作成です。
Visual Studioの機能を使って、テストスイートを構成します。
ビルド別のテストなど基本的なテスト設定を覚えておきましょう。
二つ目は、テストケースの作成です。
テスト対象に応じて、適切なテストを作成する必要があります。
また、テストの前処理や後処理などの共通化も求められます。
三つ目は、テストの実行です。
作成したテストを実行し、バグがないか確かめ、レポートの分析を行います。
ここには、ブラウザやストアアプリでのテストも含まれています。
まとめ
いかがでしたか?
取得してみたい資格が見つかりましたか?
基本的に資格試験には受験料がかかりますので、お金をムダにしないためにもしっかり勉強してから挑みましょう。
たいていの資格は対策本がありますから、過去問題や模擬試験などで自信をつけておくとよいです。
あなたはどの資格を取得してみたいですか?