[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 08/06 12:24 / Filesize : 269 KB / Number-of Response : 1039
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

ふらっと C#,C♯,C#(初心者用) Part117



1 名前:デフォルトの名無しさん mailto:sage [2015/10/02(金) 20:50:08.06 ID:IGV3Viy6.net]
「どんなにくだらないC#プログラミングやVisual C#の使い方に関する質問でも誰かが優しくレスをしてくれるスレッド」です。

他のスレッドでは書き込めないような低レベルな質問、
質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からないなど、勇気をもって書き込んでください。

内容に応じて他スレ・他板へ行くことを勧められることがあります。ご了承下さい。

なお、テンプレが読めない回答者は邪魔なので後述のC#相談室に移動して下さい。

>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。

■前スレ
ふらっと C#,C♯,C#(初心者用) Part116 [転載禁止](c)2ch.net
peace.2ch.net/test/read.cgi/tech/1436344868/

■関連スレ
C#, C♯, C#相談室 Part89 [転載禁止](c)2ch.net
peace.2ch.net/test/read.cgi/tech/1443271409/

■コードを貼る場合は↓を使いましょう。
ideone.com/

604 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 12:16:37.98 ID:955qm0wN.net]
プロジェクト構成を追加する

605 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 12:19:39.17 ID:dWA72Rvv.net]
Any CPUじゃダメなの?

606 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 15:32:24.63 ID:guayBMf4.net]
ダメだろ

607 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 15:39:55.16 ID:KrpwsfQj.net]
クラスライブラリプロジェクトでEntityFrameworkを利用する
メインのプロジェクトではEFに直接関わるようなコードは一切書いていないのに
エラーが出て、どうやらApp.configをクラスライブラリのそれと同じように書き
EFもインストールしないといけないみたいですがなぜですか?
メインのコンソールアプリでは、
ClassLibrary1.Run();
としか書いていないのに

608 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 16:20:31.16 ID:hUa1dWCf.net]
>>588-589
dllならAny CPUで良い気がするけどな

>>590
そのクラスライブラリがEF使ってるからだろ

609 名前:質問者 mailto:sage [2015/11/06(金) 19:15:27.36 ID:n93wU3zk.net]
public const string[] names = { "abe", "kume", "ume"};
は何故できないの?
C#っておかしい

610 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 19:45:53.50 ID:DdHE3j1N.net]
歴史のある言語だし、配列のconstを許すと何か不都合があるんじゃないかな
知らんけど

611 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 19:49:11.59 ID:JLRIGyKN.net]
一般的な業務システムにEF使うのってお前ら的にどう思う?

DB周りに中間テーブル勝手に作られたり
とかどうなんかなーって思うんだけど

612 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 19:49:47.56 ID:H8/mSBf4.net]
C#のconstはmutabilityを示す修飾子ではない
mutabilityはクラス特性の一つにすぎない



613 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 19:52:12.27 ID:O+3ivu6x.net]
>>594
テーブル管理をきっちりして、メンテナンスが面倒な糞長いクエリ作らないことさえ心がければ問題ないと思う
それが出来るなら何でもOKだろと言われたらそれまでだが

614 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 20:01:54.19 ID:hUa1dWCf.net]
>>594
コードファーストで、プログラマがモデル変更したらDBレイアウト変わるとか
DB層とアプリ層と分離するような業務システムだとあり得ん

EFはコードファーストしかないわけじゃないけど
最近、既存DBからコードファーストとかいうわけわからんオプションも追加されたけど
EDM作らんで良いし、マッピングの自由度上がるから、これが結構いい感じだぞ
俺はこれをコードセカンドと呼ぶ事にしたw

615 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 20:02:50.21 ID:Vl4Fajoj.net]
構造体のconstもできないよね
あとIntPtr(これは仕方ないか)

616 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 20:04:07.68 ID:v3nYR+i3.net]
>>594
DBファーストなら中間テーブルは作られない(たぶん)
パフォーマンスに引っかからなければ採用していいと思う

617 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 20:07:22.09 ID:v3nYR+i3.net]
>>592
ミュータブルなら配列があれば許されたかもね…

