چه کسانی این کتاب را می‌خوانند

دانشجوعلاقه‌مند یادگیری
کتابخوان حرفه‌ایلذت مطالعه
نویسندهالهام‌گیری

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

Rob Aley (auth.)

قیمت نهایی

۴۰٬۰۰۰ تومان۴۹٬۰۰۰ تومان۱۸٪ تخفیف
  • تخفیف زمان‌دار−۹٬۰۰۰ تومان

۹٬۰۰۰ تومان صرفه‌جویی نسبت به قیمت اصلی

نسخه اصلی و اورجینال

بلافاصله پس از خرید، فایل کتاب روی دستگاه شما آمادهٔ دانلود است.

تحویل فوری
پرداخت امن
ضمانت فایل
پشتیبانی

مشخصات کتاب

نویسنده
Rob Aley (auth.)
سال انتشار
۲۰۱۷
فرمت
PDF
زبان
انگلیسی
تعداد صفحات
۲۰ صفحه
حجم فایل
۳٫۰ مگابایت
شابک
9781484221136، 9781484221143، 9781484225554، 9781484225561، 9781484229576، 9781484229583، 9785641613314، 1484221133، 1484221141، 1484225554، 1484225562، 1484229576، 1484229584، 5641613312

دربارهٔ کتاب

