Ra unarski praktikum 3
Download
1 / 40

Ra?unarski praktikum 3 - PowerPoint PPT Presentation


  • 111 Views
  • Uploaded on

Računarski praktikum 3. Predavanja: predavač: Maja Starčević termin predavanja: petak, 8-10 (110) e-mail: mstarcev(at)math.hr web.math.hr/~mstarcev/rp3 Vježbe: asistent: Vinko Petričević termin vježbi: petak, 13-16 (Pr1) e-mail: vpetrice(at)math.hr web.math.hr/~vpetrice/rp3.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Ra?unarski praktikum 3' - annona


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Ra unarski praktikum 3
Računarski praktikum 3

Predavanja:

  • predavač: Maja Starčević

  • termin predavanja: petak, 8-10 (110)

  • e-mail: mstarcev(at)math.hr

  • web.math.hr/~mstarcev/rp3

    Vježbe:

  • asistent: Vinko Petričević

  • termin vježbi: petak, 13-16 (Pr1)

  • e-mail: vpetrice(at)math.hr

  • web.math.hr/~vpetrice/rp3

---------- Računarski praktikum 3 ----------

Maja Starčević


Pravila ocjenjivanja
Pravila ocjenjivanja

Kroz semestar se može sakupiti najviše 100 bodova:

1. Dva kolokvija po 25 bodova (minimum = 20)

2. Domaća zadaća od 10 bodova (minimum = 5)

3. Završni ispit (obrana projektnog zadatka + usmeni ispit) – najviše 40 bodova (minimum = 15)

Popravni kolokvij donosi najviše 40 bodova, a minimum je 20.

Ocjene:

50-59 (2), 60-74 (3), 75-87 (4), 88-100 (5)

Računarski praktikum 3


O kolegiju
O kolegiju

  • .NET

  • Programski jezik C#

  • Dizajniranje grafičkih sučelja (Windows Forms, WPF)

  • Baze podataka (ADO.NET, LINQ)

Računarski praktikum 3


Literatura iz originalnog programa
Literatura (iz originalnog programa)

  • B. Albahari, P. Drayton, B. Merrill, C# Essentials, 2nd edition, O’Reilly, 2002.

  • D. Box, Essential .NET, Addison-Wesley, 2002.

  • J. Prosise, Programming Microsoft .NET, Microsoft Press, 2002.

  • I. Rammer, Advanced .NET Remoting, Apress, 2002.

  • C. Sells, Windows Forms Programming in C#, 1st  edition, Addison-Wesley Professional, 2003.

  • C. Rojas, F. Guerrero, SQL Server 2000 Programming by Example, Que, Bk & CD-ROM edition, 2001.

  • C. Petzold, Programming Windows, 5th  edition, Microsoft Press, Bk & CD-ROM edition, 1998.

Računarski praktikum 3


Dodatna literatura
Dodatna literatura

  • J. Albahari, B. Albahari, C# 3.0, O’Reilly, 2008.

  • J. Albahari, B. Albahari, C# 3.0 in a Nutshell, O’Reilley, 2008.

  • J. Liberty, D. Xie, Programming C# 3.0, O’Reilly, 2008.

  • J. Liberty, A. Horovitz, Programming .NET 3.5, O’Reilley, 2008.

Računarski praktikum 3


Net framework
.NET Framework

Microsoft .Net Framework je softversko okruženje za MS Windows operacijski sustav. Podržava programiranje u više programskih jezika (program pisan u jednom jeziku može koristiti i kod pisan u drugom jeziku).

Osnovna Microsoftova arhitektura .NET-a izdana je 2001. (sredinom 2002. izdan je .NET Framework 1.0 i Microsoft Visual Studio 2002).

Računarski praktikum 3


Net framework1
.NET Framework

.NET je prvotno zamišljen kao okruženje za izradu Internet aplikacija i Web servisa.

Moguća je izrada XML Web servisa, Web formi, Windows aplikacija s grafičkim sučeljem (GUI), Windows konzolnih aplikacija (CUI), Windows servisa.

Podržane platforme su u prvom redu MS Windows te Linux i MacOS (djelomično putem pomoćnog third-party MONO sustava).

.NET je standardiziran od strane ECMA i ISO.

v

Računarski praktikum 3


Net framework2
.NET Framework

