Link to home
Start Free TrialLog in
Avatar of Vipin Kumar
Vipin KumarFlag for India

asked on

To use a framework or not!!!

Hi,

I am about to build a web application for my organization which will be used by users to submit their timesheets and leave requests.
I am confused whether I should use the basic approach that I mentioned in my experience with PHP or should I use a PHP framework like laravel which uses MVC. My experience with frameworks is null. Opinion of the Experts required to resolve my confusion.

A brief about my knowledge and prior experience with PHP.

I have basic knowledge of PHP, HTML and CSS. I built a web application for my organization earlier that would access the network devices and create accounts for users, take backup of those network devices etc.

I built that web application using a basic approach i.e. the root folder has the index.php and other php files which would do the logic and inside of root folder i had the include folder which had the files in which I created the classes for the logic.

Thanks in advance.
Avatar of Marco Gasi
Marco Gasi
Flag of Spain image

Mmhh... The answer depends on the answer you give to the following questions:

  first: how many time you have to build the application?
  second: how many complex is the application you have to build?
  third: how many time you can spend learning to use Laravel well enough to build your application?
  four: why you want to use a tool you still don't know to build this app?

Using a framework has its advantages, but you can do everything even without it.
Probably, you should instll Laravel and build soem really simple to see how the things run: at least you'll have a personal knowledge, even if shallow, of what you're speaking about and you'll be able to decide yourself what it's better for you.
Avatar of Vipin Kumar

ASKER

@ Marco

The answers to your questions.

first: how many time you have to build the application? - As of now no timeline set by organization, as I will be the only one working on the application max I will quote from 3 to 6 months.

second: how many complex is the application you have to build? - The application is quite complex as it would be requiring the users to login, manage their profiles, team management, leave request management, approval/rejection system etc.

third: how many time you can spend learning to use Laravel well enough to build your application? - This I am not pretty sure, as I have not yet started coding the application.

four: why you want to use a tool you still don't know to build this app? - My thought went towards a framework is because it says that framework helps you to avoid writing reusable code again and again, it also helps managing sessions, authentication etc. Also, secures application from attacks like SQL Injection. As I have basic knowledge of PHP, how secure application I can create is one thing I am not sure about using the basic method that I used for for my previous application.

Thanks in advance.
A framework is just a bigger toolbox.  It does not directly address your application unless you find one that is intended to.  Although it may help with security, the framework is not a 'cure'.
ASKER CERTIFIED SOLUTION
Avatar of Ray Paseur
Ray Paseur
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I agree with Ray.  If you can find one already written, it will not only be faster but you will take advantage of other people's knowledge of the subject.  I rarely write anything from scratch.  I often borrow Ray's code that he posts here if I can...  it's much easier to start with something that already works.
@Ray

Firstly, the requirements for the application are custom. I did check a few applications which are there on the internet for example Orange HRM, Sentrifugo but they are very huge as they have multiple modules as well as again they use frameworks like Orange HRM uses symfony.

Secondly it gives me a chance to learn a lot about PHP (which I have started loving since I build my first application)

Thirdly it also allows me to earn a bit cash ;) as the organization will be surely paying for.

Your final thoughts.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial