Trainocate Japan, Ltd.

Win Win Windows
ホーム > Win Win Windows > 2012年

Win Win Windowsコラム
第27回 これから必要とされるスキルとは
執筆:福田真紀子

  2012年4月11日(日本時間の4月12日)に、マイクロソフト認定資格プログラムの新資格体系が発表されました。その後、新製品の発売に伴って徐々に新しい試験や資格がリリースされており、この年末で主要な資格が出揃います。そこで、今回は新しい資格体系の特徴について紹介します。


 まずはMCPの歴史を少し振り返りましょう。
思い返せば、私が最初に取得したMCPは「70-067: Implementing and Supporting NT Server 4.0」でした。Windows NTが多くの企業に広まった時代です。かつてこの資格を取った方は非常に多いのではないでしょうか。また、最初のMCP資格体系では、上級の資格として、MCSE (Microsoft Certified System Engineer)や、MCSD (Microsoft Certified Solution Developer)という資格があり、MCSEやMCSDを持っていればMicrosoft製品を使ったシステムの設計から構築までできる事を証明できました。


 今から考えると、Windows NT 4.0やWindows 2000が出たあたりの時期はMCP資格の認知度も高く、特にMCSEの取得を目指している方が非常に多かったように思います。

MCPv1

 しかし、製品や技術が増えてくるに従って、この資格体系では自分の得意分野を証明するのが難しいという問題が出てきました。MCSEやMCSDになるためには必須科目と選択科目があり、選択科目は自由に選ぶことができました。そのため、例えば、セキュリティの設計ができる人、Exchange Serverの構築までできる人、SharePoint Serverの構築ができる人、いずれもMCSEという同じ資格になってしまうからです。


 その後、2005年にMCP資格体系が大きく変わります。今度は、テクノロジーシリーズ、プロフェッショナルシリーズ、アーキテクトシリーズの3レベルとなり、資格で自分の得意な分野を示すことができるようになりました。例えば、上級資格はMCITP (Microsoft Certified IT Professional)、MCPD (Microsoft Certified Professional Developer)の2種類ですが、実際には以下のように製品や技術ごとに細かく資格が分かれています(実際にはもっと多くの種類があります)。

  • MCITP: エンタープライズ アドミニストレーター
  • MCITP: エンタープライズ メッセージング アドミニストレーター 2010
  • MCITP: データベース アドミニストレーター
  • MCPD: Microsoft Visual Studio 2010
  • MCPD: SharePoint デベロッパー 2010

MCPv2

 複数資格を持っている人は、ロゴの右側を使って得意分野を指定できるため、より専門性をアピールすることができるようになりました。しかし、製品のバージョンアップやテクノロジーの種類に合わせて資格の種類も増え、資格体系が複雑になってしまっています。また、各資格取得に必要な試験科目の数が異なるため、同じMCITPやMCPDであっても難易度に差があるのも事実です。


 さて、ここで現在のビジネスやITの状況を考えてみましょう。少し前から「クラウド」というキーワードが一般的になり、企業のITインフラでもクラウドを利用するケースが増えてきました。クラウドビジネスでは、個別のテクノロジーだけでなく、複数のテクノロジーを組み合わせてソリューションとしてサービスを提供する必要が出てきています。それに合わせて資格体系も刷新されました。


 2012年4月に発表された新しいMCP資格体系は、各技術を活用したソリューションを提供できる総合的なスキルを評価できるようになっています。まず、新しい資格体系は、Associate (アソシエイト)、Expert (エキスパート)、Master (マスター)の3レベルに分類されます。アソシエイトはマイクロソフトの主要製品、バージョンごとに試験が用意され、その製品や技術のコアスキルがあることを証明します。エキスパートのレベルには、MCSE (Microsoft Certified Solutions Expert)およびMCSD (Microsoft Certified Solutions Developer)の2種類が用意され、広く深く実務に応用できるスキルを携えたIT技術者と開発者である事を証明します。※略称としては最初の資格体系のMCSEやMCSDと同じですが、中身は異なりますので注意してください。なお、最上位となるマスターレベルはまだスタートしていません。

MCPv3

 MCSEやMCSDはソリューションに合わせて複数の資格が用意されます。例えば、MCSE: Private Cloudという資格を取得するにはWindows Server 2008あるいは2012のコアスキルに追加して、System Centerの構成や管理スキルが必要とされます。このように基盤となるWindows Serverの管理、サーバー仮想化、System Center製品群を使ったプライベートクラウドの構成や監視のスキルを総合して、「プライベートクラウド」というソリューションを提供するスキルを証明できるようになっています。

MCSEクラウド

 また、新資格体系はテクノロジーを越えたソリューションレベルでの試験となっているため、エキスパート資格は更新が必要になります。具体的には、MCSEは3年毎、MCSDは2年毎に更新のための試験を受ける必要があります。これにより、最新のテクノロジーやソリューションに関する知識があることを証明できるようになります。


 新資格体系に対応した試験は徐々に開始しており、2012年12月末にはWindows Server 2012の日本語試験も始まります。これから新しい製品や難易度の高い試験科目にチャレンジする方はぜひ「セカンド ショット キャンペーン」をご利用ください。「セカンドショットキャンペーンMCP電子バウチャーチケット」は安心のセカンドショット機能付きとなっており、1回目の受験が不合格だった場合でも追加料金なしで再チャレンジできます。


 この機会にぜひ受験してみてはいかがでしょう。

[資格取得][2012年12月 5日配信]

Win Win Windowsコラム
第26回: サーバー管理者とネットワーク管理者
執筆:横山哲也

サーバー管理者とネットワーク管理者は仲が悪いという説があります。建築士の友人によると、大工と左官も仲が悪いそうです。実際には仲が悪いわけではなく、両方の立場から議論をしているのでしょう。「仲が悪い」と言った方が面白いので、誰かが大げさに表現したのかもしれません。


「仲が悪い」は冗談にしても、多くの企業でサーバーとネットワークの担当者が分かれていて、あまり交流がないという話はときどき聞きます。同じ「システム基盤(インフラストラクチャ)」とひとくくりにされるのに、実体は2つの組織になっているんだそうです。


Windows 2000 ServerとともにActive Directoryが導入された当時(2000年頃)、お客様から真顔でこんな相談を受けました。


「Active Directoryを導入するにはWindowsのDNSが必須なんですよね?」
「必須じゃありません。BINDでの運用もマイクロソフトは正式にサポートしています。ただ、WindowsのDNSの方が便利ですし、セキュリティ面でも安心ですね」
「実はネットワーク管理者がActive Directoryの導入に反対するんです」
「なぜですか?」
「社内でWindows版のDNSを稼動させたくないそうです」
「何か理由があるのですか? マイクロソフトが嫌いだとか」
「ええ、そうなんです」


