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
Flow, du strong, static typing pour JavaScript
Search
Matthias Le Brun
May 25, 2016
Programming
0
380
Flow, du strong, static typing pour JavaScript
Présentation de Flow et de ses capacités en matière de type-checking
Matthias Le Brun
May 25, 2016
Tweet
Share
More Decks by Matthias Le Brun
See All by Matthias Le Brun
leveraging (algebraic data) types to make your UI rock @ jsheroes
bloodyowl
0
220
Leveraging (algebraic data) types to make your UI rock solid
bloodyowl
0
310
La drôle d'histoire de JavaScript
bloodyowl
0
240
Healthy Code Collaboration
bloodyowl
0
160
Simplify your UI management with (algebraic data) types
bloodyowl
0
690
Simplify your UI management with (algebraic data) types
bloodyowl
1
430
Migrating a large Reason+React codebase to hooks
bloodyowl
0
440
Third Party Hell (BestOfWeb)
bloodyowl
0
390
Best practices
bloodyowl
0
320
Other Decks in Programming
See All in Programming
try! Swift Tokyo 初参加報告LT
hinakko2
0
220
雑に思考を整理する技術と効能
konifar
58
28k
Amazon SQSコンシューマー疎結合への旅 - 出張! #DevelopersIO IT技術ブログの中の人が語る勉強会 #3
quiver
0
230
検証も兼ねて個人開発でHonoとかと向き合った話
hanetsuki
0
520
ゆるい個人開発のススメ
kuroppe1819
10
980
スクラムガイドのスプリントレトロスペクティブを改めて読みかえしてみた / Re-reading the Sprint Retrospective Section in the Scrum Guide
mackey0225
3
410
新宿ダンジョンを可視化してみた
satoshi7190
2
230
educure_カリキュラム生操作マニュアル.pdf
linew_official
0
690
使ってみよう Azure AI Document Intelligence
kosmosebi
2
280
はてなにおける CSS Modules、及び CSS Modules に足りないもの / CSS Modules in Hatena, and CSS Modules missing parts
mizdra
6
910
Site Reliability Engineering for GMO
pyama86
7
1k
Random\Randomizer クラスで日常のあれこれを解決しよう! / Random\Randomizer class solves familiar trouble
cocoeyes02
0
190
Featured
See All Featured
Music & Morning Musume
bryan
41
5.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
For a Future-Friendly Web
brad_frost
172
9k
GraphQLの誤解/rethinking-graphql
sonatard
50
9.2k
The Brand Is Dead. Long Live the Brand.
mthomps
49
28k
Bash Introduction
62gerente
604
210k
Visualization
eitanlees
136
14k
We Have a Design System, Now What?
morganepeng
43
6.7k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
Scaling GitHub
holman
457
140k
The Art of Programming - Codeland 2020
erikaheidi
42
12k
Transcript
Flow du strong, static typing pour JavaScript
Matthias Le Brun @bloodyowl Lead front end developer @ BeOpinion
Putain de code
None
Node Element
JavaScript • undefined is not a function • TypeError: Cannot
read property "bar" of undefined • "undefined commentaires" • "You have [object Object] messages" • TypeError: TypeError • ReferenceError: Can't find variable: foo • NaN
JavaScript Weakly typed
JavaScript Dynamically typed
JavaScript …
«Workarounds» On peut documenter
«Workarounds» On peut vérifier les types au runtime
«Workarounds» On peut «ignorer» les soucis ¯\_(ϑ)_/¯
None
None
Flow A static type checker for JavaScript
None
None
Flow Détecte les incompatibilités
Flow Détecte les incompatibilités
Flow Permet d'annoter son code
Flow
Flow Comprend les built-ins
Flow Aliases
Flow Aliases
Flow Generics
Flow Generics
Flow Interfaces
Flow + React
Transformer en JS valide
Flow Peut fonctionner sans transformation
Flow Code externe
TypeScript • Différences de syntaxe mineures • Flow commence à
fonctionner sans annotations et s'intègre mieux à un projet existant • TypeScript n'analyse pas les call-sites
Merci Questions ? Matthias Le Brun @bloodyowl