C#も.NETもやった事ない所からのスタートという事で、まずは言語やフレームワークに慣れる必要がありました。
ここはそこ過程のログを書いておきます。
今回は実際の開発言語と環境について言及していきます。
開発言語
前回も書きましたがWindows Phoneの開発言語はC#、フレームワークはSilverlight4です。(VBも使えます)
前回も書きましたが僕はそのどちらも触れた事がありせんでした。
ただC++やjavaはやっていたので、あまりC#を覚える過程に抵抗はなかったです。
いくつか他言語と違うなーと僕が感じた所をリストにしておきます。
- foreach がある!(というかイテレータ
- var はバリアントではなく型推論
- delegate ( 巻数型的なもの
- 多重 break は無い(gotoあるよ!
- Generics ( C++ のテンプレートのようなもの
- モジュール単位でusingしていく
- 安心のガベージコレクション
- 独特なラムダの省略
- アクセス指示子に friends がない (internal使おう
- 型キャストは明示的に。 as は型情報だけ書き変える。
またMS自体にもこういったC++とC#の違いという記事があるので、目を通してみると良いかもしれません。
何はともあれ、とりあえず分からない事があればググるのが一番てっとり早いです。
詰まっててググってら、だいたいここにたどり着きますね。
色々と詳細に書かれているので、一通り記事に目を通しておくと開発が楽になるかもしれません。
(まぁちゃんとやるなら、腰すえて本とか読んだ方がいいと思うけどね)
Silverlight
Silverlightって何だろう?
一応WEB屋ではあるので耳にする機会はあるんだけど、お仕事的にはPHP一辺倒(+js)なので触れる事はなく、、、
元来のSilverlightはWEBアプリの開発に使われるフレームワークです。
まぁAdobeのflashみたいなもんだと思いねぇ。
ただその開発に使われる開発言語は.NET(C#やVB)で、そのデザイン部分の記述はxamlが使われます。
言語の方は見るものだけど、xamlって何???
xamlはXMLのサブセット的なもので、 UIを定義する為のマークアップ言語です。
サンプルを出すとこんな感じ。
<StackPanel HorizontalAlignment="Left" VerticalAlignment="Top"> <StackPanel Orientation="Horizontal"> <TextBlock TextWrapping="Wrap" Text="label:" Margin="50,0,5,0" VerticalAlignment="Center"/> <TextBox TextWrapping="Wrap" Text="TextBox" BorderBrush="#FF9A47BA" Padding="3,30,2,2"/> </StackPanel> <Button Content="Button"/> <RadioButton Content="RadioButton"/> <Slider/> </StackPanel>
PaddingやMargin何かが記載されていたりとHTML+CSSに近いものがありますね。
上記のxamlを書くと、Windows Phoneではこういった形で表示されます。
だいたいはヴィジュアルエディタがついているので、自分で弄る必要はないのですが、どういったxamlからどういった画面が形勢されるかはある程度認識しておいた方が良いと思います。
(VS2010のエディタ画面)
各種ボタンなどのコントロールの配置位置指定は、色々な方法があります。
絶対座標で指定したりももちろできるのですが、面白いのはhtmlのtableタグのように表の形でコントロールを配置したり、
横や縦に詰まれていく形式にして、マージンやパディングを設定して位置を調整したりできます。
ほんとにWEBのページデザインに似てますね。
先程のSSに乗せたVS2010の機能では簡単な操作しかできないんですが、もっと強力なデザインツールがSDKには附属しています。
(SDKに附属しているBlend4のエディタ画面)
最初のうちは機能が多すぎるのもあってよく分からないかもだけど、
使いこなせば開発速度がガクッと上がるので、是非使えるようになりましょう
開発を始めてみよう
デザインを先につくって、機能を乗せていくという今時のビジュアル手動な開発環境と大差ない感じだと思います。
まずはどういう手順で開発するかに慣れる必要があると思うので、以下のチュートリアルをお勧めします。
Windows Phone 7 のはてなフォトライフビューワを作る (前編) - backyard of 伊勢的新常識
比較的少なめのコード量で、アプリが開発できるのが分かります。
こちらは前編で、完成したものは若干見た目に難があるのですがが、
c-mitsubaさんの後編でBlendを使ったデザインの付け方を解説されています。
(リンクは前編の末尾にあるので、そこから遷移してください。
デザインまで含めて最後までやると、Blendが何をする為のものなのかも含めて一通り捕めるんじゃないかと思います。
WP向けではないですが、Blendの日本語資料とかもちらほらあるので、そういうの見ておくのも理解に近づきますね。
開発者のための Expression Blend ~ デザインツールを使いこなせれば、RIA 開発はもっと簡単!
あともっとチュートリアルやりたいって人にはここもお勧め。
7.0ベースだけど、色々なサンプルがある。
あともちろんMS本家も。
Code Samples for Windows Phone
実装してて、どうやればいいか分からない事がある時は、MSDNを検索する癖を付けましょう。
海外のフォーラムも、かなり頼りになるので、それっぽい英単語とかでググったりましょう!
コメントする