Narayana Tutorial

Online Java Tutorial Blog

What is Framework Software


What is Framework Software

Every one having doubt on what is framework software ?  which is a special software that is capable of developing applications based on certain architecture having the ability to generate common logic of the application dynamically based on other logic supplied by programmer.

Framework Software is a special software that is capable of developing applications based on certain architecture having the ability to generate common logic of the application dynamically based on other logic supplied by programmer.

How to develop framework software

Framework Software will be given based on core technologies and framework software provides abstraction layer on core technologies so that without having strong knowledge on core technologies we can develop core technologies based applications by using framework software.

If framework software not exist

If we develop applications directly by using core technologies the common logic of application and your application specific logic should be developed by you manually. This kills productivity

Core Technologies Example

Servlet & JSP

Servlets and Jsp are the core technologies to develop web applications.

JDBC

JDBC is the core technology to develop persistance logic. If we are going to using plain JDBC core technology, we have following steps.

  • Load JDBC driver class and register with DriverManager service. –> Common Operation
  • Establish the connection with database software –> Common Operation
  • Create Statement object –> Common Operation
  • Send and executes SQL in the database software –> Application specific, requirement based.
  • Get and process the results –> Application specific, requirement based.
  • Close connection with database software

Framework Software Examples

  • Struts, JSF, Web Work, XWork, Spring MVC are web framework software to develop web applications.
  • Hibernate, Toplink, iBatics, JDO etc.. are ORM framework software.

Hibernate

Hibernate is a framework software to develop persistance logic and it is abstraction layer of JDBC core technologies.

Struts

Struts is a framework software to develop MVC architecture based applications having the ability to generate integration logic of controller layer dynamically based on the logic given in the other layers by programmer

Spring

Spring is a framework software which can develop all kinds of Java/J2ee applications in framework style based on dependency injection principle.

Spring framework software is developed based on various JSE, JEE module based technologies by providing abstraction layer on them. So programmers can use Spring software to develop all kinds of Java/J2ee applications in framework style.

Spring framework software not only provides abstraction layer on Java/J2ee core technologies, it also provides abstraction layer on some other framework softwares like Hibernate, Toplink etc..

If we will use Spring JDBC Template Instead of using plain JDBC Code as above mentioned, we have following steps.

  • Get access to JDBC Template that uses JDBC Code internally by providing abstraction layer on JDBC technology.
  • Send and execute SQL in the database software –> Application specific, requirement based.
  • Get and process the results –> Application specific, requirement based.

Note: To observe the spring based application code it is making the programmer to just develop is application logic because the JDBC Template of Spring software generates the remaining common logic dynamically.

This feature makes framework softwares giving good productivity when comparative to working with core technologies directly.

Doing more work in less time having accuracy is called as good productivity

 

Narayanaswamy

Hello! I am Narayanaswamy founder and admin of narayanatutorial.com. I have been working in IT industry more than 7 years. NarayanaTutorial is my web technologies blog. My specialties are Java / J2EE, Spring, Hibernate, Struts, Webservices, PHP, Oracle, MySQL, SQLServer, Web Hosting and Website Development.

I am a self learner and passionate about training and writing. I am always trying my best to share my knowledge through my blog.

Leave a Reply

Narayana Tutorial © 2018 Frontier Theme
Show Button
Hide Button