Functional Programming in JavaScript

Author: Luis Atencio

Publisher: Manning Publications

ISBN: 9781617292828

Category: Computers

Page: 272

View: 850

DOWNLOAD NOW »
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 Inside High-value FP techniques for real-world uses Using FP where it makes the most sense Separating the logic of your system from implementation details FP-style error handling, testing, and debugging All code samples use JavaScript ES6 (ES 2015) About the Reader Written for developers with a solid grasp of JavaScript fundamentals and web application design. About the Author Luis Atencio is a software engineer and architect building enterprise applications in Java, PHP, and JavaScript. Table of Contents PART 1 THINK FUNCTIONALLY Becoming functional Higher-order JavaScript PART 2 GET FUNCTIONAL Few data structures, many operations Toward modular, reusable code Design patterns against complexity PART 3 ENHANCING YOUR FUNCTIONAL SKILLS Bulletproofing your code Functional optimizations Managing asynchronous events and data

Functional JavaScript

Introducing Functional Programming with Underscore.js

Author: Michael Fogus

Publisher: "O'Reilly Media, Inc."

ISBN: 1449360785

Category: Computers

Page: 260

View: 2699

DOWNLOAD NOW »
How can you overcome JavaScript language oddities and unsafe features? With this book, you’ll learn how to create code that’s beautiful, safe, and simple to understand and test by using JavaScript’s functional programming support. Author Michael Fogus shows you how to apply functional-style concepts with Underscore.js, a JavaScript library that facilitates functional programming techniques. Sample code is available on GitHub at https://github.com/funjs/book-source. Fogus helps you think in a functional way to help you minimize complexity in the programs you build. If you’re a JavaScript programmer hoping to learn functional programming techniques, or a functional programmer looking to learn JavaScript, this book is the ideal introduction. Use applicative programming techniques with first-class functions Understand how and why you might leverage variable scoping and closures Delve into higher-order functions—and learn how they take other functions as arguments for maximum advantage Explore ways to compose new functions from existing functions Get around JavaScript’s limitations for using recursive functions Reduce, hide, or eliminate the footprint of state change in your programs Practice flow-based programming with chains and functional pipelines Discover how to code without using classes

Functional Programming in JavaScript

Author: Dan Mantyla

Publisher: Packt Publishing Ltd

ISBN: 1784392405

Category: Computers

Page: 172

View: 8762

DOWNLOAD NOW »
If you are a JavaScript developer interested in learning functional programming, looking for the quantum leap towards mastering the JavaScript language, or just want to become a better programmer in general, then this book is ideal for you. It is aimed at programmers involved in developing reactive frontend apps, server-side apps that wrangle with reliability and concurrency, and everything in between.

Mastering JavaScript Functional Programming

In-depth guide for writing robust and maintainable JavaScript code in ES8 and beyond

Author: Federico Kereki

Publisher: Packt Publishing Ltd

ISBN: 1787289737

Category: Computers

Page: 386

View: 6814

DOWNLOAD NOW »
Master Functional Programming techniques with this comprehensive guide for writing cleaner, safer, high-performing JavaScript codes About This Book Become proficient and skilled with Functional Programming in JavaScript to solve real-world development problems Successfully apply Functional Programming concepts and techniques to everyday JavaScript programming Bring modularity, reusability, testability, and performance to your web apps Who This Book Is For If you are a JavaScript developer and want to apply functional programming techniques, then this book is for you. Only a basic knowledge of the concepts of functional programming is required for this book. What You Will Learn Create more reliable code with closures and immutable data Convert existing methods into pure functions, and loops into recursive methods Develop more powerful applications with currying and function composition Separate the logic of your system from implementation details Implement composition and chaining techniques to simplify coding Use functional programming techniques where it makes the most sense In Detail Functional programming is a programming paradigm for developing software using functions. Learning to use functional programming is a good way to write more concise code, with greater concurrency and performance. The JavaScript language is particularly suited to functional programming. This book provides comprehensive coverage of the major topics in functional programming with JavaScript to produce shorter, clearer, and testable programs. You'll delve into functional programming; including writing and testing pure functions, reducing side-effects, and other features to make your applications functional in nature. Specifically, we'll explore techniques to simplify coding, apply recursion for loopless coding, learn ways to achieve immutability, implement design patterns, and work with data types. By the end of this book, you'll have developed the JavaScript skills you need to program functional applications with confidence. Style and approach This book takes an easy-to-follow, step-by-step tutorial approach. You will make the most of JavaScript programming with a focus on the progression of functional programming techniques, styles, and detailed information about JavaScript libraries.

