visoka tehnička škola nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. windows...

55
Visoka tehnička škola Niš Studijski program: Savremene računarske tehnologije Prof. dr Zoran Veličković, dipl. inž. el. 2019/2020. Predmet: .NET tehnologije

Upload: others

Post on 06-Jan-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Visoka tehnička škola Niš

Studijski program: Savremene računarske tehnologije

Prof. dr Zoran Veličković, dipl. inž. el.2019/2020.

Predmet: .NET tehnologije

Page 2: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

.NET tehnologije

VISUAL STUDIO - integrisano razvojno i izvršno okruženje .NET-a(3)

Prof. dr Zoran Veličković, dipl. inž. el.

Page 3: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Sadržaj Visual Studio

Visual Studio od ’97 do danas

Tri realizacije

Podrška razvoju aplikacija

UWP i Desktop aplikacije

Web i Cloud aplikacije

Cross-platformske aplikacije

.NET Framework/Core - verzije

Solution i Project fajlovi

IDE okruženje VS

Dizajn

Kodiranje

Solution i Resource Explorer

Class View

Properties

Object browser

Debug/Output

Team Explorer

Notifications

C# Interactive

Ostali prozori

.Net Framework aplikacije

Konzolna

WindowsForm

WebForm

Web MVC

Cross-platformske aplikacije

Konzolna

ASP .NET Core

Android app

Page 4: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Da se podsetimo Razvojno okruženje MS .NET Framework obuhvata PET TEHNOLOGIJA:

Visual Studio .NET - razvojno i izvršno okruženje .NET-a;

CLR (engl. Common Language Runtime), zajednički izvršni podsistem za jezike koji opslužuje aplikacije u trenutku izvršavanja;

Programski jezici koji koriste zajednički izvršni podsistem CLR-a i biblioteke klasa;

F(B)CL - biblioteke klasa (engl. Framework (Base) Class Library);

MS ASP.NET za razvoj Web aplikacija i Web servisa.

Page 5: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Visual Studio VISUAL STUDIO (VS) je integrisano RAZVOJNO i IZVRŠNO okruženje

pridruženo .NET tehnologijama od strane Microsofta.

Visual Studio AUTOMATIZUJE korake prilikom: kreiranja, kompajliranja i izvršenja koda .NET jezika.

VS obezbeđuje alate za brzi dizajn RAZLIČITIH TIPOVA aplikacija.

VS nudi moćne ALATE za kreiranje NAVIGACIJE, OBRAZACA i DIJALOGA u svim tipovima podržanih aplikacija.

Pored razvoja DESKTOP i MOBILNIH aplikacija, VS je dizajniran i za razvoj WEB (ASP.NET) i CLOUD aplikacija.

VS obezbeđuje napredne tehnike OTKRIVANJA i OTKLANJANJA grešaka.

DEBAGOVANJE programa postavljanjem prekidnih tačaka (engl. Break points) na specifičnim mestima u IZVORNOM KODU.

Page 6: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Razvojno okruženje Visual Studio Visual Studio .NET je VIŠEJEZIČNO razvojno okruženje koje je potpuno oslonjeno na XML.

Visual Studio .NET potpomaže razvoj u sledećim OO programskim jezicima: Microsoft Visual Basic, VB.NET Microsoft Visual, C++ C sa povisilicom, C#, F#, od 2011.

Dakle, Visual Studio .NET UBRZAVA IZRADU APLIKACIJA i omogućava programeru SLOBODAN IZBOR programskog jezika.

VS dozvoljava aplikacijama da dele i razmenjuju podatke preko Interneta.

VS omogućuje izgradnju aplikacije od:

Novo-napisanog i/ili

već postojećeg koda.

BEZ OBZIRA na platformu, programski jezik ili objektni model !

Page 7: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Visual Studio od ’97 do danas

Page 8: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

VS - tri realizacije

Page 9: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Visual Studio - Podrška razvoju aplikacija

CLS (Common Language Specification)

Visu

al S

tudi

o .N

ET

Webservisi

Korisničkiinterfejs

Biblioteka baznih klasa - B(F)CL

Podaci i XML

Zajedničko izvršno okruženje - CLR

VB C++ ...C# ...F#

Brži kod. Radi pametnije. Najboji IDE u klasi.

Page 10: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

VS aplikacije