冗談で言ったのに、同意されてこっちがびっくりしました。


確かにWindows NT 4.0発売当時のDNSはいくつかの問題を抱えていたことは事実です。でも、それからサービスパックが6回出て、さらにWindowsのバージョンも上がり、マイクロソフトのDNSもかなり安定して動いていました。それでも、一度ついたレッテルは消えないのですね。


他のお客様にも話を伺いました。さすがに「嫌いだから」というのはあまりありませんでしたが、「サーバー管理者とネットワーク管理者が分かれている」「ネットワーク管理者はUNIXやLinuxが好き」ということは分かりました。TCP/IPの研究が主にUNIX上で行なわれたことも関係するのかもしれません。


「マイクロソフトが嫌い」というネットワーク管理者に、どう対応すれば良いか。私の答えはこうです。


まず、ネットワークの勉強をしてください。そしてネットワーク管理者の仕事を理解してください。

その上で、Windowsの何が問題視されているのかを調べてください。相手もエンジニアですから、論理的に話せば理解できるはずです。


それから10年以上たち、IT業界に大きな変化が起きています。それが「クラウド」と「仮想化」です。


Amazon EC2に代表されるIaaS(Infrastructure as a Service)は、サーバーインフラとネットワークインフラを統合してしまいました。マイクロソフトのWindows Azureではアプリケーション開発者が、サーバーインフラを設計し、ネットワークの設定を行ないます。他のクラウドサービスも似たようなものです。


VMwareやHyper-Vに代表されるサーバー仮想化システムには、「仮想スイッチ」と呼ばれるL2スイッチ機能が内蔵され、タグVLANを構成できます。仮想サーバーの構築はサーバー管理者の仕事ですが、仮想スイッチの管理がついてくるためネットワーク管理の一部を担当せざるを得ない状況です。また、Cisco Nexus 1000Vのように、VMwareとHyper-Vの仮想スイッチを管理できるシステムも登場しています。サーバーとネットワークの統合はもう始まっているのです。これから、サーバー管理者とネットワーク管理者の仕事はどんどん重なってくることでしょう。


グローバルナレッジでは、サーバー管理とネットワーク管理の両方の体験できる「サーバー・システム オーバービュー」という教育コースを提供しています。


このコースでは、DHCPやDNSといったネットワークシステム、Windowsネットワーク、ファイル共有、証明書、VPNとRADIUS、メールサーバー、Webサーバー、プロキシサーバー、データベースサーバー、PHPによるWebアプリケーション、仮想化、フェールオーバークラスターと負荷分散、SNMPやsyslogによるサーバー監視まで、幅広く扱います。OSはWindowsとLinux(演習ではCentOSを使います)の両方を扱います。DNSは社内でよく使われるWindows版DNSと、社外向けによく使われるBINDの両方の演習を行ない、WebアプリケーションはApache + MySQL + PHP、いわゆるLAMP (Linux+Apache+MySQL+PHP)システムの構築を体験します。これだけ幅広いシステムを扱う講習会は、他社でもあまりないでしょう。ITシステムの全体を広く知りたい方におすすめします。


コース期間は3日間ですので、残念ながら、どの項目もあまり深いところまで踏み込んだ解説はできていません。演習も、手順通りにこなすものが多いのですが、サーバーとネットワーク管理の全体像をつかむには十分でしょう。むしろ、あまり深いところまで踏み込むと、全体が分かりにくくなってしまいます。


「サーバー・システム オーバービュー」は、おかげさまで非常に高い評価をいただいており、月に1回程度開催しています。サーバーとネットワークの全体像を体験したい方は、ぜひ受講をご検討ください。

[クラウド仮想化運用管理][2012年10月 5日配信]

Win Win Windowsコラム
第25回 トラブルシューティングの極意
執筆:横山哲也

Windows Server 2012が完成し、ボリュームライセンスとしての提供が始まっていますが、多くの方はWindows Server 2008 R2をお使いではないかと思います。お待たせしました「Windows Server 2008 R2トラブルシューティング(基礎編)」コースが開催されます。


これを記念して、今回は「トラブルシューティングの極意」を紹介しましょう。かなりの誇大広告ですが、参考になれば幸いです。


知識の分類方法にはいくつもの流儀がありますが、私が好きなのは「浅い知識」と「深い知識」です。


浅い知識とは、「理屈はわからないが即座に使える知識」です。「夕焼けの翌日は晴れる」「月食の日は満月」「猫が顔を洗うと雨が降る」など、経験的なものが多いようですが、ウソも混じっているので注意が必要です。


偏西風の影響により、日本の天気は西から東に変化します。夕焼けは西の空が晴れていることを意味するので、翌日は晴れの確率が上がります。


月食は、太陽光が地球にさえぎられて起きるものです。つまり、地球の背後に太陽が来て、正面に月が来るわけですから、必ず満月になります。


一方、猫が顔を洗うのは湿気を嫌うからなので、雨の確率が高いと説明されています。でも猫が顔を洗うのは湿気だけが原因ではありませんから、こちらはかなり不正確です。大体、猫って暇さえあれば身体をなめていますかから、あまりあてになりません(まあ、猫はたいてい暇なんですが)。


深い知識は、「理論的に導かれる論理的な推論の結果」です。途中経過を省いて暗記してしまうと「浅い知識」になります。たとえば、彗星の軌道予測や、航空機の設計などは深い知識が必要です。


浅い知識と深い知識はどちらも利点と欠点があります。浅い知識は「こうすればこうなる」「こんな時はこうする」という単純な結びつきを持つため、考える時間が必要ありませんが、根本的に間違っている可能性もあります。一方、深い知識は、理論的な裏付けがあるので正確ですが、複雑な計算をしなければならないなど、結果を得るのに時間がかかります。


さて、トラブルシューティングはどのような知識が必要でしょう。多くの方は、浅い知識をたくさん学びたいと思っていらっしゃるようです。でも、最初から浅い知識だけを習得するのはあまりお勧めできません。


理論的な裏付けがあればいいのですが、特にWindowsには怪しい経験則もたくさんあります。


例えば、Active Directoryで「よくわからないエラーが出たらDNSを疑え」は、たいていの場合真実です。これはActive Directoryは、動作基盤としてDNSを使っているため、DNSがエラーを起こすと動作基盤を失い、適切なエラーの判断ができなくなるためです。しかし「問題があったら再起動しろ」はお勧めしません。多くのトラブルは再起動で解決しますが、その原因はさまざまであり、再起動しても根本的な原因が解決するわけではないからです。もちろん、たまにしか起きないエラーの調査に何日もかけるより再起動した方が早いのは理解できます。現場の対応として再起動が最善であることは多いでしょう。でも、再起動を前提にするのはちょっと違うと思うのです。