618 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 20:11:37.63 ID:VIb2xLBB.net]
constはコンパイル時にリテラルを埋め込むからnewで生成するインスタンスはconstへ代入できない。

C#で配列を定数扱いしたければReadOnlyCollectionを使う。

619 名前:デフォルトの名無しさん [2015/11/06(金) 22:35:43.69 ID:ZOMBif/U.net]
readonlyにするとそのメンバの参照を変えることはできなくなりますが、そのメンバのメンバの値は変えれますよね?

そのメンバのメンバもreadonlyにすることはできないんですか?

620 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 22:45:54.70 ID:v3nYR+i3.net]
メンバをreadonlyプロパティにすればいい

コレクションならIReadOnly〜インターフェースがある

621 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 23:10:20.05 ID:lDi+bZZ1.net]
C#のmutabilityはクラス特性で備えるもので
修飾子で指定するものじゃないと言ってんだろ
理解力が不足しているのか?

622 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 23:18:27.60 ID:dWA72Rvv.net]
こんな感じでプロパティ作れば、初期化以外で変更できないようにできるけど…

shield class Hoge {
public int Property1 {
get;
} = 10;

public int Property2 {
get;
} = 20;
}



623 名前:デフォルトの名無しさん [2015/11/06(金) 23:25:34.03 ID:ZOMBif/U.net]
>>603
ありがとうございます。使ってみます。

>>604
ちょっと調べたけどよくわかりませんでした。
久しぶりに会った友達に、おめ

624 名前:ぇずいぶんとミュータブルなぁーって使う感じでしょうか? []
[ここ壊れてます]

625 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 23:28:23.63 ID:x7E/To5I.net]
>>605
もうちょっとこの構文は何とかならなかったのかと思うな…

626 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 23:42:18.13 ID:KrpwsfQj.net]
>>591
そこがよくわからないんです
クラスライブラリでしか使ってないEFが
なぜメインプロジェクトでもインストールして
App.configまで書き換えないといけないのか
例えば、zipライブラリやその他ライブラリを
ライブラリプロジェクトで使っていても
メインプロジェクトでそれらライブラリを参照しなくてもいけてます
同じように分離できないんでしょうか?

627 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 23:51:07.90 ID:MmN1hyKF.net]
>>604
その説明は、誤解を生みまくる
const言っているなら C++ のアレを意識しているんだろうから
C++のmutableとゴッチャになる

628 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 23:55:31.99 ID:MmN1hyKF.net]
Java全盛期の時代に、政治的な都合でJavaクローンとして生まれたC#ゆえ
書き換えに関する制御は基本的に期待しないほうが良い、というか諦めたほうが良いでしょう
当時constなど不要、高速化目的ならオプティマイザが頑張ればいいという考えが席巻していたから残念な事になってしまっている
目的は高速化じゃないといっても話聞きゃしない話聞かない回答者みたいなので一杯になってたからな

629 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 23:55:56.97 ID:J1IjfUsv.net]
>>608
ライブラリが特定の場所の特定のDBに紐付いてたら再利用性も柔軟性もクソもないだろ?
構成はアプリ側で指定するんだよ

630 名前:デフォルトの名無しさん mailto:sage [2015/11/06(金) 23:59:22.58 ID:/KOBRm1I.net]
MVVMパターンについて質問です。
Modelクラスがツリーのデータを保持できるように定義されている場合、

class Model
{
 public List<Model> Children;
 public Model Parent;
}

ViewModelクラスはどのように作ればよいのでしょうか。


class ViewModel
{
 public ObservableCollection<ViewModel> Children;
 public ViewModel Parent;
}

ユーザーがアイテムを追加・削除した際の、VM〜M間でのChilrenのやりとりで良い方法が思い浮かばないのです。

631 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 00:03:09.47 ID:HCtDVk7w.net]
地道にモデル側のコレクションにAddしたりRemoveするしかないんじゃないのっと

632 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 00:05:43.30 ID:mc1zorkl.net]
>>612
そんなもんModelをそのまま公開すりゃいいよ
いちいちラップするのは無駄に複雑になるだけ