Programi se izvršavaju u softverskom okruženju, tj. u virtualnom stroju, neovisno o specifičnostima određenog CPU-a.

CLR je zadužen i za sigurnost, organizaciju memorije, tretiranje iznimki.

Računarski praktikum 3


Net framework3
.NET Framework

.NET Framework uključuje i Common TypeSystem (CTS) - specifikaciju koja definira sve moguće tipove podataka koje CLR podržava te interakciju koja je moguća među njima u skladu s Common Language Infrastructure(CLI) specifikacijom.

Ovaj princip i omogućava izmjenu objekata i tipova pisanih u različitim jezicima. (Moguće je pisati i dijelove koda koji ne odgovaraju CTS specifikaciji).

BCL biblioteke klasa su dostupne svim jezicima.

Računarski praktikum 3


Net arhitektura
.NET arhitektura

  • .NET sadržava veliku količinu tipova u hijerarhijski organiziranim imeničkim prostorima (namespace) koji su upakirani u asemblije.

  • Drugi važan dio je Zajednička izvršna okolina (Common Language Runtime - CLR).

  • Treći dio su APIs (Application Programming Interface) koji pokrivaju:

    • Tehnologiju korisničkog sučelja

    • Backend tehnologiju

    • Tehnologiju distribuiranih sistema

Računarski praktikum 3


Net arhitektura1
.NET arhitektura

4.0

ParallelLINQ

Task Parallel Library

3.5.

LINQ

ASP.NETAJAX

3.0

WPF

WCF

WF

Card Space

2.0

WinForms

ASP.NET

ADO.NET

Base class Library (BCL)

Common Language Runtime (CLR)

Računarski praktikum 3


Kompatibilnost verzija
Kompatibilnost verzija

Računarski praktikum 3


Net i visual studio
.NET i Visual Studio

Računarski praktikum 3


Programski jezici u net u
Programski jezici u .NET-u

Microsoft je izdao IL-kompilatore za programske jezike C++, Visual Basic, J#, C#, JScript (postoje i za Perl, Python, Cobol, Eiffel...).

Detalji na http://dotnetpowered.com/languages.aspx

Programski jezik C# je razvijen u Microsoftovom timu pod vodstvom Andersa Hejlsberga i Scotta Wiltamutha (Turbo Pascal, Borland Delphi).

C# je odigrao značajnu ulogu u razvoju biblioteka koje se nalaze u .NET-u. Programi pisani u C#-u koriste i klase pisane u drugim jezicima, zahvaljujući zajedničkoj jezičnoj specifikaciji (CLS).

Računarski praktikum 3


Ra unarski praktikum 3
CLI

Zajednička jezična infrastruktura (CLI) uključuje

  • Zajednički tipski sustav (CTS) – podržava tipove podataka zajedničke različitim programskim jezicima,

  • Zajedničku jezičnu specifikaciju (CLS) - cijela biblioteka temeljnih klasa (BCL) je CLS kompatibilna

  • Metapodatke – pomoću njih kod opisuje sam sebe

  • Virtualni izvršni sustav (VES) – upravlja izvršavanjem i sigurnošću koda i radi na zajedničkom prijelaznom jeziku (CIL).

Računarski praktikum 3


Ra unarski praktikum 3
CLI

Primjer: klasa C nije kreirana po CLS pravilima. Imamo dvije

metode s “jednakim” imenom (razlikuju se samo po malom i

velikom slovu) i uint tip koji nije u skladu s CTS-om. Pomoću

atributa CLSCompliant dobivamo upozorenje.

using System;

[assembly:CLSCompliant(true)]

public class C

{

public uint i;

public int _i; // nedopušten početak identifikatora

public void Print() { }

public void print() { }

}

Računarski praktikum 3


Zadatak
Zadatak

Napravite biblioteku s jednom klasom u VB.net-u (.dll) te ju uključite

u neki C# project (dodajte .dll u References u Solution Exploreru).

Kreirajte objekt klase iz spomenute biblioteke i testirajte pripadne

funkcije.

Računarski praktikum 3


Zajedni ka jezi na infrastruktura
Zajednička jezična infrastruktura

Zajednička jezična infrastruktura

C# kod

kompilator

VB.NET

kod

Upravljani kod (CIL)

CLR

Strojni jezik

kompilator

J# kod

