Saturday, 26 March 2016

Learning PHP and Yii Together




I'm not really debating which PHP framework to use as much as I'm trying to understand if it is feasible to expect to learn PHP and Yii simultaneously. I've worked a lot with ASP Classic, VBA/Access, and VB6 so I have programming experience but little to no experience real programming - OOP, PHP, or frameworks.



I often see people recommending that you have several years of experience with PHP and OOP before you learn Yii.



I have a fair-sized web app project coming up which should really be built in PHP/MySQL. I'm just trying to get a better handle on whether I need to hire someone, take private training, or whether I should plan to be in development for 15 years or until bankruptcy, whichever occurs first. :-)


Answer



No. I'd argue that you should learn PHP first. There are tons of concepts you should be aware before you even consider creating applications using a framework, especially with Yii.



Yii has a higher learning curve than say CodeIgniter and CakePHP. While you might be able to create CRUD applications with them at first, it becomes a problem when you are faced with 'real-world' problems like content scraping, image manipulation, etc.




Learn PHP, create an application (blog/invoice app/inventory system) with vanilla PHP, and you'll be able to get on a framework and learn the framework, not much of the language(some concepts probably). PHP books are useful, when you get enough information from online. Books are good when you want to know different concepts from authors and you'll be fairly sure that the content is correct since they are edited by technical editors compared to unedited content you find online.



Sources I recommend:





Once you get on a framework, you'll now know WHY you even need a framework. WHY you even want to code in MVC. WHY MVC fits you.


No comments:

Post a Comment

c++ - Does curly brackets matter for empty constructor?

Those brackets declare an empty, inline constructor. In that case, with them, the constructor does exist, it merely does nothing more than t...