633 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 00:10:14.79 ID:bqVTu3cR.net]
ちょっとなにいってるかわからないですね

何に使いたいのでVMいるのかがわからない

634 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 00:37:06.17 ID:rJMrVjho.net]
>>611
特定のDBには既にひも付けされてますよね?
Entityクラスを事前に静的に生成しているわけだし
特定の場所に関しては確かにそうですが
dbパスを渡すだけでいいはずなのになんでEF入れなきゃだめなんでしょ?

635 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 00:38:32.76 ID:VdNkzOpu.net]
mvvm関係ないけど、オブジェクトが持ってる参照をそのまま外に出すのとカプセル化の間でいつも悩む
かといって毎回コピーしたら遅いし

636 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 00:47:30.53 ID:3j5S0EXp.net]
>>617
インターフェイス通せばいいじゃない
>>612
選択したツリー項目毎に特定のVM表示したいの?

637 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 01:36:23.40 ID:X2ab0wjO.net]
>>616
EF使うのに入れなくていいと思う理論がわからん

638 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 01:55:38.19 ID:rJMrVjho.net]
>>619
実際に使うのはクラスライブラリ側だけだからです。
EFじゃなくて他のライブラリの場合は
メインプロジェクトに入れなくても動くのに
なぜEFだけ特殊なのかが知りたいんです

639 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 02:09:02.01 ID:VdNkzOpu.net]
>>618
やっぱそうなるよねぇ
操作用のインターフェース

640 名前:作るの面倒だけど []
[ここ壊れてます]

641 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 03:22:43.92 ID:X2ab0wjO.net]
>>620
そもそもほんとにメイン側でなにもしてないなら
実行時に必要なライブラリがそろってれば良いだけで、メイン側プロジェクトにEFの参照いらないけど?
別に特殊でもなんでもない
もしそんな前提があるなら、ASP.NETでEF使えなくなるじゃないか

642 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 03:28:58.48 ID:rJMrVjho.net]
>>622
>>590
一行しか書いてないのになぜ参照がいるんですか?



643 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 05:33:11.29 ID:cHn3VkC0.net]
>>623
クラスライブラリ側のapp.configを見てごらん
EFをインストールしたときに書き換えられた部分があるでしょ
そしてよーく考えよう

644 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 17:24:35.95 ID:X2ab0wjO.net]
>>623
知らんがな
ソース全部晒してみろ

そういえば、エラー出るでどんなエラー出たか書かない奴の質問は答えるだけ無駄って誰かが言ってたな

645 名前:デフォルトの名無しさん [2015/11/07(土) 17:54:38.72 ID:1m+5NuQy.net]
データベースやサーバーアプリでマイクロソフト系技術はもうだめだね
消えゆく運命だろ

646 名前:デフォルトの名無しさん mailto:sage [2015/11/07(土) 23:27:09.98 ID:qRUcE/WB.net]
貴重な時間を浪費させていくスタイルだから無駄ではない
価値マイナス

647 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 00:28:50.73 ID:QQOP8UEs.net]
>>626
https://github.com/damienbod/SQLiteExamples
やってることはこれと同じです
これもメインプロジェクトでインストールしてます

メインプロジェクトのApp.Configを書き換えない場合
エラー
No connection string named 'MyEntities' could be found in the application config file.
これをぐぐると、App.Configをメインプロジェクトにコピペしろと回答がある
が、コピペしても、
error 0152: No Entity Framework provider found for the ADO.NET provider
with invariant name 'System.Data.SQLite.EF6'.
Make sure the provider is registered in the 'entityFramework' section of the application config file.
となる、つまりインストールしろってことなんだろうけど

648 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 02:51:20.55 ID:tK1NbI7K.net]
>>628
それはアプリケーション定義ファイルを設定しろと言ってるだけで
EFをインストールしろとも参照設定しろとも言ってない

実際それじゃないが、メインアプリで参照設定なしでもアプリケーション定義ファイルを設定すれば動くのは確認した
(当然アセンブリは参照できるところに存在する必要はある)