Beginning Functional JavaScript

Functional Programming with JavaScript Using EcmaScript 6

Author: Anto Aravinth

Publisher: Apress

ISBN: 1484226569

Category: Computers

Page: 164

View: 8033

DOWNLOAD NOW »
Learn functional programming concepts using JavaScript ES6. You will learn concepts such as currying, partial functions, higher-order functions, and monads. Programming languages have evolved from focusing on procedures to objects and now on function. JavaScript supports functional programming and allows developers to write well-crafted code. What You Will Learn: Master functional programming concepts Identify how functions are treated in JavaScript Understand real-world functional libraries and create a functional library that mimics underscore.js Perform pure-error handling techniques such as functors and monads Discover ES6 functional features such as spread operators and generators Who This Book Is For: JavaScript developers (or beginners) who want to understand functional programming concepts and the functional nature of the language.

Reactive Programming with Node.js

Author: Fernando Doglio

Publisher: Apress

ISBN: 1484221524

Category: Computers

Page: 153

View: 8274

DOWNLOAD NOW »
Learn how to institute Reactive Programming (RP) for your back-end development with Node.js. Up to now, RP has most often been used in front-end development, but with its cutting-edge approach you can also transform your back-end programming. Reactive Programming with Node.js will show you the paradigms of RP, why you should use it, and the variations available to you. You will learn how to use the main libraries necessary to provide an enhanced development experience in Node.js, including RxJS, Bacon.js, Kefir.js, and Highland.js. You will also create a custom library that provides a variety of key features, and learn how to scale up a system developed using RP in Node.js. Ideal for back-end developers with knowledge of Node.js or JavaScript, this book enables you to get up and running with RP in Node.js, and revolutionize your back-end development. What You'll Learn: Review the variations of Reactive programming Use the main libraries that provide this type of development experience in Node.js Create a custom library Scale up a system developed using RP in Node.js Who This Book Is For: Any back-end developers who understand Node.js or are advanced enough to pick up the basics. Ideal for developers who have an interest in learning about this different programming paradigm that's being used more and more every day.

Learning Functional Programming in Go

Change the way you approach your applications using functional programming in Go

Author: Lex Sheehan

Publisher: Packt Publishing Ltd

ISBN: 1787286045

Category: Computers

Page: 670

View: 8215

DOWNLOAD NOW »
Function literals, Monads, Lazy evaluation, Currying, and more About This Book Write concise and maintainable code with streams and high-order functions Understand the benefits of currying your Golang functions Learn the most effective design patterns for functional programming and learn when to apply each of them Build distributed MapReduce solutions using Go Who This Book Is For This book is for Golang developers comfortable with OOP and interested in learning how to apply the functional paradigm to create robust and testable apps. Prior programming experience with Go would be helpful, but not mandatory. What You Will Learn Learn how to compose reliable applications using high-order functions Explore techniques to eliminate side-effects using FP techniques such as currying Use first-class functions to implement pure functions Understand how to implement a lambda expression in Go Compose a working application using the decorator pattern Create faster programs using lazy evaluation Use Go concurrency constructs to compose a functionality pipeline Understand category theory and what it has to do with FP In Detail Functional programming is a popular programming paradigm that is used to simplify many tasks and will help you write flexible and succinct code. It allows you to decompose your programs into smaller, highly reusable components, without applying conceptual restraints on how the software should be modularized. This book bridges the language gap for Golang developers by showing you how to create and consume functional constructs in Golang. The book is divided into four modules. The first module explains the functional style of programming; pure functional programming (FP), manipulating collections, and using high-order functions. In the second module, you will learn design patterns that you can use to build FP-style applications. In the next module, you will learn FP techniques that you can use to improve your API signatures, to increase performance, and to build better Cloud-native applications. The last module delves into the underpinnings of FP with an introduction to category theory for software developers to give you a real understanding of what pure functional programming is all about, along with applicable code examples. By the end of the book, you will be adept at building applications the functional way. Style and approach This book takes a pragmatic approach and shows you techniques to write better functional constructs in Golang. We'll also show you how use these concepts to build robust and testable apps.

