Erlang Programming Course Description
Erlang is about making software systems that are fault tolerant used to build massively scalable soft real-time systems with requirements on high availability.
The course will teach you the fundamentals to advance concepts of Erlang. The course contains all the Erlang basics such as sequential and concurrent programming, along side error handling. The Erlang development environment is presented, with a special emphasis on the Erlang mode for Emacs alongside the major debugging tools. Good and bad programming practices are discussed,
as are tools used to profile the system. OTP design principles and concepts are sneaked into the material as well as the exercises.
Erlang Programming Course Learning Outcomes;
- Use existing Design Patterns supported by Erlang and OTP.
- Apply Generic Behaviours, Finite State Machines, and Event handler Patterns.
- Use the Supervisor and Application Behaviours Patterns.
- Write your own Design Patterns.
- Structure large Erlang based systems.
Erlang Training Course Suggested Audience
This course is designed for developers who want to learn fault-tolerant programming with Erlang. Suggested attendees based on our past programs are:
- IT Consultants
Erlang Programming course – Prerequisites
As a prerequisite, you need to have good programming skills in another language.
Erlang Programming In-house/Corporate Group Training
Available for a group size of more than 4-5. For commercials please send us an email with group size to firstname.lastname@example.org
|Introduction to the software needs of telecom control systems Details||00:00:00|
|History of Erlang and its features Details||00:00:00|
|2. Basic Erlang|
|Erlang data types and pattern matching. Details||00:00:00|
|Functions, modules, and BIFs. Details||00:00:00|
|Erlang shell, shell commands, Emacs and its Erlang mode. Details||00:00:00|
|3. Sequential Programming|
|Conditional evaluations, guards, and scope of variables. Details||00:00:00|
|Recursion, recursive patterns, tail recursion, and space saving optimizations. Details||00:00:00|
|Libraries, library manual pages, possible run time errors and debugger demonstration. Details||00:00:00|
|4. Concurrent Programming|
|Creation of processes and their life span. Details||00:00:00|
|Sending and receiving messages, selective reception, and passing data in the messages. Details||00:00:00|
|Uses of time outs and registering processes, and generic process code structure. Details||00:00:00|
|Demonstration of the Process Manager tool. Details||00:00:00|
|5. Process Design Patterns|
|Concept of process patterns Details||00:00:00|
|OTP behaviors. Details||00:00:00|
|Example of a client-server system, Details||00:00:00|
|Finite state machines and event handlers. Details||00:00:00|
|Synchronous versus asynchronous message passing. Details||00:00:00|
|6. Process Error Handling|
|Error handling mechanisms. Details||00:00:00|
|Process links, exit signals, and propagation semantics. Details||00:00:00|
|7. Code Updating|
|Software upgrade during run time. Details||00:00:00|
|Error handler, code server and code search paths (.erlang file) Details||00:00:00|
|8. ETS tables|
|Introduction to the Erlang Term Storage. Details||00:00:00|
|Examples on DO’s and DON’T’s ETS tables. Details||00:00:00|
|9. Distributed Programming|
|Introduction to the requirements of distributed systems Details||00:00:00|
|Distribution syntax and semantics Details||00:00:00|
|BIFs and the net kernel. Details||00:00:00|
|10. Ports and Sockets|
|Introduction of the mechanisms of ERLANG. Details||00:00:00|
|Ports, for external communication Details||00:00:00|
|Sockets, for communication on IP networks. Details||00:00:00|
|Difference between TCP and UDP Details||00:00:00|
No Reviews found for this course.