Lightweight MVC - no framework [closed] - php

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
Hi sorry if this is a naive question, but what did people do before mvc frameworks became so popular? All you hear of nowadays, and im talking php here, are mvc, Zend etc but what did developers do beforehand?
Are there some developers who use the mvc pattern but without a framework - if so how do they do this and is it really complicated to set up?

MVC is a design pattern. You can easily roll your own MVC "framework" (technically even without using object-oriented programming). The main goal is simply to have a separation between data storage, business logic, and presentation.
When I was first learning about MVC, I decided that trying to sift through the mountains of code of CakePHP or other frameworks was simply too complicated. I started writing my own "framework" using this tutorial (http://fuelyourcoding.com/php-frameworks-just-roll-your-own-part-1/). It's really not as much work as you think (you can go through that tutorial in a day and have a very nice mini-MVC), and you can expand it later into a full-fledged framework later on if you have the time and dedication.
As to the question of what developers did before frameworks, well, they just wrote everything themselves. Unfortunately this led to a lot of spaghetti code with HTML mixed with PHP blocks and SQL statements, but that's not really a fault with not having a framework, rather with not trying to implement any sort of separation of concerns.
Edit: Part 2 is probably the most important part because it shows you how to make a template. This isn't actually the exact tutorial, the one I used seems to have disappeared.

Related

What is Codeigniter, CakePHP, Laravel, Zend and Symfony? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I am a PHP developer and I want to increase my knowledge. So I am trying to understand some online scripts. I see some folders named ( Zend, Symfony.. etc ) and I read about code igniter.
However, I still didn't understand anything of what I want to know.
What is and when to use each of them?
What are the features they provide?
With which should I start with?
Codeigniter, CakePHP, Laravel, Zend and Symfony frameworks
I know this may be a duplicate question but I really need a complete answer that I really did not find.
Thanks :)
I think that you should start from learning MVC pattern that is used in all of mentioned frameworks, if you're not already know what it is.
The next thing are requirements - what you need or what you expect from framework? There are some things that frameworks cannot do. You can check and compare what each framework can or cannot do for you. Note every part that you discovered.
Some frameworks are easy to start, others need advanced knowledge. Check the examples in docs.
Next step could be your own testing to code something.
This is really too general question, that was asked and answered many times not only here (at stackoverflow), but at many other websites too. Just add some important keywords and search. All in your hands.
They are php frameworks
https://laravel.com/docs/5.5
https://www.codeigniter.com/
Just google tutorials for (one of the frameworks) and work your way through them. There are plenty of resources out there.
I would start with codeigniter first since the learning curve is less steep

When are you ready to use PHP frameworks? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
So i've been playing around with php the past month. I know how to create a basic dynamic webpage with PHP, i can apply CRUD to my web pages and i can create my own simple login-scripts.
Now i want to get into a PHP Framework, but i'm not sure if my php skills are good enough to start working with a framework. Or should i just play around more with standard php?
I'm afraid that when starting with a framework to early, you can only know a small part about it, and you don't understand completely what is happening behind the framework.
Can someone share their experience with this?
If you have learned basic Object Oriented Programming concepts (OOP) and understand them, you are ready. If you don't know what that means, then you are still probably writing procedural-only code. Frameworks will be using OOP so you will be off to a bad start if you can't even understand the syntax.
If you understand OOP, maybe start with CodeIgniter. It's pretty simple as far as frameworks go.
What you create with the framework might not be pretty, efficient, or the code of an experience programmer, but it will introduce you to dozens of new concepts and aspects of coding that you hadn't even thought about or knew existed. You will learn about the underlying architecture of an application, MVC, how to structure your code, etc.
I think it is beneficial to push yourself. In my experience, this is how you excel. Otherwise you stagnate, stuck with your old-fashioned, beginner knowledge.
You sound like you want to learn, and sound like you are capable of teaching yourself, so just dive in and see what you can do. Give it a few months and you will probably know CodeIgniter well and wonder how you ever built websites without frameworks of some kind.