Functional Programming for Java Developers

Tools for Better Concurrency, Abstraction, and Agility

Author: Dean Wampler

Publisher: "O'Reilly Media, Inc."

ISBN: 1449311032

Category: COMPUTERS

Page: 88

View: 9457

DOWNLOAD NOW »
Software development today is embracing functional programming (FP), whether it's for writing concurrent programs or for managing Big Data. Where does that leave Java developers? This concise book offers a pragmatic, approachable introduction to FP for Java developers or anyone who uses an object-oriented language. Dean Wampler, Java expert and author of Programming Scala (O'Reilly), shows you how to apply FP principles such as immutability, avoidance of side-effects, and higher-order functions to your Java code. Each chapter provides exercises to help you practice what you've learned. Once you grasp the benefits of functional programming, you’ll discover that it improves all of the code you write. Learn basic FP principles and apply them to object-oriented programming Discover how FP is more concise and modular than OOP Get useful FP lessons for your Java type design—such as avoiding nulls Design data structures and algorithms using functional programming principles Write concurrent programs using the Actor model and software transactional memory Use functional libraries and frameworks for Java—and learn where to go next to deepen your functional programming skills

JavaScript: Functional Programming for JavaScript Developers

Author: Ved Antani,Simon Timms,Dan Mantyla

Publisher: Packt Publishing Ltd

ISBN: 1787125572

Category: Computers

Page: 635

View: 3395

DOWNLOAD NOW »
Unlock the powers of functional programming hidden within JavaScript to build smarter, cleaner, and more reliable web apps About This Book Write powerful code with the high-level functions that JavaScript offers Discover what functional programming is, why it's effective, and how it's used in JavaScript Understand and optimize JavaScript's hidden potential as a true functional language Who This Book Is For If you are a JavaScript developer interested in learning functional programming, looking for the quantum leap toward mastering the JavaScript language, or just want to become a better programmer in general, then this book is ideal for you. This guide is aimed at programmers, involved in developing reactive frontend apps, server-side apps that wrangle with reliability and concurrency, and everything in between. What You Will Learn Get a run through of the basic JavaScript language constructs Code using the powerful object-oriented feature in JavaScript Master DOM manipulation, cross-browser strategies, and ES6 Understand the basic concurrency constructs in Javascript and best performance strategies Harness the power of patterns for tasks ranging from application building to code testing Build large-scale apps seamlessly with the help of reactive patterns Explore advanced design patterns, including dependency injection Develop more powerful applications with currying and function composition Create more reliable code with closures and immutable data In Detail JavaScript is a high-level, dynamic, untyped, lightweight, and interpreted programming language and functional programming is a style that emphasizes and enables smarter code that minimizes complexity and increases modularity. It's a way of writing cleaner code through clever ways of mutating, combining, and using functions. And JavaScript provides an excellent medium for this approach. By learning how to expose JavaScript's true identity as a functional language, we can implement web apps that are more powerful, easier to maintain and more reliable. The java script: Functional Programming for JavaScript Developers course will take you on a journey to show how functional programming when combined with other techniques makes JavaScript programming more efficient. The first module Mastering JavaScript, stress on practical aspects of Javascript development like—Functions and Closures, Runtime debugging techniques, project layout, events and DOM processing, build tools, Object-oriented patterns, isomorphism—everything that a modern Javascript project would need. The second module, Mastering JavaScript Design Patterns - Second Edition, will explore how design patterns can help you improve and organize your JavaScript code. You'll get to grips with creational, structural, and behavioral patterns as you discover how to put them to work in different scenarios. This updated edition will also delve into reactive design patterns and microservices as they are a growing phenomenon in the world of web development. It will also show you some advanced patterns, including dependency injection and live post processing. The third module, Functional Programming in JavaScript, will help you to write real-world applications by utilizing a wide range of functional techniques and styles. It explores the core concepts of functional programming common to all functional languages, with examples of their use in JavaScript. Style and approach This course will begin with providing insights and practical tips on advanced JavaScript features to build highly scalable web and mobile system and move on to some design patterns with JavaScript. Finally, the course ends with presenting the functional programming techniques and styles in JavaScript.