Windows Serverに関する深い知識を得るための一番の方法は、「Windows Server 2008システム管理基礎(前編)」「Windows Server 2008システム管理基礎(後編)」などの基礎コースを受講することです。これで「深い知識」が得られます。しかし、実際のトラブルに直面したときに「深い知識」だけでは時間が足りません。経験がないと、知識と現象が結びつかないからです。


Windows Server 2008 R2トラブルシューティング(基礎編)」では、理論に裏付けされた「浅い知識」の一部を紹介することで、深い知識を「現場で役立つ知識」に転換する練習を行います。また、多くのトラブルシューティングツールを使って、現象を特定することを目指します。トラブルの原因が特定できれば、トラブルシューティングの作業は8割がた終わったようなものです。


講習会で使うツールの一部を紹介しましょう。


ユーザーエラーを起こすプログラム
ゼロ除算例外とメモリ保護例外を起こすプログラム。ユーザーモードのエラーの挙動を理解するためのアプリケーションで、デモに使います。


STOPエラー(ブルースクリーン)の簡単な解析
マイクロソフト純正のWinDBGを使った初歩的な解析を行ないます。
エラーを起こすために、SysinternalsのNotMyFaultを利用します。NotMyFaultの詳細は「死の青い画面」をお読みください。


パフォーマンス分析
メモリを消費し続けるプログラム、CPUをひたすら消費するプログラム、何もしないプログラムを起動して、ボトルネックになっているプロセスを発見します。


パケットキャプチャ
マイクロソフトが公開している「ネットワークモニター」を使って、データパケットの簡単な解析を行います。


Windows PE起動ディスクの作成
CD-ROMから起動することで、Windows PE互換システムを実行します。演習では、Windows PEをカスタマイズして、ISOイメージを作成し仮想マシンから起動します。


RAIDの復旧
仮想マシンの利点を活かして、RAIDシステムの破壊と復旧を行ないます。


なかなか面白い内容に仕上がっていると自負しているのですが、いかがでしょう。


ところで、STOPエラーを起こすプログラム「NotMyFault.exe」は、米国人がトラブルを起こした時の定番台詞だそうです。「(壊れたのは)私のせいじゃありません」という感じですね。日本では「何もしていません」に相当するのでしょうか。


このNotMyFaultが呼び出してSTOPエラーを起こすデバイスドライバがMyFault.Sysです。「私のせいでした(ごめんなさい)」という感じですね。


そして、NotMyFaultでは、STOPエラーの背景色を変更できます。通常は青ですが(だから「ブルースクリーン」と呼びます)、これを赤や黄など好きな色に変えられます。何の意味もありません。なお、Windows Server 2012ではSTOPエラーは起きるものの、色は変わりませんでした。


NotMyFaultを作ったマーク・ルシノビッチ氏は他に「ブルースクリーンセーバー」というツールも作っています。スクリーンセーバーなんですが、STOPエラーから再起動の画面を再現します。わかっていてもちょっとぎょっとしますね。ぜひ同僚を驚かせてみてください。なお、ブルースクリーンセーバーは何の役にも立たないので、講習会では扱いません。

[Windows ServerWindows Server 2008 R2][2012年8月20日配信]

Win Win Windowsコラム
第24回 どこが変わった? Windows Server 2012 (Active Directoryドメインサービスの構成)
執筆:多田博一,髙木美和子

先日、Windows Server 2008 R2 (以下R2)の後継である、Windows Server 2012 (以下2012 )のRTM(製造工程向けリリース)が8月第1週になるとの報道がありました(出典: ITmedia)。一般発売は9月とのことなので、もうすぐですね。


現時点では、2012年6月1日に公開された、Release Candidate(製品候補版)を評価できます。みなさんはもうインストールされたでしょうか。大阪でWindows 系コースを担当している我々も、早速(というには遅い気もしますが)インストールいたしました。Windows Serverはさまざまな役割を構成できますが、Active Directoryドメインサービスを構成してみました。


●まずはインストールと初期構成
画面のデザインが若干異なりますが、新規インストールの手順自体は、R2と同じでした。しかし、インストール後の最初のログオン(2012ではサインインといいます)で、R2では「初期構成タスク」ウィンドウが表示されましたが、2012では「サーバーマネージャー」ウィンドウが表示されました。


「初期構成タスク」は、コンピューター名やIPアドレス、タイムゾーンの設定といった、文字通りサーバーの初期設定を行うための専用のツールです。サーバーマネージャーでも同じ設定ができ、また一度構成すればあとから変更する機会は少ないので、まとめられたのでしょう。ちなみに「初期構成タスク」を呼び出すための oobe コマンドもありませんでした。


GUIはWindows 8と同じ「Metro Style」が使われており、今までのものとは全く異なる見栄えです。普段スマートフォンやタブレットを使っていないので、最初は操作に戸惑いましたが、しばらく使っているうちに、徐々に慣れてきました。でもやはり今までの方が使いやすい気がします。


●サーバーマネージャーを使わない構成は今までと同じ
サーバーマネージャーを使わずに、従来どおりのコンピューター名の変更やIPアドレスの構成ももちろん可能です。メニューや設定項目はR2と変わっておらず、スムーズに設定変更ができました。


●サーバーマネージャーを使ってみる
サーバーマネージャーのダッシュボードには、「管理するサーバーの追加」リンクがあります。R2から、サーバーマネージャーで、ネットワーク上のサーバーのリモート管理ができるようになりましたが、管理したいサーバーが複数ある場合、サーバーをいちいち切り替えなければならず、結構面倒でした。2012では管理するサーバーをあらかじめ追加しておけば、「Hyper-Vマネージャー」管理ツールのように一画面から複数のサーバーのリモート管理でき、便利になりました。


またダッシュボードには、「役割と機能の追加」リンクがあります。R2では「役割の追加」や「機能の追加」と別々だったので、追加したいものが役割なのか機能なのかよく迷うことがあったのですが、ひとくくりになったので、もう迷わなくてすみます。


●ドメインコントローラーとして構成してみる
「役割と機能の追加」リンクより、「Active Directoryドメインサービス」を追加してみました。R2では、インストールが終了すると、ウィザードの最後に「このウィザードを終了し、Active Directoryドメインサービスインストールウィザード(dcpromo.exe)を起動します」というリンクが表示され、そこからウィザードを起動して、ドメインコントローラーとして構成していました。2012でもインストールが終了すると、「このサーバーをドメインコントローラーに昇格する」というリンクが表示され、そこからウィザードを起動して構成します。


