- Mastering Elixir
- André Albuquerque Daniel Caixinha
- 308字
- 2021-08-05 10:42:52
Innards of an Elixir Project
After looking at the building blocks in the past chapter, we will now explore the fundamental aspects of any Elixir project. There are a few rules that need to be followed, but fortunately every one of them is simple to adopt and contributes to an understandable project structure. An application that doesn't get in the way of the evolution and maintenance tasks during all its years in production is a joy for the people who work with it, and this is exactly what we aim for.
We will start by learning what an Elixir application is and how we can structure an Elixir project, along with some of the existing good practices that you can leverage. We will introduce Umbrella applications and how they can help you to define more rigid boundaries between your project's components. When creating our umbrella project, we will use some common scaffolding mix tasks, which let you quickly create an Elixir project from scratch. Afterward, we'll talk about ElixirDrip, a polished web file server that we'll be developing along this journey. Since we are setting the foundations of our application, we will also establish some rules and best practices regarding code style, using Credo, and the new Elixir 1.6 code formatter.
In this chapter, you will learn the following topics:
- What an Elixir application is
- How to structure an Elixir project
- Different ways of specifying project dependencies
- What an umbrella project is and how it can help to structure your projects
- Using mix new to quickly get new projects up to speed
- Laying the foundations of ElixirDrip, the project we'll develop throughout this book
- Defining behaviours, to allow different behaviour implementations
- Using xref to understand the dependencies between your project files
- Establishing a consistent code style with Credo and the Elixir formatter
- 零基礎PHP學習筆記
- GeoServer Cookbook
- 人人都懂設計模式:從生活中領悟設計模式(Python實現)
- Express Web Application Development
- MySQL從入門到精通(軟件開發視頻大講堂)
- 響應式Web設計:HTML5和CSS3實戰(第2版)
- Hadoop 2.X HDFS源碼剖析
- 一步一步跟我學Scratch3.0案例
- 交互式程序設計(第2版)
- 趣學數據結構
- Learning Puppet
- Instant JRebel
- React Native -Building Mobile Apps with JavaScript
- 深入淺出Go語言核心編程
- 破繭成蝶:用戶體驗設計師的成長之路