Platforma .NET VB.NET - PowerPoint PPT Presentation

1 / 81
About This Presentation
Title:

Platforma .NET VB.NET

Description:

Title: Tworzenie zintegrowanych aplikacji bazodanowych Author: Marysia Last modified by: marysia Created Date: 10/3/2003 5:27:13 PM Document presentation format – PowerPoint PPT presentation

Number of Views:85
Avg rating:3.0/5.0
Slides: 82
Provided by: mary336
Category:

less

Transcript and Presenter's Notes

Title: Platforma .NET VB.NET


1
Platforma .NETVB.NET
  • Maria DEMS

2
Instalacja pakietów platformy .NET
  • Kolejnosc instalacji
  • 1. Microsoft .NET Framework 1.1, plik
    dotnetfx.exe
  • Pakiet redystrybucyjny systemu Microsoft .NET
    Framework w wersji 1.1
  • http//download.microsoft.com/download/c/9/f/c9f6
    72f3-c14b-4cff-9671-d419842d792d/dotnetfx.exe
  • 2. Microsoft .NET Framework 1.1 plik
    langpack.exe Pakiet jezyka polskiego,
    http//download.microsoft.com/download/4/9/c/49c1
    7289-dfd6-4eca-87a1-a2fe5e580774/langpack.exe
  • 3. Pakiet programowania Microsoft Asp.NET Web
    Matrix Project, plik WebMatrix.msi
  • http//www.asp.net/webmatrix/default.aspx

3
Ogólna charakterystyka platformy .NET
  • Platforma .NET jest calkowicie nowym modelem
    budowania systemów w rodzinie systemów
    operacyjnych Windows i w przyszlosci innych
    systemów Charakteryzuje sie
  • Pelna interoperacyjnoscia z dotychczas napisanym
    kodem - tzn. .NET nie odcina sie od kodu, który
    powstal dotychczas mozna w latwy sposób
    wykorzystywac zewnetrzne biblioteki jak i
    istniejace serwery COM i na odwrót kod
    "niezarzadzany" (unmanaged code - kod pisany w
    technologii innej niz .NET Framework) moze
    korzystac z bibliotek napisanych w kodze
    zarzadzanym.

4
Ogólna charakterystyka platformy .NET
  • Integracja jezykowa - .NET Framework wprowadza
  • skrosne miedzyjezykowe dziedziczenie,
  • miedzyjezykowa obsluge.
  • Mozna tworzyc program, którego poszczególne
    moduly beda tworzone w róznych jezykach platformy
    .NET (np. w jednym projekcie mozna wykorzystac
    VB.NET, C oraz J).
  • Posiada wspólny mechanizm wykonawczy - czyli
    wspólna warstwe, do której kompilowane sa
    wszystkie jezyki operujace na platformie .NET.
    Jednym z elementów tego mechanizmu jest dokladnie
    sprecyzowany system typów, wspólny dla wszystkich
    jezyków obslugiwanych przez .NET. 

5
Ogólna charakterystyka platformy .NET
  • Posiada biblioteke klas podstawowych - ukrywa ona
    nieprzyjazne API udostepniajac klasy, które mozna
    bezposrednio wykorzystywac we wszystkich jezykach
    platformy .NET. Ulatwia ona m.in.
  • Dostep do danych,
  • Tworzenie GUI (Graphical User Interface),
  • Obsluge plików,
  • Obsluge watków,
  • Obsluge zabezpieczen,
  • Obsluge XML/SOAP,
  • Debuggowanie.

6
Ogólna charakterystyka platformy .NET
  • Posiada uproszczony model projektowania -
    wyeliminowanie problemów, jakie nioslo ze soba
    programowanie w technologii COM nie ma juz
    koniecznosci rejestracji jednostki wykonawczej w
    rejestrze systemowym - mozliwe jest
    wspólistnienie róznych wersji tej samej
    biblioteki DLL na jednym komputerze.
  • Obecnie istnieje równiez platforma .NET Compact
    Framework docelowo skierowana na urzadzenia
    przenosne.

7
Ogólna charakterystyka platformy .NET
  • Platforma .NET jest to nowej generacji srodowisko
    przeznaczone do tworzenia oraz instalacji
    oprogramowania internetowego oraz aplikacji
    Windows. Platforme tworza trzy podstawowe
    elementy
  • wspólne srodowisko uruchomieniowe CLR,
    umozliwiajace wykonywanie aplikacji napisanych w
    dowolnym jezyku programowania,
  • zbiór klas tego srodowiska,
  • nowa wersja ASP.NET - dynamiczna technologia
    internetowa dzialajaca po stronie serwera.
  • Produkty .NET obejmujace zintegrowane w ramach
    tego srodowiska glówne produkty Microsoftu, takie
    jak Windows, Visual Studio oraz pakiet Office.

8
Ogólna charakterystyka platformy .NET
  • Integracja produktów .NET oparta jest na
  • XML- jezyku opisu danych,
  • SOAP - protokole transmisji danych miedzy
    produktami.
  • Uslugi .NET, umozliwiaja wspólprace niezaleznych
    zespolów programistów tworzacych aplikacje oparte
    na platformie .NET.
  • Jako kolejne produkty przewidywane sa uslugi
    skladowe, zapewniajace obsluge tozsamosci,
    powiadamianie oraz komunikacje (zintegrowana
    obsluga poczty elektronicznej, poczty glosowej i
    faksu), personalizacje, przechowywanie w formacie
    XML, opcje kalendarza, klasyfikacje katalogowa i
    wyszukiwanie informacji oraz dynamiczna dostawe
    produktów platformy.

