Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Unityでも、新しいC#
Search
RyotaMurohoshi
December 07, 2019
Technology
0
1.4k
Unityでも、新しいC#
2019年12月07日(土)に開催された『【年末だよ】Unity お・と・なのLT大会 2019』のLT資料です。
https://meetup.unity3d.jp/jp/events/1178
RyotaMurohoshi
December 07, 2019
Tweet
Share
More Decks by RyotaMurohoshi
See All by RyotaMurohoshi
Tilemapのアップデートについて
ryotamurohoshi
0
53
Unityの合同同人誌や合同商業誌を書いてる僕は感想やレビューや評価が欲しい
ryotamurohoshi
0
560
Unity 2021.1での Unityパッケージの名称変更について
ryotamurohoshi
0
760
Odin Validationはいいぞ!
ryotamurohoshi
2
1k
Tilemapはいいぞ!2020 〜すごいぞ、プロジェクト専用拡張Brush〜
ryotamurohoshi
0
2.4k
Riderはいいぞ!
ryotamurohoshi
1
3.6k
Riderのススメ〜俺はRiderここが好き〜
ryotamurohoshi
1
2.6k
Unity開発者に伝えたい.NETのこと
ryotamurohoshi
4
38k
ImportedLinqのススメ
ryotamurohoshi
0
1.6k
Other Decks in Technology
See All in Technology
生成AI活用の型ハンズオン〜顧客課題起点で設計する7つのステップ
yushin_n
0
230
Kubernetes Multi-tenancy: Principles and Practices for Large Scale Internal Platforms
hhiroshell
0
120
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
7
1.6k
IAMユーザーゼロの運用は果たして可能なのか
yama3133
1
440
非CUDAの悲哀 〜Claude Code と挑んだ image to 3D “Hunyuan3D”を EVO-X2(Ryzen AI Max+395)で動作させるチャレンジ〜
hawkymisc
2
190
大企業でもできる!ボトムアップで拡大させるプラットフォームの作り方
findy_eventslides
1
800
ChatGPTで論⽂は読めるのか
spatial_ai_network
9
29k
今年のデータ・ML系アップデートと気になるアプデのご紹介
nayuts
1
430
ログ管理の新たな可能性?CloudWatchの新機能をご紹介
ikumi_ono
1
790
品質のための共通認識
kakehashi
PRO
3
260
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
360
AWSを使う上で最低限知っておきたいセキュリティ研修を社内で実施した話 ~みんなでやるセキュリティ~
maimyyym
2
1.7k
Featured
See All Featured
Fireside Chat
paigeccino
41
3.7k
Mobile First: as difficult as doing things right
swwweet
225
10k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
390
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Music & Morning Musume
bryan
46
7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Designing for Performance
lara
610
69k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Navigating Team Friction
lara
191
16k
GitHub's CSS Performance
jonrohan
1032
470k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.8k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
710
Transcript
None
None
None
None
None
None
は10分では無理だけど・・・
「あっこんなのもあるんだ、いいじゃん! C#」 ってUnityプログラマのみなさんに思ってもらうために、 オススメの機能を紹介!
• @RyotaMurohoshi(むろほし) • C#・LINQ好きのMS MVP • 好きなIDEはRider • 好きなUnityの機能はTilemap
独断と偏見で選んだUnityでゲームロジックを ガリガリ書くときのオススメC#の機能 紹介していきます!
進化したプロパティ
プロパティ
新しいC#では、プロパティは短く書ける!
Before : Unityでよく書く
After :「式形式」はメソッドにも・プロパティにも
もう一例!
Before: ゲッター・セッター両方
After: ゲッター・セッター両方、式形式に
ここまでは、バッキングフィールドを使った プロパティの改善でした
「自動実装プロパティ」ってありましたね
古いC#で自動実装プロパティが書けなかった場所も 新しいC#では書けるように!
Before: 初期化のためだけにフィールド
After: 新しいC#ならフィールドいらない
もう一例!
After: readonlyのためにフィールド
Before: 新しいC#ならプロパティだけでOK
ゲームロジック書くときに、プロパティは超使う! そんなプロパティは、新しいC#でより便利に!
タプル (ValueTuple)
タプル(ValueTuple) クラス・構造体を作らなくても名前のない型を作れる。 複数の値をまとめられる。 ToStringやEqualsが実装され、==での比較ができる
None
クラスや構造体を作るのがめんどくさい時、ありません? • LINQやRxの中間データ • ちょっとしたメソッドの返り値型
そこで、タプル(ValueTuple)ですよ!
None
タプル(ValueTuple)は分解も便利!
タプルと分解のコンボがナイス
ロジックガリガリ書くとき、 タプル、大活躍!
進化したswitch
今までのswitchのよくある使い方
今までのswitchのよくある使い方、列挙型の例
新しいC#ではswitchで 型による分岐ができるように!
新しいC#では型による分岐ができるように
新しいC#では型による分岐ができるように
ダメージ計算とかで、 すごい便利そうじゃないですか?
C# 8.0で、switchはもっと便利に!
private protected
private、protected、public こういうアクセスレベルに・・・
private protected ってのが加わったよ! Assembly Definition Filesでアセンブリ分ける人、要チェック
「C#のアクセス修飾子 2019 〜protectedは 結構でかい〜」
構造体も進化
@neuecc さんのUnderstanding C# Struct All Things がUnity Learning Materilasに!要チェック!
それ以外にもたくさん
• 文字列もいい感じに • nullもいい感じに • ローカル関数 • 式形式のメンバ • nameof
他にもいろいろ!
C#たくさん、進化してましたね!
新しいC#の機能を使わなくても Unityでゲームは作れる けれど、ロジックをたくさん作ってきたあなたの 力になる機能がきっと新しいC#にある!
新しいC#の機能、使わなくてもゲームは作れる けれど、ロジックをバリバリ作ってきたあなたの 力になる機能がきっと新しいC#にある!
公式ドキュメント そして @ufcpp さんのサイト でどんな新しいC#の機能があるか ぜひ見てみてください!
Unity でも、新しい C# @RyotaMurohoshi 2019/12/07(土) Unity部 お・と・なのLT大会 2019
None