Submit Search
LINQ、Select連弾ってやります?
2 likes
1,198 views
Ryota Murohoshi
2015/04/11のJXUG第4回で発表した資料です
Technology
Read more
1 of 34
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
More Related Content
PPTX
未来のプログラミング技術をUnityで -UniRx-
torisoup
PDF
どうしてこのコードエラーになるんですか?
Ryota Murohoshi
PPTX
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
Unity Technologies Japan K.K.
PPTX
若輩エンジニアから見たUniRxを利用したゲーム開発
Hirohito Morinaga
PDF
Interactive UI with UniRx
Yuto Iwashita
PDF
Unityと.NET
AimingStudy
PDF
UniRx完全に理解した
torisoup
PPTX
PhotonCloudで一ヶ月ゲーム作った話
Hiroto Imoto
未来のプログラミング技術をUnityで -UniRx-
torisoup
どうしてこのコードエラーになるんですか?
Ryota Murohoshi
【Unity道場スペシャル 2017札幌】おっさんでも美少女になれる?!VRアイドルの作り方
Unity Technologies Japan K.K.
若輩エンジニアから見たUniRxを利用したゲーム開発
Hirohito Morinaga
Interactive UI with UniRx
Yuto Iwashita
Unityと.NET
AimingStudy
UniRx完全に理解した
torisoup
PhotonCloudで一ヶ月ゲーム作った話
Hiroto Imoto
What's hot
(20)
PDF
Unityで意外と簡単・・・だけど難しいVRコンテンツ
infinite_loop
PDF
CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話
Keisuke Utsumi
PPTX
『ポコロンダンジョンズ』エフェクトや演出制作ノウハウ
GameCreators,CyberAgent
PDF
Unity での asset bundle による追加コンテンツの扱い方
Kouji Hosoda
PDF
こんなに違う!Unityアプリケーション講座
Unity Technologies Japan K.K.
PDF
Unityのasset bundle運用実例@lordofknights
Kouji Hosoda
PDF
ゆるロボ製作所開発事例 – ドローコール削減
Mikito Yoshiya
PPTX
Unity * スマートフォン開発で学んだこと
Katsutoshi Makino
PDF
【Unity道場スペシャル 2018仙台】Unityでステージをつくるのじゃ
Unity Technologies Japan K.K.
PPTX
Unity ゲーム開発
Katsutoshi Makino
PPTX
ポコロンダンジョンズを彩るアニメーションノウハウ
GameCreators,CyberAgent
PPTX
UE4ローカライズ事例 (UE4 Localization Deep Dive)
エピック・ゲームズ・ジャパン Epic Games Japan
PDF
【GCC2019】モノビットエンジンがついにクラウド化!しかし、インフラでまさかのAzureを利用!?本当に大丈夫なの?
モノビット エンジン
PPTX
開発費0円でニコニコ生放送を作ってみた
Yusei Yamanaka
PDF
Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採...
モノビット エンジン
PDF
Railsしかやってなかった人が10時間で Swift iOSゲームをつくったら
Yuta Okazaki
PPTX
Unity入門ハンズオン
Kazuya Hiruma
PDF
モンスターストライクにおける監視システムのあれこれ
Yusuke Shirakawa
PDF
Unityでデスクトップマスコットを作ろう
yodaka16
PDF
Swift Code in Swift - 2日間でゲームを作ってみた
axsh co., LTD.
Unityで意外と簡単・・・だけど難しいVRコンテンツ
infinite_loop
CrystalFantasiaを支えきった技術と技術だけではどうにもならなかった話
Keisuke Utsumi
『ポコロンダンジョンズ』エフェクトや演出制作ノウハウ
GameCreators,CyberAgent
Unity での asset bundle による追加コンテンツの扱い方
Kouji Hosoda
こんなに違う!Unityアプリケーション講座
Unity Technologies Japan K.K.
Unityのasset bundle運用実例@lordofknights
Kouji Hosoda
ゆるロボ製作所開発事例 – ドローコール削減
Mikito Yoshiya
Unity * スマートフォン開発で学んだこと
Katsutoshi Makino
【Unity道場スペシャル 2018仙台】Unityでステージをつくるのじゃ
Unity Technologies Japan K.K.
Unity ゲーム開発
Katsutoshi Makino
ポコロンダンジョンズを彩るアニメーションノウハウ
GameCreators,CyberAgent
UE4ローカライズ事例 (UE4 Localization Deep Dive)
エピック・ゲームズ・ジャパン Epic Games Japan
【GCC2019】モノビットエンジンがついにクラウド化!しかし、インフラでまさかのAzureを利用!?本当に大丈夫なの?
モノビット エンジン
開発費0円でニコニコ生放送を作ってみた
Yusei Yamanaka
Linux も動く Microsoft Azure HoloLens にも対応した次世代マルチプレイミドルウェア〜モノビットエンジンクラウド〜にて採...
モノビット エンジン
Railsしかやってなかった人が10時間で Swift iOSゲームをつくったら
Yuta Okazaki
Unity入門ハンズオン
Kazuya Hiruma
モンスターストライクにおける監視システムのあれこれ
Yusuke Shirakawa
Unityでデスクトップマスコットを作ろう
yodaka16
Swift Code in Swift - 2日間でゲームを作ってみた
axsh co., LTD.
Ad
Viewers also liked
(6)
PDF
.NET系開発者から見たJava
bleis tift
PPTX
C#4.0 と Visual Studio 2010/.NET Framework 4.0~ここが Cool! いけてる機能10連発!~
Fujio Kojima
PDF
Locality of Reference
Kouji Matsui
PDF
「var禁止」禁止
Ryota Murohoshi
PPTX
C#の書き方
信之 岩永
PDF
C#でわかる こわくないMonad
Kouji Matsui
.NET系開発者から見たJava
bleis tift
C#4.0 と Visual Studio 2010/.NET Framework 4.0~ここが Cool! いけてる機能10連発!~
Fujio Kojima
Locality of Reference
Kouji Matsui
「var禁止」禁止
Ryota Murohoshi
C#の書き方
信之 岩永
C#でわかる こわくないMonad
Kouji Matsui
Ad
More from Ryota Murohoshi
(16)
PDF
UnityでC#6.0が使える未来がそろそろ来そう!
Ryota Murohoshi
PDF
【Unity】気づいたら加わっていたあいつ【もくもく】
Ryota Murohoshi
PDF
【ハピバ】未来に備えたKotlin、大好きだぜ!【Kotlin 1.0】
Ryota Murohoshi
PDF
Javaのバージョニング問題の話しよっか
Ryota Murohoshi
PDF
C#のList_TがIListを実装している件
Ryota Murohoshi
PDF
広告ネイティブプラグインの辛かった話しよっか
Ryota Murohoshi
PDF
UnityでC#を勉強しはじめた私の主張
Ryota Murohoshi
PDF
普段C#を使っている僕から見たKotlin
Ryota Murohoshi
PDF
T4使ってみた
Ryota Murohoshi
PDF
UnityでのLINQ活用例
Ryota Murohoshi
PDF
私とUnityとLINQと
Ryota Murohoshi
PDF
「LINQ」っていう名前だけでも 覚えて帰ってください!
Ryota Murohoshi
PDF
JXUGのLTだけれどもUnity+iOS+LINQの話をしようと思う!
Ryota Murohoshi
PDF
RxJava初心者の私が良いと思ったやり方、素敵だと思った資料など
Ryota Murohoshi
PDF
共変戻り値型って知ってますか?
Ryota Murohoshi
PDF
明日からちょっと KotlinでAndroidが書きたくなる(かもしれない?)SAM変換と拡張関数
Ryota Murohoshi
UnityでC#6.0が使える未来がそろそろ来そう!
Ryota Murohoshi
【Unity】気づいたら加わっていたあいつ【もくもく】
Ryota Murohoshi
【ハピバ】未来に備えたKotlin、大好きだぜ!【Kotlin 1.0】
Ryota Murohoshi
Javaのバージョニング問題の話しよっか
Ryota Murohoshi
C#のList_TがIListを実装している件
Ryota Murohoshi
広告ネイティブプラグインの辛かった話しよっか
Ryota Murohoshi
UnityでC#を勉強しはじめた私の主張
Ryota Murohoshi
普段C#を使っている僕から見たKotlin
Ryota Murohoshi
T4使ってみた
Ryota Murohoshi
UnityでのLINQ活用例
Ryota Murohoshi
私とUnityとLINQと
Ryota Murohoshi
「LINQ」っていう名前だけでも 覚えて帰ってください!
Ryota Murohoshi
JXUGのLTだけれどもUnity+iOS+LINQの話をしようと思う!
Ryota Murohoshi
RxJava初心者の私が良いと思ったやり方、素敵だと思った資料など
Ryota Murohoshi
共変戻り値型って知ってますか?
Ryota Murohoshi
明日からちょっと KotlinでAndroidが書きたくなる(かもしれない?)SAM変換と拡張関数
Ryota Murohoshi
LINQ、Select連弾ってやります?
1.
LINQ、Select連弾ってやります? 【referencesource】 室星亮太 2015/04/11(土))第4回)Japan)Xamarin)User)Group)Conference
2.
すいません
3.
Xamarin.iOSとXamarin.Androidの話
4.
しません!
5.
お前だれよ? • 名前":"室星亮太 • 仕事":"Unityでゲーム開発 •
Twi+er":"@RyotaMurohoshi • 投稿先":"h+p://qiita.com/RyotaMurohoshi
6.
Unityクラスタから来ました!
7.
「UnityだとLINQが結構落ちて辛いよ!」 っていうLTを以前した者です。 JXUGの勉強会で、こんな話をさせていただいてありがとうございます。
8.
ということで今日も Xamarin.iOSもXamarin.Android の話はしません。
9.
さて、LINQ最高ですよね
10.
前もお話させていただいた通り Unityだと結構LINQが落ちました 原因はAOTコンパイラ関連のエラー。何が辛いってiOSだけ落ちる
11.
つらい
12.
なので作りました。 「UniLinq」という、Unityでも使える LINQ互換ライブラリ(β)
13.
UniLinqはmono/monoのLINQのコード をベースにいくつか手を加え作りました UnityのUnity&Technologies/monoのLINQのコードと比べ AOTコンパイル関連エラー対策がかなりされていました
14.
さて、ここまで前振りです
15.
ある日、事件が起きました
16.
「あれ、monoのリポジトリに LINQ%to%Objectsのコードがない」 h"ps://github.com/mono/mono/blob/master/mcs/class/System.Core/System.Linq/Enumerable.cs
17.
な、んだと....
18.
本日のタイトル
19.
LINQ、Select連弾ってやります? 【referencesource】
20.
referencesource
21.
referencesource
22.
referencesource
23.
そうですね。LINQのコードも、 referencesourceに置き換わったんですね issueはコチラ%h'ps://github.com/mono/mono/pull/1477
24.
referencesourceh"ps://github.com/Microso2/referencesource h"p://www.mono+project.com/docs/about+mono/dotnet+integra8on/
25.
referencesourceのLINQのコード、 とても見ていて面白いです。例えば、WhereとSelectの連弾
26.
読みずらくないですか? List<A> aList =
LoadList (); IEnumerable<D> dList = aList .Select (a => CovetCtoD( CovetBtoC( ConvertAtoB( a ) ) ) );
27.
僕はこっちの方が好きです。連弾! List<A> aList =
LoadList (); IEnumerable<D> dList = aList .Select (a => CovetAtoB(a)) .Select (b => CovetBtoC(b)) .Select (c => CovetCtoD(c));
28.
こうも書けますね、連弾! List<A> aList =
LoadList (); IEnumerable<D> dList = aList .Select (CovetAtoB) .Select (CovetBtoC) .Select (CovetCtoD);
29.
オーバーヘッド気になります? referencesource版では対策されています!
30.
WhereとかSelectを効率よくやるために Enumerableクラス内に内部クラス群が定義されている • WhereSelectEnumerableIterator • WhereSelectArrayIterator •
WhereSelectListIterator など
31.
みなさんなら、多分コード見た方が早いです h"ps://github.com/Microso2/referencesource/blob/master/System.Core/System/Linq/Enumerable.cs あと、neueさんがとってもわかりやすくまとめられています h"p://www.slideshare.net/neuecc/an3internal3of3linq3to3objects329200657
32.
お約束 Xamarinいいなぁ∼ Unityにも早く来ないかなぁ∼
33.
まとめ • monoのコード、referencesourceをガンガン活用していますね • referencesourceのLINQのコード面白いですよ •
WhereやSelectの連弾、読みやすければやっていいと思います
34.
蛇足 Unityに新登場したIL2CPPで、UniLinqいらない子?
Download