Bring the power of functional programming to your PHP applications. From performance optimizations to concurrency, improved testability to code brevity, functional programming has a host of benefits when compared to traditional imperative programming. Part one of __Pro Functional PHP Programming__ takes you through the basics of functional programming, outlining the key concepts and how they translate into standard PHP functions and code. Part two takes this theory and shows you the strategies for implementing it to solve real problems in your new or existing PHP applications. Functional programming is popular in languages such as Lisp, Scheme and Clojure, but PHP also contains all you need to write functional code. This book will show you how to take advantage of functional programming in your own projects, utilizing the PHP programming language that you already know. **What You'll Learn*** **Discover functional programming in PHP** * **Work with functional programming functions** * **Design strategies for high-performance applications** * **Manage business logic with functions** * **Use functional programming in object-oriented and procedural applications** * **Employ helper libraries in your application** * **Process big data with functional PHP** ********Who This Book Is For******** Programmers and web developers with experience of PHP who are looking to get more out of their PHP coding and be able to do more with PHP. Contents at a Glance 4 Contents 5 About the Author 14 About the Technical Reviewer 16 Acknowledgments 17 Part I: Functional Programming in PHP 7 18 Chapter 1: Introduction 19 Who Is This Book For? 19 What Is Functional Programming? 19 Functional Programming Is SOLID 22 S: Single Responsibility Principle (SRP) 22 O: Open/Closed Principle (OCP) 22 L: Liskov Substitution Principle (LSP) 22 I: Interface Segregation Principle (ISP) 22 D: Dependency Inversion Principle (DIP) 23 Further Reading 23 What Are the Benefits of Functional Programming? 23 Who Uses Functional Programming, and Why? 23 Is Functional Programming “All or Nothing”? 24 Further Reading 24 Why Use PHP for Functional Programming? 25 Why Not to Use PHP for Functional Programming 25 PHP Versions 26 Conclusion 26 Chapter 2: Functional Programming: Key Concepts 27 Examining State 27 Mutability and Immutability 30 Further Reading 33 What Is a Function? 33 Named Functions 33 Variable Functions 39 Language Constructs 40 Return Values 41 Lambda/Anonymous Functions 43 Higher-Order Functions 47 Scope 51 Further Reading 53 State 53 Parameters/Arguments/Operands, Arity, and Variadic Functions 54 Further Reading 56 Closures 56 Side Effects 58 Referential Transparency 58 Pure Functions 60 Lists and Collections 60 Further Reading 60 Conclusion 60 Chapter 3: Getting Started with Functional Patterns 61 Map, Filter, and Reduce 61 Recursive Functions 64 Basic Recursion 64 Implementing a Recursive Function 69 Partial Functions 72 Functional Expressions 76 Functional Composition 78 Conclusion 83 Chapter 4: Advanced Functional Techniques 84 Currying Functions 84 The Mysterious Monad 87 What Is a Monad? 87 The Maybe Monad 91 Monad Axioms 94 Monad Axiom 1 94 Monad Axiom 2 94 Monad Axiom 3 95 Testing the Monad Axioms 95 Other Useful Monads 97 The IO Monad 101 Learn More About Monads 103 Further Reading 104 Recursion with Trampolines 104 Recursive Lambdas 107 The PHP Type System 108 Type Declarations 110 Further Reading 114 Summary 114 Part II: Application Development Strategies 115 Chapter 5: Strategies for High-Performance Applications 116 Understanding and Measuring Performance 116 Measuring Performance: Profiling 116 Manual Profiling 117 Profiling Tools 119 Further Reading and Tools 120 Low-Level Profiling 121 Further Reading 121 Memoization 121 Further Reading 133 The Downsides of Memoization 133 Lazy Evaluation 134 Further Reading 134 Generators 135 Further Reading 143 The Downsides of Lazy Evaluation 143 Parallel Programming 144 Multithreaded Programming 154 Further Reading 154 The Standard PHP Library (SPL) 154 Further Reading 158 Conclusion 158 Chapter 6: Managing Business Logic with Functions 159 Managing Business Logic 159 Event-Based Programming 166 Further Reading 168 Asynchronous PHP 175 Further Reading 175 Chapter 7: Using Functional Programming in Objected-Oriented and Procedural Applications 176 History of PHP Paradigms 176 Further Reading 177 PHP Is Not a Functional Language 177 Objects and Mutability 179 Further Reading 186 Immutable Data with Objects 186 Object Properties As External State 191 Inline Impurities 193 Procedural Programming Considerations 197 Summary 199 Chapter 8: Using Helper Libraries in Your Application 200 How to Choose a Library 200 Pick Libraries Apart 201 Libraries Based on Ramda 201 Pramda 201 Phamda 207 Libraries Based on Underscore 210 Underscore.php (1) 210 Underscore 213 Underscore.php (2) 215 Miscellaneous Libraries 217 Saber 217 Functional PHP 218 Other Libraries 222 Chapter 9: Processing Big Data with Functional PHP 223 What Is Big Data? 223 Introducing Hadoop 224 About MapReduce 224 Installing Hadoop 225 Tools 225 Creating Hadoop Jobs in PHP 228 Further Reading 237 chapter 10: Afterword 238 Where to Now? 238 Giving Feedback and Getting Help and Support 239 Appendix A: Installing PHP and Libraries 240 Compiling and Installing PHP 240 Microsoft Windows 241 macOS/OS X 241 Linux/Unix 242 Compiling and Installing (Extra) Core Extensions 243 Installing Multiple Versions of PHP 244 Further Reading 245 Tools 245 PEAR and PECL 245 Composer 246 Symfony2 Bundles 246 Getting Help 246 The PHP Manual 246 Official Mailing Lists 247 Stack Overflow 247 Other Books 247 Newsgroups 247 PHP Subredit 248 PHP on GitHub 248 File and Data Format Libraries for PHP 248 Office Documents 249 Compression, Archiving, and Encryption 251 Graphics 252 Audio 253 Multimedia and Video 253 Programming, Technical, and Data Interchange 254 Miscellaneous 255 Appendix B: Command-Line PHP 256 PHP Without a Web Server 256 What’s Different About the CLI SAPI? 257 Further Reading 258 CLI SAPI Installation 258 PHP Command-Line Options 259 Further Reading 262 Command-Line Arguments for Your Script 262 Different Ways to Call PHP Scripts 264 From a File 264 From a String 264 From STDIN 264 As a Self-Executing Script: Unix/Linux 265 Further Reading 266 As a Self-Executing Script: Windows 267 Windows php-win.exe 267 “Click to Run” Your PHP 267 Clickable Icons: Linux 268 Further Reading 268 Clickable Icons: Windows 268 Clickable Icons: Ubuntu Unity 269 Further Reading 270 Quitting Your Script from Within 270 Further Reading 271 Thinking About Security 271 Further Reading 272 CLI-Specific Code Frameworks 273 Further Reading 273 PHP REPLs 274 PsySH 276 Boris 276 phpa 276 PHP Interactive 277 Sublime-worksheet 277 phpsh 277 iPHP 277 Appendix C: Functional Programming Resources 278 Other Programming Languages 278 Functional Programming and Other Paradigms 278 Articles 278 Online Books 279 Videos 279 Online Courses 280 Functional Programming Design Patterns 281 PHP Functional Basics 281 Data Structures 282 Mutability in PHP 282 Map, Filter, Reduce and Other Array Functions 282 Recursion and Trampolines 283 Partial Functions and Currying 283 Functional Composition 283 Monads 283 Types 284 Profiling 285 Memoization 286 Lazy Evaluation 286 Relevant PHP Manual Sections 286 Parallel Programming 287 Testing 287 Event-Based Programming 287 Asynchronous PHP 287 Big Data/Hadoop 288 General-Purpose Libraries 289 Functional Framework 295 Lisp in PHP 295 Other Miscellaneous Topics 295 PHP RFCs: The Future 295 The Wikipedia Glossary 296 Index 298 Discover how stronger types mean cleaner, more efficient, and optimized PHP applications. This unique book looks at typed PHP: PHP types, strings, regular expressions, and more from PHP 7 as found in standard PHP libraries, user libraries, extensions, and cross-compilers. You'll see how to create a set of reusable tools that unify and ease the scalar types of PHP. PHP has a rich history and a dominant place on the web. It has achieved much despite language inconsistencies and difficulties. Bjarne Stroustrup once said: "There are only two kinds of languages: the ones people complain about and the ones nobody uses." PHP is one of those languages that everybody uses, yet that's often seen as a good reason to ignore the bad parts and just get stuff done. We're all for getting stuff done, and to that end, the author has used Plain Ol' PHP for many years. It's always bugged him how procedural PHP is, in an ecosystem of OOP libraries and frameworks. So he decided to take a deeper look at building a stronger type system on top of PHP. That's the goal of this book. What You'll Learn Discover the fundamentals of PHP strings, regex, underscores, native function inconsistencies, and more Examine the structure of PHP types including boxing, regex, namespace functions, composer autoload, null problem, optional values, and more Work with extensions like vagrant ] phansible, provisioning, vagrant commands, SPL types, scalar objects, zephir, and more Design using scalar, SPL, zephir, structure types, resolving types, chaining, combining number types, PHPUnit, packaging, and more Plan for the future using a case study example Who This Book Is For Experienced web developers and PHP programmers. Gain an in-depth understanding of PHP 7 arrays. After a quick overview of PHP 7, each chapter concentrates on single, multi-dimensional, associative, and object arrays. PHP Arrays is a first of its kind book using PHP 7 that demonstrates inserting, appending, updating, and deleting array data. This book also covers validation methods to insure that the data provided by a user is good before the data is entered into an array. You'll see how PHP 7 try/catch modules are used to capture exceptions and errors that may be caused by invalid data. The code examples demonstrate common real-world scenarios. Moreover, examples of every PHP 7 array function (over 75) are demonstrated. The appendix provides a two-dimensional array case study on the logical design of a checkers game. PHP Arrays answers the following questions: Why do we need arrays? When do we need to use arrays? Are arrays efficient? Can arrays reduce coding time? When do you use multi-dimensional and associative arrays? What is an object array? What You'll Learn Handle array data from an HTML form Manage array data from a text file Deal with array data from a MySQL database Who This Book Is For Experienced PHP programmers or web developers using PHP. Bring the power of functional programming to your PHP applications. From performance optimizations to concurrency, improved testability to code brevity, functional programming has a host of benefits when compared to traditional imperative programming. Part one of Pro Functional PHP Programming takes you through the basics of functional programming, outlining the key concepts and how they translate into standard PHP functions and code. Part two takes this theory and shows you the strategies for implementing it to solve real problems in your new or existing PHP applications. Functional programming is popular in languages such as Lisp, Scheme and Clojure, but PHP also contains all you need to write functional code. This book will show you how to take advantage of functional programming in your own projects, utilizing the PHP programming language that you already know. You will: Discover functional programming in PHP Work with functional programming functions Design strategies for high-performance applications Manage business logic with functions Use functional programming in object-oriented and procedural applications Employ helper libraries in your application Process big data with functional PHP "Gain an in-depth understanding of PHP 7 arrays. After a quick overview of PHP 7, each chapter concentrates on single, multi-dimensional, associative, and object arrays. PHP Arrays is a first of its kind book using PHP 7 that demonstrates inserting, appending, updating, and deleting array data. This book also covers validation methods to insure that the data provided by a user is good before the data is entered into an array. You'll see how PHP 7 try/catch modules are used to capture exceptions and errors that may be caused by invalid data. The code examples demonstrate common real-world scenarios. Moreover, examples of every PHP 7 array function (over 75) are demonstrated. The appendix provides a two-dimensional array case study on the logical design of a checkers game. PHP Arrays answers the following questions: Why do we need arrays? When do we need to use arrays? Are arrays efficient? Can arrays reduce coding time? When do you use multi-dimensional and associative arrays? What is an object array?"--Back cover Front Matter ....Pages i-xix Front Matter ....Pages 1-1 Introduction (Rob Aley)....Pages 3-10 Functional Programming: Key Concepts (Rob Aley)....Pages 11-44 Getting Started with Functional Patterns (Rob Aley)....Pages 45-67 Advanced Functional Techniques (Rob Aley)....Pages 69-99 Front Matter ....Pages 101-101 Strategies for High-Performance Applications (Rob Aley)....Pages 103-145 Managing Business Logic with Functions (Rob Aley)....Pages 147-163 Using Functional Programming in Objected-Oriented and Procedural Applications (Rob Aley)....Pages 165-188 Using Helper Libraries in Your Application (Rob Aley)....Pages 189-211 Processing Big Data with Functional PHP (Rob Aley)....Pages 213-227 Afterword (Rob Aley)....Pages 229-230 Back Matter ....Pages 231-292