9
Ogólna charakterystyka platformy .NET
  • Programy napisane w Visual Studio .NET
    uruchamiane sa w wirtualnej maszynie .NET
    Framework, a wiec sa niezalezne od systemu
    operacyjnego.
  • Platforme .NET Framework dla Windows 2000,
    Windows 98, Windows Me, mozna pobrac ze strony
  • http//msdn.microsoft.com/netframework/downloads
  • Platforma .NET Framework dla Windows 2003 jest
    instalowana automatycznie podczas instalacji
    systemu.

10
Schemat platformy .NET
11
Ogólna charakterystyka platformy .NET
  • Rdzen platformy stanowi .NET Framework
    zawierajacy
  • wlasciwa platforme jezykowa i wykonawcza CLR
  • obszerne biblioteki klas bazowych, zapewniajace
    wysoki poziom wbudowanej funkcjonalnosci.
  • .NET Framework korzysta ze standardu XML oraz
    protokolu SOAP.
  • .NET Enterprise Server to rodzina produktów
    serwerowych, zastepujacych serwery MS.
  • Standardowym mechanizmem komunikacji komponentów
    platformy jest COM.
  • Platforma .NET oferuje rozbudowane narzedzia do
    generowania aplikacji internetowych
    korzystajacych z baz danych (np.. sklep
    internetowy), takie jak np. Web Services,
    ASP.NET, ADO.NET.

12
Glówne komponenty platformy .NET
  • Architektura .NET sklada sie z trzech warstw

Interfejsy uzytkownika i programowe
ASP.NET
WinForms, Web Forms, Web Service
Standardowy system uslug nowej generacji
XML
ADO.NET
Klasy bazowe platformy .NET
Srodowisko uruchomieniowe CLR
zarzadzanie pamiecia
wspólny system typów
monitorowanie
Taka Architektura zapewnia integracje
technologii prezentacji, komponentów oraz danych.

13
Srodowisko uruchomieniowe CLR
Glówne elementy srodowiska CLR

Wspólny system typów
Bezpieczenstwo
Kompilacja kodu IL
Obsluga wykonywania (tradycyjne funkcje
srodowiska uruchomieniowego)
Zarzadzanie stosem i pamiecia, opóznianie pamieci
Ladowanie klas i uklad pamieci
  • Jest to srodowisko uruchamiania aplikacji,
    skompilowa-nych na wspólny jezyk posredni MSIL
    lub IL

14
Glówne cele srodowiska CLR
  • Latwiejsze i szybsze tworzenie oprogramowania.
  • Automatyczna obsluga procesów udrazniania,
    takich jak zarzadzanie pamiecia i komunikacja
    procesów. Proces udrazniania ulatwilo
    wprowadzenie metadanych generowanych przez
    kompilator i automatycznie przechowywane w
    plikach EXE lub DLL.
  • Do metadanych na platformie .NET zaliczamy
  • zlozenia, takie jak
  • publiczny klucz uwierzytelnienia,
  • typy eksportowane przez zlozenie,
  • inne zlozenia, na których oparte jest zlozenie,
  • zezwolenie bezpieczenstwa potrzebne do
    uruchomienia.

15
Glówne cele srodowiska CLR
  • klasy bazowe oraz interfejsy uzywane przez
    zlozenia,
  • atrybuty definiowane przez uzytkownika i przez
    kompilator
  • Metadane sa wykorzystywane do obslugi przez CLR
    szerokiej grupy narzedzi, takich jak
  • narzedzia projektowania,
  • narzedzia testowania,
  • narzedzia profilowania,
  • generatory proxy,
  • inne kompilatory - narzedzia najczesciej uzywane,
  • przegladarki obiektów i typów,
  • generatory schematów.

16
Glówne cele srodowiska CLR
  • Proste i bezpieczne wdrazanie aplikacji
  • aplikacje tworzone w srodowisku .NET mozna
    instalowac przez skopiowanie plików na dysk lub
    z plyty CD i uruchomienie aplikacji, gdyz
    kompilatory .NET wstawiaja identyfikatory w
    kompilowane moduly, a CLR automatycznie zarzadza
    tymi identyfikatorami.
  • istnieje mozliwosc wykonywania jednoczesnie kilku
    wersji tego samego komponentu, którymi CRL
    zarzadza i wybiera zdefiniowana wersje.
  • Aplikacje tworzone w .NET instaluja jedynie
    wlasna logike bez srodowiska uruchomieniowego lub
    np. modulów obslugi ADO lub XML).

17
Glówne cele srodowiska CLR
  • Skalowalnosc, która glównie dotyczy
  • funkcji wykonawczych dzialajacych na poziomie
    systemu, wykorzystywanych do tworzenia aplikacji
    w srodowisku .NET,
  • zarzadzania pamiecia i przetwarzania pamiec w
    srodowisku CLR jest automatycznie konfigurowana i
    optymalizowana,
  • jezyków programowaniawszystkie jezyki
    kompilowane sa na standardowy kod bajtowy jezyka
    posredniego IL, wiec praktycznie w srodowisku CLR
    nie róznia sie wydajnoscia,
  • platformy sprzetowej (od palmtopów do
    rozbudowanych systemów sieciowych)

