Chuyển sang chế độ ngoại tuyến với ứng dụng Player FM !
Make Your Apps Resilient UsingFinite State Machines With David Khourshid
Manage episode 239492332 series 2530175
In this episode, David Khourshid gives the rundown on how finite state machines can make your app more testable, more resilient to bugs, and easier to refactor.
David's initial interest in finite state machines stemmed from his background in music. With music, there is a universal notation that crosses genre boundaries. David thought what if there could be music notation for logic? Well, it ends up people have been trying to figure this out for the last thirty years.
A finite state machine can only be in exactly one state out of a limited number of possible states. The machine can transition to another state through explicitly defined events.
David also chats with Kent about extended finite state machines, how state machines can be used to simplify integration testing, the differences between xstate and redux.
Homework
- Take whatever feature you are working on and model it out in your head as a finite state machine
Resources
Guest: David Khourshid
- Twitter: @davidkpiano
- GitHub: @davidkpiano
Host: Kent C. Dodds
- Website: kentcdodds.com
- Twitter: @kentcdodds
- GitHub: @kentcdodds
- YouTube: Kent C. Dodds
- Epic React: epicreact.dev
89 tập
Manage episode 239492332 series 2530175
In this episode, David Khourshid gives the rundown on how finite state machines can make your app more testable, more resilient to bugs, and easier to refactor.
David's initial interest in finite state machines stemmed from his background in music. With music, there is a universal notation that crosses genre boundaries. David thought what if there could be music notation for logic? Well, it ends up people have been trying to figure this out for the last thirty years.
A finite state machine can only be in exactly one state out of a limited number of possible states. The machine can transition to another state through explicitly defined events.
David also chats with Kent about extended finite state machines, how state machines can be used to simplify integration testing, the differences between xstate and redux.
Homework
- Take whatever feature you are working on and model it out in your head as a finite state machine
Resources
Guest: David Khourshid
- Twitter: @davidkpiano
- GitHub: @davidkpiano
Host: Kent C. Dodds
- Website: kentcdodds.com
- Twitter: @kentcdodds
- GitHub: @kentcdodds
- YouTube: Kent C. Dodds
- Epic React: epicreact.dev
89 tập
Tất cả các tập
×Chào mừng bạn đến với Player FM!
Player FM đang quét trang web để tìm các podcast chất lượng cao cho bạn thưởng thức ngay bây giờ. Đây là ứng dụng podcast tốt nhất và hoạt động trên Android, iPhone và web. Đăng ký để đồng bộ các theo dõi trên tất cả thiết bị.