Cargando…

Mastering JavaScript functional programming : write clean, robust, and maintainable web and server code using functional JavaScript and TypeScript /

Functional programming is a programming paradigm that uses functions for developing software. This book is filled with examples that enable you to leverage the latest JavaScript and TypeScript versions to produce modern and clean code, as well as teach you to how apply functional programming techniq...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Kereki, Federico, 1960- (Autor)
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Birmingham, UK : Packt Publishing Ltd., 2023.
Edición:Third edition.
Temas:
Acceso en línea:Texto completo (Requiere registro previo con correo institucional)

MARC

LEADER 00000cam a22000007i 4500
001 OR_on1379200826
003 OCoLC
005 20231017213018.0
006 m o d
007 cr cnu|||unuuu
008 230516s2023 enka ob 001 0 eng d
040 |a ORMDA  |b eng  |e rda  |e pn  |c ORMDA  |d EBLCP  |d UKAHL  |d N$T  |d OCLCF  |d OCLCQ  |d IEEEE 
019 |a 1376194584 
020 |a 9781804610411  |q (electronic bk.) 
020 |a 1804610410 
020 |z 9781804610138 
029 1 |a AU@  |b 000074864235 
035 |a (OCoLC)1379200826  |z (OCoLC)1376194584 
037 |a 9781804610138  |b O'Reilly Media 
037 |a 10251377  |b IEEE 
050 4 |a QA76.73.J39 
082 0 4 |a 005.2/762  |2 23/eng/20230516 
049 |a UAMI 
100 1 |a Kereki, Federico,  |d 1960-  |e author. 
245 1 0 |a Mastering JavaScript functional programming :  |b write clean, robust, and maintainable web and server code using functional JavaScript and TypeScript /  |c Federico Kereki. 
250 |a Third edition. 
264 1 |a Birmingham, UK :  |b Packt Publishing Ltd.,  |c 2023. 
300 |a 1 online resource (614 pages) :  |b illustrations 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
504 |a Includes bibliographical references and index. 
520 |a Functional programming is a programming paradigm that uses functions for developing software. This book is filled with examples that enable you to leverage the latest JavaScript and TypeScript versions to produce modern and clean code, as well as teach you to how apply functional programming techniques to develop more efficient algorithms, write more concise code, and simplify unit testing. This book provides comprehensive coverage of the major topics in functional programming to produce shorter, clearer, and testable programs. You'll begin by getting to grips with writing and testing pure functions, reducing side effects, as well as other key features to make your applications functional in nature. The book specifically explores techniques to simplify coding, apply recursion, perform high-level 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 practical programming skills needed to confidently enhance your applications by adding functional programming to wherever it's most suitable. If you are a JavaScript or TypeScript developer looking to enhance your programming skills, then this book is for you. The book applies to both frontend developers working with frameworks such as React, Vue, or Angular as well as backend developers using Node.js or Deno. 
505 0 |a Cover -- Title Page -- Copyright and Credits -- Contributors -- About the reviewers -- Table of Contents -- Preface -- Chapter 1: Becoming Functional -- Several Questions -- What is functional programming? -- Theory versus practice -- A different way of thinking -- FP and other programming paradigms -- What FP is not -- Why use FP? -- What we need -- What we get -- Not all is gold -- Is JavaScript functional? -- JavaScript as a tool -- Going functional with JavaScript -- Key features of JavaScript -- How do we work with JavaScript? -- Using transpilers -- Working online 
505 8 |a A step further -- TypeScript -- Testing -- Summary -- Questions -- Chapter 2: Thinking Functionally -- A First Example -- Our problem -- doing something only once -- Solution 1 -- hoping for the best! -- Solution 2 -- using a global flag -- Solution 3 -- removing the handler -- Solution 4 -- changing the handler -- Solution 5 -- disabling the button -- Solution 6 -- redefining the handler -- Solution 7 -- using a local flag -- A functional solution to our problem -- A higher-order solution -- Testing the solution manually -- Testing the solution automatically -- Producing an even better solution -- Summary 
505 8 |a Questions -- Chapter 3: Starting Out with Functions -- A Core Concept -- All about functions -- Of lambdas and functions -- Arrow functions -- the modern way -- Functions as objects -- Using functions in FP ways -- Injection -- sorting it out -- Callbacks and promises -- Continuation-passing style -- Polyfills -- Stubbing -- Immediate invocation (IIFE) -- Summary -- Questions -- Chapter 4: Behaving Properly -- Pure Functions -- Pure functions -- Referential transparency -- Side effects -- Advantages of pure functions -- Impure functions -- Avoiding impure functions -- Is your function pure? 
505 8 |a Testing -- pure versus impure -- Testing pure functions -- Testing purified functions -- Testing impure functions -- Summary -- Questions -- Chapter 5: Programming Declaratively -- A Better Style -- Transformations -- Reducing an array to a value -- Applying an operation -- map() -- Dealing with arrays of arrays -- More general looping -- Logical HOFs -- Filtering an array -- Searching an array -- Higher-level predicates -- every() and some() -- Checking negatives -- none() -- Working with async functions -- Some strange behaviors -- Async-ready looping -- Working with parallel functions 
505 8 |a Unresponsive pages -- A frontend worker -- A backend worker -- Workers, FP style -- Long-living pooled workers -- Summary -- Questions -- Chapter 6: Producing Functions -- Higher-Order Functions -- Wrapping functions -- keeping behavior -- Logging -- Timing functions -- Memoizing functions -- Altering a function's behavior -- Doing things once, revisited -- Logically negating a function -- Inverting the results -- Arity changing -- Throttling and debouncing -- Changing functions in other ways -- Turning operations into functions -- Turning functions into promises 
590 |a O'Reilly  |b O'Reilly Online Learning: Academic/Public Library Edition 
650 0 |a JavaScript (Computer program language) 
650 0 |a Functional programming (Computer science) 
650 0 |a Web site development. 
650 7 |a Functional programming (Computer science)  |2 fast  |0 (OCoLC)fst00936086 
650 7 |a JavaScript (Computer program language)  |2 fast  |0 (OCoLC)fst00982071 
650 7 |a Web site development.  |2 fast  |0 (OCoLC)fst01173243 
776 0 8 |i Print version:  |a Kereki, Federico.  |t Mastering JavaScript Functional Programming.  |b 3rd ed.  |d Birmingham : Packt Publishing, Limited, 2023  |z 9781804610411 
856 4 0 |u https://learning.oreilly.com/library/view/~/9781804610138/?ar  |z Texto completo (Requiere registro previo con correo institucional) 
938 |a Askews and Holts Library Services  |b ASKH  |n AH41210335 
938 |a ProQuest Ebook Central  |b EBLB  |n EBL30481307 
938 |a EBSCOhost  |b EBSC  |n 3591916 
994 |a 92  |b IZTAP