Learning Doctrine The Easy Way!

A Practical Course That Teaches Doctrine Fundamentals

3.90 (96 reviews)
Udemy
platform
English
language
Programming Languages
category
instructor
Learning Doctrine The Easy Way!
640
students
10 hours
content
Jan 2017
last update
$49.99
regular price

What you will learn

Once you have completed this training course, you will be fully capable of working with Doctrine to model database tables, perform, create, and read entities, build queries, and so much more

Learn how to use Doctrine

Description

In this Learning Doctrine training course, expert author Doug Bierer will teach you how to install and configure Doctrine for any PHP project. This course is designed for users that already have experience with PHP.

You will start by learning concepts and terms, then jump into installing Doctrine. From there, Doug teaches you how to create entities, perform create, read, update, and delete operations, and model a database. This video tutorial also covers the query builder, performance tuning, and incorporating Doctrine into frameworks. Finally, you will learn how to configure apps to use Doctrine with MongoDB and CouchDB.

Once you have completed this computer based training course, you will be fully capable of working with Doctrine to model database tables using entities, perform create, read, update and delete operations, build queries, and much more. A substantial number of working files are included, allowing you to follow along with the author throughout the lessons.

Content

Overview

Important - Download These First - Working Files
What Is Doctrine And Why Use It?
About The Author
What Is In This Course?
How Do I Setup My Computer To Run The Demo Code?

Concepts And Terms

The Domain Model
DBAL - Database Abstraction Layer
ORM - Object Relational Mapping
What Is An Entity?
The Doctrine Entity Manager
What Is A Mapper?
What Is A Repository?
What Are Life Cycle Events?
Lab Exercise - Setting Up The Lab Infrastructure
Lab Solution - Setting Up The Lab Infrastructure

Doctrine Installation

Prerequisites For Installing Doctrine
Composer And Why Do I Need It?
Installing Composer On Linux, Unix Or OSX
Installing Composer On Windows
What Is A Composer.json File?
Installing Doctrine
PHP Namespace
Autoloading
Configuring Apps To Use Doctrine
Doctrine Command Line Tool
Configuring The Doctrine Command Line Tool
Lab Exercise - Installing Doctrine
Lab Solution - Installing Doctrine
Lab Exercise - Configuring The App For Doctrine
Lab Solution - Configuring The App For Doctrine

Using Entities

Creating An Entity
Docblock Annotations
Defining Different Database Column Types In My Entity
Creating A Repository
Using The Command Line Tool To Update Entities And Database
Lab Exercise - Creating Entities
Lab Solution - Creating Entities
Lab Exercise - Creating Repositories
Lab Solution - Creating Repositories

Create, Read, Update And Delete Operations

Saving An Entity
Reading An Entity
Updating An Entity
Deleting An Entity
Create, Read, Update, And Delete Using DBAL
Using Doctrine Query Language - DQL
Using POS - Plain Old SQL
Lab Exercise - Implementing Read Operations On Member Entity
Lab Solution - Implementing Read Operations On Member Entity
Lab Exercise - Implementing Create, Update, Delete Operations On Member Entity
Lab Solution - Implementing Create, Update, Delete Operations On Member Entity

Database Modeling

Configuring A One To One Relationship Between Entities
Configuring A One To Many Relationship Between Entities
Using A Many To Many Relationship Between Entities
Persisting Entities In A One To One Relationship
Updating Entities In A One To One Relationship
Deleting Entities In A One To One Relationship
Persisting Entities In A One To N Relationship
Updating Entities In A One To N Relationship
Deleting Entities In A One To N Relationship
Persisting Entities In A M To N Relationship
Updating Entities In A M To N Relationship
Deleting Entities In A M To N Relationship
Using Doctrine With A Database View
Lab Exercise - Establishing Relationship Between Members And Purchases
Lab Solution - Establishing Relationship Between Members And Purchases
Lab Exercise - Establishing Relationship Between Products And Purchases
Lab Solution - Establishing Relationship Between Purchases And Products
Lab Exercise - Rewriting The Purchase Process
Lab Solution - Rewriting The Purchase Process

Using The Query Builder

What Is The Query Builder, And Why Use It?
Performing Create, Read, Update, And Delete Using The DBAL Query Builder
Using The ORM Query Builder
Using The Expression Builder
Improving Performance When Using The ORM Query Builder
Lab Exercise - Implementing Basic Queries
Lab Solution - Implementing Basic Queries
Lab Exercise - Implementing A Join Using The Query Builder
Lab Solution - Implementing A Join Using The Query Builder

Performance Tuning