Page 11: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

UWP i Desktop aplikacije

Universal Windows PlatformJedna Windows platforma – više uređaja.

Koristi osobine C#-a i Visual Basic-a za kreiranje nove generacije Windowsaplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima.Windovs 10 aplikacije sa C# i Visual Basic-om se pokrecu jednako brzokao i C++ uz .NET Native-a.

Desktop aplikacijeWinForms i WPF.

.NET Framework i Visual Studio omogućavaju razvoj data-centricmodernih poslovnih aplikacija (LoB) u Windovsu. Kreira vizuelno korisnička iskustva korišćenjem WPF-a ili WnForms-a. Brz razvoj poslovnih aplikacija sa sveobuhvatnim setom funkcija kao što su kontrole, povezivanje podataka, animacija, stilovi, … .

Page 12: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Web i Cloud aplikacijeASP.NET Web aplikacije

Otvoreni, fleksibilni alati kojim se kreiraju i implementiraju savremene Web aplikacije.

ASP.NET je Web okvir otvorenog koda za izgradnju Web stranica i Web aplikacija pomocu HTML, CSS i JavaScript. Takođe, mogu se kreirati Web API i mobilne Web lokacije korišćenjem savremenih programerskih tehnologija.

Cloud aplikacije u AzureBrzo implementiranje kritičnih aplikacije. Aplikacija

raste sa zahtevaPokreće ASP.NET Web aplikacije i .NET programe u oblaku

koristec i Azure Websites, Cloud Services i VM-ove. Koristi se .NET i Visual Studio za postavljanje nove ili postojece aplikacije.

Page 13: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Cross-platformske aplikacije

.NET CoreModularan, cross-platformski, otvorenog koda.

.NET Core je skup runtime-a, komponenti, biblioteka i kompajlera optimizovanih za moderno okruženja na Windows, macOS i Linux-u. Može se instalirati lokalno uz aplikaciju sa neophodnim paketima.Runtime, .NET Core, biblioteke i prevodilac su otvorenog koda na na GitHub-u.

Cross - platform mobileVisual Studio i Xamarin.

Kreira bogate „native“ aplikacije pomoću C# za iOS, Android i Wndows, uz maksimalno ponovno korišćenje koda. Programski kod se deli između platformi ili se prenose biblioteke klasa.

Page 14: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

.NET Framework – stare verzije Microsoft .NET Framework je NEOPHODNA KOMPONENTA za korišćenje Visual Studio

.NET paketa.

Na jednom računaru može biti VIŠE VERZIJA .NET Framework-a!

2013

20072008

Jezici

Biblioteke

CLR

Arhitektura .NET-a Framework-a

Page 15: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

.NET istorija i tehnologije

WPF (engl. Windows Presentation Foundation) razvijen za rad desktop aplikacija pod Windows-om

WCF (engl. Windows Communication Foundation) razvijen za gradnju servisa kojima se pristupa putem mreže.

WF – (ebgl. Windows Workflow Foundation)

LINQ (engl. Language-Integrated Query) - SQL-like query features, integracija pristupa bazi podataka

Page 17: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

.NET Framework, VS 2017/19

2014

2015

2019

Page 18: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

.NET Framework - verzije

Page 19: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

.NET Core - verzije

Jezici + kompajleri

BibliotekeBCL+NuGet

Core CLR

Arhitektura .NETCore-a

Page 20: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Solution i Project fajlovi u VS Za smeštanje specifičnih postavki Visual Studio koristi TRI TIPA FAJLOVA tzv.

SOLUTION FAJLOVIMA : .sln (organizacija prijekta - ne treba editovati)

.suo (engl. solution user options - smešta korisničke postavke, pr. breakpoints)

.csproj (sadrži listu fajlova u projektu i reference na sistemske sklopove)

Informacije specifične za VS projekte imaju sledeće ekstenzije:

Izvorni kod: .cs Class Diagram: .cd Resources File: .resx XSLT fajlovi: .xslt Crystal Report: .rpt Appl. Configuration File: .config Report: .rdlc

JScript File: .js Windows Script Host: .wsf Web Form files: .aspx Web User Control: .ascx Web Service files: .asmx HTML stranice: .htm XML File: .xml

Page 21: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

IDE okruženje VS-a: Dizajn

Kutija sa alatom za dizajn