18
Glówne cele srodowiska CLR
  • Integracja i obsluga róznorodnych jezyków
  • W srodowisku .NET Framework przy pomocy jednego
    jezyka mozna tworzyc podklasy klasy
    zaimplemento-wanej w innym jezyku, np. klasy
    napisane w VB moga dziedziczyc z klas bazowych
    napisanych w C lub COBOL-u.
  • Integracje jezyków umozliwia wspólny system
    typów, w którym wszystkie wspólnie uzywane typy
    danych, nawet bazowe, sa implementowane jako
    obiekty, oraz wspólna biblioteka typów.
  • Wykorzystanie przestrzeni nazw do organizowania
    bibliotek i hierarchii obiektów, uproszczenia
    uzywania referencji do obiektów i okreslania
    zakresu identyfikatorów obiektów.

19
Wdrazanie i uruchamianie programów w srodowisku
CLR
  • Aplikacja zbudowana jest z jednego lub kilku
    zlozen, a takze moze zawierac wlasciwe dla niej
    dane lub pliki. Zlozenie jest jednostka wdrazania
    aplikacji. Moze sie ono skladac z jednego lub
    kilku plików.
  • Moduly kodu zródlowego zlozenia sa kompilowane na
    IL - jezyk posredni srodowiska CLR, a nastepnie
    na kod wykonywalny, z wykorzystaniem mechanizmu
    kompilacji na zadanie JIT (Just-In-Time).
  • W srodowisku .NET kompilowane sa równiez skrypty
    ASP czy VBScript, które podczas pierwszego uzycia
    przetwarzane sa na kod IL. Kompilacja skryptów
    jest przeprowadzana automatycznie i na biezaco.

20
Biblioteka klas bazowych BCL
Warstwa srodkowa platformy .NET obejmuje uslugi,
modele obiektów danych zawierajace obiekty ADO
oraz ADO.NET , XML oraz klasy bazowe platformy
.NET.
  • Wszystkie jezyki programowania platformy .NET
    korzystaja z tej samej biblioteki klas bazowych
    BCL (Base Code Library)
  • Biblioteka BCL jest biblioteka klas jezyka MSIL.
  • Klasy bazowe zostaly podzielone miedzy logiczne,
    hierarchicznie uporzadkowane przestrzenie nazw
    (Namespaces)
  • Podstawowa przestrzenia nazw jest przestrzen
    System, zawierajace wszystkie definicje i klasy
    bazowe

21
Przestrzen nazw System
  • Przestrzen nazw System - zawiera podstawowe klasy
    oraz klasy bazowe, które definiuja
  • najczesciej uzywane typy danych,
  • zdarzenia i procedury obslugi zdarzen,
  • interfejsy, atrybuty i wyjatki.
  • Inne klasy w przestrzeni nazw System udostepniaja
    uslugi zwiazane z
  • konwersja typów danych,
  • manipulowaniem parametrami metod,
  • obliczeniami matematycznymi,
  • zdalnym i lokalnym wywolywanie programów
  • zarzadzaniem srodowiskiem aplikacji,
  • nadzorowaniem kodu.

22
Przestrzenie nazw
  • Kolejne w hierarchii sa przestrzenie niskiego
    poziomu, takie jak
  • System Collection - zawiera klasy zawierajace
    definicje sposobu porzadkowania danych
  • System.Configuration - zawiera klasy i interfejsy
    które pozwalaja na programowy dostep do ustawien
    konfiguracyjnych .NET Framework i obsluge bledów
    w plikach konfiguracyjnych (pliki .config).

23
Przestrzen nazw System
  • System.Data - zawiera glównie klasy skladajace
    sie na architekture dostepu do danych ADO .NET.
    Architektura ta umozliwia tworzenie komponentów,
    które pozwalaja na wydajne zarzadzanie danymi
    pochodzacymi z róznych zródel.
  • System.Data.Common - zawiera klasy wspóldzielone
    przez dostawców danych .NET Framework.
  • System.Data.ODBC - zawiera klasy skladajace sie
    na .NET Framework Data Provider for ODBC, czyli
    dostawce danych dla interfejsu ODBC
  • System.Data.OleDB - zawiera klasy skladajace sie
    na .NET Framework Data Provider for OleDB

24
Przestrzen nazw System
  • System.Data.SqlClient - zawiera klasy skladajace
    sie na .NET Framework Data Provider for SQL
    Server, czyli dostawce danych dla serwera MS SQL
    Server.
  • System.Data.SqlTypes - udostepnia klasy
    reprezentujace rodzime typy danych serwera
    Microsoft SQL Server.
  • System.Diagnostics udostepnia klasy sluzace do
    sledzenia wykonania kodu i usuwania bledów
    (np..Debug)
  • System.DirectoryServices umozliwia wygodny
    dostep do Active Directory z poziomu kodu
    zarzadzanego

25
Przestrzen nazw System
  • System.Drawing - umozliwia dostep do podstawowej
    funkcjonalnosci graficznej biblioteki systemowej
    GDI.
  • System.Drawing.Drawing2D - udostepnia
    zaawansowana funkcjonalnosc zwiazana z grafika 2D
    i grafika wektorowa.
  • System.Drawing.Text - udostepnia zaawansowana
    funkcjonalnosc zwiazana z typografia
    i wykorzystaniem kolekcji czcionek
  • System.IO - zawiera typy umozliwiajace
    synchroniczny i asynchroniczny odczyt i zapis
    strumieni danych i plików.

