Why do I choose Laravel (5.8) for Application Development

Shamsul Alam Jewel
4 min readAug 1, 2019

--

Enterprise level application development with Laravel

Obviously everyone has their own preferences, I choose Laravel because I was working with PHP for a long time since PHP 4. So my choice was limited based on PHP language.

As I have worked on PHP for a long time, I had the opportunity to play with different PHP based frameworks, for example once upon a time Codeigniter was really famous, Also YII, I loved their active record system. But really my list to choose from was not that big. These were the three frameworks I shortlisted. I chose them based on their features, reliability, community, popularity and usefulness.

  1. Zend Framework: Most strong and backed up by ZEND itself, so you can always relay on it. But I think it’s good for enterprise level applications only. Sometime I do also feel that it is over engineered. So it has a very Steep learning curve.
  2. Symphony: Didn’t have the personal experience with it, but it has been there also for a long time and lot of other frameworks still uses its components.
  3. Laravel: Most popular and strong community, easy to start, has all the enterprise level features, properly engineered from the base.

I have chosen Laravel over the other two based on its learning curve, as it’s very easy to start with, as well as documentation is properly maintained and updated. Hence, easy to start but has all the necessary features that you will need to build an enterprise level software.

I do not chose Laravel to develop small sites or to create a project for a client and deliver to the client in very short time, I mainly used Laravel for developing enterprise level web applications. So what features do I really like on Laravel?

  1. RESTFul API: With Laravel, API based application development is so easy as it provides api routes and JSON response by default out of the box.
  2. Middleware: Controlling of the routes, authentication etc is a very powerful concept.
  3. Events and listeners: Now a days event driven development is necessary, sometimes we need to listen to an event throughout the application and need to perform some task according to the application need. Laravel provides Event and Listener concept out of the box. Also there are advanced concept called observer events for the eloquent models, which I really like and use a lot. For an enterprise level application these are very important.
  4. Jobs and queues: I really liked how Laravel makes the creation of jobs and utilises the queue system easily with prioritising the queues.
  5. Database and ORM (Object relational Mapping): Laravel out of the box support different database systems, Laravel has very powerful ORM called Eloquent which is very powerful that you might not need to write SQL queries anymore, I know there are lot of guys who choose Laravel only for this feature.
  6. Testing: I know lot of people do not care about the test, but if you want to create an enterprise level software, writing test cases like feature test, unit test, browser test is very important. phpunit shifts with Laravel, and Laravel provides all of these tests. It is very easy to write tests with Laravel.
  7. Packages: Laravel provides package system as like plugin and there are a ton of packages you can use, and Laravel also has some official packages that are very useful, specially I use Passport for my API development.
  8. Ecosystem: Lastly I would say, this is one of the reasons I choose Laravel. As I have already mentioned, there were a lot of frameworks those were popular back in time but couldn’t hold their place for long as those didn’t have a strong ecosystem. For example, Forge! once you complete your application you need to host it to the server right? Forge provides Laravel ready application hosted with popular cloud providers like Digital ocean, AWS (Amazon), Linode and custom VPS. Also Admin dashboard NOVA, Lumen for Only API development, Spark, Vapor, Envoyer, Horizon etc. It feels like Laravel is thinking about the full solution and tries to provide you the best.

There are also some other points as well that I also would like to mention. Laravel has really good documentation, so if you start and follow the documentation you can go a long way. Video tutorial? No not youtube, if you want to learn Laravel proper way by watching videos, Laracast provides 100’s of videos, you will find its link from Laravel website.

If you asked me I started with Laravel over a year now and I really loved Laravel how easy and fun it was to develop with it.

--

--