kompilator

.

.

.

Računarski praktikum 3


Net i jit kompilatori
.NET i JIT kompilatori

Kod pisan za .NET platformu izvršava .NET runtime ili preciznije Common Language Runtime (CLR).

Kod kojeg generira .NET kompilator nije u strojnom jeziku već je to Common Intermediate Language (CIL), tzv. upravljani kod (Managed Code).

IL kod se može pregledavati u Visual Studiu preko programa Ildasm (namješta se pomoću Tools– External tools).

Program se distribuira u upravljanom kodu te se na odredišnom računalu taj međukod prilikom pokretanja aplikacije prevodi u matični strojni kod.

Računarski praktikum 3


Net i jit kompilatori1
.NET i JIT kompilatori

Tijekom izvršavanja .NET JIT (Just in Time) kompilatori konvertiraju taj kod u matični strojni kod koji se napokon izvodi u procesoru.

.NET kompilator također proizvodi i metapodatke koji opisuju kod. Njima je opisan svaki tip i član definiran i referiran u kodu.

.NET runtime učitava metapodatke pri rješavanju poziva funkcija, učitavanju različitih zavisnih modula, usmjeravanju podataka iz jedne komponente u drugu.

Računarski praktikum 3


Net compiler i jit
.NET compiler i JIT

Kod poput Win32 DLLs ne mora prolaziti kroz sve te korake već je on odmah u strojnom jeziku. Nije potreban dodatni JIT kompilator. Ovakvu vrstu koda zovemoneupravljani kod (engl. Unmanaged Code).

Moguće je pristupati i takvom kodu iz .NET koda i obratno. Pritom koristimo interoperativne servisekoje pruža .NET platforma.

Takve klase nalaze se u prostorima System.Runtime.InteropServices i System.EnterpriseServices

Računarski praktikum 3


Karakteristike net a
Karakteristike .NET-a

  • Dosljedan objektno-orijentirani model programiranja

    - sav kod je pisan unutar klasa

  • Poboljšana usklađenost verzija

    - vrši se verzioniranje, aplikacije se razvijaju za točno određenu verziju dll-a, prilikom nadogradnje dll-a nova verzija ne prepisuje staru.

  • Pojednostavljena distribucija

    - za instalaciju jednostavnih aplikacija nije potrebna posebna instalacijska procedura.

Računarski praktikum 3


Karakteristike net a1
Karakteristike .NET-a

  • Povezivanje različitih programskih jezika

  • Automatsko skupljanje otpada

  • Provjera sigurnosti tipova

  • Dosljedan pristup prijavi pogrešaka

  • Poboljšana sigurnost

  • Združivost s postojećim kodom

Računarski praktikum 3


Base class library bcl
Base Class Library (BCL)

Biblioteka osnovnih klasa je dio cijele biblioteke klasa – Framework Class Library (FCL).

Klase iz BCL-a nalaze se u asembilijima (bibliotekama) mscorlib.dll, System.dlliSystem.Core.dll.

Klase iz BCL-a se nalaze u imeničkim prostorima:

System, System.CodeDom, System.Collections, System.Diagnostics, System.Globalization, System.IO, System.Resources, System.Text, System.Text.RegularExpressions

Računarski praktikum 3


Imeni ki prostori
Imenički prostori

FCL sadrži mnogo klasa koje su također organizirane hijerarhijski, u imeničkim prostorima.

Većina prostora kao najviše rangirani prostor ima prostore System, MS,Microsoft.

Slijedi opis nekih od visoko rangiranih prostora, odnosno njihovih tipova.

Računarski praktikum 3


Imeni ki prostori1
Imenički prostori

Računarski praktikum 3


Imeni ki prostori2
Imenički prostori

Računarski praktikum 3


Imeni ki prostori3
Imenički prostori

Računarski praktikum 3


Imeni ki prostor system
Imenički prostor System

  • Text

  • Exception

  • Enum, Array

  • Delegate

  • Nullable

  • Type

  • DateTime, DateTimeOffset, TimeSpan

  • Math, Random

  • Convert, BitConverter

  • IDisposable, IFormattable, IComparable

    itd.

Računarski praktikum 3


Kolekcije
Kolekcije