26
Przestrzen nazw System
  • System.Net - udostepnia proste interfejsy
    programistyczne dla wielu protokolów uzywanych we
    wspólczesnych sieciach.
  • System.Runtime.InteropServices - Udostepnia
    róznorodne klasy obslugujace wspólprace z modelem
    COM i wywolywanie uslug systemowych.
  • System.Runtime.Serialization - Zawiera klasy
    które moga byc uzywane do serializowania
    i deserializowania obiektów. Proces serializacji
    polega na konwersji obiektu lub calego grafu
    obiektów do postaci liniowej sekwencji bajtów,
    która mozna nastepnie zachowac lub przeslac do
    innej lokalizacji. Deserializacja jest procesem
    odwrotnym.

27
Przestrzen nazw System
  • System.Net.Sockets - Udostepnia zarzadzana
    implementacje interfejsu Windows Sockets
  • System.Security - Umozliwia dostep do podsystemu
    zabezpieczen .NET Framework.
  • System.Security.Cryptography - Udostepnia uslugi
    kryptograficzne, w tym bezpieczne kodowanie
    i dekodowanie danych, tworzenie skrótów
    jednokierunkowych, generowanie liczb losowych
    i uwierzytelnianie komunikatów.
  • System.Text.RegularExpressions - Zawiera klasy
    umozliwiajace manipulacje na wyrazeniach
    regularnych.

28
Przestrzen nazw System
  • System.Threading - Zawiera klasy i interfejsy
    umozliwiajace programowanie wielowatkowe.
  • System.Timers - Zawiera komponent Timer
    umozliwiajacy wywolywanie zdarzenia w okreslonych
    odstepach czasu.
  • System.Web - Zawiera klasy i interfejsy
    umozliwiajace komunikacje przegladarki
    internetowej z  serwerem, a ponadto manipulacje
    plikami cookie, transfer plików, obsluge wyjatków
    i zarzadzanie buforem wyjsciowym.
  • System.Web.Caching - Zawiera klasy pozwalajace na
    buforowanie czesto uzywanych danych po stronie
    serwera.

29
Przestrzen nazw System
  • System.Web.Configuration - Zawiera klasy
    pozwalajace na odczyt i modyfikacje konfiguracji
    ASP .NET
  • System.Web.Mail - Zawiera klasy umozliwiajace
    tworzenie i wysylanie wiadomosci email za
    posrednictwem komponentu CDOSYS Messaging.
  • System.Web.Security - Zawiera klasy uzywane do
    implementowania zabezpieczen ASP .NET
    w aplikacjach sieci Web.
  • System.Web.Services - Zawiera klasy umozliwiajace
    tworzenie uslug webowych XML Web Serwices oraz
    klientów tych uslug.

30
Przestrzen nazw System
  • System.Web.SessionState - Zawiera klasy
    i interfejsy umozliwiajace przechowywanie danych
    specyficznych dla poszczególnych klientów
    aplikacji ASP .NET. Informacje o stanie sesji
    daja uzytkownikowi wrazenie stalego polaczenia z
    aplikacja. Informacje o stanie sesji moga byc
    przechowywane w lokalnej pamieci procesu na
    serwerze Web lub np. w  zewnetrznej bazie danych
    SQL Server.
  • System.Web.UI - Zawiera klasy umozliwiajace
    tworzenie kontrolek HTML dzialajacych po stronie
    serwera. Kontrolki HTML sa mapowane bezposrednio
    na tagi HTML interpretowane przez przegladarki
    internetowe i pozwalaja na programowe
    manipulowanie elementami HTML na stronie
    internetowej.

31
Przestrzen nazw System
  • System.Web.UI.WebControls - Zawiera klasy
    umozliwiajace umieszczanie na stronie
    internetowej kontrolek webowych dzialajacych po
    stronie serwera, takich jak elementy formularzy
    (np. przyciski i pola tekstowe), oraz takich jak
    kalendarz czy DataGrid. Moga byc one manipulowane
    za posrednictwem kodu dzialajacego po stronie
    serwera, a ich model obiektowy niekoniecznie musi
    przekladac sie na kod HTML.
  • System.Windows.Forms - Zawiera klasy
    umozliwiajace tworzenie funkcjonalnych aplikacji
    dzialajacych pod kontrola systemu Microsoft
    Windows.

32
Przestrzenie nazw
  • System.Math - biblioteka funkcji matematycznych
    (np..Sqrt, Cos, Log, Min)
  • System.Reflection - funkcje analizy metadanych
    (np..Assembly, Module)
  • System.Xml - Zawiera klasy umozliwiajace
    przetwarzanie dokumentów XML.

33
Przestrzenie nazw
  • Microsoft.Csharp - zawiera klasy obslugujace
    kompilacje i generowanie kodu przy uzyciu jezyka
    programowania C.
  • Microsoft.Jscript - zawiera klasy obslugujace
    kompilacje i generowanie kodu przy uzyciu jezyka
    programowania JScript.
  • Microsoft.VisualBasic - zawiera klasy obslugujace
    kompilacje i generowanie kodu przy uzyciu jezyka
    programowania Visual Basic .NET.

34
Interfejsy uzytkownika
Warstwa górna platformy .NET umozliwia trzy
sposoby wyswietlania i zarzadzania interfejsem.
Sa to formularze Windows, formularze Web oraz
aplikacje konsolowe.
  • Formularze Widows (WinForms) oparte sa na klasach
    Windows Foundation Classes (WFC), utworzonych dla
    J, bedace czescia klas srodowiskowych
    przestrzeni nazw System.Windows.Forms.
  • WinForms oparty jest na mechanizmie tworzenia
    formularzy Visual Basica.
  • W VisualStudio.NET do tworzenia formularzy sluzy
    wizualny kreator EWinForms.

35
Interfejsy uzytkownika
  • Formularze Web (WebForms) stanowia nowa generacje
    narzedzi tworzenia interfejsów WWW.
  • Podstawowe narzedzia WebForms to
  • szablon zawierajacy kod HTML, z informacjami na
    temat sposobu wyswietlania wszystkich elementów
    interfejsu,
  • komponent zawierajacy informacje o strukturze
    logicznej interfejsu.
  • Formularze Web skladaja sie z dwóch czesci
  • pierwsza zawiera informacje o kontrolkach i ich
    rozmieszeniu,
  • druga zawiera kod, przy czym zdarzenia w
    kontrolkach uruchamiaja schematy zdarzen w kodzie.

36
Interfejsy uzytkownika
  • Kontrolki w Formularzach Web obslugiwane sa na
    serwerze, ale wynik ich dzialania dostepny jest
    na komputerze klienta.
  • Dla elementów interfejsu uzytkownika, formularza
    Web lub strony ASP na serwerze tworzony jest
    serwer posredniczacy proxy.
  • Kontrolka dzialajaca po stronie serwera sprawdza
    lokalna strukture logiczna i tworzy wlasny
    interfejs uzytkownika w postaci kodu HTML,
    rozsylany we wszystkich stronach zawierajacych
    kontrolki.
  • Kontrolki dzialajace na serwerze moga zarzadzac
    wlasnym stanem.

37
Interfejsy uzytkownika
  • Formularze Web wysylaja wraz ze strona
    skompresowana informacje o stanie do przegladarki
    klienta, a kontrolki po stronie serwera ja
    przechwytuja i wykorzystuja przy generowaniu
    strony.
  • W srodowisku .NET Framework dostepny jest
    interfejs do tworzenia aplikacji konsolowych.
  • Do interfejsu konsolowego moga byc zapisywane
    zintegrowane komponenty zawarte w procesach
    przetwarzajacych w trybie wsadowym.
  • Interfejs konsolowy, podobnie jak formularze
    Windows i formularze Web dostepny jest dla
    aplikacji napisanej w dowolnym jezyku platformy
    .NET.

38
Interfejsy programowe
  • Interfejsem programowym sa uslugi Web,
    umozliwiajace tworzenie aplikacji
    wykorzystujacych rozproszone lokalne i zdalne
    zasoby, integrowane w spójne rozwiazanie.
  • Na platformie .NET uslugi Web sa implementowane
    jako czesc technologii ASP .NET, która obsluguje
    wszystkie interfejsy WWW. Technologia ta pozwala
    integrowac w jednolite aplikacje rozproszone
    uslugi internetowe.
  • Integracje na platformie .NET zapewnia w znacznym
    stopniu jezyk XML.
  • W postaci XML sa najczesciej przechowywane
    metadane.
  • Technologia XML jest wykorzystywana w ADO.NET,
    umozliwiajac zdalne zarzadzanie i reprezentacje
    danych.

39
Interfejsy programowe
  • Platforma .NET umozliwia sprawne poslugiwanie sie
    komponentami dotychczasowej technologii
    oprogramowania COM/COM, tak jakby byly one
    komponentami .NET. Translacja interfejsu
    przebiega automatycznie.
  • Pierwszym komponentem platformy .NET jest Visual
    Studio .NET - kolejna wersja Visual Studio.
  • Visual Studio .NET zawiera jezyki Visual Basic,
    Visual C, C (który zastapil J).
  • Wszystkie jezyki Visual Studio.NET uzywaja
    identycznego zintegrowanego srodowiska
    programistycznego IDE (Integrated Development
    Environment).

40
Instalacja Visual Studio .NET
  • Przy instalacji Visual Studio .NET zostana
    zainstalowane komponenty

41
  • Nastepny krok to opcje instalacji.
  • Do tworzenia ASP.NET potrzebne bedzie gtgtgtgt

42
  • Visual Basic .NET lub C .NET
  • (oba jezyki maja ta mozliwosc)
  • .NET Framework SDK ( niezbedne)

43
Strona startowa Visual Studio .NET
44
Start Page in Visual Studio .NET.
45
Szablony projektów
  • Po wybraniu opcji New Project, otworzy sie okno
    New Project, zawierajace szablony projektów.

Windows Application
46
Szablony projektów
  • Najwaznieksze szablony projektów dostepne w
    Visual Studio.NET sa nastepujace
  • Windows Application - szablon standardowego
    programu typu EXE, komunikujacego sie z
    uzytkownikiem za pomoca interfejsu graficznego,
  • Class Library - biblioteka klas zawierajaca pliki
    DLL,
  • Windows Control Library - szablon programu typu
    OCX, pozwalajacy tworzyc kontrolkiX,
  • ASP .NET Web Application - szablon programu typu
    DLL, pozwalajacy tworzyc programy uruchamiane w
    przegladarkach internetowych zdalnych
    uzytkowników.

47
Szablony projektów
  • WebApplication ASP .NET programowana z
    wykorzystaniem Visual Basic .NET

