Contenido
Introduction
-
Introduction preparado
About the authors, the book, the volumes, nomenclature, and acknowledges.
Capítulos
-
A way to obtain type checking and the Dialyzer validation for the code quality, checking issues, and improvements.
-
Concurrency Oriented Programming preparado
From Object Oriented Programming until the Actor Model, we will see how Erlang use the concurrency and the features applied to OTP.
-
Behaviours preparado
Defining behaviours to be implemented in Erlang. From scratch to understand how OTP was built and how it works.
-
Creating Servers preparado
Defining the minimal unit of programming for OTP: the server. We will explore all of the gen_server possibilities through 3 examples.
-
We advance and increase our knowledge with the Mealy State Machines. We will check 3 more examples to understand how gen_statem works.
-
Event Handlers preparado
The event handling in Erlang/OTP is made for handling alerts and alarms mainly but also to broadcast events to be processed by different modules. In this chapter we will see how to build these event handlers with 3 examples and we will see how alarm_handler is working.
-
Supervising Processes preparado
We will check the supervisor's behavior completely using 4 examples to explore all of the possibilities the supervisor could give us.
-
Creating an Application preparado
We create 3 example applications in this chapter. We will explore all of the previous concepts together (supervisor, servers, state machines), and we create the applications using these concepts. In addition, we will see how dependencies, the included applications, versioning, and configuration works.
-
Distribution preparado
Using the capabilities of the kernel application we will build high availability systems. We will also explore the group of processes (pg), and containers (pool) to design and run distributed systems.
-
Logs with logger preparado
Do you know how the logs are working in Erlang? We will answer this and other questions regarding logger. The goal of this chapter is give you the knowledge about how logger works and how to take advantage of its features.
-
Releases preparado
We finish our travel through OTP framework checking how to perform releases. We will see how to create packages with all of the applications we need to run our development and how to use relx and rebar3 for these tasks.
Appendixes
-
Erlang Documentation: EDoc preparado
A summary and recipe about how to create documentation for the Erlang modules using the rich comments.
-
Command-line: Dialyzer preparado
A small guide about how to use Dialyzer in the command-line. We review the parameters to use with the command, how to generate the PLT files and common errors you can get and how to solve them.
-
Command-line: erl preparado
A bit of help to use the command line with erl. It's short but plenty of tricks about optimizations and parameters definition.