Development changes in Craft 3

Brandon Kelly explains the development changes coming to Craft 3 in this 80-minute workshop recorded at Peers 2015.

  • 00:00 - Intro
  • 05:46 - What has changed in PHP?
  • 06:50 - PHP 5.2 (JSON and ZIP extensions, Upload progress-tracking hooks, DateTime/DateTimeZone)
  • 07:48 - PHP 5.3
  • 08:19 - Namespaces
  • 10:40 - Late static bindings
  • 12:32 - Closures
  • 13:11 - PHP 5.4
  • 15:57 - Example of traits
  • 16:09 - Example of short array syntax
  • 16:48 - Example of function array dereferencing
  • 17:26 - Example of class member access on instantiation

  • 18:40 - What has changed in Yii?
  • 18:45 - Class names and namespaces
  • 20:17 - Path alias example
  • 21:12 - Important path aliases to be aware of
  • 23:20 - Objects and Components
  • 25:56 - Examples of Objects
  • 26:53 - Examples of Components
  • 27:12 - Configuring Objects
  • 28:26 - Service Locators
  • 29:37 - Modules
  • 29:54 - Applications (Web requests / Console requests)
  • 30:48 - Controllers
  • 31:20 - Request vs. Response
  • 33:36 - Formatted Response Bodies (JSON, JSONP, XML, ...)
  • 34:27 - Events in Yii 1
  • 35:29 - Events in Yii 2
  • 36:06 - Class-level event handlers
  • 36:36 - Asset bundles (for JS and CSS resources)
  • 38:28 - DB Queries
  • 39:27 - Query Methods
  • 40:51 - SELECT Query Examples
  • 42:35 - Command Methods (Query Definition, Management, Execution)
  • 43:35 - How Query and Command map together
  • 44:05 - Active Record
  • 45:34 - Internationalization

  • 46:00 - What has changed in Craft?
  • 46:34 - Namespaces
  • 47:20 - Accessing the Application instance (Craft::$app)
  • 48:30 - Accessing the Application components (Craft::$app->getEntries())
  • 50:19 - Application component name changes
  • 51:02 - Routes and controllers
  • 53:38 - Models
  • 55:12 - Records
  • 56:30 - Templates and Views
  • 01:00:47 - Types
  • 01:01:27 - Field type architecture
  • 01:03:13 - Widget type architecture
  • 01:03:22 - Task type architecture
  • 01:03:29 - Element type architecture
  • 01:03:35 - Type Settings
  • 01:05:36 - Element Queries
  • 01:08:03 - Element query example
  • 01:10:31 - Plugins
  • 01:13:30 - Example config.json
  • 01:13:41 - Installing plugins
  • 01:15:08 - Example install migration

Don't miss any Craft tips, tricks, and community updates