Programming with Types Front Cover

Programming with Types

  • Length: 336 pages
  • Edition: 1
  • Publisher:
  • Publication Date: 2019-11-19
  • ISBN-10: 1617296414
  • ISBN-13: 9781617296413
  • Sales Rank: #944914 (See Top 100 Books)
Description

Summary

Programming with Types teaches you to design safe, resilient, correct software that’s easy to maintain and understand by taking advantage of the power of strong type systems. Designed to provide practical, instantly useful techniques for working developers, this clearly written tutorial introduces you to using type systems to support everyday programming tasks.

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the Technology

Common bugs often result from mismatched data types. By precisely naming and controlling which data are allowable in a calculation, a strong type system can eliminate whole classes of errors and ensure data integrity throughout an application. As a developer, skillfully using types in your everyday practice leads to better code and saves time tracking down tricky data-related errors.

About the Book

Programming with Types teaches type-based techniques for writing software that’s safe, correct, easy to maintain, and practically self-documenting. Designed for working developers, this clearly written tutorial sticks with the practical benefits of type systems for everyday programming tasks. Following real-world examples coded in TypeScript, you’ll build your skills from primitive types up to more-advanced concepts like functors and monads.

What’s inside

  • Building data structures with primitive types, arrays, and references
  • How types affect functions, inheritance, and composition
  • Object-oriented programming with types
  • Applying generics and higher-kinded types

About the Reader

You’ll need experience with a mainstream programming language like TypeScript, Java, JavaScript, C#, or C++.

About the Author

Vlad Riscutia is a principal software engineer at Microsoft. He has headed up several major software projects and mentors up-and-coming software engineers.

Table of Contents

  1. Introduction to typing
  2. Basic types
  3. Composition
  4. Type safety
  5. Function types
  6. Advanced applications of function types
  7. Subtyping
  8. Elements of object-oriented programming
  9. Generic data structures
  10. Generic algorithms and iterators
  11. Higher kinded types and beyond
To access the link, solve the captcha.