Benefits of using cakePHP? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
I know PHP well. But i haven't tried cakePHP before and i was willing to learn cakePHP. So just want to know that is there any benefits of using cakePHP over PHP?
Thanks,
aby
cakePHP, like CodeIgniter, FuelPHP and Symfony (just to name a few) are frameworks. What this means is that they have tried to abstract some of the normal, every-day things you do in development in an effort to speed up development time and make you more profitable.
In today's world, there is no excuse for not using a framework. If you refuse to use a framework, you find yourself creating a lot of the things that a good framework provides anyway (i.e. data abstraction layers, session classes, form validation, etc). By using a framework, you not only gain time, but you gain stability as the different components of the framework should be designed to work well together and have been thoroughly tested by the community.
Whichever framework you choose is up to you and hopefully now you understand it's benefits.
CakePHP is an MVC framework that will allow you to setup your data model and connect it to a database to be easily manipulated in PHP. It also allows you separate your business logic from your display logic using a controller.
It also gives you a lot of useful functionality like authorization, sessions, form validation, pagination.. for free. You should check out the feature list.
If you didn't use CakePHP you would have to roll your own framework, which is a lot of extra hassle and work. There are of course other frameworks.
The answer is pretty simple, it comes down to your need's, do you need a framework?
You say that you know php well, i doubt you know it as well as you think as you would not ask a question of this nature, you would understand the concepts behind a framework.
You say:
So just want to know that is there any benefits of using cakePHP over PHP?
it's not a language sir, it's a framework that supplies the PHP foundations for an application, why would you not wan't to use such a thing, what you should be asking is:
What's the best framework to learn once you have mastered PHP Fundamentals.
But don't ask it here, there are plenty of posts that answer that question for you.
CakePHP is an MVC framework But to simply say you need to design the data models and relationship (creating necessary tables) before start the work , once you use bake command 70% of coding are given

What advantage does using a framework like CodeIgniter or CakePHP provide over using 'plain vanilla' PHP? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I'm new to PHP and am trying to more of an overview before I jump into the code sometime tomorrow.
What advantage does using a framework like CodeIgniter or CakePHP or Zend provide over using 'plain vanilla' PHP?
The framework takes care of the stuff that everyone's done a hundred times - authenticating users, talking to databases, handling file uploads, validating forms.
It saves you time, because you don't have to write it again.
It saves you headaches, because it's probably designed better than you would off the cuff and because it's already been thoroughly debugged.
It makes it easier to collaborate, because anyone who knows the framework has a step up on understanding your program.
It makes programming more fun, because you can focus on writing the interesting bits, not the slugwork.
Any framework has the advantage of solving problems that just about any programmer would encounter without using a framework.
There are many common problems that you and I would face regardless of whether or not we're building software for banking, media, news, etc, and instead of reinventing the wheel, you can springboard off of the hundreds and thousands of hours of developer experience by using code that has been tried and tested in a multitude of different production environments.
The motto is this: Don't reinvent the wheel. Your job is to meet a business goal, not solve problems that other people have already solved for you.
One advantage is: Design decisions are made for you.
One disadvantage is: Design decisions are made for you.

What's the best way to learn mvc in PHP? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 years ago.
Improve this question
I'm totally new to mvc,how to pick it up?
Go this way:
Read about MVC (Google it, see the wikipedia article)
Choose a Framework (I suggest CodeIgniter - Has a great user guide)
Then go through the user guide and try the things.
The video tutorials are also good, check nettuts.com for CI.
Go this way:
Know what is MVC
Why it is useful
How does it work
Where it should be used optimally
How do frameworks use it (if possible to know)
Learn how frameworks implement it (try using a framework)
Learn a framework so that you can become habituated to using MVC
I know I might sound foolish, but this way can be of great help to newcomers.
Maintain some project written in spaghetti code (CSS + JS + HTML + PHP + SQL, all in one single file), then think how you would separate all these and you'll discover MVC.
Kidding aside. Read about it what you can, try some framework but don't avoid maintenance projects. It is in these projects that you'll see the benefits of MVC or at least those of separation of concerns.
See also this related question.
You can read all about MVC with a simple google search. However, you won't fully understand the beauty of it until you pick a framework and dive in. I hear great things of CodeIgniter. It was my first framework when getting into MVC.
In the end I chose CakePHP. Why? CodeIgniter, while very simple to get started with, gave me too much freedom for a beginner to MVC. I wanted strict rules and conventions to show me how its supposed to be done rather than what I think MVC should be. Maybe later on down the road I'll come back to CI. Either way you choose, my suggestion is to take a small project you coded, and code it in any of the PHP frameworks out there.
CakePHP's and CodeIgniter's communities are among the most helpful. Join a google group for Cake/CI. Read about what people are trying to do. See what problems people are having and good luck!
First research the MVC pattern and look for tutorials that explain how to implement it. Next, get an MVC framework for PHP and use that since there's no sense trying to reinvent the wheel and roll your own.

Categories