Getting Started with Frameworks
If you find yourself spending
hours coding, recoding and
coding again, know that
there are some benefits to
A Web application framework is designed to support the development of dynamic websites, Web applications and Web services. The reason to use a framework is to make writing code, well, easier.
Frameworks are wonders of the modern world of development and design. Results are seen in the reduction of time spent on numerous common activities (many frameworks provide libraries for database access, templating frameworks and session management, and even to facilitate code reuse).
There are many benefits to using a framework. Efficiency is the draw for most developers — what could have taken hours can be done quickly, thanks to pre-built functions.
Cost is another attraction. Most frameworks are free, which results in a lower cost for the project — for the client as well as for the developer.
There are, of course, some downsides to using frameworks – perhaps why more developers don’t use them at all. The primary drawback is the limitation of the core behavior. When you use a framework, you need to work within its limits and work exactly the way it requires you to.
Another issue with frameworks is that developers who may just be starting out tend to learn their way around the framework itself, but not the language. All that said, there are many frameworks that can benefit one’s future Web apps, services and sites.
PHP is arguably the most widely used programming language on the Web today. There are numerous PHP frameworks on the market for coders looking for both simple and elegant toolkits to create high-functioning, full-featured Web applications. CodeIgniter (codeigniter.com), CakePHP (cakephp.org), Zend (framework.zend.com) and Symfony (symfony-project.org) are four of the most widely recognized frameworks for working with and coding in PHP.
e-Tip: Innovators in HTML5 Web designers the world over have caught the HTML5 fever. Visit Website Magazine’s HTML5 showcase to find inspiration for your next project.
Ruby on Rails is an open-source Web application framework that is used for the Ruby programming language. Ruby on Rails (RoR) includes templates to enable developers to generate a skeleton application with custom gems and configurations, engines that let a developer reuse application pieces, and the Rack Web service interface and Metal which allow for writing optimized pieces of code that route around ActionController. Well-known alternatives include Padrino (padrinorb.com) and Bowline (bowlineapp. com).
A CSS framework is a library that is meant to allow for easier, more standards- compliant styling of a webpage using the Cascading Style Sheets language. Similar to programming and scripting language libraries, CSS frameworks package a number of ready-made options for designing and outlaying a webpage. Some of the most popular CSS frameworks include BluePrint (blueprintcss. org), 960 Grid (960.gs) and Elastic (elasticcss.com). Another is YUI2. The foundational YUI grids offer four preset page widths, six preset templates, and the ability to stack and nest subdivided regions of multiple columns.
Framework in Focus — Laker
If you’re interested in having the ability to distribute publications for the iPhone and iPad including digital magazines, catalogs, or anything else you can imagine, check out Laker Compendium. Laker is a collection of files, frameworks, styles and tips for designing digital publications in HTML5. Its ease of use and general elegance caught our attention and while perhaps not the most robust solution on the market, it does have some exceptional features for those looking to get a leg up in a more app-friendly environment. Features include the ability for the layout to scale automatically depending on screen size and orientation. Also with Laker, developers are able to have a framework which lets users swipe to change pages, double tap to show a table of contents, implement native looking slideshows, and include media and assets (e.g. sound, videos, images). The best part? No Web server required.