●dcpromoは使えない
先ほどの「Active Directoryドメインサービス」の追加で、リンクをクリックせずにウィザードを閉じてしまった場合はどうすればいいのでしょうか。


R2では、「ファイル名を指定して実行」から直接「dcpromo」と入力・実行すればウィザードを起動できました。2012で試したところ、「Active Directoryドメインサービスインストールウィザードはサーバーマネージャーに移動されています。」と表示されたダイアログボックスが表示され、ウィザードは起動できませんでした。


ただし、2012でもdcpromoコマンドはなくなったわけではなく、応答ファイル(/unattendスイッチ)を使って実行できます。


●サーバーマネージャーからの作業に悪戦苦闘
dcpromoコマンドでできないのであれば、サーバーマネージャーのどこかに表示やリンクがあるはずです。どこから構成するのだろうかといろいろ探したところ、「Active Directoryドメインサービス」を追加したことで表示された、「AD DS」をクリックしてみると、画面の一番上のところに「<サーバー名>でActive Directoryドメインサービスの構成が必要です」というメッセージが表示されていました。


もしかしてこれかな?と思い、クリックしてみたのですが、残念ながら何も出てきませんでした。またあれこれ探し、もう一度先ほどのメッセージをよく見てみると何やら右隅に「その他」という表示があります。その他?と思いつつ、ためしにそこをクリックしてみると、「このサーバーをドメインコントローラーに昇格する」という表示が現れました。


やっと見つけたという満足感の中、クリックしてみると無事「Active Directoryドメインサービス構成ウィザード」が起動しました。


なお、サーバーマネージャーの通知アイコン(旗のマーク)をクリックし、「配置後の構成」というメッセージ中のリンクでも、ウィザードを起動できます。


●応答ファイルにかわってPowerShellスクリプト

ウィザードの流れはR2と大まかに同じですが、R2で選択できた「詳細モード」がなくなり、詳細モードのオプションはウィザード中で表示されていました。またR2では、ウィザードで指定した内容をdcpromoの無人インストール用応答ファイルとして保存できましたが、2012では応答ファイルのかわりにPowerShellスクリプトとして保存できます。


以上、Windows Server 2012 RCをインストールし、Active Directoryドメインサービスを構成できました。さすがにGUI自体は基本操作を確認しないと何もできませんでしたが、それ以外の部分では、これまでの知識だけでも充分対応できると感じました(もちろん変更箇所は認識する必要がありますが...)。


Active Directoryをこれから学ばれる方は、ユーザーインターフェースが大きく変わらない、R2で学習された方が、操作に戸惑われることがなくてよいかもしれません。


グローバルナレッジでは、Windows Server のインストールを含む管理一般について学んでいただける研修をご提供しています。

またActive Direcotryのインストールを含む構成および管理については、以下の研修をご提供しています。

なお、今回ご紹介した内容は 2012 年 7 月時点での情報です。Windows Server 2012 のリリース時には変更される可能性がありますので、その場合はご了承ください

[Windows Server 2012][2012年7月23日配信]

Win Win Windowsコラム
第23回 Windows Phone SDK 7.1 アプリケーション開発概要
執筆:鈴木和久

●今回は開発の話
 前回、VHD Boot で Windows Phone の開発環境を構築する話を書きましたが、「それで? 開発の話は?」とツッコミをたくさんいただきました。そこで、今回は Windows Phone SDK による開発のはじめの一歩の話をすることにします。

●まずはプログラミング インターフェースの選択
 Windows Phone OS 7.1 には、Internet Explorer Mobile という Internet Explorer 9 と同じエンジンを搭載した Web ブラウザが入っていますので、HTML、CSS、JavaScript を駆使した Web アプリケーションを作成するという選択肢もあります。

 Web アプリケーションは他のモバイル デバイスも含めたクロス プラットフォーム サポートが必須な場合の最善策ですが、モバイルデバイスのセンサーなどを活かした「痒いところに手が届く」アプリケーション開発には向きません。

 そこで、OS ネイティブなアプリケーションを作成するためのアプリケーションフレームワークの出番です。

 Windows Phone OS 7.1 では、Silverlight と XNA という2種類のフレームワークが利用できます。どちらも、Windows Phone の登場のずっと前から存在するフレームワークです。

 Silverlight は、「基本的には」Web ブラウザのプラグインとして動作するフレームワークで、Web ブラウザ上で動画、バナー、アニメーションなどを駆使したリッチなインターフェースを実現することができます。XNA は、XBox 360 などのゲーム アプリケーションを開発するためのフレームワークですね。

●ちょっと勘違いしていました
 当初 Windows Phone で Silverlight が使えると知った時に、Internet Explorer Mobile のプラグインとしてサポートされるのかなぁ?と勘違いしていました。実際には、Silverlight プラグインは Internet Explorer Mobile をサポートしていません。

 例えば動画配信サイト GyaO! では、動画の配信に Silverlight プラグインが使われていますが、「大長今-宮廷女官チャングムの誓い」などの名作を Internet Explorer Mobile で視聴することはできないのです(韓国ドラマはお嫌いですか?)。
Silverlight_plugin

 Silverlight には、アウト オブ ブラウザ(ブラウザ外実行)と呼ばれる機能があって、OS に Silverlight アプリケーションを直接インストールして実行することもできますが、Windows Phone の Silverlight サポートはイメージ的にはこれに近いですね。 Windows Phone では Silverlight アプリケーションを、アセンブリ(dllファイル)を含むファイル群を格納した xap という拡張子を持つパッケージファイルからインストールして実行します。

●でも Silverlight が使えて嬉しい
 Windows Phone 向けのアプリケーション開発に Silverlight が使えて嬉しい方は多いはずです。私もその一人です。

 まず、Visual Basic もしくは C# が使えるところ。使いなれた言語で開発できるのは何よりも代えがたいですよね。

 それから、フレームワークとして .NET Framework for Silverlight が使えるところです。.NET Framework for Silverlight は、.NET Framework のサブセットです。ADO.NET などのクラスは含まれませんが基本的なクラス構成は共通ですので、使い慣れたフレームワークで開発することができます。

 .NET Framework ベースのアプリケーション開発経験者にとって、Windows Phone 向けのモバイル アプリケーションを開発するためのハードルは低いと思います。

