
This video gives overview of the entire course.
What is Elixir? Where did it come from? What defines it? Why is it important?
What is functional programming and why is it useful? What defines functional languages and what are their common characteristics?
What basic literal types do we have in Elixir? How can we begin writing Elixir programs?
How can we build more complex data structures using the built-in collection types in Elixir? What can we do with these?
What is pattern matching and how does it differ from assignment? How can we use pattern matching?
How can we leverage pattern matching to extract data from complex structures?
What is a function in Elixir? How do we define and compose them?
How can we leverage pattern matching in function calls and how can we match a call with specific arguments to a concrete function?
What are anonymous functions? What part do they play in making code reusable? How does this play with functional programming?
What is recursion? How to design recursive computations?
How to execute branching paths in Elixir? How to use them in control flow?
What are exceptions? How to trigger and handle exceptions?
What is standard IO? How to write strings to the terminal screen? How to read from the keyboard?
How to manipulate files using Elixir?
What are the necessary steps to create an application from scratch? What’s the common structure of an application? How can we run it interactively?
How can we leverage the use of third party dependencies to enrich our application? Where can we get these dependencies and how do we make them work with our application?
What are unit tests? How can we test our application automatically to ensure everything is working as expected? How can we isolate the components of our application to test them effectively?
This video will give you an overview about the course.
In this video, we will learn about the Enumerable Protocol and how we can manipulate collection types by means of the Enum module.
In this video, we will learn how we can make enumerable transformations more memory efficient and how we can deal with large or infinite data sets.
In this video, we will learn what Polymorphism is and how we can achieve Polymorphism in Elixir using Protocols.
In this video, we will learn how we can implement a Protocol for existing Elixir types and how to define our own types and implement a Protocol for them.
In this video, we will learn about processes in Elixir and how we can create/spawn new processes and build complex process trees by linking them together.
In this video, we will learn how to interact with running processes.
In this video, we will learn about data stores and how we can use ETS – Erlang Term Storage – as a transparent data store for our data.
In this video, we will learn the other built-in options for more robust and powerful data stores.
In this video, we will learn how Elixir code is represented internally as Elixir data structures and how we can build these data structure ourselves.
In this video, we will learn how we can use the Elixir metaprogramming capabilities to extend the language features.
In this video, we will learn what OTP is, why we should use it and how its features are exposed in Elixir.
In this video, we will learn how to use OTP to build generic server processes that are both resilient and easy to extend.
In this video, we will learn how OTP helps us in structuring applications.
In this video, we will learn how to create robust applications that rely on many interconnected processes.
In this video, we will learn how to customize a supervisor to suit various use-case patterns.
In this video, we will learn how to express simple state wrappers without resorting to implementing a full-blown GenServer.
In this video, we will learn how to structure our projects in a different way so that they are composed of multiple tightly-coupled applications.
In this video, we will learn how to release our software to the world.
Elixir is a dynamic, friendly, easy-to-use, functional language designed to build scalable and maintainable applications. Elixir leverages the Erlang VM, known for running low-latency, distributed, and fault-tolerant systems, while also being successfully used in web development and the embedded software domain. So, if you're a developer who wish to learn Elixir for building scalable and efficient web applications, then go for this Learning Path.
Packt’s Video Learning Path is a series of individual video products put together in a logical and stepwise manner such that each video builds on the skills learned in the video before it.
The highlights of this Learning Path are:
● Learn the functional programming style with Elixir
● Build and monitor applications with the robust Elixir toolset
● Learn how to use macros and metaprogramming to write dynamic code
Let’s take a quick look at your learning journey. This Learning Path begins with explaining the origin of Elixir programming language. You will then dive into the functional programming paradigm and know why this language is so special. You will also learn the core programming concepts of Elixir such as the language syntax, defining modules, manipulating the characteristics of common data structures, and more.
Next, you will learn about Elixir installation along with successfully running its interactive shell called IEx and its build tool, Mix, which is used to scaffold, build, and test projects. You will get to know Elixir data types and collections to perform complex computations along with familiarizing yourself with the concept of pattern matching used to extract data from complex structures.
Moving ahead, this Learning Path teaches you the I/O concepts which will allow you to present data in much more useful ways. Next, you will learn how to use OTP and its behaviour suite to create robust applications. Finally, you will learn to monitor your applications using the Elixir toolset.
By the end of this Learning Path, you will gain a complete knowledge on Elixir and be able to build your own applications with ease.
Meet Your Expert:
We have the best works of the following esteemed author to ensure that your learning journey is smooth:
Joao Goncalves is a professional software engineer with over 7 years of experience in various areas of software development, from banking and telco software to embedded systems and web development. He has recently discovered and developed his passion for functional programming and finds Elixir a very enjoyable language to use.