Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Recap Pointfree Vol. 1~3
Search
freddi(Yuki Aki)
October 25, 2020
Programming
1
780
Recap Pointfree Vol. 1~3
https://gist.github.com/freddi-kit/112b3d13c6660339ddc85bd05ffc3c2b
に Vol 3 で話す予定だったものあり
freddi(Yuki Aki)
October 25, 2020
Tweet
Share
More Decks by freddi(Yuki Aki)
See All by freddi(Yuki Aki)
輝け俺のViewController 〜海外iOSカンファレンス登壇編〜
freddi
4
220
Deep Dive into "any" and "some"
freddi
3
1.3k
挑戦!ISUCON de Server-side Swift 〜タイムゾーンには気をつけろ〜
freddi
0
1.5k
意外と知られてないXcode13の新しい参照カウンタ最適化オプションの挙動
freddi
2
110
How to develop SIL Optimizer in Swift Language
freddi
0
310
SwiftコンパイラがSwiftで開発できるようになる話
freddi
3
580
知ろう! ShazamKit
freddi
1
170
Swift Optimizing at Compiler World
freddi
2
780
社内版SwiftコンパイラにContributeするまで
freddi
0
83
Other Decks in Programming
See All in Programming
CNCF Project の作者が考えている OSS の運営
utam0k
5
690
Flutter × Firebase Genkit で加速する生成 AI アプリ開発
coborinai
0
150
Ruby on cygwin 2025-02
fd0
0
140
プログラミング言語学習のススメ / why-do-i-learn-programming-language
yashi8484
0
120
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
490
Amazon S3 TablesとAmazon S3 Metadataを触ってみた / 20250201-jawsug-tochigi-s3tables-s3metadata
kasacchiful
0
100
How mixi2 Uses TiDB for SNS Scalability and Performance
kanmo
30
11k
Software Architecture
hschwentner
6
2.1k
AWS Organizations で実現する、 マルチ AWS アカウントのルートユーザー管理からの脱却
atpons
0
130
AWSマネコンに複数のアカウントで入れるようになりました
yuhta28
2
160
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
5
3.8k
CI改善もDatadogとともに
taumu
0
110
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
94
13k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
The Invisible Side of Design
smashingmag
299
50k
Visualization
eitanlees
146
15k
Writing Fast Ruby
sferik
628
61k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
It's Worth the Effort
3n
184
28k
Why Our Code Smells
bkeepers
PRO
335
57k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Code Reviewing Like a Champion
maltzj
521
39k
Transcript
2020/10/25 Recap Pointfree Vol. 1~3 iOSΞϓϦ։ൃͷͨΊͷFunctional Architectureใڞ༗ձ
ࠓճͷRecapͷΓํ • Pointfree Episode Vol 1 ~ 3 ͷ༰Λ͍͖ͬͯ·͢ •
ͨͩ͠ɺͯ͢Δͷ͕࣌ؒڐ͢ݶΓ • ొஃऀͷPlaygroundͰRecapͨ͠Γ༡ΜͰ͍͖·͢ • ղઆ͠ͳ͕ΒΔͷͰʮ͜͏͍͏ͷͰ͖Δʁʯ ͱ͔৭ʑʑΛೖΕΔͷ͓͢͢ΊͰ͢
Pointfree ͱ • ϓϩάϥϛϯάݴޠSwiftʹؔ͢ΔಈըͷγϦʔζ • ؔܕϓϩάϥϛϯάͱSwiftʹ͍ͭͯղઆ • Ұ෦Τϐιʔυߪಡ͕ඞਢ • https://www.pointfree.co/
“pointfree” ͱ • pointfree ͱ͍͏୯ޠࣗମʹ͍ͭͯҙຯ͕͋Δ
pointfree-style • Haskellͷؔͷॻ͖ํʢελΠϧʣ • … So a 'points-free' definition of
a function is one which does not explicitly mention the points (values) of the space on which the function acts. • … ͳͷͰɺʮpointfreeʯ ʹΑΔఆٛͱ͕ؔ࡞༻ ͢ΔۭؒͰɺʹ໌ࣔతʹݴٴ͠ͳ͍ఆٛΛ͞ ͍ͯ͠·͢ɻ
pointfree-style • ͨͱ͑ɺHaskell ͷ͜ͷॻ͖ํ f x = x + 1
Sun
pointfree-style • (point) ʹݴٴ͠ͳ͍ॻ͖ํͩͱ͜͏ॻ͚Δ • ͜Ε͕ઌఔͷ f ͷpointfree style f
= (+ 1) Sun
“pointfree” ͱ • ༨ஊͰ͋ΓDeep Dive͢Δͱ͕͘ͳΔͷͰׂѪ
ࠓ͢Pointfree ͷ Episode ʹ͍ͭͯ • Vol 1. Functions • Vol
2. Side Effects • Vol 3. UIKit Styling with Functions
Vol 1. Functions • ͪΐͬͱมΘͬͨελΠϧͷؔʹؔ͢Δॻ͖ํ • ͜Ε͔Βͷ Episode ΛݟΔ্Ͱඞਢͷ༰ •
৽͍͠ԋࢉࢠͷհ • |> ʹΑΔؔద༻, >>> ʹΑΔؔͷ߹
Vol 1. Functions • ݸਓతͳײಈ • ֤ԋࢉࢠʹΑΔ, left-to-right ͳίʔυͷ࡞ •
ؔΛ “Composition” ͢Δͱ͍͏ߟ͑ํ
Vol 2. Side Effects • ʮ෭࡞༻Λ੍ޚ͢ΔʯʹϑΥʔΧεͨ͠ Episode • print ͷྫ
• NumberFormatter ͷྫ • ԋࢉࢠ >=> ʹΑΔEffectΛ࣋ͬͨؔͷ߹ • ԋࢉࢠ <> ʹΑΔؔͷ߹ɺ<> ͷ ΦʔόʔϥΠυ
Vol 3. UIKit Styling with Functions • ࠓ·Ͱशͬͨ͜ͱΛͲͷΑ͏ʹ׆͔ͤΔ͔ʁ • ࣮ࡍʹίʔυ͕Massive
ʹͳΓͦ͏ͳUIViewͷྫ
ࢀߟࢿྉ • https://www.pointfree.co/ • https://wiki.haskell.org/Pointfree