Remember Me
forgot your password?

Eclipse Plugin Development - a Bird’s Eye View

Eclipse plugin development A bird’s eye view

                                                                                                     By Debadatta Mishra,

                                                           

Introduction

Eclipse platform made a new era in the history of java development. It provided a new and broader horizon and new dimension to the developers for easy, swift and economic development. Besides it fosters the sprit of enthusiastic learning for the developers.

In the true sense of the term Eclipse is an integrated application of several core projects built inside it. Eclipse provides core and generic framework and services upon which you can accomplish your java development and you can build your own eclipse like custom or customized applications. Besides it provides several tools which make ease for rapid application development. Besides I can say that it is such a platform or environment where you can plug your application as plugin and play with your application. However it contains so many features that beggar descriptions. You can find all the features from the eclipse site or you can go to help menu of your eclipse editor which provides detailed descriptions. It is only because of its pluggable features, it has gained momentum in the industry. Many industries adopt it as a standard and the better approach for the development. Eclipse plugin framework has brought a revolutionary change in the look and feel and provides most exciting graphical approach as compared to traditional swing applications. This framework has proved its worth for the current changes in the development and testing. In the field of top notch competition, we envisage several changes in the field of development and testing in the industry. Now a days the platform of development has been changed radically in the industries. Now client's requirements have become much more matured and strict. Many clients are reluctant to expose their existing functionality and legacy systems to the industry. They want new applications which should be pluggable for their existing systems. They want better UI approach and more intelligent works in their applications. Besides, organisations want rapid cost effective development. That is why many organisations are laying down several approaches in the hiring processes. So it is up to you how you can cope with the current technologies and organisational policies. I have a suggestion to all of you that please leave the habit of spoon feeding. There was a time when every organisations provide training to the new and novice developers. Now this trend has been changed dramatically and has come to a limited aspect in the industry. I request you to realize your subject of your learning rather than understanding it. Try to make self learning at your home (the best place for your development) and be a smart developer and help the development community with your new ideas and thoughts.

             In this article I will present some glimpse of eclipse concepts which are specific to plugin development. I will make you familiar with very few commonly used terms in eclipse plugin development. From the very inception the novice developers may find it difficult to get started with plugin development, but it is true that once you get accustomed to the coding style for plugin development, you may be enthusiastic and you can develop anything to satisfy the aesthetic desire of your clients and mangers . I am not going to give you the complete overview, architecture and details of eclipse plugin development. I will provide an approach so that you can make self learning at your home. The following terms and jargons are used in course plugin development. It is difficult to provide all the terms, I will provide you the terms in brief and I will update accordingly.

 Workbench:-

A workbench is a visible environment which contains several user interface manifestations. In a very layman term we can say that workbench is the view or a typical window when your application gets started. It is just like a railway track where you can build your vehicles to run over it. More specifically a workbench comprises the following major UI components. The components are "perspectives","views" and "editor". You can also reiterate that it the UI portion of the eclipse. It simply provides a broader infrastructure for your plugins for swift and economic development.

 Perspectives:-

A perspective encapsulates several views and editors inside the workbench window. In a layman term it is the railway compartment/s which of which has several views. Since railway compartments are of different type like airconditioned, non-airconditioned or deluxe type, similarly perspectives may be of different type specific to your functionality. For example to make web-service interaction, it may be a webservice perspective, for database perspective, it may be your DBPerspective. One or more perspectives can be built based upon your requirements and functionality. Besides it provides the initial layout of your views and decorations. Please remember that your perspective should achieve the core functionality defined by you. This feature provides a better approach to achieve the specific task. Just as a traveler moves from one compartment to another for his/her suitability, a user can switch between various perspectives.

 View:-

A view presupposes a visual component inside the perspective and inside the workbench. In a common man term it is the room inside your railway compartment. In a view you can place your components according to your suitability. A view can be of different type for example outline view, property view, work-in progress view , tree structure view etc. Each view should be created to achieve the generic goal of your application.

Editor:-

An editor is an area for editing. In a common man term, I can say that it is the seat or its related stuffs in a railway compartment where you can push and pop your article. As you define your sitting area to place beverages bottle, you can create an area to push your luggage and specific area to place your laptops, similarly an editor can be created to write a functionally structured email specific to your application and requirements or editor may be defined to write an .XML file, plain text file or a document editor. The basic purpose is to edit the text contents. An editor may be common to one or more perspectives.

Workspace:-

A workspace is the central repository of data files for an application. The workspace contains user data and some internal configuration files. Basically the workspace contains the directories and files related to your application project. This workspace is created automatically when the workbench gets started. In case of plugin development, the creation of workspace is customized.

 

Toolbar:-

A toolbar is a horizontal bar visible just beneath the workbench menu bar. It is similar to that of Microsoft MS Word. The basic purpose of this toolbar is to provide quick view of the items.

 

Wizard:-

A wizard is a typical dialog box which provides a set of sequential execution and provides guidance to the user. If you are developing an application as a plugin under eclipse, you can create your own wizard. More specifically the wizard page is just like a UI of a software installer.

 

