W12 Œrodowiska i pla..

Transkrypt

W12 Œrodowiska i pla..
1
2
Środowiska i platformy programistyczne
Rys historyczny
lata 80-90: efektywność!
Cel: zwiększyć efektywność programisty
–jedno narzędzie: integracja
edytor kodu,
funkcje programistyczne (kompilacja, łączenie, śledzenie)
zarządzania projektem
–udostępnić biblioteki (np. wspomagające dostęp do funkcji systemu).
Środowiska programistyczne:
– IDE (Integrated Development Environment)
Borland Turbo Pascal i Borland C
–aplikacje konsolowe DOS, biblioteka okienek Turbo Vision)
Borland C++ for Windows
–aplikacje 16-bitowe dla Win 3.x, biblioteka OWL – Object Windows Library
3
Rys historyczny
lata 90-2000: użytkownik
Komputery i programy są dla użytkowników,
nie programistów i informatyków!
Środowiska graficzne
–dominacja Microsoft: Windows 95,
1
–dominacja Microsoft: Windows 95,
–API (Application Programming Interface) :
interfejs programowania aplikacji
–specyfikacja procedur, funkcji lub interfejsów umożliwiających komunikację z biblioteką lub systemem operacyjnym
–1993: interfejs Win32 API,
obejmuje zbiór funkcji używanych w systemie Windows.
–
interfejs programu użytkownika
–podobna obsługa i wygląd wszystkich aplikacji!
4
~1995 RAD (Rapid Application Development)
Narzędzia i techniki programowania:
–umożliwiają szybką budowę prototypów i/lub gotowych aplikacji,
–z reguły oparte o programowanie wizualne.
RAD jako rozszerzenie IDE
–programowanie
wizualne (WYSIWYG) …
zdarzeniowe,
komponentowe (rozbudowane obiektowe biblioteki komponentów)
–szybkie tworzenie aplikacji - dostępne:
formularze,
raporty,
dostęp do baz danych,
komunikacja sieciowa, …
5
Programowanie wizualne
Środowisko umożliwia budowę:
–formularzy, raportów
–metodą umieszczania na pustych formach gotowych komponentów
2
–metodą umieszczania na pustych formach gotowych komponentów
metodą drag & drop
po skompilowaniu aplikacji wyglądają identycznie (WYSIWYG)
zmiana niektórych własności komponentów
–np. wielkość, położenie, kolor, zachowanie, wzajemne położenie, …
–bez pisania kodu
Łatwe zarządzanie składowymi projektu
–konfigurowalna struktura hierarchiczna
6
Narzędzia RAD
Przykładowe narzędzia (protoplaści):
–Windows:
Delphi (1995)
Microsoft Visual Studio (1997)
–GNU/Linux
Lazarus (1999, oparte na FPC)
Kylix (Borland, 2001)
–niezależnie od platformy
Qt Designer (2000)
7
Aktualnie
Sun Microsystem Inc.
firma informatyczna, jeden z najważniejszych producentów sprzętu komputerowego, oprogramowania
komputerowego i rozwiązań sieciowych. Siedziba główna znajduje się w Santa Clara w Kalifornii,
20 kwietnia 2009 ogłoszono, że Sun zostanie przejęty przez firmę Oracle.
3
20 kwietnia 2009 ogłoszono, że Sun zostanie przejęty przez firmę Oracle.
–J2EE:
standard tworzenia aplikacji w języku programowania Java
oparty o wielowarstwową architekturę komponentową.
8
Aktualnie
Microsoft
jedna z największych na świecie firm branży komputerowej,
producent systemów operacyjnych MS-DOS, Microsoft Windows i oprogramowania biurowego Microsoft
Office,
spółka publiczna z siedzibą w Redmond w stanie Waszyngton,
założona w 1975 roku przez Billa Gatesa i Paula Allena.
–.NET
platforma programistyczna obejmująca
–środowisko uruchomieniowe (Common Language Runtime – CLR)
–biblioteki klas dostarczające standardowej funkcjonalności dla budowanych aplikacji.
9
2000: J2EE  .NET
J2EE (Java 2 Platform, Enterprise Edition)
–zależna od języka Java, lecz niezależna od platformy,
.Net
–niezależna od języka, lecz przywiązana do platformy Windows
–ale: Linux: Mono – 2004, dotGNU.
Oba rozwiązania: maszyna wirtualna
–Java Virtual Machine  Common Language Runtime
Java zasadniczo w trybie interpretowanym
.Net (C#):
–kompilacja do kodu pośredniego, dystrybucja
4
kompilacja do kodu pośredniego, dystrybucja
–komputer+środowisko CLR: kompilacja do kodu maszynowego
Obie platformy:
–model komponentowy do budowania aplikacji,
–interfejsy API: interfejsy użytkownika, dostęp do baz danych, usługi katalogowe, obiekty zdalne
10
Platforma .NET
Wykonywanie kodu:
–narzędzie zgodne z platformą .NET: kod źródłowy
do standardowego języka pośredniego (Microsoft Intermediate Language)
dystrybucja jako gotowa aplikacja
–pierwsze uruchomienie aplikacji – środowisko CLR (Common Language Runtime)
kod pośredni kompilowany na kod maszynowy procesora zainstalowanego w komputerze
11
Języki programowania
Standardowo:
–Visual C# .NET (zaprojektowany dla .NET)
– Visual Basic .NET
– Visual C++ .NET
– Visual J# .NET
Inne (prawie 40), m.in.:
–APL, Fortran, Pascal, Haskell, Scheme,
–Perl, Python, COBOL, SmallTalk, Eiffel, …
5
–Perl, Python, COBOL, SmallTalk, Eiffel, …
12
Środowisko Visual Studio
Pojęcie projektu (Project)
to logiczny „pojemnik” na wszystkie elementy, który służą do budowy aplikacji.
plik *.csproj
Pojęcie rozwiązania (Solution)
„kontener”, w którym osadzony jest projekt
zawiera projekty, pliki i metadane, które ułatwiają definiowanie rozwiązania jako spójnej całości.
przykład: baza danych + lokalny interfejs administratora + zdalny (www) interfejs użytkowników
plik *.sln
Szablon projektu
dostarcza kolekcję plików, szablon kodu, właściwości projektu
13
Możliwości Visual Studio 2008
Standard Edition
–środowisko rozwoju aplikacji internetowych i aplikacji dla systemu Windows,
–zintegrowana obsługa Visual Basic, Visual C# i Visual C++
–dla programistów indywidualnych.
Professional Edition - dodatkowo
–zespołowe projekty programistyczne oparte na technologiach internetowych
m.in. ASP.NET i AJAX
Windows Vista*, Windows Server 2008*, Microsoft Office System 2007, SQL Server 2008
Windows Mobile
6
Windows Mobile
14
Wybór typu i szablonu projektu
15
Interfejs graficzny środowiska
Zarządzanie projektem
–Toolbox, Code/Form Design, Solution Explorer, Properties
7