These deals are good for today only, so be sure to take advantage of the pricing before the offers expire.
Free Packt eBook by Hasin Hayder (valid through 10/23 at 19:00 EST). This book covers PHP5, Object-Oriented Programming, Design Patterns, Strategy Pattern, Factory Pattern, Abstract Factory, Adapter Pattern, Singleton Pattern, Iterator Pattern, Observer Pattern, Proxy Pattern, Decorator Pattern, Active Record Pattern, Facade Pattern, PHPUnit, MySQLi.
Learn to leverage PHP5’s OOP features to write manageable applications with ease
Some basic objected-oriented features were added to PHP3; with PHP5 full support for object-oriented programming was added to PHP. Object-oriented programming was basically introduced to ease the development process as well as reduce the time of development by reducing the amount of code needed. OOP can greatly improve the performance of a properly planned and designed program.
This book covers all the general concepts of OOP then shows you how to make use of OOP in PHP5, with the aid of an ample number of examples.
What You Will Learn
- Understand the OOP features of PHP clearly
- Write manageable code
Chapter 1 introduces object-oriented programming and how it fits for PHP. Some benefits of functional programming over procedural programming are highlighted.
In Chapter 2 you learn to create objects and define their properties and methods. Details of classes, properties, and methods follow, along with the scope of methods. This chapter shows you the benefits of using interfaces and a few other basic OOP features in PHP to kick start your journey through OOPing in PHP.
Now that you have got your basics done for OOP in PHP, Chapter 3 helps you to strengthen your base. It helps you to deal with more details and some advanced features. For example you learn about class information functions, using which you can investigate details of any class. This chapter takes you through some handy object-oriented information functions, exception handling, iterators, and storing objects using serialization.
In Chapter 4 you learn some of the Design Patterns and how to implement them in PHP. These are an essential part of OOP and make your code more effective, better performing, and easier to maintain. Sometimes we implement these design patterns in our code without knowing that these solutions are defined by design patterns. Proper usage of the correct pattern can make your code perform better; similarly using them improperly could make your code slower and less efficient.
Chapter 5 focuses on two very important features of object-oriented programming in PHP, reflection and unit testing. PHP5 replaces many old APIs with smarter new ones. One of these is the Reflection API, with which you can reverse or engineer any class or object to figure out its properties and methods. You can invoke those methods dynamically and more. Unit testing is an essential part of good, stable, and manageable application design. We focus on one very popular package, PHPUnit, which is a port of JUnit to PHP. If you follow the guidelines provided in this chapter you will be able to design your own unit tests successfully.
Some built-in objects and interfaces in PHP make life much easier for PHP developers. In Chapter 6 you will learn about the huge object repository named the Standard PHP Library or SPL.
Chapter 7: In this chapter we discuss the improved MySQL API known as MySQLi and take a basic look at PHP Data Objects (PDO), adoDB, and PEAR::MDB2. We take a look at the Active Record pattern in PHP using adoDBâ€™s active record library and the Object-Relational Mapping (ORM) pattern using Propel. We focus on some specific topics that are interesting for PHP developers doing database access the OO way.
In Chapter 8, you learn to process XML with PHP. You get to know about different APIs like the SimpleXML API to read XML and the DOMDocument object to parse and create XML documents.
Chapter 9: In Chapter 4 you learned how design patterns can simplify your daily life in programming by providing you with a common approach for solving problems. One of the most used design patterns for application architecture is the Model-View-Controller (MVC) pattern. In this chapter we discuss the basic structure of MVC frameworks and then introduce you to some of these popular frameworks. Frameworks play a very important role in Rapid Development of PHP applications. You will learn how to build a framework in this chapter, which will also help you to understand object loading, data abstraction layers, and the importance of separation and finally you get a closer look at how applications are done.
About the Author
Hasin Hayder graduated in Civil Engineering from the Rajshahi University of Engineering and Technology (RUET) in Bangladesh. He is a Zend-certified Engineer and expert in developing localized applications. He is currently working as a Technical Director in Trippert Labs and managing the local branch in Bangladesh. Beside his full time job, Hasin writes his blog at http://hasin.wordpress.com, writes article in different websites and maintains his open source framework Orchid at http://orchid.phpxperts.net. Hasin lives in Bangladesh with his wife Ayesha and his son, Afif.
$9.99 Apress eBook by Kelt Dockins. This book covers PHP7, Laravel 5.3, Design Patterns, SOLID Principles, Abstract Factory, Builder, Factory Method, Prototype, Simple Singleton, Simple Factory, Adapter, Bridge, Composite, Decorator, Façade, Flyweight, Proxy, Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method, Visitor.
- Fully up-to-date for the most recent versions of PHP and Laravel
- Covers every design pattern originally introduced by the gang of four
- Includes fully working examples and full code repository for usage in your everyday work
Learn each of the original gang of four design patterns, and how they are relevant to modern PHP and Laravel development. Written by a working developer who uses these patterns every day, you will easily be able to implement each pattern into your workflow and improve your development. Each pattern is covered with full examples of how it can be used.
Too often design patterns are explained using tricky concepts, when in fact they are easy to use and can enrich your everyday development. Design Patterns in PHP and Laravel aims to break down tricky concepts into humorous and easy-to-recall details, so that you can begin using design patterns easily in your everyday work with PHP and Laravel.
This book teaches you design patterns in PHP and Laravel using real-world examples and plenty of humor.
What You Will Learn
- Use the original gang of four design patterns in your PHP and Laravel development
- How each pattern should be used
- Solve problems when using the patterns
- Remember each pattern using mnemonics
Who This Book Is For
People using Laravel and PHP to do their job and want to improve their understanding of design patterns.
About the Author
Kelt Dockins is a humble narcissistic web developer. He works as a full stack freelancer. He specializes in quick to market web applications and minimum viable products for start ups. He has worked on small projects, medium size projects and even a few small-medium sized projects. He loves being a father, a husband and a developer.
50% off React in Motion
React.js is a game-changer. This powerful web framework reinvents the way you create web UI, making it possible to build responsive browser-based applications with flowing, flicker-free screens. The React in Motion liveVideo course gets you up and running with React just as smoothly. As you work through the efficient crystal-clear tutorials from experienced React developer Zac Braddy, you’ll learn the ins and outs of React development, essential techniques for working with reactive applications, and handy code reuse techniques that will save you time and effort!
In this liveVideo, you’ll start with the fundamentals of React, as you build your first application. You’ll learn how to set up the perfect build environment, build your own components, make asynchronous calls to third party APIs, efficiently test, debug, and then finally deploy your finished reactive applications!
About the subject
What you will learn
- The fundamentals and best practices for working with React
- Setting up the perfect build environment for your React projects
- Constructing components and basic patterns
- Making asynchronous calls to third party APIs
- Building your first React application
About the instructor
Zac Braddy is a full stack developer whose career has seen him working with almost every tech you can think of. He has blogged extensively about React and maintains a popular YouTube channel on React.
50% off React in Action
About the book
React in Action introduces front-end developers to the React framework and related tools. This clearly written, example-rich book begins by introducing you to React, diving into some of the fundamental ideas in React, and working with components. You’ll work your way from “raw” React (no transpilation, no syntactic helpers) towards JSX, and from basic static components to ones that are dynamic and interactive. In the second section, you’ll explore the different ways that data works in React as well as learning more about components. You’ll discover core topics like lifecycle methods, data flow, forms, higher-order components, and testing. In the last section, you’ll explore React application architecture with Redux, server-side rendering, and even dabble in React Native. You’ll also find several useful appendices covering related topics like React tooling and ecosystem.
- Building a simple social networking sample app (Letters Social)
- Learning about the fundamentals of React
- Dynamically fetching data from a remote JSON API
- Implementing a routing system from scratch using components
- Utilizing server-side rendering for React applications
- Testing React applications
- Implementing application architecture using Redux
About the reader
About the author
50% off Redux in Action
With Redux in Action, you’ll discover how to integrate Redux into your React application and development environment. Starting by building a basic task management application, you’ll dive into the Redux workflow, asynchronous actions, and the Redux developer tools. As you move through the practical examples inside, you’ll also learn how to prepare data for components, write custom middleware, and optimize for performance. With the insights you glean from the experience of authors Marc Garreau and Will Faurot, you’ll be more than confident in your ability to solve your state management woes with Redux, and focus on developing the apps you need to!
- Building with Redux and React
- Writing custom Redux middleware
- Handling complex side-effects using sagas
- Enforcing data integrity by normalizing data
- Unit testing a React and Redux application
About the reader
About the authors
Marc Garreau has architected and executed half a dozen unique client-side applications leveraging Redux for state management.
Will Faurot is experienced in equal parts production Redux, and mentoring Redux developers of all skill levels.
Troubleshooting Java Performance Detecting Anti-Patterns with Open Source Tools by Erik Ostermueller. This book covers Java Performance Tuning, Java, heapSpank, Wiremock, JMeter, Manual Thread Dump Profiling, Eclipse MAT.
A repeatable method for addressing performance problems in Java-based applications
- Provides a brief Java performance curriculum with 12 run-on-your-own-machine performance puzzles, all aimed at making you dramatically more productive in getting to root cause
- Gives expert load generation advice, including how to determine the precise load necessary to test a given application’s scalability
- Shows how to detect memory leaks in minutes without a heap dump, and without restarting the suspect JVM
Troubleshoot the most widespread and pernicious Java performance problems using a set of open-source and freely-available tools that will make you dramatically more productive in finding the root causes of slow performance. This is a brief book that focuses on a small number of performance anti-patterns, and you’ll find that most problems you encounter fit into one of these anti-patterns. The book provides a specific method in a series of steps referred to as the “P.A.t.h. Checklist” that encompasses persistence, alien systems, threads, and heap management. These steps guide you through a troubleshooting process that is repeatable, that you can apply to any performance problem in a Java application. This technique is especially helpful in ‘dark’ environments with little monitoring.
Performance problems are not always localized to Java, but often fall into the realms of database access and server load. This book gives attention to both of these issues through examples showing how to identify repetitive SQL, and identify architecture-wide performance problems ahead of production rollout. Learn how to apply load like an expert, and determine how much load to apply to determine whether your system scales. Included are walk-throughs of a dozen server-side performance puzzles that are ready to run on your own machine. Following these examples helps you learn to:
- Assess the performance health of four main problems areas in a Java system: The P.A.t.h. Checklist presents each area with its own set of plug-it-in-now tools
- Pinpoint the code at fault for CPU and other bottlenecks without a Java profiler
- Find memory leaks in just minutes using heapSpank, the author’s open-source leak detector utility that is freely available from heapSpank.org.
The repeatable method provided in this book is an antidote to lackluster average response times that are multi-second throughout the industry. This book provides a long absent, easy-to-follow, performance training regimen that will benefit anyone programming in Java.
What You’ll Learn
- Avoid the 6 most common ways to mess up a load test
- Determine the exact number of threads to dial into the load generator to test your system’s scalability
- Detect the three most common SQL performance anti-patterns
- Measure network response times of calls to back-end systems (‘alien systems’)
- Identify whether garbage collection performance is healthy or unhealthy and whether delays are caused by problems in the old or new generation, so you know which generation needs to be adjusted
Who This Book Is For
Intermediate and expert Java developers and architects. Java experts will be able to update their skill set with the latest and most productive, open-source Java performance tools. Intermediate Java developers are exposed to the most common performance defects that repeatedly show up in Java applications, ones that account for the bulk of slow-performing systems. Experts and intermediates alike will benefit from the chapters on load generation.
About the Author
Erik Ostermueller is a Java architect who is passionate about performance engineering. He has spent the last 10 years leading international performance engineering teams, tuning high-throughput Java financial systems in North and South America, Europe and Asia. In 2011, he presented a paper entitled “How to Help Developers (Finally) Find Their Own Performance Defects” at the Computer Measurement Group’s annual conference, where he won “Best Paper” and the “Mullen Award” for best speaker. The proceeds of this award financed an eight-city speaking tour in the US, Canada, the UK, and Italy.
Erik is the technical lead for the Performance Center of Excellence at FIS Global. He is the founder of heapSpank.org, wuqiSpank.org, and a contributor to JMeter-Plugins.org and other open source projects. He lives in Little Rock, Arkansas and plays soccer, tennis, and the piano.