کتاب‌های مشابه

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

۴۹٬۰۰۰ تومان

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

۴۹٬۰۰۰ تومان

برنامه‌نویسی PHP کاربردی: استراتژی‌های توسعه برنامه برای بهینه‌سازی عملکرد، هم‌زمانی، قابلیت تست و اختصار کد

برنامه‌نویسی PHP کاربردی: استراتژی‌های توسعه برنامه برای بهینه‌سازی عملکرد، هم‌زمانی، قابلیت تست و اختصار کد

۴۹٬۰۰۰ تومان

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

۴۹٬۰۰۰ تومان

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

۴۹٬۰۰۰ تومان

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

Pro Functional PHP Programming : Application Development Strategies for Performance Optimization, Concurrency, Testability, and Code Brevity

۴۹٬۰۰۰ تومان

Haskell high performance programming : boost the performance of your Haskell applications using optimization, concurrency, and parallel programming

Haskell high performance programming : boost the performance of your Haskell applications using optimization, concurrency, and parallel programming

۴۹٬۰۰۰ تومان

Haskell high performance programming : boost the performance of your Haskell applications using optimization, concurrency, and parallel programming

Haskell high performance programming : boost the performance of your Haskell applications using optimization, concurrency, and parallel programming

۴۹٬۰۰۰ تومان

Haskell high performance programming : boost the performance of your Haskell applications using optimization, concurrency, and parallel programming

Haskell high performance programming : boost the performance of your Haskell applications using optimization, concurrency, and parallel programming

۴۹٬۰۰۰ تومان

Erlang programming : [a concurrent approach to software development] (program code)

Erlang programming : [a concurrent approach to software development] (program code)

۴۹٬۰۰۰ تومان

Functional Programming with C#: Create More Supportable, Robust, and Testable Code

Functional Programming with C#: Create More Supportable, Robust, and Testable Code

۴۹٬۰۰۰ تومان

Functional programming with PHP

Functional programming with PHP

۴۹٬۰۰۰ تومان

قیمت نهایی

۴۰٬۰۰۰ تومان