Functional Programming

Practice and Theory

Author: Bruce J. MacLennan

Publisher: Addison-Wesley Professional

ISBN: 9780201137446

Category: Computers

Page: 596

View: 5391

DOWNLOAD NOW »
This book is more than an introduction to programming in functional languages; it introduces functional programming as a new programming paradigm. Its focus is on functional programming methodology--what it is, and how it can be used to good effect. In particular, the book shows how this methodology can be used effectively in deriving, analyzing, and proving the correctness of programs. In as much as this book emphasizes general methodology over any particular language, the author has chosen standard mathematical notation for his examples.

Secrets of the JavaScript Ninja

Author: John Resig,Bibeault,Josip Maras

Publisher: Manning Publications

ISBN: 9781617292859

Category: Computers

Page: 375

View: 5970

DOWNLOAD NOW »
More than ever, the web is a universal platform for all types of applications, and JavaScript is the language of the web. For anyone serious about web development, it's not enough to be a decent JavaScript coder. They need to be ninja-stealthy, efficient, and ready for anything. Secrets of the JavaScript Ninja, Second Edition dives below the surface and helps readers understand the deceptively-complex world of JavaScript and browser-based application development. It skips the basics, and dives into core JavaScript concepts such as functions, closures, objects, prototypes, promises, and so on. With examples, illustrations, and insightful explanations, readers will benefit from the collective wisdom of seasoned experts John Resig, Bear Bibeault, and Josip Maras. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

Lo-Dash Essentials

Author: Adam Boduch

Publisher: Packt Publishing Ltd

ISBN: 178439565X

Category: Computers

Page: 232

View: 8411

DOWNLOAD NOW »
If you are a curious JavaScript developer interested simultaneously in tweaking the efficiency of your code, as well as improving the conciseness of it, and maintaining the readability of it, then this is the book for you. Ideally, the book is intended for readers already working on JavaScript projects and using frameworks such as jQuery and Backbone. Even if you're already using Lo-Dash, this book will show you how to use it efficiently. While extensive JavaScript experience isn't a requirement, you should have at least some prior programming experience in order to best understand the concepts presented.

Eloquent JavaScript, 2nd Ed.

A Modern Introduction to Programming

Author: Marijn Haverbeke

Publisher: No Starch Press

ISBN: 1593275846

Category: Computers

Page: 472

View: 6342

