plan wykładu tworzenie programów dla założenia...

4
1 Tworzenie programów dla platformy .NET Wprowadzenie Marek Mittmann 2 Plan wykladu Zalożenia projektowe .NET Platforma .NET, języki i narzędzia Środowisko uruchomieniowe Języki .NET Rodzaje aplikacji 3 Zalożenia projektowe .NET Uprościć pisanie i wdrażanie oprogramowania Ujednolicić model programowania Dostarczyć wydajne i bezpieczne środowisko uruchomieniowe Wsparcie dla wielu języków programowania 4 Platforma .NET, języki, narzędzia System operacyjny System operacyjny Środowisko uru chomi eniowe (CL R) rodowisko uru chomi eniowe (CL R) Biblioteka klas podstawow ych Biblioteka klas podstawow ych ADO. NET ADO. NET i XML XML ASP. NET ASP. NET Web Forms Web Services Web Forms Web Services Mobile Internet Toolkit Mobile Internet Toolkit Windows Windows Forms Forms Wsp Wspólna specyfikacja j lna specyfikacja j ę zyk zy ków (CLS) w (CLS) VB VB C+ + C+ + C# C# JScript JScript J# J# Visual Studio.NET Visual Studio.NET 5 Kompilacja i wykonanie Podzesp Podzespól Tekst Tekst źródlowy owy Kompilato r Kompilato r do kodu do kodu po pośredni ego redni ego Kompilacja Kompilacja Przy instalacji lub Przy instalacji lub przy pierwszym przy pierwszym wywo wywol aniu metod y aniu metod y W ykonanie W ykonanie Kompilator Kompilator JIT JIT Kod Kod natywn y natywn y Kod Kod Kod Kod Kod Kod Kod Kod (IL) (IL) (IL) (IL) (IL) (IL) (IL) (IL) Metada Metada Metada Metada Metada Metada Metada Metadane ne ne ne ne ne ne ne 6 Uproszczenia w pisaniu programów Pelne wsparcie dla programowania obiektowego Dziedziczenie w izualne Dziedziczenie między różnymi językami Wszy stko jest obiektem Mechanizmy wspólpracy zCOM z kodem Win32

Upload: others

Post on 20-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Plan wykładu Tworzenie programów dla Założenia projektowesun.aei.polsl.pl/~marekm/teaching/DotNET.pdf · platformy .NET Wprowadzenie Marek Mittmann 2 Plan wykładu Założenia

1

Tworzenie programów dla platformy .NET

Wprowadzenie

Marek Mittmann2

Plan wykładu

� Założenia projektowe .NET� Platforma .NET, języki i narzędzia� Środowisko uruchomieniowe� Języki .NET� Rodzaje aplikacji

3

Założenia projektowe .NET

� Uprościć pisanie i wdrażan ie oprogramowania

� Ujednolicić model programowania� Dostarczyć wydajne i bezpiec zne

środowisko uruchomieniowe� Wsparcie dla wielu języków

programowania

4

Platforma .NET, języki, narzędzia

Syst em operacyjnySyst em operacyjny

ŚŚrodowisko uru chomi eniowe (CL R)rodowisko uru chomi eniowe (CL R)

Biblioteka klas podstawow ychBiblioteka klas podstawow ych

ADO. NET ADO. NET ii XMLXML

ASP. NETASP. NET

Web Forms Web ServicesWeb Forms Web ServicesMobile Internet ToolkitMobile Internet Toolkit

WindowsWindowsFormsForms

WspWspóólna specyfikacja jlna specyfikacja jęęzykzykóów (CLS)w (CLS)

VBVB C++C++ C#C# JScriptJScript J#J#

Vis

ual S

tud

io.N

ET

Vis

ual S

tud

io.N

ET

5

Kompilacja i wykonanie

PodzespPodzespóółłTekst Tekst źźrróóddłłowyowy

Kompilato rKompilato r

do kodu do kodu

popośśredni egoredni ego

KompilacjaKompilacja

Przy instalacji lub Przy instalacji lub

przy pierwsz ym przy pierwsz ym

wywowywołłaniu metod yaniu metod yW ykonanieW ykonanie

Kompilator Kompilator

JITJIT

Kod Kod

natywn ynatywn y

KodKodKodKodKodKodKodKod (IL)(IL)(IL)(IL)(IL)(IL)(IL)(IL)

MetadaMetadaMetadaMetadaMetadaMetadaMetadaMetadanenenenenenenene

6

Uproszczenia w pisaniu programów� Pełne wsparcie dla programowania

obiektowego� Dziedziczenie w izualne� Dziedziczenie między różnymi językami� Wszy stko jest obiektem

� Mechanizmy współpracy� z COM� z kodem Win32

Page 2: Plan wykładu Tworzenie programów dla Założenia projektowesun.aei.polsl.pl/~marekm/teaching/DotNET.pdf · platformy .NET Wprowadzenie Marek Mittmann 2 Plan wykładu Założenia

2

7

Wydajne środowisko� Automatyczne zarząd zanie czasem

życia obiektów� Wszy stkie obiekty podlegają„odśmiecaniu”

� Obsługa wyjątków� Bezpiec zne typy

� Bez: przepełnień buforów , niebezpieczny ch rzutowań, niezainicjowany ch zmienny ch