48
Szablony projektów
  • Console Application - szablon programu typu EXE,
    dzialajacego w wierszu polecenia systemu Windows,
  • Windows Service - szablon programu typu EXE,
    uruchamianego jako usluga systemu Windows.
  • W celu utworzenia nowego projektu nalezy wybrac
    jego typ, a nastepnie szablon oraz podac nazwe i
    okreslic (lub zaakceptowac domyslna) lokalizacje
    projektu.
  • Okno nowo utworzonego projektu ma podobna postac
    zarówno dla Windows Application jak i dla Web
    Application i zawiera okienka
  • Solution Explorer umozliwiajace zarzadzanie
    plikami,
  • Properties umozliwiajace ustawienie wlasnosci.

49
Design view of Visual Studio .NET.
50
  • Projekt, pliki i dokument

51
(No Transcript)
52
IDE toolbar.
  • Toolbar
  • Contains icons that represent commonly used
    commands
  • Down arrow indicates additional commands

53
Tool-tip demonstration.
  • Tool tip
  • Appears when mouse pointer held over icon
  • Displays description of icon

54
Toolbar icons for three Visual Studio .NET IDE
windows.
  • Toolbar icons
  • Contains commands for opening
  • Solution Explorer window
  • Properties window
  • Toolbox

55
Toolbox displaying the contents of the Windows
Forms tab.
56
Properties window displaying a Forms properties.
57
  • Solution Explorer
  • Klikniecie na któryms elemencie w Solution
    Explorer powoduje pojawienie sie okna Properties
    pokazujace szczególowe informacje o elemencie.

58
Displaying a hidden window with Auto Hide
enabled.
59
Hiding the Toolbox by moving the mouse pointer
outside of Toolboxs area.
60
Solution Explorer
  • Po rozwinieciu w oknie Solution Explorer folderu
    References, mozna zobaczyc liste automatycznie
    ustawionych przestrzeni nazw.
  • Projekt typu Windows Application zawiera domyslny
    formularz Form1.vb, natomiast projekt typu Web
    Application zawiera domyslny formularz
    WebForm.aspx
  • Po kliknieciu w oknie Solution Explorer prawym
    klawiszem formularza mozna z menu kontekstowego
    wybrac View Code (okienko edytora kodu) lub View
    Designer (projekt formularza).

61
Atrybuty projektu
  • Lista atrybutów projektu jest podzielona na dwie
    grupy
  • Common Properties
  • Configuration Properties
  • W sekcji General obu typów atrybutów mozna
    okreslic nazwe programu i obiekt startowy.
  • Typ programu mozna zmieniac w ograniczonym
    zakresie nie mozna zmienic programu tworzonego
    przy pomocy szablonu Windows Application na
    program typu Web Application.
  • Otwierajac projekt nalezy wskazac plik z
    rozszerzeniem .sln

62
Dodawanie kontrolek
  • Okno Toolbox zawiera wiele zakladek (np.. Web
    Forms, Data, HTML)
  • Kazda zakladka rozwija sie po kliknieciu,
  • Zakladki zawieraja kontrolki takie jak Label
    (etykieta), Text Box (pole tekstowe), itp.
  • Kontrolki przeciagamy na dokument, a nastepnie
    bedziemy mogli zmieniac ich wlasciwosci.

63
Kontrolki Data
  • Obsluguja wyswietlanie i wysylanie danych z i do
    bazy.
  • Po przeciagnieciu usta-wiamy ich wlasciwosci w
    oknie Properties
  • Solution Explorer zawiera kontekstowa pomoc w
    oknie Dynamic Help

64
Jezyki plarformy .NET
  • Jezyki uzywane na platformie .NET musza byc
    zgodne ze specyfikacja jezyków CLS (Commin
    Language Specyfication).
  • Rozróznia sie trzy kategorie zgodnosci jezyków
    platformy .NET
  • zgodnosc produkcji - wymienne komponenty jezyka,
  • zgodnosc uzytkowania - wymienne klasy,
  • rozszerzalnosc, w wyniku dziedziczenia.
  • Wszystkie jezyki Visual Studio musza podlegac
    konwersji przy przenoszeniu na platforme .NET ze
    wzgledu na pewne róznice skladniowe.

65
Srodowisko CLR
  • Srodowisko uruchomieniowe CLR (Common Language
    Runtime) odpowiada za zarzadzanie i wykonanie
    kodu skompilowanego do platformy .NET. Umozliwia
    ono
  • plynna integracje kodów napisanych w róznych
    jezykach,
  • zadeklarowanie odpowiedniego poziomu
    bezpieczenstwa dla kodu zarzadzalnego,
    sterujacego zezwoleniami,
  • obsluge kilku wersji równoczesnie oraz wdrazania,
  • profilowanie i testowanie kodu zarzadzalnego,
  • automatyczne zarzadzanie pamiecia,
  • kompilacje kodu zarzadzalnego na kod posredni IL,
    a nastepnie na kod wykonywalny.
  • CRL moze byc przeniesione na inne platformy
    sprzetowe i do innych systemów operacyjnych.

66
Struktura aplikacji .NET
  • Aplikacja .NET sklada sie z trzech podstawowych
    elementów

Zlozenie
Manifest
Modul
Metadata
Jezyk posredni IL
TYP metody, wlasciwosci, pola
TYP metody, wlasciwosci, pola
67
Struktura aplikacji .NET
  • Zlozenie (assembly) - jest to podstawowa
    jednostka wdrozeniowa kodu zarzadzalnego. Sklada
    sie ono z
  • manifestu - zawierajacego
  • informacje o tozsamosci zlozenia (nazwa, nr.
    wersji, klucz publiczny),
  • deklaratywne zadania potwierdzenia bezpieczenstwa
    (wymagane, opcjonalne i odrzucone),
  • liste powiazanych zlozen,
  • liste innych uzywanych typów i zasobów.
  • Manifest przechowywany jest w oddzielnym pliku
    lub w jednym z modulów
  • jednego lub kilku modulów.