なぜアプリケーション定義ファイルの設定が必要なのかは、EFのコンポーネントがデフォルトでそれを見に行くから
調べた感じではアプリケーション定義ファイルなしでも動くように出来そうだったけど、かなり手間かかりそうなので試してない
接続文字列だけなら簡単なんだが

649 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 03:54:18.19 ID:QQOP8UEs.net]
>>629
MyDbLibraryを参照すれば、設定なしで複数のアプリで同じDBを簡単に
取得出来るようにしたかったんですが
できなくはないけど、面倒そうですね
んーやっぱりEF使わないでやったほうが後々楽かな

私事のためにお時間取らせてしまって申し訳ない
調べて頂いてありがとうございます

650 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 10:17:34.08 ID:gApUJ0pc.net]
教えてください

■質問1
下記のような構造体を配列にして内容を格納しています
(本来はもっとパラメータは多いですが簡略して3つにしてます)

struct test {
 private int id; //100000以上からの6桁
 private string name;
 private int type;

 public Test(int ID, string Name, int Type) {
  id = ID;
  name = Name;
  type = Type;
 }
}

この構造体配列の中から該当するIDを検索し、その添え字番号を得たいです
ForEachやwhileなどのループ内でIDを比較するしかないでしょうか?

「C# 構造体 検索」でぐぐってみたものの、
どのようにすればいいのかが見当もつきませんでした

■質問2
そもそも、このようなデータを構造体として用意するのは良いのでしょうか?


以上、よろしくおねがいします

651 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 10:48:27.07 ID:S9+EFBLU.net]
LINQとかで検索するのもあるけど、Dictionary使うのがいいと思うが

652 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 11:23:47.79 ID:pl2PgCRK.net]
C#とWPFでさくっとアプリを作れるようになりたいと思い、とりあえずC#の簡単なテキストは流し読みしたが…
(他言語の経験はあるので)
WPFはどのテキストを読んだらいいんだろう?
(開発にはLivetを使うといいと聞いたけど、
通常のWPFが分かっていること前提っぽいので、ちゃんと勉強しようと思ってます)

プログラミングWindows 第6版 上/下 が名著らしいけど、ストアアプリ特化で学習には向かない…?
このスレ的にオススメのテキストを教えてくれないだろうか



653 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 11:45:20.22 ID:qE8APb0L.net]
Livetは2年前ならともかく、今は作者が飽きているので薦めない
Prismを使った方がよい

テキストに関しては知らない
数年前ならEssentialを薦めただろうが
いかんせん古すぎる
WPに対応する必要がないならストア向けのテキストも無駄だろうな

654 名前:633 mailto:age [2015/11/08(日) 12:05:28.12 ID:pl2PgCRK.net]
>>634
なるほど…今はPrismの方がいいのか。さんくす
テキストは…ストアアプリは作る気がないしなぁ

プログラミングWindowsのWPF XAML向けの解説は一応あるけど、
さすがにいちいち照らしあわせて読むのは大変そう
blogs.msdn.com/b/shozoa/archive/2014/07/24/using-programming-windows-chapter1.aspx

結局テキストをどうしたらいいのかわからんね

これを見つけたんだが、まだ去年のものだし古くもなく大丈夫だろうか?(同内容のkindle版もあり)
www.slideshare.net/okazuki0130/wpf45-38048141

655 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 12:49:12.21 ID:cfidXKbm.net]
>>631
List<T>でFindeIndex(s => s.id == searchID)とか
でもidがprivateだな

検索数多いなら632が言うようにキーがIDの辞書作った方が速い

656 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 13:05:36.69 ID:qxSNyhqm.net]
privateなプロパティを持っているとLINQで匿名型をnewしようとしてもアクセス出来ないレベル
というエラーが出るしなあ
そして匿名型はコンストラクタを呼び出す手段がないので次のようなコードがコンパイルできない

ideone.com/QVNres

657 名前:631 mailto:sage [2015/11/08(日) 13:35:56.75 ID:gApUJ0pc.net]
回答ありがとうございます

