where developers meet development
Thursday,September 21,2017

EXCLUSIVES 

Can Struts, Spring, jQuery or Seams Dislodge 2009 Winner Microsoft .NET?

Picture Holder1

After its conception at the end of the 1980s, object-oriented frameworks have attracted attention from many researchers and software engineers. Frameworks have been defined for a large variety of domains. In addition to the intuitive appeal of the framework concept and its simplicity from an abstract perspective, experience has shown that framework projects contribute to increased reusability and decreased development effort.


Software systems can be among the most complex constructions. As an example, it is believed that Microsoft’s Vista operating system contains over 50 million lines of code. Although most software systems are not of this size, complexity of software development can be quick to increase if they aren’t subjected to regular checks. Fortunately, several methods have been developed to make construction of large systems easier. Among these methods, the most important are the use of design patterns and frameworks.

The basic idea of frameworks is to place all common and reusable functionality in specific classes that can be reused for specific applications. The key here is to know the concerns the components being built. This is perhaps the most complex aspect when it comes to software development. Let’s take a shopping solution as an example. In this solution a web page will display product information which it retrieves from a database. There are several different points of focus within this simple task. When reading from the database the focus stays on data query. Filtering and processing the retrieved results depends on business logic, and when displaying the result is all about visual appeal. It is very likely all these tasks will be performed by a single programmer. Therefore, the programmer needs to jump from one area of focus to the next in quick succession and this can be difficult. It is also likely that the developer will make each focus dependent and highly customized to this particular application thereby reducing code reusability.

By creating frameworks, each of the above concerns is solved with reusability in mind. With regards to the example above a framework for retrieving data is created. In such a framework, data access is the only concern. For this, the developer is only concerned with data and is not concerned with particular type of data or specific product information. All components of the application can use the data framework.

Therefore, a framework can be defined as a partial design and implementation for an application in a given domain. So in a sense a framework is an incomplete system. This system can be tailored to create complete applications. Frameworks are generally used and developed when several (partly) similar applications are to be developed.

Frameworks Winner at Great Indian Developer Awards 2008: Siddharth Kapoor, Manager - Developer Audience Marketing, Microsoft India, accepting the award on behalf of the .NET Framework team

A framework implements the commonalities between those applications. Thus, a framework reduces the effort needed to build applications. We use the term framework instantiation to indicate the process of creating an application from a specific framework. The resulting application is called a framework instance.
 
Frameworks can probably be grouped into three broad categories:
  • Application frameworks: application frameworks aim to provide a full range of functionality typically needed in an application. This functionality usually involves things like a GUI, documents, databases, etc. An example of an application framework is MFC (Microsoft Foundation Classes). Another application framework is JFC (Java Foundation Classes). The latter is interesting from an object oriented design point of view.
  • Domain frameworks: these frameworks can be helpful to implement programs for a certain domain. The term domain framework is used to denote frameworks for specific domains. An example of a domain is banking or alarm systems. Domain specific software usually has to be tailored for a company or developed from scratch. Frameworks can help reduce the amount of work that needs to be done to implement such applications. This allows companies to make higher quality software for their domain while reducing the time to market.
  • Support frameworks: support frameworks typically address very specific, computer related domains such as memory management or file systems. Support for these kinds of domains is necessary to simplify program development. Support frameworks are typically used in conjunction with domain and/or application frameworks.
Frameworks Winner at Great Indian Developer Awards 2009:  Adobe representative collects the award on behalf of the Adobe Flex Builder team

Saltmarch Media's annual Great Indian Developer Awards honors software products across 12 categories, based on their productivity, innovation excellence, universal usefulness, simplicity, functionality and most importantly on the ground feedback from India’s software developer ecosystem. In the Frameworks category, the final shortlist consists of Apache Struts, Spring Framework, jQuery, Microsoft .NET Framework 3.5 and JBoss Seams. Microsoft .NET was the first product to win in this category in 2008 followed by Adobe Flex Builder in the 2009 chapter of the same awards.


If there is a particular framework that you personally endorse to your colleagues or you evangelize about them at the first opportunity you get, here is your chance to vote for it (voting closes April 10 2010) and see it win this prestigious award. Who knows? You could win along with it too. At the end of the voting process, a lucky draw will be conducted and one person will receive a surprise gift from our prize sponsor. So visit the 2010 Great Indian Developer Awards website and cast your vote. It counts!

Register to DeveloperMarch

Be part of DeveloperMarch and get updates on upcoming events. Youcan register with the form below:

FirstName*
LastName*
Company*
Country*
Job Title*
Phone Number*
Email*
UserName*
Password*
Confirm Password*
To:
Name:*
E-mail address:*
Your Details:
Your name: *
E-mail address: *
Message:
Software Supportby Advanced Millennium Technologies

Advanced Millennium Technologies. Expertise in software development, offering consultancy services, Open source programming, CRM - Customer Relationship Management, CMS - Content Management System , ERP - Enterprise Resource Planning and Ecommerce development, AJAX, PHP, .NET, J2EE, SOA, XSLT, DOJO toolkit development and software testing. A robust onsite-offshore model. A well-defined global delivery model. AMT Outsourcing center. www.amt.inTAROBY - The E-Mail Dashboard for EntrepreneursTaroby is a SaaS based messaging and collaboration suite inbox that enables sharing of email accounts among team members. The unique concept of 'Team Inbox' makes Taroby an excellent enterprise collaboration suite for enterprises. Taroby is an effective tool for CEO's and entrepreneurs to manage multiple departments or manage multiple projects under them. The team inbox gives the entrepreneurs an overview of what is happening their business and give a quick snap shot of the employees who is responcible for handling the tasks/emails. For team members taroby brings in transparency and efficiency in their teams. Taroby improves the internal and external communication in an organization. Using the Taroby's Team Inbox also helps in reducing the usage of disc space and there by helping the enterprises to reduce carbon footprints.