《Programming Elixir 1.3》电子书下载

Programming Elixir 1.3txt,chm,pdf,epub,mobi下载
作者:Dave Thomas
出版社: The Pragmatic Bookshelf
副标题: Functional |> Concurrent |> Pragmatic |> Fun
出版年: 2016-11-3
页数: 364
定价: USD 38.00
装帧: Paperback
ISBN: 9781680502008

内容简介 · · · · · ·

Functional programming techniques help you manage the complexities of today’s real-world, concurrent systems; maximize uptime; and manage security. Enter Elixir, with its modern, Ruby-like, extendable syntax, compile and runtime evaluation, hygienic macro system, and more. But, just as importantly, Elixir brings a sense of enjoyment to parallel, functional programming. Your app...




作者简介 · · · · · ·

Dave Thomas is a programmer who likes to evangelize cool stuff. He cowrote The Pragmatic Programmer, and was one of the creators of the Manifesto for Agile Software Development. His book Programming Ruby introduced the Ruby language to the world, and Agile Web Development with Rails helped kickstart the Rails revolution.




目录 · · · · · ·

Conventional Programming
Pattern Matching
Assignment: I Do Not Think It Means What You Think It Means.
More Complex Matches
Ignoring a Value with _ (Underscore)
Variables Bind Once (per Match)
· · · · · ·()
Conventional Programming
Pattern Matching
Assignment: I Do Not Think It Means What You Think It Means.
More Complex Matches
Ignoring a Value with _ (Underscore)
Variables Bind Once (per Match)
Another Way of Looking at the Equals Sign
Immutability
You Already Have (Some) Immutable Data
Immutable Data Is Known Data
Performance Implications of Immutability
Coding with Immutable Data
Elixir Basics
Built-in Types
Value Types
System Types
Collection Types
Maps
Binaries
Dates and Times
Names, Source Files, Conventions, Operators, and So On
Variable Scope
End of the Basics
Anonymous Functions
Functions and Pattern Matching
One Function, Multiple Bodies
Functions Can Return Functions
Passing Functions As Arguments
Functions Are the Core
Modules and Named Functions
Compiling a Module
The Function’s Body Is a Block
Function Calls and Pattern Matching
Guard Clauses
Default Parameters
Private Functions
The Amazing Pipe Operator: |>
Modules
Module Attributes
Module Names: Elixir, Erlang, and Atoms
Calling a Function in an Erlang Library
Finding Libraries
Lists and Recursion excerpt
Heads and Tails
Using Head and Tail to Process a List
Using Head and Tail to Build a List
Creating a Map Function
Keeping Track of Values During Recursion
More Complex List Patterns
The List Module in Action
Get Friendly with Lists
Maps, Keyword Lists, Sets, and Structs
How to Choose Between Maps and Keyword Lists
Keyword Lists
Maps
Pattern Matching and Updating Maps
Updating a Map
Structs
Nested Dictionary Structures
Sets
With Great Power Comes Great Temptation
An Aside—What Are Types?
Processing Collections—Enum and Stream
Enum—Processing Collections
Streams—Lazy Enumerables
The Collectable Protocol
Comprehensions
Moving Past Divinity
Strings and Binaries
String Literals
The Name “strings”
Single-Quoted Strings—Lists of Character Codes
Binaries
Double-Quoted Strings Are Binaries
Binaries and Pattern Matching
Familiar Yet Strange
Control Flow
if and unless
cond
case
Raising Exceptions
Designing with Exceptions
Doing More with Less
Organizing a Project
The Project: Fetch Issues from GitHub
Task: Use Mix to Create Our New Project
Transformation: Parse the Command Line
Step: Write Some Basic Tests
Transformation: Fetch from GitHub
Task: Use Libraries
Transformation: Convert Response
Transformation: Sort Data
Transformation: Take First n Items
Transformation: Format the Table
Task: Make a Command-Line Executable
Task: Add Some Logging
Task: Create Project Documentation
Coding by Transforming Data
Tooling excerpt
Testing
Code Dependencies
Server Monitoring
Concurrent Programming
Working with Multiple Processes
A Simple Process
Process Overhead
When Processes Die
Parallel Map—The “Hello, World” of Erlang
A Fibonacci Server
Agents—A Teaser
Thinking in Processes
Nodes—The Key to Distributing Services excerpt
Naming Nodes
Naming Your Processes
I/O, PIDs, and Nodes
Nodes Are the Basis of Distribution
OTP: Servers
Some OTP Definitions
An OTP Server
GenServer Callbacks
Naming a Process
Tidying Up the Interface
OTP: Supervisors
Supervisors and Workers
Supervisors Are the Heart of Reliability
OTP: Applications
This Is Not Your Father’s Application
The Application Specification File
Turning Our Sequence Program into an OTP Application
Supervision Is the Basis of Reliability
Releasing Your Code
EXRM—the Elixir Release Manager
OTP Is Big—Unbelievably Big
Tasks and Agents
Tasks
Agents
A Bigger Example
Agents and Tasks, or GenServer?
More-Advanced Elixir
Macros and Code Evaluation
Implementing an if Statement
Macros Inject Code
Using the Representation As Code
Using Bindings to Inject Values
Macros Are Hygienic
Other Ways to Run Code Fragments
Macros and Operators
Digging Deeper
Digging Ridiculously Deep
Linking Modules: Behavio(u)rs and Use
Behaviours
Use and using
Putting It Together—Tracing Method Calls
Use use
Protocols—Polymorphic Functions
Defining a Protocol
Implementing a Protocol
The Available Types
Protocols and Structs
Built-In Protocols
Protocols Are Polymorphism
More Cool Stuff
Writing Your Own Sigils
Multi-app Umbrella Projects
But Wait! There’s More!
· · · · · · ()

下载地址

发布者:枕边书zl

文件说明:zip / 解压密码:wezp.com

迅雷下载:您需要先后,才能查看

网盘下载:您需要先后,才能查看

关于内容:内容自于互联网,如果发现有违规内容请联系管理员删除!

作者: 枕边书zl

枕边书zl

该用户很懒,还没有介绍自己。

14 条评论

发表评论

  1. 青涩回忆青涩回忆说道:
    1#

    认真看

  2. xin978xinxin978xin说道:
    2#

    近乎平淡的笔触

  3. 白尾黑毛白尾黑毛说道:
    3#

    值得观看的一本好书!

  4. 倪耳娘倪耳娘说道:
    4#

    书的内容好那自然是没得说,单单拿书就够你欣赏一番

  5. 显示更多