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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Matthias Le Brun
May 25, 2016
Programming
520
0
Share
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
More Decks by Matthias Le Brun
See All by Matthias Le Brun
GraphQL, Pothos & SQLite: a perfect match
bloodyowl
0
110
(why the hell did I) build a GraphQL client for the browser
bloodyowl
0
150
Boxed: bringing algebraic types to TypeScript
bloodyowl
0
180
leveraging (algebraic data) types to make your UI rock @ jsheroes
bloodyowl
0
330
Leveraging (algebraic data) types to make your UI rock solid
bloodyowl
0
490
La drôle d'histoire de JavaScript
bloodyowl
0
390
Healthy Code Collaboration
bloodyowl
0
360
Simplify your UI management with (algebraic data) types
bloodyowl
0
850
Simplify your UI management with (algebraic data) types
bloodyowl
1
570
Other Decks in Programming
See All in Programming
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
270
Technical Debt: Understanding it Rightly, Engaging it Rightly #LaravelLiveJP
shogogg
0
190
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.5k
AI時代のUIはどこへ行く?その2!
yusukebe
19
6.4k
RTSPクライアントを自作してみた話
simotin13
0
430
Spec-Driven Development with AI-Agents: From High-Level Requirements to Working Software
antonarhipov
2
440
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
1.5k
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
2
380
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
420
Inspired By RubyKaigi (EN)
atzzcokek
0
500
Oxlintのカスタムルールの現況
syumai
5
970
次世代リンターで探る、tsgo 時代における型認識カスタムルールの現実解
ytakahashii
3
1.4k
Featured
See All Featured
KATA
mclloyd
PRO
35
15k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
350
How to Think Like a Performance Engineer
csswizardry
28
2.6k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
950
Un-Boring Meetings
codingconduct
0
300
Agile that works and the tools we love
rasmusluckow
331
21k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Prompt Engineering for Job Search
mfonobong
0
330
Leo the Paperboy
mayatellez
7
1.8k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
240
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
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