Framework

Introduction

A software framework is an abstraction in which common code providing generic functionality. It can be selectively overridden or specialized by user code. It is as libraries. They Frameworks provide reusable abstractions of code wrapped in API.

What is a software framework?

• i Provide environment to work with complex technologies.
• it ties together a bunch of discrete objects/components into something
more useful
• forces to implement code in a way that promotes consistent coding, fewer bugs, and more flexible applications
• easiy to test and debug the code, even code that they did not
write

A Framework has

• wrappers. A wrapper:
o Make technology easy with interface
o reduces/eliminates repetitive tasks
o increases application flexibility through abstraction
o re-usable codes
• architectures. An architecture:
o control a collection of objects
o implements a set of specific design elements
• methodologies: A methodology:
o consistent design approach
o decouples object dependencies
o re-usable regardless application requirements

Framework efforts broken down
• Management
oSets goals, oversight, decision framework
• Evaluation and design
• Assessment


Distinguishing features of framework from livrarties

  1. inversion of control-the overall programs flow of control is dictated by the framework but not caller.
  2. The default behavior is actually by some useful and not a serried of no-ops.
  3. extensibility -Framework can be extended.
  4. non-modifiable framework code - The framework code, in general, is not allowed to be modified. Users can extend the framework, but not modify its code.




Commonly used frameworks

JAVA

  • Spring
  • Struts / Struts 2
  • Google Web Toolkit

 

PHP

  • Zend Framework
  • CodeIgniter
  • CakePHP


Purpose

·         to improve the efficiency of creating new software
·         Reusability of code
·         improve developer productivity
·         improve developer quality
·         improve developer productivity
·         improve developer reliability
·         improve developer robustness
·         Avoiding low-level details of working system

Some question to design framework
• What methodologies will use?
• How will assure that the software fits together?
• How will avoid the maintenance trap?
• How can achieve sufficient abstraction to have minimal code while having sufficient specificity to

Advantage

·         Reduces time
·         Reduces energy
·         Has standard working system
·         Reusable codes

Disadvantage

·         It has big and complex abstraction
·         Needs more time to assissing concept and functionality
·         a generic ‘one-size-fits-all’ does not work efficiently

Examples

  • Artistic drawing, music composition, and mechanical CAD
  • Compilers for different programming languages and target machines
  • Financial modeling applications
  • Earth system modeling applications
  • Decision support systems
  • Media playback and authoring
  • Web applications
  • Middleware

 

Architecture

·         Consists of frozen spots and hot spots as basic components
·         Frozen spot is the overall architecture
·         Hot spot is the section to add programmer code
·         In OOP, it consists abstract and concrete class

 
 
outsource contact
 
 
 
solution captcha
 

Best solution

Solutionbd provides excellent packages
SlimPack, Cutepack, Silverpack, Smartpack, all Packages

Solutionbd provides web development works on
HTML, DHTML, XHTML, CSS, Javascript, XML, Ajax, MySQL, Flash, Flex, Action Script, Action Script 2, Action Script 3, PHP, ASP, Perl, Framework, CMS, E-commerce, web tools