Google News
logo
Ember.js - Interview Questions
Why use Ember Engines?
Large organizations often use Ember.js to power sophisticated web applications. These apps may require collaboration among several teams, sometimes distributed around the world. Typically, responsibility is shared by dividing the application into one or more "sections". How this division is actually implemented varies from team to team.
 
Maintaining large monolithic applications poses the following challenges:
 
* Side effects : if you change something, it may be unclear how it could affect the rest of platform.

* Coordination :
 when you develop a new feature or make big changes, many teams may need to be in sync to approve it.

* Complexity :
 with a huge dependency tree and many layers of abstraction, developers cannot iterate quickly, and features suffer as a result.

* Killing Innovation :
 a/b testing a cutting-edge feature is hard to do without disrupting the rest of the app and the teams working on it.

* Slow Onboarding :
 new people coming into the team are overwhelmed.

Engines provide an antidote to these problems by allowing for distributed development, testing, and packaging of logically-grouped pieces of an application.
Advertisement