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

AngularJS: Framework Fundamentals
Microsoft via edX
Архитектура Android-приложений
Moscow Institute of Physics and Technology via Coursera
Client-based Web Applications development: ReactJS & Angular
Universidad Politécnica de Madrid via Miríadax
Getting Started with Blazor Server
Coursera Project Network via Coursera
Getting Started with Blazor WASM
Coursera Project Network via Coursera