What Are The General Performance Recommendations?
Getting Performance Statistics
Pagination In Doctrine
Improving Performance Using Cache
Improving Performance Using Proxies
Using The Doctrine Event Manager
Using Doctrine Life Cycle Events
Using Doctrine Filters
Improving Performance Using Doctrine Second Level Cache
Implementing Transactions Using Doctrine
Using Doctrine Inheritance Mapping
What About Security?
Known Doctrine Limitations And Issues
Lab Exercise - Implementing Pagination
Lab Solution - Implementing Pagination
Lab Exercise - Implementing Caching And Proxies
Lab Solution - Implementing Caching And Proxies
Lab Exercise - Implementing A Life Cycle Callback On Members
Lab Solution - Implementing A Life Cycle Callback On Members

Doctrine And Frameworks

Zend Framework 2
Symphony
CodeIgniter
Doctrine ORM Module For Zend Framework 2

Doctrine And MongoDB

MongoDB
Configuring Apps To Use Doctrine With MongoDB
Creating, Reading, Updating And Deleting Using MongoDB

Doctrine And CouchDB

Configuring Apps To Use Doctrine With CouchDB
Creating, Reading, Updating And Deleting Using CouchDB?

Conclusion

Wrap Up

Reviews

vmontusclat
July 29, 2022
Outdated !!!! It should be updated or removed from udemy courses ! it's time consuming and infuriating all these outdated courses
Timo
March 9, 2022
Leider ist der Kurs von 2015 und das merkt man auch am Kurs style. Es wirkt für mich eher wie in der Schule eine Präsentation. Dies ist aber alles Geschmacksache. Ich hatte den Kurs dauerhaft auf *1,5 gehabt. Es wird sehr vieles wirklich sehr ausführlich erklärt, wobei ich mich schwergetan habe wirklich mich auf alles zu konzentrieren. Für meinen Geschmack war das alles sehr zäh. Müsst ihr wissen.
Jiří
September 3, 2021
This course has very useful stuff but it is pretty outdated, the very course having not been updated since 2017 or so, it seems. Apparently, the author does not maintain the contents of the course on a regular basis and you thus have to prepare yourself for blood, toil, sweat and tears unless you are an experienced developer. But if you are brave enough, you shall be rewarded.
Benjamin
February 4, 2021
Clear explanations with a good level of detail. Excellent structure with concise summaries for each section.
Ismael
April 13, 2020
Good morning, everyone, the class is super cool. However, I couldn't understand a few things... So, please excuse me for this request, which I hope you won't mind. Is it possible to add the French subtitle please?
Theophile
March 24, 2019
The author definitely has great comment of the subject matter. Clear and concise video... no fluff!!!
Chris
March 8, 2019
Students questions are un-answered, labs not complete, so I just learned by watching the videos, not by doing. It provides an over-all familiarity with the library so you'd be able to download it and use it in a project with some futzing around and not be completely lost. You'd know where to start and have an idea of how different parts connect. The rest would be learning by doing. The videos are boring because they are step-by-step what to do, as opposed to being engaging and explaining the background of how the library works in the background. They are presented bit like some crusty of diagnostics manual for a serviceman. And you have to sit through 10 hours of it to extract the understanding (and if you want to get your certificate). The videos have a formula of what will be explained (and by explained, I mean talked about), then the item is explained, then there is a conclusion about what was explained. But good luck finding any other video courses on doctrine, so this is it.
Kurt
October 6, 2018
I've done quite a bit of work with JPA and DeltaSpike JPA and DeltaSpike Data. I've even created a fairly comprehensive tutorial on each, complete with a sample web application that uses Liberty Profile. I'm now working on converting my golf league application from Java EE/Liberty to PHP. So far it's good to see that many of the features of Doctrine are in line with JPA and DeltaSpike. Much of what you've presented in your material is making that conversion go very well. I especially like that you've also gone into depth on Composer, the Doctrine command line tool, and PHP class loading. Many courses just assume that you know about all that, and that isn't always the case with developers new to PHP. That was very helpful. I also liked that you introduced various development patterns to help guide us through building applications, e.g., the Service and extended use of the Repository. Upped my rating on this class to a 5 star. Of note, it also helps to look at the Doctrine documentation available on that site to fill in any blanks.
Dave
August 31, 2018
So far, I'm enjoying this course. The instructor has given clear, concise direction on setting up applications to use Doctrine. Go to site for updated working files. It asks for my email and says it will send a link to the updated working files. Never arrives. I'm still trying to decipher the setup instructions for the working files. Also, no responses in the Q&A for this course. OK. Working files finally set up. I see now the Chapterx directories contain a wealth of examples.
Umer
September 6, 2016
NOT RECOMMENDED Instructor seems to be jumping around things and making it hard to understand the steps involved in setting up the code. Sometime talking about the code or file that do no exists so course isn't updated or files are missing from zipped archive. I am an experienced developer but still could get things working with Doctrine.

Charts

Price

Learning Doctrine The Easy Way! - Price chart

Rating

Learning Doctrine The Easy Way! - Ratings chart

Enrollment distribution

Learning Doctrine The Easy Way! - Distribution chart

Related Topics

822113
udemy ID
4/14/2016
course created date
11/20/2019
course indexed date
Bot
course submited by