●プログラムのコーディング
 Windows Phone SDK 7.1 をインストールすると、Visual Studio に Windows Phone 向けのプロジェクト テンプレートが追加されます。プロジェクト テンプレートは Visual Basic、C# それぞれに準備されています。Silverlight for Windows Phone を使ったアプリケーション開発用として以下のテンプレートがあります。
  • Windows Phone アプリケーション
  • Windows Phone データ バインド アプリケーション
  • Windows Phone クラス ライブラリ
  • Windows Phone パノラマ アプリケーション
  • Windows Phone ピボット アプリケーション
  • Windows Phone Silverlight/XNA アプリケーション
  • Windows Phone オーディオ生成エージェント
  • Windows Phone オーディオ ストリーミング エージェント
  • Windows Phone スケジュールされたタスク エージェント
Project Template

 以下は、Windows Phone アプリケーション テンプレートを選択してプロジェクトを新規作成した画面です。
Create New Project

 Windows フォームや ASP.NET Web フォームの開発者の方にとって直感的に操作できる開発インターフェースになっています。Windows フォームの開発者の方にとっては、コントロールの生成やレイアウトの定義が XAML(Extensible Application Markup Language) というマークアップ言語で行われるところが真新しいところでしょう。しかし、TextBox などのコントロールは従来どおりツールボックス ウィンドウからデザイナ ウィンドウにドラッグ アンド ドロップしてレイアウト調整もデザイナ上で行いますので、XAML をまったく意識せずに開発することも可能です。

 逆に ASP.NET Web フォームの開発者の方にとっては、HTML + サーバー コントロールのマークアップによるユーザー インターフェースの定義と概念が似ていますので、すんなり移行できるはずです。

 プログラム ソースコードの記述も、デザイナ上でコントロールをダブルクリックしてコードエディタでイベント ハンドラを記述するといった従来通りのイメージ行えます。

●デバッグはエミュレータで
 プログラムのテストは、まずエミュレータで行うことになります。

 Visual Studio の [ビルド] メニューの [ソリューションの配置] を選択すると、プロジェクトがビルドされ xap パッケージ ファイルが作成された後、Windows Phone Emulator に xap ファイルがインストールされます。その後、エミュレータを操作して配置されたアプリケーションを起動することになります。

 また、Visual Studio の [デバッグ] メニューの [デバッグ開始] を選択すると、前述の配置を行った後デバッガを用いたステップ実行も可能になります。
Debug by Emulator

●まずは、XAML から
 グローバルナレッジでは、Silverlight による Web アプリケーション開発の概要を学んでいただくための研修をご提供しています。XAMLによる開発手法の概要を学習したい方に最適です。

 
 また、社内システムのフロントエンドを Windows Phone のモバイル アプリケーションを開発される場合、ビジネス ロジックやデータ アクセスに WCF(Windows Communication Framework) や LINQ(Language Integrated Query)といった技術も必要になってきますので、以下の研修もお奨めです。


[.NET Framework][2012年5月22日配信]

Win Win Windowsコラム
第22回 Windows XP、Windows 7、Windows 8、どれを使う?
執筆:横山哲也

Windows 8のβテストが始まっています(「Windows 8」はコード名であり、正式名称と決まったわけではありませんが、便宜上「Windows 8」で通します)。Windows 7への移行も終わっていないに、と思う方も多いかもしれません。今回の記事が、Windows 8導入のヒントになれば幸いです。


●WindowsのGUIはよく変わる

WindowsのGUIは何度も変化しています。Webサイト「Computer World」の記事「画面キャプチャで見るWindowsの25年間」では、Windowsの全バージョンの画面ショットを見ることができます。


最初のWindowsはタイリングベースのものでした。これは技術的な問題ではなく、「ウィンドウが重なって見えなくなったら、利用者が戸惑うだろう」という判断からだということです。実際の画面を見るとダイアログボックスが重なっていますから、オーバラップ型(ウインドウの重ね合わせがある形)が可能だったことが分かります。


Windows 1.0は、NECのPC-100に採用されたそうですから、私も店頭デモマシンを触ったことがあるはずです。でも、マウスが搭載されていたのは覚えていますが(ステンレス球を使っていました)、ウィンドウシステムについては記憶にありません。記憶にないということは、逆に受け入れられやすかったのかもしれません。


Windows 2.0からはオーバラップ型に変わります。このあと、Windows 3.1までは見栄えが変わるだけでほとんど変化はありません。


大きく変わったのはWindows 95です。ここでスタートメニューやタスクバーが導入されました。その後Windows XPで「Luna」と呼ばれるGUIになり、Windows Vistaで「Aero Glass」が導入されました。Windows 7もAero Glassを踏襲しています。


Windows 95が導入された当時、ウィンドウの最大化と最小化のズーミングは無駄だとか、タスクバーは画面の描画エリアを圧迫するとか、いろいろ悪く言われました。


そのせいか、Windows XPでは従来の[スタート]メニュー形式に切り替える機能が付きました。今でもWindows XPをWindows 95スタイルで使っている人は大勢いるはずです。


Windows Vistaもさんざんな言われようで、やはり多くの方がWindows XP互換の「クラシックスタイル」に変更しているようです(Windows 95スタイルはなくなりました)。


使い慣れたものを使いたいという気持ちは分かりますが、新しいものは新しいだけの価値があるのも確かです。慣れなくても、無理に使ってみると、案外使いやすい面が見えてくるかもしれません。


●Metro Style

Windows 8では「Metro Style」と呼ばれるGUIが採用される予定です。Metro Styleは、アプリケーションの作り方から変わってしまうので、従来のアプリケーションとは違う画面で動作します。ただし、[スタート]メニューはなく、[Windows]キーを押すとMetro Styleのアプリケーション一覧画面に切り替わります。


Windows 8では、ログイン画面からシャットダウン手順まで、多くの操作が変化します。スマートフォンやタブレット端末の操作を全面的に取り入れることで、ユーザー層の拡大、あるいはスマートフォンに流れたユーザー層の奪還を目指しているようです。


私は昔からタッチ操作が嫌い(苦手)で、スマートフォンもタブレットも使っていません。iPhoneの写真を見せられたときも、何度も誤操作をしてしまい「横山さんはもうiPhoneを持たなくていいです」と言われたくらいです。


そういえば、私はApple社のGUIとは相性が悪いようで、Macintoshの利用も苦労しました。今まで使ったOSは日立VOS3(メインフレームです)、CP/M、MS-DOS、HP OpenVMS、UNIXのC Shell、X Windows System上のuwm、twm、DECwindows、OSF/Motif、Windows 2.0以降の全バージョンと、多くのOSを使ってきましたが、MacOSだけはどうしても慣れませんでした。


直接真似たわけではないようですが、Metro StyleはiPhoneの影響が強く出ています。現在、Windows 8のベータ版を使っていますが、ちょっとした操作をするのも苦労します。コントロールパネルひとつ出すのも大変です。


