ASP.NET MVC (659レス)
上下前次1-新
157: 2013/10/29(火)01:25 ID:??? AAS
Model Firstが悪いんじゃねーよ。
その実装が糞だってだけだ。 やってればわかるだろ。
しかも、生SQLごりごりとかさ、EFの前までに何段階もあっただろ。
158(3): 2013/10/29(火)10:31 ID:??? AAS
EFは、使った人間なら分かるが、ムダにでかくて遅い。 外部リンク:code.google.com
生成するSQLも汚い。
少なくとも初期は使いにくかっただろ。
理想はいいのだが、実装が追いついていない感じ。
最新のバージョンをさらっと触っただけの人はしらんが、俺の認識はこーだ。
DBがそのアプリ、サイトだけで使うものなら ORMで好き勝手にやればいいけど、
他のアプリでも使うテーブルを参照するとかそういうときにトタンに問題が出る。
結局、自作の ADO.NETのラッパー使わざるを得んのは、みんな分かると思うがね。
159(1): 106 2013/10/29(火)13:13 ID:??? AAS
EntityFramework より、Linq to SQL とかのほうが使われているんじゃないの? (定量的なソースはありませんが)
他にも >>158 の dapper とか dotconnect とか NHibernate とか、ADO.NET直とか、
Javaとちがって .NET界の ORM は、デファクトといったものが無く乱立しているような気がする。
160: 2013/10/29(火)13:14 ID:??? AAS
名前欄は間違いです
161(1): 2013/10/29(火)14:02 ID:??? AAS
ADO.NET データセット、LINQ to SQL、Entity Framework それらの特徴と今後の将来性
動画リンク[YouTube]
162: 2013/10/29(火)14:16 ID:??? AAS
>>159
古いシステムならLINQ to SQLもあるだろうけど、
新規開発はEFでしょう。MSもEF推してる。
LINQ to SQLはSQL Serverでしか動かないしそれだけでもう駄目だわ
あとWindowsのほうが乱立してない
MS信仰が強いからMSの技術で代替がない場合を除いて
まずMSの技術を使おう、となる
JavaはORMはHibernate以外にHibernateの亜種、
JPA、Cayenne、iBatisといろいろある
Webフレームワークも乱立していて定番もなくカオス。
省4
163(2): 2013/10/29(火)14:27 ID:??? AAS
>>158
micro ORMはリレーションに対応できないのばっかりじゃないか
EFのような高機能なORMと比べてパフォーマンスが速い、
なんて主張はナンセンスだよ
開発生産性を高めるためにORM使っているというのに
リレーション対応できないんではメリットの大半が失われてる
あとシンプルなリレーションなら、ORMで生成されるSQLはほぼ完ぺきだよ
パフォーマンスこだわるなら、正規化ゆるくして複雑なJoinを避けるよう
にするのも定石だとおもう
164(1): 2013/10/29(火)14:31 ID:??? AAS
EF6ってだいぶんパフォーマンス改善されてる感じ?
4とかはパフォーマンス悪すぎた
VSに統合されている(GUIが使える)のは大きなメリットだな
165(1): 2013/10/29(火)15:21 ID:??? AAS
>>154
おいおいおい、現場で必要なのはDBアクセス手段であって何の技術かなんてどうでもいいんだよ
生SQLやデータセットでは使い辛い、開発し辛い、メンテし辛い、テストし辛い
それを解決する手段として模索されてきた一つがORMだろ
つまり最初から置き換え狙いでデータセットと競合する
それを同列に扱わないって方が意味わからん
>>156
EF1はなかったことにしたいんですねとてもよくわかります
そして反証は例によって出せない、と・・・(笑)
166(2): 2013/10/29(火)15:52 ID:??? AAS
>>163
いいえ、遅いことを高機能だからと目をつぶるのはナンセンスです。
開発生産性を高めるためだけにしか使えないとご自分でおっしゃっているの分かりますか?
167(1): 2013/10/29(火)17:12 ID:??? AAS
遅いか速いかとか、そのスピードだけみてもなぁ
使えるかどうかは、必要十分な速度に達してるかどうかが問題なわけで
今のEFは使い物にならないぐらい遅いのか?
168: 2013/10/29(火)18:00 ID:Voe6Fo0l(1/3) AAS
>>164
自分では測ってないけど、速くなってると思う
MSのVersion History見るとパフォーマンス改善したという
記述がいくつか見つかる
外部リンク:msdn.microsoft.com
>>165
俺の中ではCode FirstがサポートされたEF4.1以降がEntity Framework
それ以前は使ってないし知らん
>>158
これわざわざベンチマークとったのになんでバージョンも日付も入れないんだろうね
省1
169: 2013/10/29(火)18:03 ID:??? AAS
>>161
YouTubeにこんなチャンネルできてたんだ。
エバンジェリストの解説もゆるゆるだなw
この動画でも、LINQ to SQLはオワコン扱いされてるね
170(1): 2013/10/29(火)18:13 ID:Voe6Fo0l(2/3) AAS
>>166
DataSetとEFでは開発生産性が大違いなんだから
EFを使わないという選択肢は可能な限り避けたい。
「高機能ORMを使わずにゴリゴリやる」とか「ストアドプロシージャを使う」
とかいう対策は大きな犠牲を伴う。開発生産性が大幅に低下する。
利用は極力ひかえるべきパフォーマンス対策
パフォーマンスを上げる方法は他にたくさんあるしまずそっちを試せばいい。
メモリを大量に積む
SSDにする
キャッシュを使う
省4
171: 2013/10/29(火)18:19 ID:Voe6Fo0l(3/3) AAS
>>167
十分に速いよ
ありふれたハードで秒間1000クエリ以上こなせる
SSD時代になってハードの性能が格段にあがってるから
コードでちまちまパフォーマンス改善をやる必要性は低くなってる
EF6出てるから使ってみればいい
せっかくMSの開発ツール使えるのにEF使わないなんてもったいなさすぎるわ
172: 2013/10/29(火)18:46 ID:??? AAS
EF遅いって、ソシャゲみたいなよほどレスポンスを重要視する業界ならわかる。
それ以外ならたいていインデックス設計、さらにはキャッシュでまず何とかなるでしょ。
173: 2013/10/29(火)19:38 ID:??? AAS
クエリの組み立てに式木を使う処理である以上、性能面で越えられない壁があるのは事実。
っと言っても、ユーザ数が知れたイントラ用途とかで気になるレベルではないので、
余程性能要件が厳しいものでもなければ使うで良いと思うけど。
それで困るケースではMicro ORMで。
っというか、Expressionsの処理をもっと速くしてください(´・ω・`)
174(2): 2013/10/30(水)09:50 ID:??? AAS
>>170
使えるなら、使うのに躊躇する理由は無い。
(俺は)使えないという事実を無視して、便利だから、高速化の手法はいろいろあるからといわれても困る。
もったいないって、何がもったいないのかさっぱり分からん。
なんか頭固いなぁ。貴方のの考えや、貴方が便利に使ってるのを否定してるわけでもないのに。
175: 2013/10/30(水)10:20 ID:??? AAS
>>174
これが信者ってもんですよ
ひたすら盲目で蒙昧
176: 2013/10/30(水)11:43 ID:TzYVxI9W(1) AAS
>>174
あんたは>>166?
>163のレスを
「開発生産性を高めるためだけにしか使えない」などと曲解したのが悪い。
EFを否定したととられても仕方がない
ORM否定派がいるうざい流れの中での発言ならなおさらだ
リレーション追えないようなmicro-ORM出してきて
こっちのが速い、とか本当に無意味、ナンセンス
パフォーマンス比較するなら機能が同等のもの出せよと思う
上下前次1-新書関写板覧索設栞歴
あと 483 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.007s