Description
In this course, you will :
- Begin with Elixir and then progress to Phoenix, the next-generation web framework that is set to replace many Ruby, Django, PHP, and even Node deployments.
- The course assumes you have prior experience with basic programming. You'd be fine if you knew a little Python (just the basics: if, while, for, lists, dictionaries, and tuples) or Java.
- aim to give you a sense of the rhythm behind Elixir and Phoenix so that you can understand the philosophy and use it to your advantage Using this method, we can cover the entire spectrum in less than?? hours.
- instead of spending many hours explaining simple concepts, cover various aspects of Phoenix (see detailed outlines below for specifics) in a quick and efficient manner.
Syllabus :
1. Getting Started with Elixir
- Installing Elixir on Windows Preview
- All Materials (Download Notes)
- Installing Elixir on Linux
- Installing Elixir on Mac
- Distributed Code Execution in Under 2 Minutes
2. Elixir Language Basics
- Language Basics
- Maps/Dictionaries in Elixir
- Operations on Data Structures
- Code Structuring with Pattern Matching
- Branching and Decision Making
3. Code Modularity / Thinking in Elixir
- Introduction to Modules
- Pattern Matching for Function Definitions
- Guards in Function Definitions
- Anonymous Functions and Default Values
- The Awesome Pipe Operator
- Loops and Recursion
- File Handling 101
- Require, import and Elixir Structures
- Concurrency Basics
4. Phoenix Setup
- Setup Phoenix and Prereqs on Windows
- Setup Phoenix and Prereqs on Linux
- Setup Phoenix and Prereqs on Mac
5. Phoenix and MVC Basics
- Quick Intro to MVC
- Creating a New Page
- Passing Values to Pages
- Path Helpers and Flash Messages
- Function Calls in Views
6. Message Passing
- Message Passing and PubSub
7. Ecto and Phoenix: Database Connectivity
- Talking to Databases through Ecto
- Adding and Validating Constraints
- Using Repo for Communication
8. Authorization and Session Management
- Structuring Code through Contexts
- Credentials for Accounts
- Linking Authorization Credentials to Users
- Wrapping up the User-Credential Link
- Session Management
- Session Plugs
9. Protection Your Web App
- Protecting Pages
- Adding Authors
- Link Pages to Authors
- Associate New Pages to Logged in User
- Adding Page View Count