それでも、従来のWindowsと同様、慣れれば今までよりも使いやすいはず、と思って無理に使っています。今回は互換GUIも提供されません(提供できない)ので、仕方ありません。


●Windows 8の導入はいつ?

Metro StyleのGUIは、Windows Vistaでの変化とは比べものにならないくらい大きく変化します。早期に導入した場合は、教育コストが高く付いてしまう可能性があります。ただ、スマートフォンの利用者には案外受けがいいので、利用者のバックグラウンドによっては苦労せずに導入できるかもしれません。


一方、Windows XPはSP2までのサポートは終了していますが、SP3のサポート期間があと2年ほど残っています(2014年4月 8日までの予定)。アプリケーションの動作検証やマニュアルの更新を考えると、さすがにそろそろ次のバージョンに移行したいところです。この時、最も安全なのはWindows 7への移行でしょう。


既にWindows 7をお使いの方はそのまま使っていただくのが得策です。現時点でWindows 7のサポート期間は2020年1月14日までとなっています。あと8年近くありますから、安心して使えます。
ただし、タブレットPCの導入を検討しているのであればWindows 8を採用するのもいいと思います。タブレットPCの操作とMetro Styleは非常に相性がいいという話です。2001年と、ちょっと古い話ですがガートナージャパンは「企業内のOSは1種類に絞るのは導入コストが大きすぎる、多すぎるとサポートコストが大きすぎるので、4種類程度までに絞ると良い」と主張しています。

出典:日経ITpro「3年先を見据えたクライアントPC移行計画で,短過ぎるOSライフ・サイクルに備える


現在はOSのバージョンアップ間隔が延びているので、2種類くらいにできるかも知れませんが、1種類に統一するのはかえって管理コストがかさむと思われます。デスクトップやノートPCはWindows 7、タブレットはWindows 8とし、タブレットに慣れたところで全面的にWindows 8、というシナリオが良いのかもしれません。


●Windows 7の展開