DOWNLOAD NOW »
JavaScript lies at the heart of almost every modern web application, from social apps to the newest browser-based games. Though simple for beginners to pick up and play with, JavaScript is a flexible, complex language that you can use to build full-scale applications. Eloquent JavaScript, 2nd Edition dives deep into the JavaScript language to show you how to write beautiful, effective code. Author Marijn Haverbeke immerses you in example code from the start, while exercises and full-chapter projects give you hands-on experience with writing your own programs. As you build projects such as an artificial life simulation, a simple programming language, and a paint program, you’ll learn: The essential elements of programming, including syntax, control, and dataHow to organize and clarify your code with object-oriented and functional programming techniquesHow to script the browser and make basic web applicationsHow to use the DOM effectively to interact with browsersHow to harness Node.js to build servers and utilities This edition is thoroughly revised and modernized to reflect the current state of Java­Script and web browsers, with brand-new material, such as a chapter on code performance in Java­Script, and expanded coverage of recursion and closures. All source code is available online in an inter­active sandbox, where you can edit the code, run it, and see its output instantly. Isn’t it time you became fluent in the language of the Web?

Refactoring JavaScript

Turning Bad Code Into Good Code

Author: Evan Burchard

Publisher: "O'Reilly Media, Inc."

ISBN: 1491964898

Category: Computers

Page: 442

View: 4934

DOWNLOAD NOW »
How often do you hear people say things like this? "Our JavaScript is a mess, but we’re thinking about using [framework of the month]." Like it or not, JavaScript is not going away. No matter what framework or ”compiles-to-js” language or library you use, bugs and performance concerns will always be an issue if the underlying quality of your JavaScript is poor. Rewrites, including porting to the framework of the month, are terribly expensive and unpredictable. The bugs won’t magically go away, and can happily reproduce themselves in a new context. To complicate things further, features will get dropped, at least temporarily. The other popular method of fixing your JS is playing “JavaScript Jenga,” where each developer slowly and carefully takes their best guess at how the out-of-control system can be altered to allow for new features, hoping that this doesn’t bring the whole stack of blocks down. This book provides clear guidance on how best to avoid these pathological approaches to writing JavaScript: Recognize you have a problem with your JavaScript quality. Forgive the code you have now, and the developers who made it. Learn repeatable, memorable, and time-saving refactoring techniques. Apply these techniques as you work, fixing things along the way. Internalize these techniques, and avoid writing as much problematic code to begin with. Bad code doesn’t have to stay that way. And making it better doesn’t have to be intimidating or unreasonably expensive.

Mastering Functional Programming

Functional techniques for sequential and parallel programming with Scala

Author: Anatolii Kmetiuk

Publisher: Packt Publishing Ltd

ISBN: 1788626036

Category: Computers

Page: 380

View: 9722

DOWNLOAD NOW »
Learn how functional programming can help you in deploying web servers and working with databases in a declarative and pure way Key Features Learn functional programming from scratch Program applications with side effects in a pure way Gain expertise in working with array tools for functional programming Book Description In large projects, it can get difficult keeping track of all the interdependencies of the code base and how its state changes at runtime. Functional Programming helps us solve these problems. It is a paradigm specifically designed to deal with the complexity of software development. This book will show you how the right abstractions can reduce complexity and make your code easy to read and understand. Mastering Functional Programming begins by touching upon the basics such as what lambdas are and how to write declarative code with the help of functions. It then moves on to more advanced concepts such as pure functions and type classes, the problems they aim to solve, and how to use them in real-world scenarios. You will also explore some of the more advanced patterns in the world of functional programming, such as monad transformers and Tagless Final. In the concluding chapters, you will be introduced to the actor model, implement it in modern functional languages, and explore the subject of parallel programming. By the end of the book, you will have mastered the concepts entailing functional programming along with object-oriented programming (OOP) to build robust applications. What you will learn Write reliable and scalable software based on solid foundations Explore the cutting edge of computer science research Effectively solve complex architectural problems in a robust way Avoid unwanted outcomes such as errors or delays and focus on business logic Write parallel programs in a functional style using the actor model Use functional data structures and collections in your day-to-day work Who this book is for If you are from an imperative and OOP background, this book will guide you through the world of functional programming, irrespective of which programming language you use.

Rxjs in Action

Author: Paul P. Daniels,Luis Atencio

Publisher: Manning Publications

ISBN: 9781617293412