8

Wdrażanie i zarządzanie� Instalowanie bez wpływu na system

� Aplikacje i komponenty mogą by ćwspółdzielone lub prywatne

� Wykonywanie równoczesne� Wiele wersji tego samego komponentu może współistnieć w systemie

� Podzespoły (assemblies)� Zaw ierają informacje o swoich zależnościach

9

Jednolity ale rozszerzalny

� Platforma .NET nie jest “c zarnąskrzynką”

� Każda klasa .NET może byćrozszerzona przez d zied ziczenie

� Można dodać komponenty i podsystemy

10

Języki .NET

� Wspólna specyfikacja (CLS)� Języki dostarczane przez Microsoft

� Visual Basic, C#, C++, J#, JScript

� Języki dostarczane przez inne firmy� APL, Cobol, Component Pascal, E iffel, F ortran, Haskell, Mercury , Oberon, O z, Perl, Py thon, RPG, Scheme, Smalltalk, Standard ML

11

Rodzaje aplikacji� Aplikacje konsolowe

� Kompilacj a z lini i poleceń, dowolny język, mały r ozmiar

� Usługi Windows (Windows Services)� Prost ota, pełna obsługa i inst alacj a

� Aplikacje okienkowe (Windows Forms)� Dziedziczenie wizua lne, instalacja przez kopiowanie

� Aplikacje WWW – ASP.NET (Web Forms)� RAD, kont ro lki wa lidacj i, oddzielenie warstwy prez ent acji od log iki,

zaawans owane kontrolk i, str ony ja ko k omponenty, obsługa fa rm serwerów, buf orowanie, śledzenie i uruc hamiania krok owe

� Usługi WWW (Web Services)� Następc a RPC i DCOM, obsługa XML, SOAP, WSDL

12

Aplikacje konsolowe

class Hello

{

static void Main(string[] args)

{

Console.WriteLine("Hello world!");

for (int i = 0; i < args.Length; i++)

{

Console.WriteLine("args[{0}] = {1}",

i, args[i]);

}

}

}

Page 3: Plan wykładu Tworzenie programów dla Założenia projektowesun.aei.polsl.pl/~marekm/teaching/DotNET.pdf · platformy .NET Wprowadzenie Marek Mittmann 2 Plan wykładu Założenia

3

Czas na przykład

Aplikacje konsolowe

14

Aplikacje okienkowe� Klasy wspierające tworzenie aplikacji

okienkowych zawarte w platformie .NET� Model programowania oparty na

formularzach, kontrolkach, właściwościach i zdarzeniach

� Projektowanie interfejsu za pomocąnarzędzi wizualnych VS.NET

� Dziedziczen ie wizualne

15

Aplikacje okienkowe i VS.NET

Czas na przykład

Aplikacje okienkowe

17

Aplikacje ASP.NET

� Model formularzy ASP.NETz wykorzystaniem kontrolek

� Programowanie oparte na zdar zeniach� Tworzenie stron za pomocą narzędzi

wizualnych

SerwerSerwerStacja Stacja klienckakliencka

AplikacjaAplikacjauużżytkownikaytkownika

Baza danychBaza danych

ASP.NET

ASP.NET

IISIIS Log ikaLogika

biznesowabiznesowa

ADO.NET

ADO.NETHTTPHTTP

18

Aplikacje ASP.NET i VS.NET

Page 4: Plan wykładu Tworzenie programów dla Założenia projektowesun.aei.polsl.pl/~marekm/teaching/DotNET.pdf · platformy .NET Wprowadzenie Marek Mittmann 2 Plan wykładu Założenia

4

19

Usługi WWW� Czym są usługi WWW ?

� Komponent, który definiuje i dostarcza usługę do klienta

� Cechy

� Potencjalnie ogólnodostępne

� Klienci uży wają HTTP i XML

� Mogą by ć tworzone w wielu językach

� Klient abstrahuje od implementacji

� Podstawa aplikacji B2B i B2C

20

Usługi WWW

PrzeglPrzegl ąądarkidarki

NowiNowiklienciklienci

NoweNoweurzurząądz eniadz enia

Otwart e protokoOtwart e protokołł yyinternetow einternetow e

(HTTP, SMTP, XML, SO AP) (HTTP, SMTP, XML, SO AP) PePełłniejsz aniejsz ainterakcj ainterakcj a

OgOgóólnodostlnodostęępnepneususłługi Webugi Web

Aplikacje stajAplikacje stająą sisięęProgramowanymi UsProgramowanymi Usłługami ugami WebWeb

OS OS

LogikaLogikabiznesowabiznesowa

Logika Logika bizbiz. i . i ususłługiugi

OSOS

PubPubliczneliczneususłługi ugi WebWeb

UsUsłługiugipodstawowepodstawowe

UsUsłługiugiWewnWewnęęt rznet rzne

XMLXML

XMLXML

XMLXML

SerSerw eryw erydanychdanych, host, host yy

XMLXML

InneInneususłługiugi

XMLXML

XMLXML

XMLXML

HTMLHTML

21

Wiadomości o .NET

melmac.iinf.polsl.gliw ice.pl/~dotnet/www.gotdotnet.com

www.msdn.microsoft.com

Dziękuję za uwagę