.NET Framework sadrži mnoštvo klasa koje upravljaju kolekcijama podataka. Nalaze se u prostorima:

  • System.Collections.Generic

  • System.Collections.Specialized

  • System.Collections.ObjectModel

    Klase iz tih prostora djeluju u suradnji sa sučeljima poput:

  • IEnumerable<>

  • ICollection<>

  • Ilist<>

  • IDictionary<>

Računarski praktikum 3


Tehnologije u net u
Tehnologije u .NET-u

Tehnologije korisničkih sučelja:

Windows Forms, WPF, ASP.NET

Backend tehnologije:

ADO.NET, WF, COM+, MSMQ

Tehnologije distribuiranih sistema:

WCF, Remoting Services, ASMX Web Services, CardSpace

Računarski praktikum 3


Tehnologije u net u1
Tehnologije u .NET-u

WF- System.WorkFlow

COM+ - System.EnterpriseService

WCF – System.ServiceModel

Remoting – System.Runtime.Remoting

Web Services – System.Web.Services

CardSpace – System.IdentityModel.Claim, System.IdentityModel.Policy

Računarski praktikum 3


Tehnologije korisni kih su elja
Tehnologije korisničkih sučelja

.NET Framework sadrži tri tehnologije za izradu aplikacija s korisničkim sučeljima:

  • ASP.NET (klase su u prostoru System.Web.UI u biblioteci klasa System.Web.dll)

  • Windows PresentationFoundation

    (System.Windows i potprostori)

  • Windows.Forms

    (System. Windows.Forms, System.Windows.Forms.dll)

Računarski praktikum 3


Windows forms
Windows Forms

Rich-client tehnologija koja je također stara kao i .NET Framework.

Jednostavnija tehnologija od WPF-a.

Ima važnost u sačuvanju “legacy” aplikacija.

Tipovi su smješteni u System.Windows.Forms i System.Drawing

Računarski praktikum 3


Windows presentation foundation
Windows Presentation Foundation

WPF je rich-client tehnologija.

Podržava sofisticiranu grafiku (razne vrste transformacija, animacije, 3D grafika, transparentnost).

Aplikacije se prikazuju korektno pri svakom DPI.

Tipovi se nalaze u System.Windows i svim imeničkim potprostorima osim System.Windows.Forms.

Izvršava se na Windows 7, Windows Vista, Windows XP s Framework 3.0.

WPF aplikacije kreiraju se pomoću markup XAML-a (eXtensible Application Markup Language) i koda u pozadini.

Računarski praktikum 3


Ado net linq
ADO.NET, LINQ

Rad s relacijskim bazama podataka može se ostvariti pomoću LINQ-a, ADO.NET-a ili ADO.NET-a i LINQ-a zajedno.

Svrha LINQ-a (Language Integrated Query) je ubacivanje mogućnosti SQL upita u programski jezik C# (ADO.NET nije integriran u C#, a SQL nije objektno orijentiran).

Računarski praktikum 3


Alternativne implementacije
Alternativne implementacije

DLR – podržava dinamičke jezike kao što su ManagedJscript, IronRuby i IronPython.

.NET Compact Framework– softversko okruženje koje omogućava kreiranje i izvršavanje upravljanih aplikacija na računalnim uređajima s ograničenim resursima.Nasljeđuje cijelu .NET Framework arhitekturu, ali samo dio .NET FCL klasate sadrži i klase specijalno dizajnirane za to okruženje.

.NET Micro Framework– pruža podršku za manje uređaje.

Računarski praktikum 3


Tipovi aplikacija
Tipovi aplikacija

  • Server-side-only (ASP.NET)

  • Thin-client (ASP.NET s AJAX-om)

  • Rich interactive (Silverlight)

  • Traditional desktop (WinForms)

  • Rich Desktop (WPF)

Računarski praktikum 3


Konzolna aplikacija
Konzolna aplikacija

Konzolna aplikacija nema grafičko korisničko sučelje.

Unos i izlaz podataka vrši se preko komandnog prozora. Standardni izlaz se obavlja preko statičke klase

Console i njezine metode WriteLine.

Primjer (stvaranje .exe datoteke)

csc/reference:UnmanagedServer_net_wrapper.dll /out:ManagedClient.exeManagedClient.cs

Računarski praktikum 3


Kompiliranje
Kompiliranje

Neke opcije kod kompiliranja:

Računarski praktikum 3