Free Downloads
Functional Programming In JavaScript: How To Improve Your JavaScript Programs Using Functional Techniques

Summary Functional Programming in JavaScript teaches JavaScript developers functional techniques that will improve extensibility, modularity, reusability, testability, and performance. Through concrete examples and jargon-free explanations, this book teaches you how to apply functional programming to real-life development tasks Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology In complex web applications, the low-level details of your JavaScript code can obscure the workings of the system as a whole. As a coding style, functional programming (FP) promotes loosely coupled relationships among the components of your application, making the big picture easier to design, communicate, and maintain. About the Book Functional Programming in JavaScript teaches you techniques to improve your web applications - their extensibility, modularity, reusability, and testability, as well as their performance. This easy-to-read book uses concrete examples and clear explanations to show you how to use functional programming in real life. If you're new to functional programming, you'll appreciate this guide's many insightful comparisons to imperative or object-oriented programming that help you understand functional design. By the end, you'll think about application design in a fresh new way, and you may even grow to appreciate monads!What's InsideHigh-value FP techniques for real-world usesUsing FP where it makes the most senseSeparating the logic of your system from implementation detailsFP-style error handling, testing, and debuggingAll code samples use JavaScript ES6 (ES 2015)About the ReaderWritten for developers with a solid grasp of JavaScript fundamentals and web application design.About the AuthorLuis Atencio is a software engineer and architect building enterprise applications in Java, PHP, and JavaScript.Table of ContentsPART 1 THINK FUNCTIONALLYBecoming functional Higher-order JavaScript PART 2 GET FUNCTIONALFew data structures, many operations Toward modular, reusable code Design patterns against complexityPART 3 ENHANCING YOUR FUNCTIONAL SKILLSBulletproofing your codeFunctional optimizations Managing asynchronous events and data

Paperback: 272 pages

Publisher: Manning Publications; 1 edition (June 18, 2016)

Language: English

ISBN-10: 1617292826

ISBN-13: 978-1617292828

Product Dimensions: 7.4 x 0.5 x 9.1 inches

Shipping Weight: 1 pounds (View shipping rates and policies)

Average Customer Review: 4.6 out of 5 stars  See all reviews (12 customer reviews)

Best Sellers Rank: #104,019 in Books (See Top 100 in Books) #7 in Books > Computers & Technology > Programming > Functional #44 in Books > Textbooks > Computer Science > Object-Oriented Software Design #79 in Books > Computers & Technology > Programming > Web Programming > JavaScript

Luis Atencio does an excellent job of explaining how functional programming can be done in javascript as well as providing a compelling case for why you may want to adapt this style. He compares and contrasts with both imperative style and object-orientated code, and while he makes a case that FP is superior, he does so without coming across as insulting to those that like the imperative and OO styles (whereas many authors can feel like they consider those that follow other styles at best naive or even worse).The text covers a wide range of topics in functional programming including side-effect free functions, first-class functions and higher-order functions, partial application, currying, and Monads including functional techniques to avoid nulls and error-checking. He discusses the ways in which functional programs can be more declarative and easier to reason about as well as how functional programming can improve unit and coverage testing and asynchronous code.Atencio's writing style is clear. He presents many examples almost all of which are clear and highly focused on the point under discussion. Many examples even have imperative versions presented for comparison of the two different styles.The text does have a much higher reliance on external libraries than I would like to see, especially where there are native versions of the functions being discussed (for example the map, filter, and reduce array operations). However, many features discussed are not available in native javascript, and in many cases, he does show sample implementations of these features natively (although he does still encourage the library use).The text suffers from a number of typos and errors.

Functional Programming in JavaScript: How to improve your JavaScript programs using functional techniques Javascript: A Pocket Key to JavaScript for beginners (JavaScript Programming, JavaScript Beginners, JavaScript for web developers, JavaScript Beginners Guide, Java Programming for Beginners) Javascript: Beginner to Expert with Javascript Programming (Javascript, Javascript Programming, Javascript for Beginners, Java, Java Programming, Java for Beginners,) JavaScript: QuickStart Guide - The Simplified Beginner's Guide To JavaScript (JavaScript, JavaScript Programming, JavaScript and Jquery) Javascript: Learn Javascript In A DAY! - The Ultimate Crash Course to Learning the Basics of the Javascript Programming Language In No Time (Javascript, ... JSON, Javascript Development Book 1) Effective TCP/IP Programming: 44 Tips to Improve Your Network Programs: 44 Tips to Improve Your Network Programs JAVASCRIPT: Easy JavaScript Programming For Beginners. Your Step-By-Step Guide to Learning JavaScript Programming (JavaScript Series) Programming #8:C Programming Success in a Day & Android Programming In a Day! (C Programming, C++programming, C++ programming language, Android , Android Programming, Android Games) Programming #57: C++ Programming Professional Made Easy & Android Programming in a Day (C++ Programming, C++ Language, C++for beginners, C++, Programming ... Programming, Android, C, C Programming) Programming: Computer Programming for Beginners: Learn the Basics of Java, SQL & C++ - 3. Edition (Coding, C Programming, Java Programming, SQL Programming, JavaScript, Python, PHP) Programming #45: Python Programming Professional Made Easy & Android Programming In a Day! (Python Programming, Python Language, Python for beginners, ... Programming Languages, Android Programming) JAVASCRIPT: JavaScript in 8 Hours, For Beginners, Learn JavaScript Fast! A Smart Way to Learn JS, Plain & Simple, Learn JS Programming Language in Easy Steps, A Beginner's Guide, Start Coding Today! MYSQL Programming Professional Made Easy 2nd Edition: Expert MYSQL Programming Language Success in a Day for any Computer User! (MYSQL, Android programming, ... JavaScript, Programming, Computer Software) XML Programming Success in a Day: Beginner's Guide to Fast, Easy, and Efficient Learning of XML Programming (XML, XML Programming, Programming, XML Guide, ... XSL, DTD's, Schemas, HTML5, JavaScript) Brain Training: Power Brain! - Secret Techniques To: Improve Memory, Focus & Concentration (Brain teasers, Improve memory, Improve focus, Concentration, Brain power) Exam Ref 70-480 Programming in HTML5 with JavaScript and CSS3 (MCSD): Programming in HTML5 with JavaScript and CSS3 Improve Your Eyesight Naturally: How To Improve Your Vision Naturally - Learn Super Effective Eyesight Exercises To Improve Eyesight Without (Vision Therapy, Optometry, Eyesight Improvement) Raspberry Pi 2: Raspberry Pi 2 Programming Made Easy (Raspberry Pi, Android Programming, Programming, Linux, Unix, C Programming, C+ Programming) Android: Programming in a Day! The Power Guide for Beginners In Android App Programming (Android, Android Programming, App Development, Android App Development, ... App Programming, Rails, Ruby Programming) DOS: Programming Success in a Day: Beginners guide to fast, easy and efficient learning of DOS programming (DOS, ADA, Programming, DOS Programming, ADA ... LINUX, RPG, ADA Programming, Android, JAVA)