Functional Programming, Simplified: (Scala Edition)

⇩ read entire Functional Programming, Simplified: (Scala Edition) online free ⪂ Book By Alvin Alexander ⪻ If youve had trouble trying to learn Functional Programming FP , youre not alone In this book, Alvin Alexander author of the Scala Cookbook and former teacher of Java and Object Oriented Programming OOP classes writes about his own problems in trying to understand FP, and how he finally conquered it. What he originally learned is that experienced FP developers are driven by two goals to use only immutable values, and write only pure functions What he later learned is that they have these goals as the result of another larger goal they want all of their code to look and work just like algebra. While that sounds simple, it turns out that these goals require them to use many advanced Scala features which they often use all at the same time As a result, their code can look completely foreign to novice FP developers As Mr Alexander writes, When you first see their code its easy to ask, Why would anyone write code like this Mr Alexander answers that Why question by explaining the benefits of writing pure functional code Once you understand those benefits your motivation for learning FP he shares five rules for programming in the book All fields must be immutable val fields All functions must be pure functions Null values are not allowed Whenever you use an if you must also use an else You wont create OOP classes that encapsulate data and behavior instead youll design data structures using Scala case classes, and write pure functions that operate on those data structures In the book youll see how those five, simple rules naturally lead you to write pure, functional code that reads like algebra He also shares one Golden Rule for learning Always ask Why Lessons in the book include How and why to write only pure functions Why pure function signatures are much important than OOP method signatures Why recursion is a natural tool for functional programming, and how to write recursive algorithms Because the Scala for expression is so important to FP, dozens of pages explain the details of how it works In the end youll see that monads arent that difficult because theyre a natural extension of the Five Rules The book finishes with lessons on FP data modeling, and two main approaches for organizing your pure functions As Mr Alexander writes, In this book I take the time to explain all of the concepts that are used to write FP code in Scala As I learned from my own experience, once you understand the Five Rules and the small concepts, you can understand Scala FP. Please note that because of the limits on how large a printed book can be, the paperback version does not include all of the chapters that are in the Kindle eBook The following lessons are not in the paperback version Grandma s Cookies a story about pure functions The ScalaCheck lessons The Type Classes lessons The appendices Because those lessons didn fit in the print version, they have been made freely available online. Alvin Alexander wrote the popular Scala Cookbook for OReilly, and also self published two other books, How I Sold My Business A Personal Diary, and A Survival Guide for New Consultants Alvin took the circuitous route to software development He managed to get a degree in Aerospace Engineering from Texas A M University, while all he was really trying to do was play baseball Once he became a practicing engineer, he realized he liked software and programming than engineering So in approximate order he taught himself Fortran, C, Unix, network administration, sed, awk, Lisp, Perl, Java, JavaScript, Python, Ruby, JRuby, PHP, and Scala During this process he started a software consulting firm, grew it to fifteen people, sold it, and moved to Alaska After returning to the Lower 48, he self published two books How I Sold My Business A Personal Diary , and Zen and the Art of Consulting , and then wrote the Scala Cookbook for O Reilly He also created, which receives millions of page views every year. Functional Programming, Simplified: (Scala Edition)Functional Programming, Simplified: (Scala Edition)


    • Alvin Alexander
    • Anglais
    • 2017-11-17T22:51+02:00
    • Format Kindle
    • 780 pages
    • 1979788782
    • Functional Programming, Simplified: (Scala Edition)

Leave a Reply

Your email address will not be published. Required fields are marked *