What are the pros and cons of using the Sugar Framework
As a Sugar developer, I spend hours each week creatively using and extending the framework provided by SugarCRM.
👍🏼 Pros
Extensibility & Flexibility
The framework for building a web-based application has been provided for us. SugarCRM just happens to provide a CRM application built upon the frameworks.
The extensibility of the framework is that we can add value to the CRM application whether it is adding additional features to an existing portion of the application or adding our own customization. Each customization can be packaged and distributed as a Module Loadable Package.
The flexibility of the framework allows us to add additional features (e.g., Marketo, Cvent, Google Charts, Klout, HubSpot, SMS) from other vendors or tie them into SugarC seamlessly.
No restrictions
Since SugarCRM provides us the source code, as a developer you have access to the underlying code which makes it easy for us to determine the best method to implement utilize the framework. As a best practice, review the core code and emulate how SugarCRM has built the application.
When used: all features function as intended
Using the framework as designed enables the entire feature set of SugarCRM to continue to function properly. For example, SugarBPM, Web Logic Hooks, Logic Hooks, etc. will run as expected
In other words, DO NOT WRITE SQL, and bypass the framework.
Sugar is updated quarterly.
Sugar is ever-evolving! SugarCRM adds new functionality to the framework with each release. Join SugarClub and attend the quarterly developer webinars!
❌ Cons
Documentation
The online documentation in my opinion is not laid out in a manner that is easily consumable.
The truth is learning to program using the Sugar frameworks will require some trial and error.
Best Practices
SugarCRM’s documentation does not provide Best Practices. Posts in SugarClub from either members or employees do not represent best practices. They only represent how they got it done.
Time to learn the frameworks
The frameworks are vast. It will take time to get a firm grasp. Don’t take the easy way. Learn the frameworks and you’ll save time in the long run.
Provides many ways to perform an operation
Due to the flexibility and extensibility of the Sugar frameworks, there are many ways to perform the same operation and without a best practices guide as a developer, you are free to make your own choices on how to implement your particular solution.