Eclipse IDE
-
Upload
ingrid-pate -
Category
Documents
-
view
54 -
download
0
description
Transcript of Eclipse IDE
SponsorSponsor główny główny::
Bartosz MichalikBartosz [email protected] JurkiewiczJakub [email protected]
EclipseEclipse IDE IDEZanim rozpoczniemy naszą pracę...Zanim rozpoczniemy naszą pracę...
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
AgendaAgenda
▪Zanim zaczniemy
▪Hello world ;)
▪Organizujemy naszą pracę
▪Napiszmy w końcu jakiś kod
▪Tips & Tricks
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Pierwsze zadanie
▪Zakładamy konto na naszej Bugzilli:• adres: http://se.cs.put.poznan.pl/sebugs/
• klikamy na link New Account• podajemy adres e-mail
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Zanim zaczniemy▪Eclipse jest do ściągnięcia ze strony:
http://www.eclipse.org/downloads/
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Zanim zaczniemy
▪Po ściągnięciu mamy plik z archiwum ZIP
▪Rozpakowujemy ściągnięty plik• UWAGA! Standardowy mechanizm Windows XP do
rozpakowywania nie zawsze sobie radzi!
▪Uruchamiamy Eclipse’a przez eclipse.exe
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Zanim zaczniemyZanim zaczniemy▪Opcje uruchamiania
Eclipse’a z linii komend
-vmargs -Xmx<memory size>
-debug
-consoleLog
-clear
ile RAMu potrzebujemy do pracy?
uruchamianie w trybie debug
logowanie do konsoli
gdy napotkamy problemy z pluginami
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Po uruchomieniu
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Po uruchomieniu
▪Podstawowe elementy interfejsu użytkownika• Perspektywy – definiują jakie widoki oraz edytory
mają się pojawić i w którym miejscu
• Edytory – pozwalają na zmiane treści/zawartości plików (ale nie tylko!)
• Widoki – prezentują informacje w sposób usystematyzowany (np. Hierarchię), pozwalają otwierać edytory, zmieniać właściwości elementów, itp.
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Perspektywa JavaPerspektywa Java
▪Jak zacząć pisać w Javie?• Musimy dostać się
do perspektywy Java
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Perspektywa JavaPerspektywa Java
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Perspektywa Perspektywa JavaJava▪Składa się z:
• Edytor
• Widok Projects
• Widok Packages
• Widok Types
• Widok Members
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Hello worldHello world▪Tworzymy nowy projekt
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Hello worldHello world▪Dodajemy foldery dla źródeł
Unikajmy bałaganu w projekach!
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Organizujemy nasz projektOrganizujemy nasz projekt▪Użyteczna struktura projektu
• src
• test
• bin/classes
• lib
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
ĆwiczenieĆwiczenie 1 1
▪Uruchomienie Eclipse’a
▪Stworzenie projektu i jego struktury
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Preferencje vs Właściwości
▪Preferencje (ang. Preferences) – ogólne ustawienia dotyczące różnych aspektów Eclipse’a oraz dodatkowych wtyczek• Dostępne przez menu Window->Preferences
▪Właściwości (ang. Properties) – ustawienia dotyczące konkretnych elementów (np. projektów, plików, itp.)• Dostępne przez menu kontekstowe danego
elementu i wybranie opcji Properties
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Preferencje edytoraPreferencje edytora▪Kolory
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Preferencje edytoraPreferencje edytora▪Zwijanie linijek
▪Zaznaczanie wystąpień
▪Wzorce
▪Pisanie• Automatyczne domykanie : stringi, nawiasy etc.
• Automatyczne dodawanie instrukcji import
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Wzorce koduWzorce kodu▪Wzorce kodu –
wykorzystywane przy generowaniu kodu
▪Wzorce – ponieważ jesteśmy leniwi
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Preferencje kompilatoraPreferencje kompilatora▪Java VM
▪Błędy/Ostrzeżenia
▪Javadoc
▪Zadania
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
ĆwiczenieĆwiczenie 2 2
▪Organizujemy naszą pracę
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Pomocy !!!Pomocy !!!
▪Nieodzowne F1
▪Menu Help• Help Contents• Dynamic Help• Search
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Pomocy !!!Pomocy !!!
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Napiszmy w końcu jakiś kodNapiszmy w końcu jakiś kod
▪Prosty projekt
▪Skróty
▪Przeglądanie kodu
▪Ćwiczenie
▪Refaktoryzacje
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Napiszmy w końcu jakiś kodNapiszmy w końcu jakiś kod
▪Aplikacja konsolowa do obliczeń
▪Wejście – plik lub konsola (console)
▪Wyjście – plik lub konsola (console)
▪Struktura wejścia• Operacja (+,-,/,*,mean,sort, primals)
• W każdym wierszu liczba
▪Wyjście lista liczb (lub pojedyncza liczba)
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Napiszmy w końcu jakiś kodNapiszmy w końcu jakiś kod
+325215
18
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Napiszmy w końcu jakiś kodNapiszmy w końcu jakiś kod ▪Struktura:
ComputingControler
IProcessor
DataInput
DataOutputAddingProcessor
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Skróty klawiszoweSkróty klawiszowe▪Podstawowe skróty klawiszowe
▪Można redefiniować
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Zanim zaczniemyZanim zaczniemy▪„One to rule them all” Ctrl+3
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Zanim zaczniemyZanim zaczniemy▪Edycja kodu
• „One to rule them all” Ctrl+3
• Asystent (content assist) Ctrl + Space
• Szybkie podpowiedzi (quick fix) Ctrl + 1
• Historia Alt + Left / Right
• Skok do linii Ctrl + L
• Formatowanie Ctrl + Shift + F
• Przesuwanie linii Alt + up / down
• Maksymalizacja okna Ctrl + M
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Zanim zaczniemyZanim zaczniemy▪Przeglądanie kodu
• Otwieranie deklaracji F3
• Szybki podgląd hierarchii Ctrl + T
• Otwieranie typu Ctrl + Shift + T
• Otwieranie hierarchii typu F4
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Zanim zaczniemyZanim zaczniemy▪Wyszukiwanie:
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Dodawanie bibliotekDodawanie bibliotek▪Jak ?
• dodanie do ścieżki (ang. build path)
• właściwości projektu
— lub skrótem (Alt + Enter)
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Gdy brak źródłaGdy brak źródła▪Eksplorowanie kodu
▪brak kodu dołączonego do biblioteki▪jre zamist jdk
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Dołączanie kodu źródłowegoDołączanie kodu źródłowego▪Jak ?
• We właściwościach
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Uruchamiamy aplikacjęUruchamiamy aplikację▪Opcje uruchamiania
• W menu wybieramy Run->Open Run Dialog...
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Eksportowanie / Importowanie
▪Eclipse pozwala na eksportowanie i importowanie wielu zasobów, np:• Projektów
• Preferencji
• Punktów wstrzymań
• ...
▪Kreatory do eksportu i importu dostępne są w menu File->Export oraz File->Import
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
CVS
▪CVS (ang. Concurrent Versions System) – popularny system kontroli wersji
▪Wspomaga pracę grupową nad kodem
▪Eclipse oferuje pełne wsparcie dla CVSa• Perspektywa CVS Repository Exploring
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Łączymy się z CVS’em▪Tworzymy
połączenie z repozytorium • File->New->CVS
Repository Location
▪W widoku CVS Repositories wybieramy interesujący nas projekt i opcję z menu kontekstowego Check Out
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Synchronizacja z CVS’em▪Po wprowadzeniu zmian trzeba
zsynchronizować kod z CVS’em
▪Z menu kontekstowego wybieramy Team->Synchronize with Repository
▪W widoku Synchronize mamy podgląd jakie zmiany my wprowadziliśmy i jakie zmiany wprowadziły inne osoby
▪Możemy uaktualnić naszą wersję (opcja Update) lub wysłać nasze zmiany (opcja Commit)
▪Uwaga na konflikty!
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Nasze ustawienia CVS
▪Host: se.cs.put.poznan.pl
▪Repository path: /cvsroot
▪Connection type: extssh
▪Default Port
▪User: nazwisko.imie• np. michalik.bartosz, jurkiewicz.jakub, itp.
▪Password: abc
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Mylyn
▪Projekt rozwijany w ramach Eclipse’a• Strona domowa: http://www.eclipse.org/mylyn/
▪Pozwala na sprawne zarządzanie zadaniami
▪Tworzy i pozwala wspóldzielić kontekst każdego zadania
▪Współpracuje z zewnętrznymi narzędziami do zarządzania zadaniami, m.in.. Bugzilla, Trac, Jira
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Mylyn – repozytoria zadań▪Zadania na podstawie repozytoriów zadań
• Zadania lokalne (ang. Local Tasks)
• Zadania zdalne w zewnętrznych narzędziach
▪Repozytoria definiuje się w widoku Task Repositories
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Mylyn - zadania
▪Widoczne w widoku Task List
Nowe Zadanie
Synchronizacja zadańAktualne zadanie
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Mylyn - zadania▪Wyszukiwanie zadań przez Zapytania (ang.
Queries)▪W widoku Task Repositories opcja w menu
kontekstowym New Query
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Mylyn - zadania
Planowanie Kontekst Dane z Bugzilli
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Mylyn - kontekst▪Z każdym zadaniem związany jest kontekst –
zasoby wykorzystywane przy jego wykonywaniu• Pliki• Klasy• Metody• ...
▪Kontekst pozwala odseparować potrzebne zasoby od reszty – dostajemy większą przejrzystość
▪Kontekst może być współdzielony, np. poprzez Bugzillę
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Mylyn - kontekst▪Włączanie widoczności kontekstu
• Przycisk:
▪Przykład:
▪Na początku pusty, dostosowuje podczas pracy nad zadaniem
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
ĆwiczenieĆwiczenie 3 3▪Struktura:
ComputingControler
IProcessor
DataInput
DataOutput
AddingProcessor
YourProcessor
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Ćwiczenie 3▪Co musimy zrobić?
• Ściągnąć dwa projekty z CVS’a: —Computing4StudentsIDE1
—ComputingBaseIDE1
• Połączyć się z Bugzillą
• Dodać nowe zadanie
• Napisać swoją klasę implementującą interfejs org.ess.computations.processors.IProcessor
• Odkomentować i zmienić kod w klasie Startercontroler.addProcessor("?", new YourProcessor());
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
RefaktoryzacjeRefaktoryzacje▪Zmiana struktury kodu bez zmiany zachowania
▪Podstawowe refaktoryzacje• Extract method
• Extract interface
• Extract superclass
• Convert local variable to field
• Introduce parameter object
▪Dostępne w menu kontekstowym w edytorze lub w menu Refactor
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Lekcja HistoriiLekcja Historii▪Zamiany zgodnie z historią (ang. history replace)
▪Porównywanie z historią (ang. history compare)
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Tips & TricksTips & Tricks
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Pytania?Pytania?
Pytania?
Bartosz Michalik, Jakub Jurkiewicz Eclipse Summer School 2007
Dziękuję za uwagę!