Srbija Posted November 15, 2022 Share #1 Posted November 15, 2022 Symfony Web Development Complete Guide: Beginner To Advanced Last updated 4/2022 MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz Language: English | Size: 10.49 GB | Duration: 24h 21m Master Symfony PHP framework: from theory, through simple crud app, up to creating an advanced Real Life Application What you'll learn You will learn Symfony 4 & 5 from theory to advanced level by creating real life projects You will create two apps: simple crud app and an advanced video sharing service with PayPal integration, deployment to Heroku etc. You will learn how to create multilevel nested categories tree in PHP You will learn how to install Symfony You will learn about Symfony configuration You will learn about Symfony Flex You will learn about HTTP processing workflow in Symfony framework You will learn routes You will learn controllers You will learn views in Symfony using Twig You will learn html forms in Symfony You will learn Doctrine ORM (how to use database) You will learn entities (models) in Symfony and relations between them You will learn about service container & services in Symfony You will learn dependency injection (autowiring in Symfony) You will learn console command You will learn how to create events and listeners You will learn how to use sessions & cookies in Symfony You will learn how to send emails You will learn how to do translations in Symfony You will learn about security concepts in Symfony (login, registration, etc.) You will learn unit & functional testing You will learn about debugging Symfony applications You will learn about cache You will learn how to use Redis for session and cache You will learn about doctrine table inheritance in Symfony & polymorphic database queries You will learn how to deploy a Symfony application to Heroku (make application online) You will learn how to integrate PayPal with the Symfony application for making subscription billing You will learn how to use external API (Vimeo api) and use it with the Symfony application You will be able to create your own websites or web applications in Symfony framework You will learn basics of RabbitMQ message broker You will learn basics of Messenger Component You will learn CQRS pattern - command query responsibility segregation You will learn REST API with Symfony & API Platform Requirements PHP language and object oriented programming Basics of HTML, CSS, JavaScript How to install software on your computer and have internet connection You need to have server environment installed, e.g. Ubuntu, Xampp etc. to work with PHP applications locally Description Welcome to the best course of Symfony - the great PHP framework!In this course you will learn Symfony from basic to advanced level!By the end of this course you will be able to create both simple websites and complex dynamic web applications in the great Symfony PHP framework.Very practical course! Almost all sections/concepts are explained using real life applications/scenarios. In this course we will create a huge real life app (probably you will not find a course where built more advanced app like in this course)This is a very massive guide to Symfony, which is one of the most popular PHP frameworks. Symfony 4 version introduced a new approach to php frameworks - it starts small as a microframework and grows as you need new features. You install them using the amazing Symfony Flex tool. For example, if you are making a simple website and do not need a login functionality then there is no code responsible for logging in the framework directory. Thanks to this our application contains only as much as we really need. **********************************************The course consist of three main parts:1. The theoretical part where I discuss the basic Symfony concepts on examples with effects on a web browser2. In the second part we will build a simple application in Symfony - a list of tasks to be performed (database used)3. In part 3 we will build an advanced web application for video subscription in which we integrate PayPal for payments, multi-level nested video categories, communication with Vimeo API, deployment to Heroku serveras well as:BONUS section added (October 2019) - basics of Symfony Messenger Component, RabbitMQ message broker and CQRS pattern (Command Query Responsibility Segregation) with practical example by simulating e-commerce system consisting of main app and cooperating microservices.Course update: (January 2020) new section added REST API with Symfony & API Platform**********************************************During the course we will be covering many simple and advanced Symfony concepts such as: routing, controllers, views, database with doctrine orm, entities and relationships between them: one to one, one to many and many to many; events & listeners, security topics such as login, registration, authorization; also unit and functional testing, dependency injection, service container, symfony services, doctrine table inheritance with polymorphic database queries, REST API and many more.This course is a combination of theory and project-based learning approach. Learning by building real projects is the best way to learn programming languages and tools like php frameworks.All of the course applications were made using Symfony 4 (except applications for rest api section - Symfony 5). Upgrade to Symfony 5 section was added to the course. According to Symfony standard, there are no any new features in Symfony 5.0 compared to Symfony 4.4.Remember that only practice makes perfect. If necessary, study the course two or more times. Take notes during the course like a real student. Use documentations, Google search. Finally, try to write the application yourself, not necessarily the same as in the course, you can try to change, add something, etc. No single course will make you a very good web developer. It can only bring you closer to this goal. The more practice, the better.--------------------------------------------QAQuestion:You used Symfony 4 and Symfony 5 in this course for creating apps to practice knowledge. Why not use only the latest version? Does it mean that this course is outdated and I will not benefit from it?Answer:Absolutely not! In tools like PHP frameworks the fundamentals and base syntax almost never change regardless of the version. But of course any maintained software evolves all the time. That's why I always suggest you to use the version of software that instructor uses in the course. It prevents from errors and confusions. As a someone who wants to learn web development you should be aware, that real web development involves also adapting the code to newer versions if necessary - but this is not always necessary, not every company do that. Software changes so often that the instructors would not be able to create the courses so that they match the latest version. This is not even advisable, because as a student you would loose an important aspect of real web development - the awareness that everything is changing and you need to be able to deal with it.---------------------------------------------Enroll now and let's start learning Symfony!There is no risk! 30 day money back guarantee (as always at Udemy) Overview Section 1: Introduction Lecture 1 Welcome to the course Lecture 2 About Symfony Lecture 3 Tools and requirements for students Lecture 4 How to use the course Lecture 5 Course applications overview Lecture 6 Quick note about coding standards Lecture 7 How to get helped Section 2: Symfony 4 & 5 basics, installation & configuration Lecture 8 Symfony 4 installation & requirements Lecture 9 Symfony 4 configuration Lecture 10 Installing libraries with Symfony Flex Lecture 11 Request & response objects, HTTP processing workflow Section 3: Theory - Symfony 4 & 5 core features Lecture 12 Before you start watching this section of the Symfony course Lecture 13 Routes Lecture 14 Controllers Lecture 15 Views Lecture 16 Entities (models) Lecture 17 Service container & services - part 1 Lecture 18 Service container & services - part2 Lecture 19 Advanced routes Lecture 20 Flash messages Lecture 21 Cookies Lecture 22 Session Lecture 23 POST & GET data Lecture 24 Custom error pages Lecture 25 Handle exceptions Lecture 26 Binding services to controllers Lecture 27 More features in controllers Lecture 28 Views - tags, filters, functions, tests, operators Lecture 29 Views - genereate url's and escaping strings Lecture 30 Views - global variables Lecture 31 Views - Webpack Encore Lecture 32 Views - using app variable Lecture 33 Views - embed controllers in view Lecture 34 Doctrine crud - create Lecture 35 Doctrine crud - read Lecture 36 Doctrine crud - update Lecture 37 Doctrine crud - delete Lecture 38 Doctrine raw queries Lecture 39 Doctrine param converter Lecture 40 Doctrine LifecycleCallbacks option Lecture 41 Doctrine one-to-many & many-to-one relationships Lecture 42 Doctrine database relationships - cascade remove ralated objects Lecture 43 Doctrine one-to-one relationship Lecture 44 Doctrine many-to-many self referencing relationship Lecture 45 Doctrine Query Builder & eager loading Lecture 46 Doctrine table inheritance mapping in Symfony (polymorphic queries) - part 1 Lecture 47 Doctrine table inheritance mapping in Symfony (polymorphic queries) - part 2 Lecture 48 Doctrine table inheritance mapping in Symfony (polymorphic queries) - part 3 Lecture 49 Service parameters Lecture 50 Service & autowiring by constructor injection and service arguments Lecture 51 Service configuration Lecture 52 Services - setter injection for optional dependencies Lecture 53 Services - property injection Lecture 54 Install composer package before the next lecture Lecture 55 Services - lazy services Lecture 56 Service - aliases Lecture 57 Service - tags Lecture 58 Service - dealing with different implementations of a service Lecture 59 Services list Lecture 60 Cache - basic usage Lecture 61 Cache - tags Lecture 62 Symfony console Lecture 63 Use profiler tool in Symfony Lecture 64 Environments vs kernels Lecture 65 Deploy Symfony application Lecture 66 Events & Listeners base concepts Lecture 67 Create listener Lecture 68 Dispatching events Lecture 69 Create subscriber Lecture 70 Subscriber - many events handled by one subscriber Lecture 71 Subscriber - events priorities Lecture 72 Form - create a class Lecture 73 Form - render in view Lecture 74 Form - themes Lecture 75 Form - send Lecture 76 Form - validation Lecture 77 Form - events Lecture 78 Form - fields not related to entity Lecture 79 Form - upload files Lecture 80 Email - install email package & send an email Lecture 81 Email - spooling Lecture 82 Email - functional testing Lecture 83 Security - create user Lecture 84 Security - register Lecture 85 Security - login Lecture 86 Security - logout Lecture 87 Security - login & remember login state Lecture 88 Security - csrf Lecture 89 Security - use security checker Lecture 90 Install expression-language package Lecture 91 Security - authorization using annotations Lecture 92 Security - authorization using configuration file Lecture 93 Security - authorization using denyAccessUnlessGranted method Lecture 94 Security - authorization in view files Lecture 95 Security - authorization using voters Lecture 96 Unit tests - install Lecture 97 Unit tests - first unit test Lecture 98 Functional tests - install Lecture 99 Functional & unit tests - common assertions Lecture 100 Functional tests - click links Lecture 101 Functional tests - send a form Lecture 102 Functional tests - data providers Lecture 103 Functional tests - tests in isolation Lecture 104 Tests - mock objects Lecture 105 Tests - code coverage report Lecture 106 Translations - install a package Lecture 107 Translations - views Lecture 108 Translations - controllers Lecture 109 Translations - routes Lecture 110 Translations - pluralization Section 4: First application in Symfony: to-do list app (CRUD) Lecture 111 Before you start watching this section of the Symfony course Lecture 112 Installation and creating virtual host (To-Do App) Lecture 113 Move html template to Symfony (To-Do App) Lecture 114 Create controller methods (To-Do App) Lecture 115 Make entity in Symfony and use it (To-Do App) Lecture 116 Display list of all tasks on the website (To-Do App) Lecture 117 Switch status of a task (To-Do App) Lecture 118 Delete a task (To-Do App) Section 5: Controllers, routes, views - install and move html template to Symfony (App) Lecture 119 Before you start watching this section of the Symfony course Lecture 120 Installation of Symfony 4 framework and moving template to it Lecture 121 Continue with moving html template to Symfony Lecture 122 Make template links working in Symfony - part 1 Lecture 123 Make template links working in Symfony - part 2 Lecture 124 Make template links working in Symfony - part 3 Lecture 125 Make template links working in Symfony - part 4 Lecture 126 Make template links working in Symfony - part 5 Lecture 127 Install Webpack-Encore Section 6: Doctrine entities, relations, fixtures,console commands - video categories (App) Lecture 128 Category entity (model) Lecture 129 Continue with Category fixtures - part 1 Lecture 130 Continue with Category fixtures - part 2 Lecture 131 Display main categories on website Lecture 132 Create custom Twig filter Lecture 133 Category class for front-end Lecture 134 Build php array for nested categories Lecture 135 Create nested categories on front-page Lecture 136 Finish displaying categories on front-page Lecture 137 Display categories in admin area - part 1 Lecture 138 Display categories in admin area - part 2 Lecture 139 Edit category in admin panel - part 1 Lecture 140 Edit category in admin panel - part 2 Lecture 141 Edit category in admin panel - part 3 Lecture 142 Edit category in admin panel - part 4 Lecture 143 Edit category in admin panel - part 5 Section 7: First unit tests, mocking classes (Symfony App) Lecture 144 Unit testing of categories - part 1 Lecture 145 Unit testing of categories - part 2 Lecture 146 Unit testing of categories - part 3 Lecture 147 Unit testing of categories - part 4 Lecture 148 Unit testing of categories - part 5 Section 8: First functional tests with isolation (Symfony App) Lecture 149 Functional testing of categories - part 1 Lecture 150 Functional testing of categories - part 2 Lecture 151 Functional testing of categories - part 3 Lecture 152 Functional testing of categories - part 4 Section 9: Paginate, sort and search - videos on the website and test it (Symfony App) Lecture 153 Create video fixtures Lecture 154 Videos on front-page Lecture 155 Pagination Lecture 156 Display videos from child categories Lecture 157 Sort videos Lecture 158 Search results Lecture 159 Functional testing of videos - part 1 Lecture 160 Functional testing of videos - part 2 Lecture 161 Functional testing of videos - part 3 Section 10: Login and authorization system, sample user data - fixtures (Symfony App) Lecture 162 Symfony login system - part 1 Lecture 163 Symfony login system - part 2 Lecture 164 Symfony login system - part 3 Lecture 165 Symfony login system - part 4 Lecture 166 User roles - part 1 Lecture 167 User roles - part 2 Lecture 168 User roles - part 3 Lecture 169 Display links for users depending on login status - part 1 Lecture 170 Display links for users depending on login status - part 2 Lecture 171 Securing access to superadmin pages Lecture 172 Check security Section 11: Html forms, register new users (Symfony App) Lecture 173 User registration - part 1 Lecture 174 User registration - part 2 Lecture 175 User registration - part 3 Section 12: Other functional tests (Symfony App) Lecture 176 Functional testing of categories - part 1 Lecture 177 Functional testing of categories - part 2 Lecture 178 Functional testing - accessing url's - part 1 Lecture 179 Functional testing - accessing url's - part 2 Section 13: Doctrine and LifecycleCallbacks, repositories - comments on videos (Symfony App) Lecture 180 Comments functionality Lecture 181 Comment fixtures Lecture 182 Dynamic value of comments number Lecture 183 Display video details Lecture 184 Display comment details Lecture 185 Create new comment Lecture 186 Functional testing Lecture 187 Functional testing of comments Section 14: Many-to-many Doctrine relation - likes/dislikes functionality (Symfony App) Lecture 188 Video entity Lecture 189 Fixtures for videos Lecture 190 Display likes/dislikes - part 1 Lecture 191 Display likes/dislikes - part 2 Lecture 192 Display likes/dislikes - part 3 Lecture 193 Display likes/dislikes - part 4 Lecture 194 Sort by likes - part 1 Lecture 195 Sort by likes - part 2 Lecture 196 Improve searching Lecture 197 List videos in admin panel Lecture 198 Improve functional testing Lecture 199 Functional testing of likes - part 1 Lecture 200 Functional testing of likes - part 2 Lecture 201 Functional testing of likes - part 3 Lecture 202 Code refactoring - part 1 Lecture 203 Code refactoring - part 2 Section 15: Doctrine database relations & Redis for session - video subscriptions (App) Lecture 204 Subscription functionality - part 1 Lecture 205 Subscription functionality - part 2 Lecture 206 Admin profile Lecture 207 Create video placeholder functionality Lecture 208 Code refactoring Lecture 209 Install Redis Section 16: Register new users with choosing video subscription plan (Symfony App) Lecture 210 Register with proper subscription plan - part 1 Lecture 211 Register with proper subscription plan - part 2 Lecture 212 Register with proper subscription plan - part 3 Lecture 213 Register with proper subscription plan - part 4 Lecture 214 Enable cascade deletion of videos and comments Lecture 215 Functional testing of subscription Section 17: Flash messages, update user profile using Doctrine (Symfony App) Lecture 216 Delete admin profile Lecture 217 Update admin profile - part 1 Lecture 218 Update admin profile - part 2 Lecture 219 Update admin profile - part 3 Lecture 220 Update admin profile - part 4 Lecture 221 Functional testing of user account Lecture 222 Superadmin profile Lecture 223 Functional test Section 18: Upload files - two implementations of uploader interface (Symfony App) Lecture 224 Upload video - part 1 Lecture 225 Upload video - part 2 Lecture 226 Upload video - part 3 Lecture 227 Delete videos Lecture 228 Categories select list in admin panel Lecture 229 Change video for no members Lecture 230 Remove novalidate attribute from html forms Lecture 231 Upload videos to Vimeo Lecture 232 Set duration for uploaded video Lecture 233 Delete a comment Section 19: Events & listeners, sending emails (Symfony App) Lecture 234 Create listener in Symfony Lecture 235 Send email on the event of adding a new video Lecture 236 Functional testing Section 20: Translations to other languages (Symfony App) Lecture 237 Translations - part 1 Lecture 238 Translations - part 2 Section 21: Caching pages, services & event subscribers (Symfony App) Lecture 239 Cache - part 1 Lecture 240 Cache - part 2 Lecture 241 Cache - part 3 Lecture 242 Cache - part 4 Lecture 243 Cache - part 5 Section 22: Different enviromnents - Heroku deployment (Symfony App) Lecture 244 Before you start watching this section of the Symfony course Lecture 245 Heroku deployment - part 1 Lecture 246 Heroku deployment - part 2 Section 23: Symfony services by PayPal integration (Symfony App) Lecture 247 Attention! Lecture 248 PayPal integration - part 1 Lecture 249 PayPal integration - part 2 Section 24: REST API with Symfony & API Platform Lecture 250 Introduction Lecture 251 Install Symfony 5 and EasyAdmin bundle Lecture 252 Install API Platform. Create entities using Schema Generator component of API Pl Lecture 253 Customize EasyAdmin bundle Lecture 254 Upload images through EasyAdmin Lecture 255 Create related entities to manage through EasyAdmin Lecture 256 Authentication and authorization to EasyAdmin app Lecture 257 Create client JavaScript app to consume restAPI Platform app. GET API endpoint Lecture 258 Create pagination Lecture 259 Create a simple router Lecture 260 Sort api query result using API Platform order filter Lecture 261 Use exists filter of API Platform Lecture 262 Use search filter of API Platform Lecture 263 API Platform serialization groups (normalization and denormalization) Lecture 264 Test structured json-ld data with Google tools Lecture 265 The second javascript app to consume api. GET api request, disable pagination Lecture 266 Add an offer. POST rest api request Lecture 267 Delete an offer. DELETE rest api request Lecture 268 Install & configure JWT authentication package Lecture 269 Register a new user Lecture 270 Login to application Lecture 271 Create offers database relation for users, authorization Lecture 272 Using API Platform event subscriber Lecture 273 API Platform subresources (nested endpoints) Lecture 274 Create listener class to produce additional data to the JWT response - user id Lecture 275 Refactoring: make easier authorization. Use JavaScript Promises Lecture 276 Handle 401 error status code when invalid JWT token Lecture 277 Login automatically when invalid token Lecture 278 Lost password functionality - part 1 Lecture 279 Lost password functionality - part 2 Lecture 280 Lost password functionality - part 3 Lecture 281 Lost password functionality - part 4 Lecture 282 Lost password functionality - part 5 Lecture 283 Lost password functionality - part 6 Lecture 284 Lost password functionality - part 7 Lecture 285 Upload a file through REST API - part 1 Lecture 286 Upload a file through REST API - part 2 Lecture 287 Upload a file through REST API - part 3 Lecture 288 Validation and errors handling Lecture 289 Testing API with PhpUnit Lecture 290 Fix GetOffers authorization Lecture 291 API Platform Cache Lecture 292 Deploy API Platform app to Heroku Lecture 293 Fix "can not be converted to string" error Lecture 294 Final thoughts Section 25: BONUS section: RabbitMQ & CQRS with Symfony Messenger Lecture 295 Before you start watching this section of the Symfony course Lecture 296 Symfony Messenger Component - introduction Lecture 297 RabbitMQ basics Lecture 298 CQRS - introduction Lecture 299 Time for practice: simulate e-commerce system using Messages Lecture 300 Install first Symfony app Lecture 301 Create a controller for e-shop website Lecture 302 Install Symfony Messenger Component & use it Lecture 303 Dispatch CreadeOrder message Lecture 304 Dispatch SignUpSms message Lecture 305 Route messages to Doctrine transport Lecture 306 Install RabbitMQ Lecture 307 Create Symfony microservice and send messages to it Lecture 308 Create another Symfony microservice and send messages to it Lecture 309 Create two another Symfony microservices and send messages to them Lecture 310 Where to go from here Section 26: Upgrade guide Lecture 311 Upgrade Symfony from >=4.0 version Lecture 312 New features in the next major Symfony release (5) Everyone who want to learn Symfony framework,Everyone who is interested in building web applications and websites Homepage Hidden Content Give reaction to this post to see the hidden content. Hidden Content Give reaction to this post to see the hidden content. Hidden Content Give reaction to this post to see the hidden content. Hidden Content Give reaction to this post to see the hidden content. Link to comment
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now