68
Struktura aplikacji .NET
  • Moduly - sa to pliki DLL lub EXE Windows PE
    (Portable Executable). Modul zawiera
  • kod jezyka posredniego IL,
  • metadane powiazane z kodem IL, dostarczajace
    informacji na temat typów deklarowanych w IL,
  • manifest zlozenia.
  • Typy - sa to szablony uzywane do opisu
    hermetyzacji danych oraz powiazanego zbioru
    zachowan. Zakres typów jest ustawiany na poziomie
    zlozen.
  • Platforma .NET wprowadza wspólny system typów CTS
  • Typ ma wlasciwosci, metody oraz pola, stanowiace
    dane elementów w obrebie typu.

69
Struktura aplikacji .NET
  • Metadane - sa to informacje pozwalajace
    komponentom na samoopisanie sie.
  • Okreslaja one takie aspekty komponentu jak klasy,
    metody, pola oraz samo zlozenie.
  • W srodowisku CRL metadane pozwalaja na analize i
    weryfikacje zlozenia przed jego uruchomieniem
    oraz na porzadkowanie pamieci podczas wykonywania
    kodu zarzadzalnego i innych procesów.
  • W modelach COM/COM metadane przechowywane sa
    oddzielnie od czesci wykonywanej aplikacji,
    natomiast metadane opisujace komponent .NET sa
    przechowywane w zawierajacym go pliku, co
    umozliwia wykorzystanie komponentów bezposrednio
    po skopiowaniu do systemu, bez dodatkowej
    rejestracji.

70
Struktura aplikacji .NET
  • Dostep do wszystkich metadanych powiazanych z
    kodem zarzadzalnym jest mozliwy dzieki
    interfejsowi Reflection API.
  • Interfejs Reflection API pozwala analizowac
    metadane powiazane z biezaco wykonywanym
    zlozeniem.
  • Dostep do metadanych powiazanych z typem
    uzyskujemy za pomoca obiektu Type, zwracanege
    przez metode GetType znajdujaca sie w
    System.Object.
  • Metoda Type.Method umozliwia nawigacje w góre
    hierarchii obiektów.
  • Dostep do metadanych powiazanych z poszczególnymi
    polami, wlasciwosciami oraz metodami umozliwiaja
    metody Type.GetFields, Type.GetMethods oraz
    Type.GetProperties.

71
Wspólny system typów CTS
  • Wspólny system typów CTS umozliwia kazdemu
    jezykowi programowania korzystanie z podstawowego
    systemu typów oraz mechanizmów rozszerzania tych
    typów.
  • Rozrózniamy dwa rodzaje typów CTS
  • typy refernecyjne, bedace odpowiednikami klas,
  • typy wartosci odpowiadajace strukturom.
  • Kazdy typ obslugiwany przez CTS jest wyprowadzany
    z przestrzeni nazw System.Object i obsluguje
    nastepujace metody
  • Boolean Equals (Object) - sprawdza równowaznosc z
    innym obiektem

72
Wspólny system typów CTS
  • Int32 GetHashCode ( ) - generuje liczbe
    odpowiadajaca wartosci obiektu,
  • Type GetType - pozwala uzyc obiektu Type w celu
    uzyskania dostepu do metadanych powiazanych z
    typem,
  • StringToString - domyslnie, zwraca pelna nazwe
    klasy obiektu.
  • Podstawowe typy wartosci (tzw. typy proste -
    primitive types) obslugiwane na platformie .NET
    dostepne sa w glównej przestrzeni nazw System. Sa
    to
  • Boolean - typ logiczny,
  • Byte - jeden bajt bez znaku (0 - 255),
  • Sbyte - 8-mio bitowa wartosc liczby calkowitej ze
    znakiem (-128 do 127),

73
Wspólny system typów CTS
  • GUID - unifikatowy identyfikator (128 bitowa
    liczba calkowita),
  • Int16, Int32, Int64 - odpowiednio 16-, 32,
    64-bitowa wartosc liczby calkowitej ze znakiem,
  • Decimal - 28 cyfr znaczacych ze znakiem
  • Double - 64-bitowa liczba zmiennoprzecinkowa ze
    znakiem,
  • Single - 4-bajtowa liczba zmiennoprzecinkowa ze
    znakiem,
  • DateTime - wartosc daty i czasu,
  • TimeSpan - czas ze znakiem,
  • Char - wartosc znaku Unicode.

74
Wspólny system typów CTS
  • Przestrzen nazw System.XML zawiera typy potrzebne
    do tworzenia dokumentów XML.
  • Przynaleznosc typu do kategorii typów wartosci
    lub typów referencyjnych zalezy od sposobu
    traktowania jego instancji przez srodowisko CRL
  • instancje typów wartosci sa tworzone na stosie
    dwie zmienne typu wartosci sa sobie równe, jesli
    ich stany sa równe
  • instancje typów referencyjnych sa tworzone na
    stercie zarzadzalnej - sa one inicjalizowane
    wartoscia NULL. Dwie zmienne typu referencyjnego
    sa sobie równe, jesli obie stanowia odwolanie do
    tego samego obiektu.

