Another top-notch cross-platform PHP framework, that is especially good for large project development. So, if you want complex features for a long-term basis – don’t hesitate, Symfony fits the purpose just right. It provides multi-user and multi-language content, text search, and interface patterns. It works with a good ol’ Model-View-Controller and allows numerous plugins for any additional task. With such great popularity, the framework has strong community support and is backed up with constant updates. Symfony’s features for best-practice products include:
- Object-relational layers of Doctrine allow describing each model and function;
- Dependency Injection makes classes co-dependent, and allows making fewer changes; this reduces redundant coding;
- Unit testing with PHPUnit allows faster bugs check;
- Twig allows using HTML templates for time- and code-efficiency;
- E-Mail library Swift Mailer improves email sending, integrating safety practices, authorization, and attachments;
- Scaffolding and database support: Drizzle, MySQL, Oracle, PostgreSQL, SAP Sybase;
- Automated data migration;
- Bundles – like plugins, only better because they can be reused in multiple applications. They allow fast code changing.
However, everything has its price, and so Symfony is somewhat challenging to learn when comparing to other frameworks. It often relies on additional technologies at its core. No matter how great it is already designed and performing, Symfony lacks important features. The complexity in entering the market results in fewer devs, as they will have to spend more time learning, and time is money in our world. Few devs = more time to find them for a project. It creates a necessity to invest in the bringing up of new coders, and bigger financial expenditure for those few you’ve already hired. Also, the documentation lacks explanations occasionally, especially when it comes to the outline of bundles by its creators.
SapientPro is lucky enough to work with developers successfully coding in Symfony. They are not afraid of any learning curve and, in fact, they “straighten” it, being able to explain the hard-to-grasp information even for those who don’t have a full understanding of IT. Challenges fasten skills, and with each new Symfony project, we understand how important creativity is, and how well it helps to overcome documentation fallacies.
Symfony is truly magical, and if you don’t believe – here are several successful companies that have used its spells.