YoVDO

Creating a Reusable (& Amazing) Symfony Bundle

Offered By: SymfonyCasts

Tags

Symfony Courses PHP Courses Routing Courses Configuration Management Courses Dependency Injection Courses

Course Description

Overview

Want to share some code between projects, or maybe with the whole world? Let's do it! By creating a Symfony bundle! In this tutorial, we'll learn about bundles, their super-powers, how to add services & routes and the best-practices to create the best bundle possible:

  • Anatomy of a Bundle
  • Bundles vs Libraries
  • Building a bundle inside your app
  • DependencyExtensions to add Services
  • Complex Service configuration: Definitions & compiler passes
  • Allowing config via a Configuration class
  • Private services
  • Routing & other Configuration
  • Creating a Recipe
  • Registering your bundle with Packagist
  • Handling Releases
  • README!

Not only will you be able to create your own bundle, but we'll learn a lot along the way about how all bundles in the Symfony world work!


Syllabus

  • Bootstrapping the Bundle & Autoloading
  • Auto-Adding Services
  • Autowiring & Public/Private Services
  • All about the Bundle Extension Config System
  • Custom Extension Alias
  • Bundle Configuration Class
  • Allowing Entire Services to be Overridden
  • Extensibility with Interfaces & Aliases
  • Proper Bundle composer.json File
  • Testing the Bundle
  • Service Integration Test
  • Complex Config Test
  • Adding Routes & Controllers
  • Controller Functional Test
  • Dispatching Custom Events
  • Event Constants & @Event Docs
  • Plugin System with Tags
  • Tags, Compiler Passes & Other Nerdery
  • Publishing to Packagist
  • CI with Travis CI

Taught by

Ryan Weaver

Related Courses

Computer Networks
University of Washington via Coursera
Cloud Networking
University of Illinois at Urbana-Champaign via Coursera
Front End Frameworks
Google via Udacity
Build a Simple Dynamic Site with Node.js Course (How To)
Treehouse
VLSI Physical Design
Indian Institute of Technology, Kharagpur via Swayam