>>632
Dictionaryを詳しく調べてみます
データを格納後に、Dictionaryで別途索引を作る…というイメージですよね、たぶん
LINQも調べて勉強してみます

>>636
FindIndexも調べてみます
FindIndexは構造体のIDがprivateでなければ使えるのかな?
なお、件数はおそらく多くなりますので、Dictionaryでいこうと思います

>>637
構造体のつくり自体がそもそもまずいということですね
データを扱うのに構造体が良さそうだと思い使おうとしていたのですが、
まだまだ勉強不足のようで…勉強し直します
匿名型というのも分かってないレベルです


ひとまず頂いた回答・ヒントからいろいろ調べてやってみます
つまづいてどうしようもなくなったらまた質問に来ますので
その際はみなさんよろしくお願いします

658 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 14:11:47.01 ID:IOiPLIcZ.net]
>>635
wpfのことは忘れてFormsアプリを作

659 名前:驍だ []
[ここ壊れてます]

660 名前:633 mailto:sage [2015/11/08(日) 14:13:41.26 ID:pl2PgCRK.net]
>>639
今あえてWPFでなくFormsを学ぶ理由は何なんでしょう?

661 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 14:21:58.19 ID:qxSNyhqm.net]
匿名型やめて普通にnewすれば行けるよ
この場合でも読み出し専用のプロパティは必要だけど

ideone.com/VQnbmB

662 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 14:22:03.96 ID:qE8APb0L.net]
そりゃあ情報量だろ



663 名前:633 mailto:sage [2015/11/08(日) 14:24:04.50 ID:pl2PgCRK.net]
>>642
なるほどな…すまんが、それでもやっぱりWPFでいきたいわ
情報量が、と言うならC++でもやってろ、という話になるので

664 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 14:26:58.36 ID:qxSNyhqm.net]
それとToArray()はこの場合は不要だった
遅延評価でいいや
それとインデックスが不要なんだから(tt, n)でなくて(tt)でいい
適当に書いたからいろいろおかしかった

665 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 14:28:16.90 ID:jwSrphbk.net]
フォームアプリだとストア対応はまた別スキル?

666 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 14:48:07.12 ID:t8ezhEA7.net]
WPFはマイクロソフトからもとっくの昔に見捨てられたコンテンツだからな
2010年くらいからほぼ更新されてない
開発者も減ってるし今更やっても無駄
そんなのやるくらいなら注目度高いElectronでもやったほうが100倍モチベーション上がるだろ

667 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 14:48:47.97 ID:0dVpsRSu.net]
>>638
キーが決まってるならKeyedCollectionなんてのもある

構造体orクラスの問題は、大抵の場合、クラスの方がいい
構造体はnewのコストが問題になった時に試してみればいい

668 名前:633 mailto:sage [2015/11/08(日) 15:05:42.53 ID:pl2PgCRK.net]
>>646
すまん。Electronも考えたんだが、いかにもWebアプリっぽい見た目と動作になるのが気持ち悪くてなぁ…
WPFは見捨てられたと言うのであれば、皆WindowsでGUIアプリを作るには何を使ってるんだろう?

669 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 15:10:08.20 ID:qL6T2MEr.net]
>>646
.Net4.6で改良されてるし、どこまで本気か分からないけど最近微妙にやる気出してるようだよ。
blogs.msdn.com/b/dotnet/archive/2014/11/12/the-roadmap-for-wpf.aspx

670 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 15:14:56.34 ID:b5oYWyCu.net]
フォームのほうが見捨てられてるからWPF以上に未来はないと思うが、だからといってWPFに乗り換える気が起きない。
んで結局、フォームから未だ抜け出せずにいる。

671 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 15:18:18.25 ID:t8ezhEA7.net]
これからはWPFと言いながら10年近く全く普及せずに下降線を辿ってきたからな
だいたいGUIアプリにしてもWindowsデスクトップに固執するような時代はとっくに終わってる

672 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 15:51:44.93 ID:+dkH7XCP.net]
WPFは早期に標準コントロールを充実させていれば多少は広まったんじゃないのかな