75
Tworzenie wlasnych typów
  • Definiowanie typów referencyjnych na platformie
    .NET polega na deklarowaniu klas.
  • Instancje obiektów typów referencyjnych tworzymy
    przy pomocy operatora new i inicjalizujemy za
    pomoca konstruktora lub w instrukcji przypisania.
  • Definiowanie typów wartosci na platformie .NET
    polega na deklarowaniu struktur.
  • Wszystkie typy wartosci sa pochodna metody
    System. ValueType, która przeslania metody
    Object.Equals oraz Object.GetHashCode.
  • Modyfikowanie i dostep do danych hermetyzowanych
    przez instancje typu wartosci jest mozliwe tylko
    przez odpowiadajaca im zmienna.

76
Pakowanie typów wartosci
  • Pakowanie typów wartosci (boxing) ma miejsce gdy
    instancja typu wartosci jest to konwertowana na
    instancje typu referencyjnego, natomiast
    odpakowanie typów wartosci ( unboxing) jest
    procesem odwrotnym.
  • Pakowanie typów wartosci moze byc formalne i
    nieformalne.
  • Formalne pakowanie instancji typów wartosci
    stosujemy, gdy zachodzi koniecznosc przekazania
    jej do metod wymagajacych typu referencyjnego.

77
Atrybuty
  • Atrybuty sluza do okreslania dodatkowych
    informacji o takich elementach jak zlozenia,
    klasy, metody oraz wlasciwosci. Moga one
  • miec znaczenie czysto informacyjne,
  • byc wykorzystane do zazadania okreslonego
    zachowania podczas wykonywania programu,
  • do wywolania okreslonego zachowania innej
    aplikacji.
  • Na platformie .NET mozna tworzyc wlasne atrybuty
    metadanych opisujacych komponenty.
  • Atrybuty moga byc stosowane do metod i do klas.
  • Przy tworzeniu atrybutu nalezy zdefiniowac klase
    atrybutu, bedaca pochodna klasy System.Attribute,
    która nie powinna byc rozszerzalna i musi miec
    przynajmniej jeden konstruktor.

78
Dane zarzadzalne
  • Jedna z najwazniejszych mozliwosci srodowiska CLR
    jest zarzadzanie danymi aplikacji, alokowanymi na
    stercie zarzadzalnej.
  • Sterta zarzadzalna jest to obszar pamieci
    alokowany i zarzadzany przez srodowisko CLR, w
    której umieszczane sa wszystkie obiekty
    zarzadzalne, a zwlaszcza typy referencyjne.
  • CRL nadzoruje dostep do tych obiektów, zachowujac
    bezpieczenstwo typów.
  • Sterta zarzadzalna cechuje sie wydajna alokacja
    pamieci, lokujac pamiec dla kolejnych obiektów
    dokladnie nad ostatnio przydzielonym fragmentem
    pamieci, do którego sterta zarzadzalna utrzymuje
    odwolania.

79
Dane zarzadzalne
  • Obiekty, do których nie ma juz odwolan sa usuwane
    przez automatyczny odsmiecacz, który jednoczesnie
    przesuwa pozostawione obiekty w dól sterty
    zarzadzalnej, wypelniajac luki po obiektach
    usuwanych.
  • Pozwala to na eliminacje fragmentacji pamieci
    oraz aktualizacje odwolan do ostatniej alokacji
    na stercie.
  • Odsmiecacz moze byc uruchamiany automatycznie
    przez srodowisko CLR lub z aplikacji poleceniem
    GC.Collect,
  • Odsmiecacz umozliwia likwidacje przecieków
    pamieci.
  • Przeciek pamieci nastepuje wtedy, gdy pamiec
    alokowana przez aplikacje jest zablokowana mimo,
    ze aplikacja przestaje ja uzywac.

80
Dane zarzadzalne
  • Przecieki w kodzie niezarzadzalnym wystepuja gdy
  • aplikacja napisana w C lokuje na stercie
    zarzadzalnej pamiec zwiazana z obiektem,
    natomiast odsmiecacz zbiera tylko obiekty do
    których nie ma juz odwolan w aplikacji,
  • dwa obiekty COM zawieraja odwolania cykliczne (A
    do B, a B do A).
  • Automatyczny odsmiecacz bezposrednio przed
    usunieciem obiektu wywoluje metode
    Object.Finalize, która powinna zawierac wszystkie
    czynnosci zwiazane z porzadkowaniem pamieci.
  • Uruchomienie automatycznego odsmiecacza nastepuje
    dopiero wtedy, gdy brakuje wolnej pamieci.

81
Dane zarzadzalne
  • Niezbedne porzadkowanie pamieci nalezy
    przeprowadzac w metodzie Finalize, której sciezka
    kodu powinna byc mozliwie jak najkrótsza.
  • Metoda Finalize nie powinna byc traktowana przez
    programiste jako destruktor obiektów, a jedynie
    uzywana wtedy gdy brakuje pamieci.
  • Implementujac metode Finalize nalezy
    zaimplementowac metode Dispose lub Close, która
    moze byc wywolana przez klienta, gdy obiekt
    przestaje byc uzywany.
  • Metoda Finalize nie powinna wywolywac metod dla
    innych obiektów, do których odwoluje sie zbierany
    obiekt.
  • Kolejnosc zbierania obiektów na stercie
    zarzadzalnej przez automatyczny odsmiecacz jest
    nieokreslona.
Write a Comment
User Comments (0)
About PowerShow.com