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
490
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
(why the hell did I) build a GraphQL client for the browser
bloodyowl
0
110
Boxed: bringing algebraic types to TypeScript
bloodyowl
0
130
leveraging (algebraic data) types to make your UI rock @ jsheroes
bloodyowl
0
290
Leveraging (algebraic data) types to make your UI rock solid
bloodyowl
0
430
La drôle d'histoire de JavaScript
bloodyowl
0
370
Healthy Code Collaboration
bloodyowl
0
300
Simplify your UI management with (algebraic data) types
bloodyowl
0
820
Simplify your UI management with (algebraic data) types
bloodyowl
1
540
Migrating a large Reason+React codebase to hooks
bloodyowl
0
560
Other Decks in Programming
See All in Programming
理論と実務のギャップを超える
eycjur
0
200
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
3
1.7k
CSC509 Lecture 08
javiergs
PRO
0
270
社会人になっても趣味開発を続けたい! / traPavilion
mazrean
1
120
Swift Concurrency 年表クイズ
omochi
3
210
Designing Repeatable Edits: The Architecture of . in Vim
satorunooshie
0
190
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
Amazon ECS Managed Instances が リリースされた!キャッチアップしよう!! / Let's catch up Amazon ECS Managed Instances
cocoeyes02
0
110
Pythonに漸進的に型をつける
nealle
1
140
Go言語はstack overflowの夢を見るか?
logica0419
0
660
GC25 Recap: The Code You Reviewed is Not the Code You Built / #newt_gophercon_tour
mazrean
0
130
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
240
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
940
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Rails Girls Zürich Keynote
gr2m
95
14k
KATA
mclloyd
PRO
32
15k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6k
Building a Scalable Design System with Sketch
lauravandoore
463
33k
Fireside Chat
paigeccino
41
3.7k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
How STYLIGHT went responsive
nonsquared
100
5.9k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
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