An application refers to a software program, which on execution performs specific desired tasks. In general, several applications are executed in a run-time environment containing one or more of operating systems, virtual machines (e.g., supporting Java™ programming language), device drivers, etc., as is well known in the relevant arts.
Developers often use Application Development Frameworks (ADFs) (which are by themselves applications) for implementing/developing desired applications. An ADF provides a set of pre-defined code/data modules that can be directly/indirectly used in the development of an application. An ADF may also provide tools such as an IDE (integrated development environment), code generators, debuggers, etc. which facilitates a developer in coding/implementing the desired logic of the application in a faster/simpler manner.
In general, an ADF simplifies development of applications by providing re-usable components and integrated development environments, which application developers can use to define user interfaces and application logic by, for example, selecting components to perform desired tasks and defining the appearance, behavior, and interactions of the selected components. Some ADFs are based on a model-view-controller design pattern that promotes loose coupling and easier application development and maintenance. Oracle Application Development Framework is one example of an ADF that utilizes this design pattern.
Oracle ADF includes libraries of standards-based Java Server Faces (JSF) components with built-in HTML5 and Ajax functionality. With these components, web deployed user interfaces can be developed with a level of functionality and interactivity previously reserved for thick-client applications. The components offer data interaction, data visualization, and encapsulated browser side operations in a set of easy to use components that makes rich client application development easier than ever. Oracle ADF further provides a data-binding framework that simplifies binding UI to business services through a simple drag and drop operations in the IDE. This is done while still keeping the independence of the business service from consuming interfaces. With the framework, the UI developer is insulated from the underlying implementation of the business service layer. This makes the process of building the UI truly decoupled from the implementation of the business service layer, better positioning the application for implementation in a service-oriented architecture.
Cascading Style Sheets (CSS) frameworks can be used to theme or style web-based applications. A CSS framework is generally a pre-prepared software framework that is meant to allow for easier, more standards-compliant web design using the Cascading Style Sheets (CSS) language. Functional frameworks can come with more features and additional JavaScript based functions that are mostly design oriented and unobtrusive. Some notable and widely used examples are Bootstrap or Foundation. Very few frameworks will allow developers of a client interface to quickly change a framework's look and feel visually if that framework uses a CSS preprocessor. The reasons for this are because it is very expensive to perform the preprocessing instructions and it is difficult to run the preprocessing client side (usually because the frameworks are written in languages that cannot be run on a web browser).
Accordingly, what is desired is to solve problems relating to building application user interfaces using CSS frameworks, some of which may be discussed herein. Additionally, what is desired is to reduce drawbacks relating to building user interfaces using CSS frameworks, some of which may be discussed herein.