Windows 7の全社展開を考えている場合は、教育コース「Windows 7 標準クライアント環境の構築と展開 (#50591)」が役に立ちます。テキストではWindows Vistaからの移行が中心ですが、Windows XPからの移行にもほとんどがあてはまります。


また、Windows 7の機能を一通り学びたい場合は「Windows 7 のインストールおよび構成 (#10226)」がおすすめです。このコースは「ITキャリア パッケージ キャンペーン」の対象なので、今受講いただくとMCP試験の受験チケットとTechNetサブスクリプション(1年分)が付いてきます。TechNetサブスクリプションには、マイクロソフトの主要なソフトウェア製品が全て含まれますので、テスト環境の構築などにお使いください。ライセンス上、業務に使うことは禁止されていますが、機能制限も利用期間の制限もありません。

Windows 8の声も聞こえてきますが、実際に企業クライアントはWindows 7の導入が本格化してきたところです。効率よく導入するために、ぜひ教育コースの受講をご検討ください。きっとWindows 8の導入にも役立つはずです。

[Windows 7資格取得][2012年4月10日配信]

Win Win Windowsコラム
第21回: Windows Phone SDK 7.1 の開発環境構築
執筆:鈴木和久

●Windows Phone OS 7.1 搭載のデバイスを入手

ビビッドなマゼンタ色のボディが眩い Windows Phone OS 7.1 搭載のスマートフォンを入手しました。さぁ、アプリケーション開発環境を構築するぞと Windows Phone SDK 7.1 を Microsoft Download Center からダウンロードしたところから今回のお話は始まります。


●Windows Phone SDK 7.1 でアプリケーション開発環境を無償で構築

Windows Phone SDK 7.1 にはMicrosoft Visual Studio 2010 Express for Windows Phone が含まれていますので、たとえVisual Studio 2010 の製品版がインストールされていなくてもアプリケーションの開発環境を構築することができます。OS は Windows Vista または Windows 7 が必要ですが、Windows Phone SDK 7.1 自体は無償ですので、気軽にアプリ開発を始められます。なお、Visual Studio 2010 Professional  などの製品版エディションが既にインストールされている環境に Windows Phone SDK 7.1 を追加インストールし使用することも可能です。


Windows Phone SDK 7.1 には、Windows Phone Emulator と呼ばれる実機と同じ ROM が搭載されたエミュレータも同梱されていますので、モバイル アプリケーションを作成して動作を確認することができます。ただし、エミュレータの動作要件が比較的高いので注意が必要です。


●仮想マシンにはインストールできない

Windows Phone SDK 7.1 は仮想マシンへのインストールをサポートしていません。実際に、だめもとで Windows Virtual PC と VMWare Player 4.0 の環境にセットアップを試行したのですが、インストール途中でエラーが発生しました。主に Windows Phone Emulator の動作要件が理由だと思うのですが、仮想マシンに開発環境を構築できないのが残念です。


仮想マシンは差分ディスクやスナップショットを使って複数の環境を保存し復元できるのが魅力です。仮想ディスク自体は単なるファイルですのでリムーバブルメディアなどへのバックアップも容易ですし、ポータブルで保守が容易なのが何ものにも代えがたいメリットだと思います。


仮想マシンでの開発環境構築をあきらめるとなると、以下のような方法が思い浮かびました。

  • ハードディスクを増設して開発環境をインストールし、BIOS 設定でインターフェイスの有効/無効もしくはブート順の構成を適宜切り替えて使用
  • Windows ブートマネージャでデュアル ブート(マルチ ブート)を構成


デュアル ブート構成はインストールするオペレーティング システムごとにハード ディスク内に別々のパーティションが必要になるのが難点です。SSD(Solid State Drive) の価格もそれなりにこなれてきたので、この際前者にしようかなぁと考えました。しかし、ショッピング サイトであれこれ物色し「ぽちっ」とする寸前で思い出したのが、「VHD boot」という機能です。


●仮想ディスクを物理コンピューターの起動ディスクとして使用できる

「VHD boot」はVHD(Virtual Hard Disk) フォーマットの仮想ディスクを物理コンピューターの起動ディスクとして使用できる機能です。Windows 7 や Windows Server 2008 R2 のブート ローダによって Windows 7 Enterprise や Windows 7 Ultimate 、Windows Server 2008 R2 などの仮想マシン イメージを格納した仮想ディスクからのブートが可能になります。ただし、Windows XP などの仮想マシン イメージを格納した仮想ディスクからは VHD boot できませんので注意してください。


VHD ブートで起動した OS のデバイスドライバは物理デバイスのものが直接使用されますので、起動ディスクが VHD ファイルであることを除けば、物理コンピューターにインストールした OS 環境とほぼ同じ状態です。


BCDEdit という BCD (ブート構成データ) ストアを管理するためのコマンド ライン ツールを使用してマルチ ブートの構成を行う際に、起動ディスクとして仮想ディスクを指定できます。Windows Virtual PC や Hyper-V で作成した Windows 7 Enterprise の仮想マシンが既に存在する場合、最小限の手間で VHD boot を利用することができます。差分ディスクもサポートしていますので、仮想マシンによる運用と変わらないポータブル性や保守性も享受できますし、パフォーマンスも物理コンピューターとほぼ遜色のない状態で利用することが可能です。


ちなみに、VHD Boot とは直接関係ないですが、Windows 7 の ディスク管理ツールは [操作] メニューの [VHD の接続] から、VHD ファイルをマウントすることができます。ドライブ レターが割り当てられ、仮想ディスク内のファイルの読み書きが可能になります。テストの際に仮想ディスクからログデータを取り出したり、事前にテスト データを配置したりといった作業が仮想マシンを起動することなく行えますので便利です。


なお、最近公開された Windows 8 Consumer Preview も、VHD Boot 環境にインストールしてみましたが、無事動作しています。Visual Studio 11 for Windows 8 も Windows 8 Consumer Preview 環境にインストールできますので、Metro スタイルのアプリケーション開発を試したい方は要チェックです。


●余談ですが、「ぽちっ」とする寸前に...の話、その2

開発作業効率を上げるためにマルチ ディスプレイの環境が欲しくなり、まずはビデオ カードの増設でしょうと、これまたあれこれショッピング サイトを物色し、ほぼ購入対象のカードが決まりかけたところで、筐体の後ろを確認して気が付いたのが D-Sub インターフェイスとは別に eSATA のインターフェイスの近くに存在している「DisplayPort」です。D-Sub や DVI といったインターフェイスしか知らなかった私には衝撃でした。

DisplayPort DisplayPortケーブル

DisplayPort を備えたディスプレイなら直接接続できますし、D-Sub や DVI のインターフェイスに DisplayPort から変換して接続するケーブルやアダプタも存在することがわかりました。私は、後者のアダプタを入手して最小限のコストで無事にデュアル ディスプレイ環境を構築することができました。


●いざ、アプリケーション開発

Windows Phone 7 のアプリケーション開発は、SilverlightとXNAという2つのフレームワークを利用することができます。これまでSilverlightで Webアプリケーションを作成していた方は、そのスキルをベースに Windows Phone 向けのネイティブ アプリケーション開発に進むことができます。


グローバルナレッジでは、Silverlight による Web アプリケーション開発の概要を学んでいただくための研修をご提供しています。まずは、XAML(Extensible Application Markup Language) による開発手法の概要を学習されたい方に最適です。


速習Silverlightプログラミング ~SilverlightによるRIA開発概要~(MSC0215G)


[.NET Framework][2012年3月 5日配信]

Win Win Windowsコラム
第20回: SQL Server 2012のリリース予定が発表されました
執筆:今村靖広

みなさん、こんにちは。グローバルナレッジの今村です。


(個人的に)大好きなお正月も過ぎ、あっという間に2月です。
それにしても、今年に入ってからは寒い日が続きますね。
みなさんも体調管理には十分に気をつけてください。


さて、日本マイクロソフト株式会社は、次期SQL Server「SQL Server 2012」(開発コード名「Denali」)を2012年の上半期に提供することを発表しました。
SQL Server 2012には新機能がいくつもありますが、特に私が注目したのは(あまりテクニカルではない)以下の2点です。

  1. ●エディションの統合
  2. ●ライセンスモデルの変更


今回は、この2点について紹介したいと思います。


なお、その他の機能については、新しくオープンしたSQL Server 2012のサイトを参考にしてください。


■エディションの統合


SQL Server 2012では主要なエディションとして以下の3つが提供されます。

  • ●Enterpriseエディション:ミッションクリティカル、およびデータウェアハウスに最適
  • ●Business Intelligenceエディション:社員向けセルフサービスBIに最適
  • ●Standardエディション:部門用データベースとして必要なデータベースエンジン、レポーティング、分析用の基本機能が含まれる


Business IntelligenceエディションにはStandardエディションの全機能が含まれ、EnterpriseエディションにはBusiness Intelligenceエディションの全機能が含まれます。


なお、「セルフサービス BI」とは「誰もが、自分自身で自由に、簡単にデータを活用できる理想的な状態」とマイクロソフトは定義しています。


今回のエディションの統合に伴い、以下の2つのエディションは廃止になっています。

  • ●Datacenterエディション
  • ●Workgroupエディション


廃止になったらすごく困るなぁと思っていた、Developerエディション、Expressエディション、Compactエディションは引き続き提供されるとのことです。これについては少し安心しました。特にEnterpriseエディションと同等の機能を持ち、安価なDeveloperエディションは、運用環境には使用できませんが、開発・テスト環境では非常に重宝していましたので。


SQL ServerはBI機能(データ転送、レポーティング、データ分析)を含んでいることが大きな特徴なのですが、残念ながら「SQL Server = データベースエンジン」いう印象が強く(間違いではないが...)、BI機能はどちらかといえばマイナーな感じがしていました。今回「Business Intelligenceエディション」を新しく導入することで、SQL Server の持つ素敵なBI機能が周知されれば良いと思います。


■ライセンスモデルの変更


次にライセンスモデルについて紹介します。


SQL Server 2012 では、選択したエディションやシステム環境に応じてライセンス モデルを選択することができます。SQL Server 2012のエディションと提供されるライセンス モデルの関係は次のようになります。


エディション
ライセンスモデル
サーバー/CAL
Computing Power
(
コアベース)
Enterprise
×
Business Intelligence
×
Standard


「サーバー/CALライセンス」はSQL Server 2008 R2で使用されているものと同じですが、「Computing Power(コアベース)ライセンス」はSQL Server 2012から新しく導入されました。


SQL Server 2008 R2で使用されている「プロセッサ ライセンス」は物理プロセッサ数(正確にはソケット数)を数えるものでした。このプロセッサ ライセンスモデルであれば、物理プロセッサに複数の「コア」が含まれていても、物理プロセッサのソケット数が1つであれば、必要なプロセッサ ライセンスは「1」ということになります。


SQL Server 2012で新しく導入された「Computing Power(コアベース)ライセンス」は物理プロセッサのソケット数をカウントする方式ではなく、物理プロセッサに搭載される「コア」の数をカウントするライセンス モデルに変更されました。そのため、サーバー/CALライセンスが存在しないEnterpriseエディションを使用する場合は、以前と比較してライセンス コストが増える可能性があります。


私がSQL Serverの研修を実施するときに、「SQL Serverを使用する利点」として紹介していた「プロセッサ ライセンス」の考え方が変更されるのはちょっと残念な感じがします。なぜならば、この考え方は他社製品と比較してコスト的にかなり優位だったからです。


ただし、Computing Power(コアベース)ライセンスでは「(従来の)1物理プロセッサ ライセンスの価格 = (新体系の)4コア ライセンスの価格」に設定される予定なので、4つまでのコアを持つ物理プロセッサであれば、1プロセッサ ライセンスとしてカウントされます。


マイクロソフト製品には「ソフトウェアアシュアランス(SA)」という契約形態があります。これは、ボリュームライセンスのオプション契約で、アップグレード権や各種サポートに関する年次契約サービスです。


SQL Serverの有効なソフトウェア アシュアランス(SA) を持っている場合は、従来のプロセッサ ライセンスからSQL Server 2012のComputing Power(コアベース)ライセンスにアップグレードしても追加の費用はかからない予定です。この場合は、契約の更新の際にSQL Serverが実際に稼動しているマシンに搭載されているコア数分のライセンスが付与されます。そのため、今後、4コアを超える物理プロセッサを持つマシンでSQL Serverを運用していく場合は、ライセンス コストの節約のために、SQL Server 2012が提供されるまでにSAを含めたSQL Serverのライセンスを購入して実際に展開しておく、などの対策をしておくと良いと思います。


なお、今回ご紹介した内容は 2012 年 1 月時点での情報です。SQL Server 2012 のリリース時には変更される可能性がありますので、その場合はご了承ください。

[SQL Server][2012年2月 6日配信]

Win Win Windowsコラム
第19回: Visual Studio .NET登場から10年
執筆:大貫淳子

新年あけましておめでとうございます。本年もよろしくお願いします。


今年も、昨年に引き続き「クラウド」がIT分野の大きなテーマになりそうです。クラウド時代では、システム管理者の仕事が減り、システム開発者の仕事が増えると言われています。この機会に、プログラミングの勉強を始めてみてはどうでしょう。


マイクロソフトが提供しているアプリケーション実行環境が「Microsoft .NET Framework」、通称「.NET(ドットネット)」です。そして、NETの標準開発環境として2002年に登場したのがMicrosoft Visual Studio 6.0から大きく進化したMicrosoft Visual Studio .NETです(現在の最新版は「Visual Studio 2010」)。


10年ひと昔と言いますが、Visual Studioはこの10年に5回のバージョンアップを重ね、よりリッチで、さらに使いやすい開発用アプリケーションに洗練されています。一方で、基本的な操作そのものには大きな変化はありません。言い換えれば、それだけ完成度が高いとも言えます。


Visual Studioの人気は高く、非マイクロソフト系言語を使う人からも「あれが○○言語でも使えればいいのに」という話もよく聞きます。Visual Studioは複数の言語に対応していますが、Javaを含め対応していない言語も多くあります。


Visual Studioで使える代表的な言語に "Visual Basic" と "C#" があります。Visual Basicは.NET以前から存在する歴史のある言語です。WindowsベースのGUI画面のあるアプリケーションの作成に、非常に効力を発揮します。C#は、.NETとともに登場したので.NET Framework による開発を最も効率よく行える言語と言えます。


今回は、それぞれの言語で採用された新機能をいくつか紹介します。


まずはVisual Basicからです。


● 複数行の最後の _ (アンダースコア)が不要

Visual Basicユーザーからすると、かなり驚きの仕様変更ではないかと思います。少なくても私はそうです。


Visual Basicは行単位で処理を行っていくので、行のつながりを示す " _ " というキーワードが必須となっていたのですが、_ がなくても複数行の処理を記述できるようになりました(一部条件あり)。「暗黙の行連結」あるいは暗黙の行継続と呼びます。


以前のコード

txtFullName.Text = "姓:" + txtLastName.Text +  _   
"名:" + txtFirstName.Text

最新版

txtFullName.Text = "姓:" + txtLastName.Text +
 "名:" + txtFirstName.Text


● プロパティ プロシージャの自動化

こちらは、C#ではすでに取り入れられていた機能で「自動実装プロパティ」と呼びます。

詳しいコードは記述しませんが、コーディングの際にアクセサーブロックを記述する必要がなくなりすっきりとします。


つづいてC# です。


● 名前付き引数と省略可能引数

メソッド(処理のかたまり)の呼び出しの際に、引数として情報を渡しますが、引数の順番や数の指定が、より柔軟になりました。ちなみに、Visual Basicでは、.NET以前から採用されていた機能です。

例えば、4つの数字を受け取り加算するメソッドがあるとします。


public int AddArg(int arg1, int arg2, int arg3 = 0, int arg4 =0 ) 
{
return arg1 + arg2 + arg3 + arg4;
}


呼び出しの際、以前のバージョンでは引数はメソッドの定義と同じく4つ

AddArg(10, 20, 0, 0);

でなければいけませんでしたが、最後2つの引数は指定がない場合に0が代入されますので、

AddArg(10,20);


と必須の2つだけの指定でもOKになりました。

また、引数を渡す順番を変えることもできます。この時は名前付き引数を指定します。


AddArg(arg2:10,arg3:20,arg1:0);


「Visual BasicとC#、どちらをつかったらよいか?」という質問を耳にすることがあります。


弊社大阪支店では、何度かこのタイトルのセミナーも開催されました。そのぐらい、比較対象としてよく挙げられる言語ですが、バージョンアップを重ね、それぞれの仕様の良いところを取り入れ、切磋琢磨しているように感じます。


Visual Basic、C# の最新のコースはこちらです


なお、「Visual Studio Express」は無償で提供されています。Expressではグループでアプリケーション開発をする機能が削除されていますが、基本的な開発機能はすべて備わっています。これからWindowsアプリケーションの開発を検討されている方はぜひ試してみてください。

[.NET Framework][2012年1月10日配信]

※Microsoft、Windowsは、米国Microsoft社の登録商標です。
※Oracleは、米国オラクル・コーポレーションおよびその子会社、関連会社の米国およびその他の国における登録商標です。
※PMI、PMP、PMBOKは、プロジェクトマネジメント協会(Project Management Institute, Inc.)の登録商標です。
※ITIL®はAXELOS Limited の登録商標です。
※American Management Association は、米国アメリカン マネジメント アソシエーションの登録商標です。
※BOOT CAMP、NEW TRAIN、Glovalueはトレノケート株式会社の登録商標です。
※その他このサイトに掲載された社名、製品名は、各社の商標、または登録商標です。

© Trainocate Japan, Ltd. 2008-2017, All Rights Reserved.
  • Get ADOBE READER