Object Oriented PHP & TDD with PHPUnit from Scratch

Object Oriented PHP & TDD with PHPUnit from Scratch
Object Oriented PHP & TDD with PHPUnit from Scratch
English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 12.5 Hours | 5.08 GB

Learn Object Oriented PHP & Test Driven Development using PHPUnit – Project Included

As a PHP developer it won’t take long to realize that there are dozens of outdated tutorials and articles on the internet, if you want to learn how to write better code with fewer bugs, you will need to know how to write clean object oriented code and unit tests.

This course is designed to get you up and running as fast as possible with Test Driven Development with object oriented PHP and PHPUnit without any dependencies. We’ll quickly cover OOP basics, then dive into some of the more advanced features of the language. Don’t be tricked by other courses that only teach you basic and outdated stuff!

This is the only course on Udemy that will teach you Test Driven Development in Object Oriented PHP and PHPUnit. This course will give you ample opportunities to strike out on your own and start working on your own programs.

In this course you will:

  • Understand Object Oriented PHP
  • Learn test-driven development (TDD)
  • Learn how and why you should use dependency inversion principle and dependency injection
  • Implement some common design patterns using PHP
  • Build a database wrapper with support for PDO and MySQLi
  • Gain a sense of when to use basic language features

PHP is one of the most popular and widely used programming languages. Get job-ready with PHP today by enrolling now!

Table of Contents

PHP Object-Oriented Bootcamp
1 Introduction
2 How to Get Help
3 Download Complete Source code
4 PHP Classes and Objects
5 Bootstrapping An Object
6 Encapsulation
7 Object Inheritance
8 Static Methods Properties
9 Method Chaining
10 Abstract Classes (Database Case Study)
11 Abstract Classes (Database Case Study) – Conclusion
12 Object Interfaces (Predator and Prey Case Study)
13 Late Static Binding
14 Namespacing and Better Autoloading
15 Simple OOP Project Grading Class Overview
16 Simple OOP Project Compute Student Semester Result Class
17 Simple OOP Project Using The Compute Student Semester Result Class

Project – Build A bug Tracking App Setup
18 Section Introduction
19 Creating Core Project Folders
20 Autoloading and Installing PHPUnit
21 Working with config files
22 Creating Application Helper Class

Project – Build A bug Tracking App Handling Exceptions
23 Custom Exception Handler
24 Custom Exception Classes
25 Convert PHP Warnings and Notices to Exceptions

Project – Build A bug Tracking App Application Logs
26 PSR-3 Logger Interface
27 Concrete Implementation of Logger Interface
28 Logging

Project – Build A bug Tracking App Getting Started With PHPUnit
29 Creating a Test Class and Writing a Test
30 Creating a PHPUnit Configuration file
31 Unit Testing The App Class
32 Unit Testing The Logger Class

Project – Build A Database Abstraction Layer with Support for PDO MySQLi APIs
33 Database Abstraction UML Diagram
34 Test Driven Database Connection – Part 1
35 Test Driven Database Connection – Part 2 PDO
36 Test Driven Database Connection – Part 3 MySQLi
37 Building a Database Query Builder Intro with Test Cases
38 Abstract Database Query Builder with TDD – Part 1
39 Abstract Database Query Builder with TDD – Part 2
40 Abstract Database Query Builder with TDD – Part 3
41 Adding Abstract Methods In Query Builder Class
42 Implementing Abstract Methods for PDO API
43 Implementing Abstract Methods for MySQLi API
44 Implement Insert Raw Query find and findOne Methods and Test cases
45 Implement Delete and Update Methods
46 Creating a Database Query Builder Factory
47 Automatically Cleanup the Database for Each New Test
48 Adding More Test Cases
49 Query Builder Cleanup and Bug Fixes

Project – Entities And Repositories
50 The concept of Entities and Repository Pattern
51 Writing Test cases for Entities and Repository
52 Creating an Entity
53 Repository Pattern Part 1 – Interface
54 Repository Pattern Part 2 – Abstract and Concrete
55 Making Test Cases Pass and Adding new Test

Project – Writing Functional Test and The User Interface
56 Section Introduction
57 Setup Functional Test for CRUD
58 Writing Test Case for Create Bug Report with POST Request
59 Writing Test Case for Update and Delete Bug Report with POST Request
60 Building a Simple HTTP Request Client to make our Test Cases Pass
61 Processing Add Bug Report Post Request
62 Logging During Request Life Cycle and Exception Handling
63 Refactoring Debugging and Making Add Report Test Pass
64 Processing Update Delete and Read Requests and Going Green with All Test Cases
65 User Interface – Part 1
66 User Interface – Part 2
67 Testing that We Can Visit The Homepage and See Certain Data
68 Next Step