元スレMicrosoft Silverlight その7
silverlight覧 / PC版 /みんなの評価 : ○
501 = :
MVVMは始めて手をつける(学ぶ)人にとっては、非常に敷居が高い。
502 = :
VMって結局ViewのModelでしょ
従来のMVCだとView専用の情報を持つモデルが必要で、それをモデルというのはちょっと変なのでVMと呼ぶことにして、
Controlerはあまり分けるメリットがないのでVMに統合しただけだよね
純粋なMVCよりはシンプルでわかりやすいと思う
503 = :
MVVMの要点を3行で頼む
504 = :
M
V
VM
505 = :
>>501
まあ、GUI の構築パターンはどれもハードル高く、その中じゃ MVVM はましだと思う。
現状の1番の問題は、VS のテンプレートが MVVM になってない点。
それが初心者への最大のハードルだと思う。
というか、今って発展途上なんで、発展させる側と発展に付いていく気のある人だけが MVVM やればいい気もする。
>>503
おしいな、>>504 がほぼすべてなんだけど、4行だ。
507 = :
>>505
テンプレートかー。
確かになあ。
508 = :
でも高レベルすぎる話なので一般的なテンプレートを用意してそれが役に立つかというと…
DataContextにVMを設定する方法一つとっても用途や規模によって適切な方法は違う
PrismなんかDIでVM作ってるんだよw
509 = :
標準で吐き出すものが MVVM なら、かってに付いてくると思う。
510 = :
>DataContextにVMを設定する方法
皆はこれ、どんな風にしてる?
俺は
ソリューション
{
プロジェクト(各層の結合 & アプリ実行用)
{
App.xaml.cs
{
Modelフィールド
ViewModelフィールド
Viewフィールド
コンストラクタ
{
各フィールドを初期化
VのDataContextにVMを設定
}
}
}
プロジェクト(ユニットテスト)
プロジェクト(Model層)
プロジェクト(ViewModel層)
プロジェクト(View層)
}
個人で作る時は、こんな感じにする事が多いけれども。
511 = :
>>510
それViewModelのコマンドで現在のViewから別のViewへ遷移したいときはどうするの?
ViewだけじゃなくてViewModelごと遷移させたい場合ね
MVVMでVMをVに依存させずに画面遷移をうまくやろうとすると
サービスロケータやDIのようなものがどうしても必要になる気がする
512 = :
>>511
御指摘の通り、上に加えて
VMから画面操作を行う為の層も、別のプロジェクトとして追加する事が多いね。
(データアクセス層なんかもよく追加する)
MVVMを基本にはするけれども、それだけで全部完結させるのはどうしても難しいというか。
(技量不足のせいかも知れんけど)
513 = :
MVVM舐めてた 難しい
もう一度、初心にかえるキモチで一からC#・SL学習中
514 = :
MVVM自体は別に難しくもなんともないだろ。
ただ、各種処理パターンの実装サンプルで適当なのが無いから、そこをまとめるコストがネックになっているだけで。
っで、それが面倒で堕落するとイベントドリブンになるっと。
MVVMフレームワーク付属のサンプルだと、フレームワーク依存部分やその学習コストがネックになるケースはあるけど。
簡易MVVMフレームワークを自前で用意して、BehaviorやTriggerActionの使用パターンまで網羅したサンプルを用意すれば、
変な実装が広まることも無いと思うけど。
515 = :
ビヘイビアを使った各種処理パターン以外に、画面遷移、DI、サービス層の考え方くらいまであれば、だいたい事足りるかな?
516 = :
そこまでやるとPrismと何も変わらないし
アプリケーション全体の構造のレベルの話だから一般にこうと決められるようなものでもない
517 = :
要件によってアーキテクチャが変わるのは勿論だけど、実用を考えたら、結局このくらいの話は必要になる気がする。
Prismの布教を頑張るっていうんでも良いけど。
518 = :
sl4toolkitがまだ英語版しかないことろにちょっと遊んだ程度なんだけど
今日本語版の環境を作る場合に必要なのって下記であってる?
・VWD2010(無料でやるのでExpress)
・SilverLight 4 toolkit 日本語版
519 = :
Toolkitじゃなく、Toolsの方じゃあるまいか。
http://msdn.microsoft.com/ja-jp/library/cc838244.aspx
520 = :
書き忘れたけど、Toolkitっていうとこっち。
http://silverlight.codeplex.com/
これは無くてもいい。
521 = :
>>519>>520
ありがとう
ダウンロードしてるんだが30MBちょっとの物がぜんぜん落ちてこないw
MSは嫌がらせのつもりか!!
522 = :
MSからのダウンロードってクソ速いだろ普通
数Gのファイルでもあっという間に終わる
523 = :
ぜんぜん落ちてこない
ブラウザで普通にダウンロードしてたけど落ちてこないのでIrvine使って落としてるが
ほとんど通信しないと思ったらたまにちょこっと通信してまた通信無しって感じでよくわからない挙動をする
525 = :
簡単なベクター系のお絵かきツールを作ろうと思うのですが
ベースのキャンバスはどれを使えばいいですかね
あと、List<>でEllipseとかRectangleなどを一元管理してバインドする感じになると思うのですが
どう書けばいいかイメージがわかないので参考になりそうな情報、サイトなどありませんでしょうか?
526 = :
そういうのにバインディングはいらん
CanvasにRectangleとか置いてコードから直接弄繰り回す
528 = :
コード貼りでお礼忘れてた・・・
>>526
ありがとう
その方がはやそうですね
529 = :
図形の位置を与えるCanvas.Leftなどはc#で書く場合はどうすればいいんでしょうか?
531 = :
http://codezine.jp/article/detail/5687?p=2
こういうのを見ると、MS的にはSLでもリボンインターフェースを使って欲しいのかねえ。
534 = :
法人向けの開発ツールが無償なわけないだろ
開発ツールを売る商売なのに
535 = :
>>531
まーそりゃそうじゃないの?
MSのUIの現時点での最大の欠点は指でタッチするようなのにむかないってことだからね
従来のメニューだとタッチで触るには小さすぎて結局スタイラスなどの小さいポイントを
狙えるポインティングデバイスに頼ることになる
536 = :
でもリボンは同じ画面でコマンドの選択肢が多いアプリ向けだよな
Silverlightが主に想定してるようなナビゲーションアプリとは外れる
537 = :
何となく気になったんだが、企業でSL製アプリを導入する場合って
SLランタイムのバージョンが上がったら、
「ランタイムをバージョンアップするな」 とか
「ランタイムのバージョンアップ後でも正常動作するか全部テストしろ」 とか言われるんかな。
互換性は保たれてるハズなんだけれど。
538 = :
>>537
そりゃ他のバージョンアップと同様やる企業はやるし、
やらない企業はやらないだろ
Silverlightだからどうこうっていう問題じゃないよ
539 = :
普段JavaとかPHPでWEBアプリしか作ってないんだけど、Silverlightでゲームを作って
見たくて勉強始めてみた。
MSのチュートリアルをやってみたけど・・・今一どうやって動いているのか把握できない
C#で開発すると、コンパイルされた(CLR?)データがどこかのファイルに保存されるの?
参考サイトがあまりにも少ない・・・
540 = :
xap って拡張子のファイルになる。
で、それの実体は単なる ZIP 書庫(拡張子変えたら解凍可能)で、
その中に C# のコンパイル結果の dll とかリソースが入ってる。
dll 内には書いた Page とか UserControl のクラスが入ってて、
それを Silverlight プラグインがロードして表示してる。
541 = :
>>540
ありがとう!
VWD2010で開発してるんだけど、Bin/debugディレクトリの中にxapとhtmlがあったんでその2ファイル
をデスクトップにコピーしたら確かに動いた!
(ディレクトリ名が日本語だと動かなかったけど)
今までWindowsでしか動かないC#はちょっとな~と食わず嫌いしてたけど、Silverlightベース
で開発するならどんなブラウザでもMacでも動くんだからこれを気に勉強してみようかな
JavaScriptはあまりにも冗長なコードになりそう
543 = :
アップロードもできないの?
544 = :
ええ・・
fc2(fc2ブログ)なので対応拡張子に無いと律儀にはじかれるんですよ・・
ああいうところって違法なコンテンツの配布先に利用されるのを嫌って
zipとかも対応してなかったりするしw
545 = :
意図的にzip弾いてるなら、
そりゃjarもxapもダメでしょうねえ。
546 = :
そこだけ外部のサイト使えないの?
全部移行するのはブックマークやらなんやらできつそうだから
549 = :
>>544
アップロード可能な拡張子に変えてもダメ?
ぶっちゃけXAPは拡張子何でもいい。
550 = :
mimeが違うんだから.htaccessとか置けない限りダメだろ
類似してるかもしれないスレッド
- Microsoft Silverlight その9 (574) - [96%] - 2023/1/25 14:30
- Microsoft Silverlight その8 (996) - [96%] - 2011/11/12 23:46 ○
- Microsoft Silverlight その6 (1001) - [96%] - 2010/11/1 4:09
- Microsoft Silverlight その5 (984) - [96%] - 2010/4/16 20:20 ☆
- Microsoft Silverlight その4 (1001) - [96%] - 2009/12/5 9:05 ○
- Microsoft Silverlight 2.0 その3 (556) - [83%] - 2009/3/24 0:35 ○
- Microsoft Silverlight 2.0 その2 (1001) - [78%] - 2008/11/21 11:47 ○
- Microsoft Silverlight 2.0 (1001) - [74%] - 2008/5/12 6:08 ○
- Silverlight登場で.NET使い大勝利!!! Part2 (525) - [18446744073709551603%] - 2016/10/16 0:30 ○
トップメニューへ / →のくす牧場書庫について