Prostor za selektovani (design) prozor

Properties prozor

Solution Explorer prozor

Paleta dugmića

Page 22: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

IDE okruženje VS-a: Kodiranje

Prostor za kod selektovanog fajla

Page 23: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Solution i Resource Explorer

SOLUTION EXPLORER

Daje pregled fajlova u aktivnom projektu.

Istovremeno se daje prikaz resursa aktivnog projekta.

Pregled korišćenih klasa u projektu.

Osnovne postavke projekta (engl. properties)

Konfiguraciju aplikacije

Page 24: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Class View

CLASS VIEW

daje prikaz klasa u projektu koje se koriste ili se kreiraju

Omogućava dodavanje i menjanje postojeće klase.

Page 25: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Prozor Properties Prozor svojstava (engl. Properties

window) prikazuje svojstva trenutno odabranog obrasca ili objekta.

Pored prikaza – interaktivno omogućava menjanje i dodatno konfigurisanje pojedinih elemenata kao što je: Promena imena

Izgled forme,

Izgled dugmeta,

Natpisa na dugmetu,

Fonta,

Boje,

Stanja objekta ...

Page 26: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Object browser prozor (1)

Object browswer VIEW

Page 27: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Object browser prozor (2)

System.Console.Writeline(string)

System.Console

Opis metode

Page 28: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Prozor Debug/Output

Prozor Debug služi za praćenje izvršavanja programa.

Klikom na Start u Debug meniju ili pritiskom na taster F5 se startuje ova opcija.

Page 29: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Team Explorer

TEAM EXPLORER

Pomoću Team Explorer-a se koordiniraju poslovi kodiranja sa drugim članovima tima kako bi se razvili softverski projekat.

Pored toga, upravlja se poslovima dodeljeni vama, vašem timu ili vašim projektima.

Programeri efikasno sarađuju na projektima hostovanim na Azure DevOps Servisu.

Kloniranje GitHub skladišta

Page 30: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Notifications

NOTIFICATIONS

Važna obaveštenja.

O svim temama vezanim za Visual Studio,

Programske jezike,

GitHub-u

Ostalim novostima

Page 31: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Prozor C# Interactive U ovom prozoru se može interaktivno izvršavati delovi programskog koda bez

kompajliranja čitavog projekta. Ovaj prozor se dobija klikom na View|Other Windows|C# Interactive

Page 32: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

IDE okruženje VS-a: ostali prozori

Page 33: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

.NET Framework i .NET CoreSelekcija tipa aplikacije

Core

Framework

20192015

Page 34: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Konzolna Framework aplikacija

Page 35: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Solution explorer i skladište aplikacija FW

Page 36: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

.sln fajl FW

header

body

Page 37: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

AssemblyInfo.cs i pridruženi XML fajlovi FW

Page 38: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

VS i pridruženi fajlovi FW

Page 39: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

WindowsForm .NET Framework App (1)

Laboratorijske vežbe u grafičkom okruženju se rade sa ovom vrstom

aplikacija!

Page 40: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

WindowsForm .NET Framework App (2)

DRUGI CIKLUS Laboratorijskih vežbi je zasnovan na WindowsForm

aplikacijama!

Page 41: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

WebForm .NET Framework aplikacija (1)

Page 42: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

WebForm .NET Framework aplikacija (2)

Page 43: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Web .NET Framework aplikacija (1)

Page 44: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Web MVC .NET Framework aplikacija (2)

Page 45: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Web MVC .NET Framework aplikacija (3)

Page 46: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Web MVC .NET Framework aplikacija (4)

Page 47: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Cross-platformske aplikacije

Core

Podržane platforme

Page 48: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Konzolna cross-platformska aplikacija

Page 49: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Cross-platformska Web aplikacija (1)

Page 50: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Cross-platformska Web aplikacija (2)

Page 51: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Cross-platformska Web aplikacija (3)

Page 52: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Cross-platformska Web aplikacija (4)

Page 53: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Android app. u VS-u (1)20192015

Page 54: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Android app. u VS-u (2)

Page 55: Visoka tehnička škola Nišvtsnis.edu.rs/wp-content/plugins/vts-predmeti... · aplikacija. Windows 10 radi na jedinstvenom jezgru na svim uređajima. Windovs 10 aplikacije sa C#

Android app. u VS-u (3)