Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
「var禁止」禁止
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
RyotaMurohoshi
February 20, 2016
Technology
28
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
「var禁止」禁止
2016/02/20 Hokuriku Comm CampのLTで発表した際のプレゼンテーションスライドです。
RyotaMurohoshi
February 20, 2016
Transcript
59 slides
ʮvarېࢭʯېࢭ @RyotaMurohoshi 2016/02/20()(Hokuriku(ComCamp(2016(powered(by(MVPs
C#Λॻ͍͍ͯͯɺ͜Μͳ͜ͱ ݴΘΕͨ͜ͱͳ͍Ͱ͔͢ʁ
ʮvar͏ͷېࢭͳʂʯ
ࣗݾհ @RyotaMurohoshiͰ͢
ઍ༿ݝദࢢ͔Β͖·ͨ͠
࣮Ո৽ׁݝͰ͢
UnityΫϥελ͔Β͖·ͨ͠
Ξϯέʔτʂ
C#er%!? ͬͨ͜ͱ͋Δਓʂʁ
ʮvarʯ͕Կ͔Θ͔Δ$!? C#erͳΒΘ͔ΔΑͶʂʁ
Javaॻ͘Αͬͯͻͱ$!?
ʮvarېࢭʯݴΘΕͨ͜ͱ͋Δ$!? ͭΒ͍orz
͋Γ͕ͱ͏͍͟͝·ͨ͠
C#ͷศརͳݴޠػೳͷʮvarʯ ੈͷதʹɺͦΕΛݏ͏ɾΘͳ͍ਓ͕͍ΔΒ͍͠Ͱ͢
ͦΕΛΘͳ͍ͳΜͯͱΜͰͳ͍
ʮvarʯͪΌΜͱ͓͏ͥ
ʮvarېࢭʯېࢭ
ͦΕͰʮvarېࢭʯͬͯݴΘΕͨ࣌ͷ ͍͍ײ͡ͷฦ͠Λߟ͍͖͑ͯ·͠ΐ͏ʂ
έʔε1 ʮvarɺܕ͕ͳͯ͘ΩϞ͍͔Βېࢭͳʂʯ ͬͯݴΘΕΔ
έʔε1ͷݪҼ varΛͪΌΜͱཧղ͍ͯ͠ͳ͍
ʮvarͱʁʯ ҉తʹܕࢦఆ͞ΕΔϩʔΧϧม from%MSDN%h+ps:/ /msdn.microso5.com/ja8jp/library/bb384061.aspx
҉తʹܕࢦఆ͞ΕΔϩʔΧϧม
varɺܕ͋Γ·͢ʂ ໌ࣔతʹมͷܕΛॻ͔ͳ͍͚ͩʂ
// ໌ࣔతʹมͷܕΛॻ͍͍ͯΔ string name = "RyotaMurohoshi"; // =ͷӈล͕จࣈྻϦςϥϧ͔ͩΒstringܕ var title
= "ʮvarېࢭʯېࢭ";
varɺ͔͚ͯ͘ૉఢΜʂ // ΞϗΈ͍ͨʹ͍ܕ໊(ۃ)Λ2ճॻ͘ʂʁ Dictionary<HogeFuga, List<PiyoPiyoPiyo>> dictionary = new Dictionary<HogeFuga, List<PiyoPiyoPiyo>>();
// 1ճॻ͚͍͍ΑͶ var dictionary = new Dictionary<HogeFuga, List<PiyoPiyoPiyo>>(); Θ͟Θ͟ಉ͜͡ͱɺ2ճॻ͘ඞཁͳ͍ΑͶ
έʔε1·ͱΊ varʹܕ͕͋Δɺ໌ࣔతʹͳͬͯͳ͍͚ͩͰɻ ʮvarɺܕ͕ͳͯ͘ΩϞ͍͔Βېࢭͳʂʯͬͯ ݴΘΕͨ߹ɺ૬खvarΛצҧ͍͍ͯ͠Δ͔Βڭ͑ͯ͋͛Α͏ʂ
͖ͭͮ·ͯ͠...
έʔε2 ʮvarɺԿͷܕ͔͔Γʹ͍͔͘Βېࢭͳʂʯ ͬͯݴΘΕΔ
έʔε2ͷݪҼ varͷཚ༻ɻదʹvarΛ͍ͬͯͳ͍ͨΊɻ
(Զ͕ࢥ͏)#varͷྑ͘ͳ͍ར༻ྫ ʮͳΜͩΑɺ͜ͷϝιουͷฦΓͷܕʯͬͯͳΔʂ ɹ var result = GetResults();
varͷཚ༻orz
varΛͬͯܕ͕Θ͔Δ࣌ʹɺ varΛ͓͏ʂ
(Զ͕ࢥ͏)#varͷྑ͍ར༻ྫ // =ͷӈล͕Ϧςϥϧ var level = 27; var name =
"Ryota"; // =ͷӈล͕ίϯετϥΫλ or ϑΝΫτϦϝιου var playerData = new PlayerData(level, name); // =ͷӈล͕δΣωϦοΫϝιουͰܕҾ͕ฦΓܕͳ // ϝδϟʔͳϝιου(࣍ͷUnityͰྑ͘͏ͭ) var player = FindObjectOfType<Player>();
ʮΘ͟Θ͟ೋճॻ͔ͳͯ͘ӈล͔Βܕ͕Θ͔Δ͡ΌΜʯ ͱ͍͏߹varͰεοΩϦɻ
έʔε2·ͱΊ ʮvarɺԿͷܕ͔͔Γʹ͍͔͘Βېࢭͳʂʯͬͯ ͔֬ʹཚ༻͢ΔͱಡΈͮΒ͘ͳΔ͜ͱ͋Δɻ ಡΈ͘͢ͳΔ໘Ͱ͏ϧʔϧΛަব͠·͠ΐ͏ʂ
͖ͭͮ·ͯ͠...
έʔε3 ʮvarɺList<string>͕IList<string>ʹ ͳͬͯ͘Εͳ͍͔Βېࢭͳʯ ͬͯݴΘΕͨ
έʔε3ͷݪҼ JavaͰͷܦݧ͕ཧ༝ʢ͔ʁʣ ͜ͷύλʔϯ͕Ұ൪հ
varͷӈล͕List<string>ܕ͔ͩΒɺlistͷܕList<string>ʹɻ ɹ var list = new List<string>();
ࠓ͔ΒνϣοτJavaͷ
JavaͷίʔυͰ͢ // Լهͷॻ͖ํྑ͘ͳ͍ ArrayList<String> list = new ArrayList<String>(); // Լهͷॻ͖ํΛ͖͢
List<String> list = new ArrayList<String>(); // μΠϠϞϯυԋࢉࢠͰ͔͚͘Δ List<String> list = new ArrayList<>();
JavaͰμΠϠϞϯυԋࢉࢠΛ͔͍ͭɺهड़Λলུͭͭ͠ ʮϩʔΧϧมʯΛநతͳܕͰѻ͏͜ͱ͕Ͱ͖Δ
͜Εʹ׳Εͨਓ͜͏ࢥ͏߹͕͋ΔΈ͍ͨ ʮvarɺList<string>͕IList<string>ʹ ͳͬͯ͘Εͳ͍͔Βېࢭͳʯ
JavaɺμΠϠϞϯυԋࢉࢠͰهड़Λলུͭͭ͠ListΠϯλʔϑΣʔεܕͷมͰѻ͑Δ // Java List<String> list = new ArrayList<>(); C#ͷvarͷ߹ɺIList<string>ΠϯλʔϑΣʔεʹͳΒͳ͍ɻList<string>ΫϥεʹͳΔɻ //
C# var list = new List<string>();
͔֬ʹϝιουͷҾฦΓͷܕΛ దʹநతͳܕͰѻ͏ͷେ // ྑ͘ͳ͍ྫ(Java) public ArrayList<string> loadList(){ /*தུ*/ } //
վળྫ(Java) public List<string> loadList(){ /*தུ*/ }
͚ΕͲʮvarɺList<string>ΫϥεͷΦϒδΣΫτ͕ IList<string>ΠϯλʔϑΣʔεͷมʹͳΒͳ͍͔Βېࢭʯ ؒҧ͍ͬͯΔͱࢥ͏
var͕͑Δͷ ϩʔΧϧม͚ͩʂ
ϩʔΧϧมΛநܕͰѻ͏ͷͦΜͳʹେࣄʁ ઈରඞཁʁ
ϩʔΧϧมͳΒείʔϓด͍ͯͯ͡ɺ ͔͔ͨͩߦɺͯ͘2,30ߦ
varͰ͔͚͘Δ͜ͱͱɺ ͘ดͨ͡είʔϓͰϩʔΧϧมΛநతͳܕͰѻ͏͜ͱ Ͳ͕ͬͪେࣄͩΖ͏ʁ
varͰ͔͚͘Δํ͕ ͍͍ΑͶʂ
͔ͨ͠͠Β ʮJavaͰ͜͏͔ͩΒɺC#Ͱ͜͏͡Όͳ͖Όμϝʯ ػցతʹஅͯ͠Δ͔͠Εͳ͍orz
ʲಓʳʮvarɺList<string>͕IList<string>ʹͳͬͯ͘Εͳ͍͔Βېࢭͳʯ͍ͬͯ͏ਓͦ͏ʲภݟʳ ྻIList<T>࣮͍ͯ͠ΔͷΒͳͦ͏ɻ IReadOnlyList<T>ͱ͔͍͍͑ͷʹΒͳͦ͏ɻ
έʔε3·ͱΊ ʮvarɺList<string>͕IList<string>ʹͳͬͯ͘Εͳ͍͔Βېࢭͳʯ ͱݴΘΕͨΒɺϩʔΧϧมͰநతͳܕͰѻ͏ϝϦοτͱ ͘هड़Ͱ͖Δ͜ͱͷϝϦοτɺͲͪΒ͕େࣄ͔͠߹͓͏ɻ ͦͯ͠উͯʂࠓॻ͍ͯΜͷJava͡Όͳͯ͘C#ͩʂ
࠷ޙʹ • ࠓ͍ɺKotlinSwi*Ͱvar!(ͱ͔valͱ͔let) • varɺ͓͏ͥ • varɺదʹਖ਼͓͘͠͏ͥʂཚ༻μϝͳʂ • ʮvarېࢭʯېࢭͳʂʂʂ
ʮvarېࢭʯېࢭ @RyotaMurohoshi 2016/02/20()(Hokuriku(ComCamp(2016(powered(by(MVPs
ิ
ͦͷ4 ʮvar͏ͱΠϯλʔϑΣʔεܕͷมʹͳΒͳ͍͔Β ໌ࣔతͳ࣮͍ͯ͠Δϝιουݺͳ͘ͳΔ͡ΌΜʯ ͬͯݴΘΕͨΒʁ
ͦͦ͞ɺΫϥε͕Θ͔͍ͬͯΔͷʹ ΠϯλʔϑΣʔεͷ໌ࣔత࣮͍ͯ͠Δϝιου ݺͿඞཁ͋Δͷʁ
More Decks by RyotaMurohoshi
See All by RyotaMurohoshi
Tilemapのアップデートについて
ryotamurohoshi
0
100
Unityの合同同人誌や合同商業誌を書いてる僕は感想やレビューや評価が欲しい
ryotamurohoshi
0
640
Unity 2021.1での Unityパッケージの名称変更について
ryotamurohoshi
0
940
Odin Validationはいいぞ!
ryotamurohoshi
2
1.1k
Tilemapはいいぞ!2020 〜すごいぞ、プロジェクト専用拡張Brush〜
ryotamurohoshi
0
2.6k
Unityでも、新しいC#
ryotamurohoshi
0
1.6k
Riderはいいぞ!
ryotamurohoshi
1
3.9k
Riderのススメ〜俺はRiderここが好き〜
ryotamurohoshi
1
2.8k
Unity開発者に伝えたい.NETのこと
ryotamurohoshi
4
39k
Other Decks in Technology
See All in Technology
AIが会計業務の伴走者に。 マネーフォワード クラウド会計MCPサーバーで実現するAI前提の新しい業務プロセス
nobitabashi
0
130
Quick Automate | 目指せ Quick マスター 12
inariku
PRO
1
110
evcc & Home Assistant
naltatis
0
730
これからのデータエンジニアの役割について考える / Rethinking the Role of Data Engineers in the AI Era
okiyuki99
0
490
高品質と高スピードを支える品質のシフトレフトのアプローチ
goyoki
3
1.1k
BALLAS Technology Deck
ballas_inc
0
610
あの日、見つかっていなかったらどうなっていたか
kazzpapa3
2
200
速くなるほど、深く考える AI時代のQAに学ぶ
kobayashiyorimitsu
0
210
Where Should Platform Complexity Live? Lessons from a Cross-Team PR Preview Platform
taiki45
0
110
Kiro Web 入門 (サインインから、頼み方、PR の受け取り、クラウドの決まりまで) | 目指せ Kiro マスター 04
inariku
PRO
2
120
田んぼの見回りをIoTで減らしたい!水位監視から電池駆動カメラまでの試行錯誤
itosoft
1
180
The Author Pays
hiccupps
0
210
Featured
See All Featured
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
560
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
790
Designing Powerful Visuals for Engaging Learning
tmiket
1
650
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
980
How to build a perfect <img>
jonoalderson
1
6.2k
Faster Mobile Websites
deanohume
310
32k
Designing for humans not robots
tammielis
254
26k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
2
3.8k
Bash Introduction
62gerente
615
220k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.2k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.4k