673 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 16:09:34.75 ID:b5oYWyCu.net]
MVVMだなんだの言いながらデフォルトでそれ系のまともなフレームワークが入ってないのが敗因だろうな。

674 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 16:21:43.65 ID:IOiPLIcZ.net]
wpfのまともな文献がないというのが
このFrameworkの実態を表しているような気がするね
ネットにあるのは、Formsとは違うんです!っていう営業トークか
MVVMという概念がすごいんですってだけだろ

実際MVVMが必要になるような高度なアプリケーションなんてあるのか?
リアルタイムにデータを処理するにしてもイベントドリブンモデルのほうが簡潔で扱いやすい
MVVMはオブジェクト指向を「こじらせた」典型例だと思うんだよね

675 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 16:40:41.80 ID:qWpIgAsz.net]
>>654
いや英語では結構本出てるよ。
MVVMがウンコなのは同意するけどw

676 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 16:57:42.27 ID:qE8APb0L.net]
設計がとにかく野暮ったい
僕の考えた最強の〜って感じ
引き算を覚えてくれ頼むから

WPFを

677 名前:除けば成功しているMVVMフレームワークはいくらでもあるし
設計センスの問題だと思う
[]
[ここ壊れてます]

678 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 17:02:03.13 ID:t8ezhEA7.net]
mvcとかやりたければ本流のhtml5使えばいい
標準フレームワークも用意されないWPFが流行るわけもない
マイクロソフトも普及させる気はないよ
ポーズだけ
Silverlight潰したりマイクロソフトは既に独自技術の普及を断念してる
代わってTypescript用意したりweb標準技術の採用に舵を切ってる

679 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 21:46:02.90 ID:SGCCwhdk.net]
>>650
フォームは現時点でほぼ完成しているから何も変える必要ないんじゃないの?足りない機能ある?

680 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 22:53:03.65 ID:X/vorztS.net]
prism使って、データバインドが非常に協力でコードもすっきり書けるけど、
Formsなら簡単に出来た事がものすごく手間だったり、
独自のUIが簡単にというが実際はとてつもなく面倒くさい。
datagridの配色変えるだけでも、
あの部分をどこで色を変えられるのか調べるだけで相当時間がかかる

681 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 22:54:49.77 ID:b5oYWyCu.net]
>>658
フォームに関しては、今更機能追加されたところであれだし、現状維持してくれれば十分だな。

682 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 22:55:41.36 ID:HlEs+VqN.net]
俺はMFC FeaturePack並のツールバーやドッキングウィンドウが標準で欲しいなぁ。
今はサードパーティー頼みだし。
MFCも、もうメンテナンスモードだろうと思ってた頃にFeaturePack出てきたんだから
ワンチャンあると信じたい。



683 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 22:58:52.76 ID:l/gAevhW.net]
WPFのDataGridは全く使い物にならない
あの糞がそのまま放置されてるんだから、MSのやる気の無さがよくわかる
まあそもそもWPFは設計思想的にDataGrid的なものはListViewをカスタマイズして作るもんであって、
出来合いのDataGridをそのまま使うようないい加減なGUIでいいのならWPF使う必要は全く無いんだけどね

684 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 23:04:24.23 ID:b5oYWyCu.net]
WPFならMVVMでドメインとビューの分離が〜とか言うが、フォームでもある程度は、データバインドできるし、
WPFほどまでは行かないにしろ、そこそこの分離は、可能だと思う。

いざとなれば、ビューを直接扱えるし、WPFみたいに変に手回ししなくていいしフォームのほうが楽。

685 名前:デフォルトの名無しさん mailto:sage [2015/11/08(日) 23:26:11.25 ID:X/vorztS.net]
WPFはC#を習得した人用だからなあ、
いきなりC#とXaml両方まなぶのはきついんじゃない?

GUIを今後一切変更しないならFormsでいいだろうけど、
変更したくなった時、クソ面倒くさい

686 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 00:30:33.40 ID:nH7Pt/o2.net]
言語としてのC#にそんなに覚えることがあるとは思えんが、
WPFは覚えることだらけだな。