Widget:-

In eclipse platform each UI control can be considered as widget. Each widget is defined for a specific task and functionality. So eclipse underlying framework or API is called as standard widget toolkit (SWT).

 

SWT:-

It stands for Standard Widget Toolkit but not Standard Window Toolkit. It is an API which provides basic apis and native implementations specific to your underlying OS.

 

JFace:-

It is a middle level UI framework which provides flexibility to create complex UI and it works with SWT.

  

            I hope that you have enjoyed this article. Please refer to my next article where I will provide one basic example to make your hands on plugin development.

 

Caution

 My article is only meant for learning and it does not bear any commercial significance .I request you not to integrate in your actual development of the organization. I want to

help the freshers, novice developers or those who are new this plugin development environment. In the yester years I have realized several problems relating to development in the organizations. The reasons of problems may be infinite; however I do not want to discuss this. However we have to be smart and try to cope with the current environment. I will provide you some ways of solutions to the commonly occurring problems relating to plugin development. In my forthcoming articles I may provide various source codes which are only for your understanding. Please do not attach, copy or integrate the code in your applications. In case of any problems I will not be held accountable.

 

Question to audience

 I hope that you may have gone through and enjoyed my small article. Please provide me your most valuable feedback so that I will realize it. The last but not the least I leave a small question to you for which you can send me in email id debadattamishra@aol.com .

 

Is eclipse platform independent?

 

Conclusion

 Please provide me your valuable feedback at debadattamishra@aol.com . If you find any error or errata, please report to me as soon as possible. In my next article, I will help you how to create a dialog box and you can place your UI components safely.

 

 

Debadatta Mishra

Debadatt Mishra - An agreesive java developer with a difference

Rate this Article: 3.5 / 5 stars - 2 vote(s)
Print Email Re-Publish

Add new Comment



Captcha
0
1. Hemnat (16:25, 05.11.2008)
Its really a good article, but i want to go beyond this. I need to develope a fully feldge plugin like an application. Debadattamishra, I can explain you, can i contact you?
0
2. Hemnat (16:25, 05.11.2008)
Its really a good article, but i want to go beyond this. I need to develope a fully feldge plugin like an application. Debadattamishra, I can explain you, can i contact you?

  • Latest Programming Articles
  • More from Debadatta Mishra

Typecasting and its importance in C++

By: james edward | 08/11/2009
Type Casting causes the program to treat a variable of one type as though it contains data of another type. Read brief tutorial on typecasting in c++

How to Setup Your Own Blog with WordPress

By: Felix Gomez Jr | 08/11/2009
Have you tried to setup wordpress and have met some problems you were not able to solve until now? This article might help.

An Event Registration Service Can Eliminate Much Event Planning Stress

By: Brad Robert | 06/11/2009
Event-Registration-Service.com is the leading online event registration, event planning and event management software for all types of businesses and organizations.

HTML Guestbook in ASP.Net

By: pons_saravanan | 05/11/2009
A very simple guest book without any Database storage.

Himfr.com reports the new sail will be put on the market in January next year

By: chenxiao | 05/11/2009
the new sail will be put on the market in January next year.

iPhone Applications at Its Best

By: Arun Kumar | 05/11/2009
The Apple iPhone has been deemed the gadget of the decade. It’s such kind of a power product from the house of Apple that has really changed the way people communicate. In the last few years we have seen several mobile handsets, PDAs and pocket PCs from the big labels, but the wonder that Apple has done is really something special, something beyond everyone’s imagination.

Diexon - Game Programming

By: Matthew | 04/11/2009
Diexon is a game programming company that is always look for artists to help make games.

Java Developers and the power of Java

By: zekin | 03/11/2009
Java developers who had been working on Java platform must be aware of the power of this platform. Although, some of the live application of Java gives more idea on what more can be done with the Java application development platform.

Encryption Using Rsa Algorithm in Java

By: Debadatta Mishra | 23/08/2008 | Programming
This article provides a solution for RSA encryption and decryption in java, which is limited to 117 bytes.

Symmetric Cryptography in Java

By: Debadatta Mishra | 23/08/2008 | Programming
This article gives an insight into the symmetric cryptography in java. It basically provides you the use of DES algorithm.

Asymmetric Cryptography in Java

By: Debadatta Mishra | 04/06/2008 | Information Technology
An example for asymmetric cryptography in java

Object Persistence in Java

By: Debadatta Mishra | 16/05/2008 | Information Technology
An article on the persistence of plain old java object in the file system. I provide an approach to the freshers to store the entire java object. I have highlighted on XML Persistence as well as serialization.

Submit Your Articles Free: Signup
Article Categories




Use of this web site constitutes acceptance of the Terms Of Use and Privacy Policy | User published content is licensed under a Creative Commons License.
Copyright © 2005-2008 Free Articles by ArticlesBase.com, All rights reserved. (0.05, 1, w1)