A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Eclipse Extensibility João Paulo –jpsm Mário Barbosa - mbaj.

Apresentações semelhantes


Apresentação em tema: "Eclipse Extensibility João Paulo –jpsm Mário Barbosa - mbaj."— Transcrição da apresentação:

1 Eclipse Extensibility João Paulo –jpsm Mário Barbosa - mbaj

2 O Que é o Eclipse ? Plataforma Open Source Baseada em um sistema de plug-ins Doada para o Eclipse Foundation pela IBM em 2004 Inicialmente IDE Java Multiplataforma

3

4 Eclipse Public License (EPL)

5 Desenvolvimento do Eclipse Arquivos fontes de Java: 9.689 Linhas de código em Java: 1.903.219 JUnits usados automaticamente em cada Build: 21.332 Instâncias da palavra “foo”: 224 Número de rosquinhas comidas: 1120

6 Arquitetura

7 IDE´s do Eclipse JDT (Java Development Tooling) PDE (Plug-in Development Environment) CDT (C/C++ Development Tools) AJDT (AspectJ Development Tools) COBOL VE (Visual Editor) WTP (Web Tools Platform) WST(Web Standard Tools) JST (J2EE Standard Tools) Pollinate WSVT ( Web Service Validation Tools) Hyades OMONDO

8 RCP RCP (Rich Client Plataform) ▫Plataforma para construir aplicações de Clientes com uma rica funcionalidade Open Source/Free Iniciada em 2003 (desde o Eclipse 2.1)

9 Dentro do RCP Runtime Components ▫OSGi – Open System Gateway initiative  Aplicações/Bundles ▫Extensões UI Components ▫SWT – Standard Widget Toolkit ▫Jface – Framework de abstração de UI ▫Workbench  View/ Editors/ Actions/ Perspective … ▫Text/ Form/ GEM

10 Dentro do RCP User Experience/ Assistence ▫Introdução ao plugin  “Bem vindo ao nosso produto” ▫Dicas  “Mostre me como fazer” ▫Ajuda do Eclipse  Baseada em XML/ XHTML

11 Dentro do RCP Disponibilização/ Updates ▫Disponibilização  Suporta JNLP (webstart) ▫Update de programas ▫Update de UI ▫Update de Funcionalidades

12 Arquitetura RCP

13 Platform architecture

14 Platform Runtime Descobre dinamicamente os plug-ins instalados Plug-ins são ativados após ação do usuário

15 OSGi Open Service Gateway initiative Pequena camada runtime Procurar e ativa plugins Maior compatibilidade e portabilidade ▫Hardware ▫Systemas Operacionais

16 JDT (Java Development tooling) Utilizam extension points. Frameworks ▫Conjunto de plug-ins Contribuições no desenvolvimento de programas ▫Escrita ▫Compilação ▫Teste ▫Debug

17 PDE (Plug-in development environment) Possui um conjunto de ferramentas para o desenvolvimento de plug-ins ▫New Project Creation Wizards ▫Import wizards ▫Export wizards ▫Views ▫Conversion tools ▫...

18 SWT SWT (Standard Widget Toolkit) IBM desenvolveu o VisualAge ▫IDE desenvolvida em Smalltalk ▫Virou um projeto OpenSource Uma nova GUI Toolkit ▫Look and Feel Nativo ▫Performance Nativa

19 JFace Framework orientado a objeto SWT Widgets

20 Workbench UI Implementam o “cockpit” do usuário Define extension points para UI components ▫Menu and tool bar actions ▫Drag and drop ▫Dialogs ▫Viewers ▫...

21 Workbench

22 Plug-ins são componentes Cada plug-in representa um conjunto de funcionalidades que podem ou não ser extendidas de outros plug-ins Possuem um ou mais extension points Cada plug-in é definido em seu próprio arquivo plugin.xml e se encontra em seu próprio sub- diretório ou jar

23 Plugin.xml

24 Desenvolvendo um Plug-in Decidir como ele será integrado a plataforma Identificar os extensions-points a serem utilizados Implementar os extension-points de acordo com sua especificação Prover um manifest file (manifest.mf) e um plugin-manifest (plugin.xml)

25

26 HelloWorld – Plug in Project Selecione File -> New Project Escolha a opção Plug-in project Insira o nome do projeto

27 HelloWorld – Plug-in Content Digite o id, versão e nome do plug-in

28 Hello World - Templates Selecione o template Plug-in with a view e clique next

29 HelloWorld – Main View Settings Mude os nomes gerados automaticamente e clique em Finish

30 Código simplificado package com.example.helloworld; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.SWT; import org.eclipse.ui.part.ViewPart; public class HelloWorldView extends ViewPart { Label label; public HelloWorldView() { } public void createPartControl(Composite parent) { label = new Label(parent, SWT.WRAP); label.setText("Hello World"); } public void setFocus() { // set focus to my widget. For a label, this doesn't // make much sense, but for more complex sets of widgets // you would decide which one gets the focus. } Substitua o código da classe do plugin pelo código abaixo

31 plugin.xml gerado -> única extensão utilizada <category name="Hello Category“ id="com.example.helloworld"> <view name="Hello View" icon="icons/sample.gif" category="com.example.helloworld" class="com.example.helloworld.views.HelloWorldView" id="com.example.helloworld.views.HelloWorldView"> Dê dois cliques em plugin.xml no Package Explorer e selecione a aba plugin.xml

32 Manifest.mf gerado Possui meta dados do plug-in (clique na aba manifest.mf para visualizá-lo)

33 Rodando o plug-in Na aba overview clique em Launch an Eclipse application ou rode a aplicação normalmente como eclipse application

34 Referências http://pesquompile.wikidot.com/eclipse-n http://www.slideshare.net/vijaykiran/eclipse-rcp http://www.slideshare.net/joomlatools/joomladay-nl-2008- debugging-joomla-in-eclipse-338480 http://www.slideshare.net/ciukes/introduction-to-the-eclipse- platform-141827http://www.slideshare.net/ciukes/introduction-to-the-eclipse- platform-141827 http://www.slideshare.net/neerajbhusare/eclipse-modeling- frameworkhttp://www.slideshare.net/neerajbhusare/eclipse-modeling- framework http://www.slideshare.net/fbahr/introduction-to-the-graphical- modeling-framework-gmfhttp://www.slideshare.net/fbahr/introduction-to-the-graphical- modeling-framework-gmf http://www.cjug.org/presentations/2005/Sep01west/eclipse_rcp.p dfhttp://www.cjug.org/presentations/2005/Sep01west/eclipse_rcp.p df http://wiki.eclipse.org/index.php/Rich_Client_Platform http://wiki.eclipse.org/RCP_FAQ Eclipse HELP

35 Dúvidas


Carregar ppt "Eclipse Extensibility João Paulo –jpsm Mário Barbosa - mbaj."

Apresentações semelhantes


Anúncios Google