Category: Computers

Page: 425

View: 1957

DOWNLOAD NOW »
A growing flood of data is aimed at JavaScript applications, and they need be ready for it. As more and more data is received, applications must scale to stay operational. There's also the problem of latency when data has to be fetched from remote locations. RxJS, or Reactive Extensions for JavaScript, is a library for transforming, composing, and consuming streams of data. RxJS combines reactive and functional programming to give an extensible, asynchronous event handling system for JavaScript. RxJS in Action gives readers the development skills they need to create reactive applications with RxJS. This book is full of theory and practical examples that build on each other and help readers begin thinking in a reactive manner. The book begins by teaching the fundamentals of functional programming, and dives in to the basics of RxJS and what it means to be reactive. Next, it teaches how to build real-world applications with RxJS. The last part of the book tackles the advanced topics to take the reader's reactive programming skills to the next level, as they will learn how to deal with error handling, unit testing, and the role of RxJS when combined with frameworks such as Angular.js or Cycle.js. Examples in the book use RxJS 5, the latest version of RxJS built with an eye on performance and simplicity. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

Functional PHP

Author: Gilles Crettenand

Publisher: Packt Publishing Ltd

ISBN: 1785886916

Category: Computers

Page: 342

View: 8208

DOWNLOAD NOW »
Uncover the secrets of functional programming with PHP to ensure your applications are as great as they can be About This Book Greatly improve your code quality, testability, and readability using modern functional programming techniques Get a solid foundation in functional programming techniques and methodologies Step-by-step learn the concepts to architect more robust code Who This Book Is For If you are a PHP developer with knowledge of object-oriented programming, this book is for you. You do not need prior experience with functional programming. What You Will Learn Declare functions/callables and find out how to manipulate and call them Write pure functions to get more robust code that can be easily tested Learn to compose function using various techniques Use a functional approach to find readable solutions to common issues Utilize performance optimization techniques such as laziness, memorization, and parallelization Build the business logic of applications with the functional paradigm Test functional code and know how to speed up test runs using parallel testing Understand the impact and limitation of functional programming in PHP In Detail A functional approach encourages code reuse, greatly simplifies testing, and results in code that is concise and easy to understand. This book will demonstrate how PHP can also be used as a functional language, letting you learn about various function techniques to write maintainable and readable code. After a quick introduction to functional programming, we will dive right in with code examples so you can get the most of what you've just learned. We will go further with monads, memoization, and property-based testing. You will learn how to make use of modularity of function while writing functional PHP code. Through the tips and best practices in this book, you'll be able to do more with less code and reduce bugs in your applications. Not only will you be able to boost your performance, but you will also find out how to eliminate common loop problems. By the end of the book, you will know a wide variety of new techniques that you can use on any new or legacy codebase. Style and approach This is an easy-to-follow, definitive guide on developing applications using a functional paradigm with PHP. It will guide you through functional programming with the help of real-life examples.

Get Programming with JavaScript

Author: John R. Larsen

Publisher: Manning Publications

ISBN: 9781617293108

Category: Computers

Page: 432

View: 4354

DOWNLOAD NOW »
"Are you ready to start writing your own web apps, games, and programs? You're in the right place! Get Programming with JavaScript is a hands-on introduction to programming for readers who have never written a line of code. Since you're just getting started, this friendly book offers you lots of examples backed by careful explanations. As you go along, you'll find exercises to check your understanding and plenty of opportunities to practice your new skills. You don't need anything special to follow the examples--just the text editor and web browser already installed on your computer. We even give you links to working online code so you can see how everything should look live on your screen"--

Real-World Functional Programming

With Examples in F# and C#

Author: Tomas Petricek

Publisher: Manning Publications

ISBN: 9781933988924

Category: Computers

Page: 529

View: 7546

DOWNLOAD NOW »
"Real World Functional Programming" is a unique tutorial that explores the functional programming model through the F# and C# languages.