Although some template systems require additional development time to integrate, using them can provide noticeable results when you’re attempting to scale an application environment. Simply put, templates allow developers to separate out their programming logic from the visual layer of the application. This makes application development easier, allows for multideveloper collaboration, provides an easier means for debugging the environment, and enables you to scale the product as needed.
There’s no doubt that some template systems can add a large amount of unnecessary heft to application code, but the question comes down to what systems you really need for the specific application you’re developing. Small applications will not get a lot of mileage out of fully developed template systems, which are built for large-scale development projects; on the flipside, large application projects would require a lot of development effort to create a custom template solution.
Again, the real question comes down to need. As we explore the different open source techniques for application development in this book, we will look into a few excellent template solutions offered through the OpenSocial application framework.