Learn Type-Driven Development: Benefit from type systems to build reliable and safe applications using ReasonML 3

·
· Packt Publishing Ltd
E-book
180
Pages

À propos de cet e-book

A fast paced guide for JavaScript developers for writing safe, fast, and reusable code by leveraging ResaonML's strong static type systemKey FeaturesReduce code errors with the power of type systemsEmploy static typechecking and genericity to promote code reuse and consistencyUnderstand functional programming which is the foundation of type-driven developmentBook Description

Type-driven development is an approach that uses a static type system to achieve results including safety and efficiency. Types are used to express relationships and other assumptions directly in the code, and these assumptions are enforced by the compiler before the code is run. Learn Type-Driven Development covers how to use these type systems to check the logical consistency of your code.

This book begins with the basic idea behind type-driven development. You’ll learn about values (or terms) and how they contrast with types. As you progress through the chapters, you’ll cover how to combine types and values inside modules and build structured types out of simpler ones. You’ll then understand how to express choices or alternatives directly in the type system using variants, polymorphic variants, and generalized algebraic data types. You’ll also get to grips with sum types, build sophisticated data types from generics, and explore functions that express change in the types of values. In the concluding chapters, you’ll cover advanced techniques for code reuse, such as parametric polymorphism and subtyping.

By end of this book, you will have learned how to iterate through a type-driven process of solving coding problems using static types, together with dynamic behavior, to obtain more safety and speed.

What you will learnUse static types to capture information, making programs safer and faster Learn ReasonML from experienced type-driven developers Enhance safety by simply using basic types Understand the most important type-driven concepts with simple examples Explore a design space using static typing and find the best way to express your system rules Use static types and dynamic runtime in harmony to write even safer and faster codeWho this book is for

If you’re a programmer working with dynamically typed languages and are looking for ways to mitigate production runtime errors, Learn Type-Driven Development is for you. You’ll also find this book helpful if you’re a programmer working with statically typed languages looking for increased safety and improved performance.

À propos de l'auteur

Yawar Amin is a software engineer working in Toronto, Canada. He has worked on data science-based recommendation systems, customer-facing applications, and large data engineering projects. In his spare time, he likes to read, write, and use the Oxford comma whenever he can. Kamon Ayeva is a web developer/DevOps engineer working with a variety of tools. He spends most of his time building projects using Python's powerful scripting capabilities, add-on libraries, and web frameworks such as Django or Flask. Kamon has been using Python in professional contexts for more than 12 years. Based on his recent experience of using the type system that was added to Python 3, as well as developing a user interface using the React framework, latterly, he has started exploring type-driven development in JavaScript.

Donner une note à cet e-book

Dites-nous ce que vous en pensez.

Informations sur la lecture

Smartphones et tablettes
Installez l'application Google Play Livres pour Android et iPad ou iPhone. Elle se synchronise automatiquement avec votre compte et vous permet de lire des livres en ligne ou hors connexion, où que vous soyez.
Ordinateurs portables et de bureau
Vous pouvez écouter les livres audio achetés sur Google Play à l'aide du navigateur Web de votre ordinateur.
Liseuses et autres appareils
Pour lire sur des appareils e-Ink, comme les liseuses Kobo, vous devez télécharger un fichier et le transférer sur l'appareil en question. Suivez les instructions détaillées du Centre d'aide pour transférer les fichiers sur les liseuses compatibles.