しかもMSDNのどこにも明示されてない仕様も結構あってかなり萎える。

687 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 00:42:01.77 ID:YzX/XRY3.net]
>>662
>DataGrid的なものはListViewをカスタマイズして作るもんであって、
このカスタマイズする前に大量のオブジェクトの前に力尽きる人が多かったから
WPFは流行らなかったんだろうな

オブジェクト指向の継承って結構早い段階から使うのやめとけ
って言われてたと思うけどwpfって継承地獄なんだよなあ

688 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 01:51:51.42 ID:q+BDOfSy.net]
継承(is a)より包含(has a)とか、無駄に複雑な継承関係にしないとかなら分かるけど、
一般論としてそんなこと言われてたっけ?

689 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 03:56:53.75 ID:m77m/g5H.net]
WPFが出た当時、そちらに移行しなかった最大の理由は
リファクタしたら、XAMLだけ手作業修正になったから
今は、ちゃんと連動してるんだろうか?
していた

690 名前:ニころで、あんだけ複雑で、しかも機能的にフォームから浮いていると移行する気にはなれないけど []
[ここ壊れてます]

691 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 04:06:23.65 ID:m77m/g5H.net]
>>654
同感、WPFからATL臭がする
これからはWPFだといっている人は何見て、WPFが流行っていると思っているのだろうか?

692 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 08:53:11.53 ID:AkXykSSl.net]
wpfのControlTemplateは、FormsのOwnerDrawに比べたら格段に楽だと思うけどな



693 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 09:23:03.24 ID:eW5XCVAC.net]
部分を誇っても仕方ない
一芸に秀でていれば使えないこともない人間とは違うんだよ
フレームワークは全体のバランスが求められる

694 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 12:09:04.18 ID:6wZmioGw.net]
でも結局は作りたいものに適した形をしているか、ってだけだからな。
適してれば(=開発工数を抑えられるならば)、どんなんだって使うことはあるし。

ここで声高に否定することに意味があるとは思えん。むしろなにか作為でもある?

695 名前:デフォルトの名無しさん [2015/11/09(月) 12:24:46.82 ID:7FJWPJQr.net]
自動生成はWPFのが簡単でいいよね
工数削れるよ

696 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 12:30:10.88 ID:eW5XCVAC.net]
否定派の前で肯定するから否定されてんだろ
頭悪いんじゃねえのか?

697 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 12:35:57.06 ID:EOVCHtBm.net]
639が聞かれてもいないお節介を焼いたのがそもそもの原因だ
発狂するまでXAML書き続けて死ね

698 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 13:09:55.63 ID:6wZmioGw.net]
声高に否定しhとかないと不安なのかと。w

699 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 13:22:50.09 ID:eW5XCVAC.net]
書き込みの推敲もできないほどではないんじゃねえの〜
クソでも漏らしそうなのか?
漏らすなよ、ただでさえ臭いんだからな

700 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 13:31:13.13 ID:6wZmioGw.net]
え。まさかの図星だったんだ。w

701 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 16:23:18.75 ID:m77m/g5H.net]
>>672
作為とか特にないけど、俺の知っている業界の範囲でWPFを使っている所なんてないし
一時使っていたところも全部切り上げてFormsに戻ったからな
誰が使っているんだ?って思って書いてみた

702 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 16:25:52.00 ID:m77m/g5H.net]
あと、自分の経験から、フレームワークが死ぬかどうかの嗅覚センサーは高精度にしておいた方がいい
システムが大規模になってから、さあ元に戻ろうとかいう話になると地獄みるでw



703 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 18:25:32.73 ID:s3Itz59O.net]
WPFは、やたらと抽象化しすぎで、解りづらいんだよなぁ

704 名前:デフォルトの名無しさん mailto:sage [2015/11/09(月) 19:32:07.70 ID:YzX/XRY3.net]
声高に否定しとかないと、ふらっと誰かが立ち入るかもしれないだろ?
誰も助けられないエリアに人が立ち入ろうとしたら全力で止める
それは時間の無駄と戦い続けてきたICT分野の精神そのもの






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<269KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef