Bevezetés a Visual Studio .NET használatába

Slides:



Advertisements
Hasonló előadás
Adatbázis gyakorlat 1. Szerző: Varga Zsuzsanna ELTE-IK (2004) Budapest
Advertisements

Az algoritmizálás oktatás egy lehetséges útja: Visual Basic
Programozás III STRING-XML.
Gaál László rendszermérnök Microsoft Magyarország
Felhasználói felületek és üzleti logika Bollobás Dávid ASP.NET
C++ programozási nyelv Gyakorlat hét
SQL Server 2005 Reporting Services a gyakorlatban
2 Forrás: The Standish Group International, Extreme Chaos, The Standish Group International, Inc., 2000.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
© Kozsik Tamás Beágyazott osztályok A blokkstrukturáltság támogatása –Eddig: egymásba ágyazható blokk utasítások Osztálydefiníciók is egymásba.
Fájlkezelés, IO Kivételkezelés Belső osztályok
Vizuális modellezés Uml és osztálydiagram UML eszközök
Programozás II. 3. Gyakorlat C++ alapok.
UNIVERSITY OF SZEGED D epartment of Software Engineering UNIVERSITAS SCIENTIARUM SZEGEDIENSIS Programozás II. 6. Gyakorlat const, static, dinamikus 2D.
Fejlett Programozási Technológiák II. Világos Zsolt 1. gyakorlat.
Készítette: Sárközi Anikó
WEB Technológiák Dr. Pance Miklós – Kolcza Gábor Miskolci Egyetem.
WSDL alapismeretek A WSDL (Web Services Description Language – Web szolgáltatások leíró nyelv) egy XML-alapú nyelv a Web szolgáltatások leírására és azok.
Entity framework Krizsán Zoltán
Előadó: Kárpáti Péter Üzleti folyamatvezérlés nagyvállalati környezetben (BizTalk Server 2004, Office InfoPath 2003 és Windows.
SQL Server 2005 Reporting Services Kószó Károly rendszermérnök Microsoft Magyarország.
Instant alkalmazások SharePoint platformon. A fejlesztés és a testre szabás határai elmosódtak. A testre szabást végző legtöbbször nem programozó A.
Célkeresztben az érettségi! A legjobb és leghatékonyabb eszközt akarjuk Kevesebb hibalehetőség, barátságos hibaüzenetek Kiváló fejlesztőeszköz Gyorsan.
Önleíró adatok: XML INFO ÉRA, Békéscsaba
Delphi programozás 8. ELŐADÁS ADO ActiveX Data Objects.
A JAVA TECHNOLÓGIA LÉNYEGE Többlépcsős fordítás A JAVA TECHNOLÓGIA LÉNYEGE Platformfüggetlenség.
Egyszerű webes alkalmazás fejlesztése Készítette: Simon Nándor.
Egyszerű webes alkalmazás fejlesztése
WEB Technológiák ISAPI ME Általános Informatikai Tsz. dr. Kovács László.
XML támogatás adatbázis-kezelő rendszerekben
Microsoft BI technológiák az eszközmenedzsment szolgálatában
Szaktanácsadás SQL Server UpgradeTeljesítményoptimalizálás Replikáció kialakítás Disaster Recovery tervezés.NET Framework alapú fejlesztések.
P ROGRAMOZÁS C# - BAN Kivételkezelés. P ÉLDA I. Nullával való osztás miatt kapjuk a hibaüzenetet.
Microsoft.NET Alapok.
A programozás alapjai A számítógép számára a feladat meghatá- rozását programozásnak nevezzük. Ha a processzor utasításait használjuk a feladat meghatározásához,
V 1.0 ÓE-NIK, Programozás I. A Microsoft Visual Studio 2010 használata.
ARCHITECTArchitect AcademyFoundationsInsidersMCPtréningekvizsgákgyakorlatprojektek Novák István eEvangelist – „Dive deeper” Grepton Zrt. Technológiai vezető.
Adatkezelés Ez az előadó neve beosztása vállalata.
Adatkezelés ABC: A Create Table-től a megjelenítésig Árvai Zoltán Consultant, Trainer Számalk Oktatóközpont.
Optimalizálás Ez az előadó neve beosztása vállalata.
Az ASP.NET programozási modell Ez az előadó neve beosztása vállalata.
LOGO Webszolgáltatások Készítette: Kovács Zoltán IV. PTM.
Segédlet vizuális programozáshoz Kovács László
1.4. Fordítás, szerkesztés, az objektumkönyvtár használata.
Hernyák Zoltán Programozási Nyelvek II.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz.
1 Hernyák Zoltán Web: Magasszintű Programozási Nyelvek I. Eszterházy.
Javascript Microsoft által készített kiegészítése Statikus típusosság Nagy projektek Windows 8 fejlesztésénél WinRT egy részét ebben írták Nyílt forráskódú,
APEX BMF, II. félév.
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 1. gyakorlat.
Visual Basic 2008 Express Edition
Komoróczy Tamás 1 Java programozási nyelv A nyelv alapjai.
A gyakorlatok munkakörnyezete
XML fejlesztések TSQL fejlesztések Tábla paraméter SQLCLR fejlesztések 8k limit feloldása Több paraméteres UDA-ek Ordered UDF-ek Entity Framework ADO.NET.
Webprogramozó tanfolyam
A Visual Basic nyelvi elemei
HTML ÉS PHP (Nagyon) rövid áttekintés. ADATBÁZISRENDSZEREK MŰKÖDÉSI SÉMÁJA Felh. interakció DB Connector MySQL ? A gyakorlaton:
Programozás III KIVÉTEL.
Violet nails Készítette: Csőke Vivien. Bevezetés Téma: Violet nails - műkörömkészítő weblapjának elkészítése A weboldal elérhető az alábbi címen: violetnails.atw.hu.
1Szegedi Tudományegyetem Természettudományi és Informatikai KarAntal Gábor Programozás I. 1. gyakorlat.
Java web programozás 5..
DLL használata és készítése Feladat
.NET FRAMEWORK Röviden Krizsán Zoltán 1.0. Tulajdonságok I Rövidebb fejlesztés 20 támogatott nyelv (nyílt specifikáció) 20 támogatott nyelv (nyílt specifikáció)
JAVA programozási nyelv NetBeans fejlesztőkörnyezetben I/13. évfolyam
Informatikai gyakorlatok 11. évfolyam
Programozás III JPA.
Alkalmazásfejlesztés gyakorlat
Informatikai gyakorlatok 11. évfolyam
Előadás másolata:

Bevezetés a Visual Studio .NET használatába Micskei Zoltán Microsoft Referencia Iskola

FELADAT Áttérés VB 6.0-ról Upgrade Wizard – egy VB 6.0-ás projektet megnyitva automatikusan elindul. (csak a VS.NET bizonyos verzióiban) A Helpben részletes leírások: ms-help://MS.VSCC/MS.MSDNVS/vbcon/html/vboriUpgradingFromVisualBasic60.htm FELADAT

FELADAT A VS.NET felülete Start Page Dokkolható munkaablakok Auto Hide funkció, animáció kikapcsolása Solution, Properties, Server Explorer … Help index, szövegkörnyezet érzékeny súgó FELADAT

FELADAT Hello VB.NET! Új WindowsForm projekt Gomb, aminek hatására megjelenik egy cimkében a „Hello VB.NET!” szöveg Vezérlő színének, betűtípusának, elhelyezkedésének módosítása IntelliSense (CTRL + Space), F1 Help Kód fordítása, futtatása, Debug mód FELADAT

Generált fájlok sln: Solution (megoldás), több projektet fog össze vbproj: VB Projekt fájl, megmondja, hogy milyen egyéb fájlok tartoznak hozzá vb: VB forrás (bármi lehet: form, modul..) resx: formon lévő erőforrások (kép, ikon) \bin: lefordított fájlok

A VB.NET nyelvi újdonságai

Legfontosabb újdonságok Valódi objektum orientáltság Egyszerűsített, konzisztensebb programozási nyelv Többszálas programozás Teljes kompatibilitás a .NET-es környezettel

OO alapok Objektum: a rendszer egyedi szereplője, ami a külső világ felé a viselkedésével, szerkezetével és állapotával adható meg. Osztály: ugyanolyan tulajdonságú objektumok közös leírása

Példányosítás Az osztály szerkezetét definiáljuk, és utána, ha egy olyan típusú objektumra van szükségünk, akkor létrehozunk belőle egy konkrétat, példányosítunk. Pl. : Dim al As ArrayList al = New ArrayList(3)

Osztály elemei Tulajdonságok: „az objektum lokális változói”. Az objektum valamilyen jellemző adata. Metódus: Az objektum tulajdonságait módosító eljárások. Esemény: Külső beavatkozás, pl. rákattintás az objektumra, amire az reagál. Az eseményeket a .NET futtatókörnyezet juttatja el a programunkhoz.

Konstruktor Egy minden osztálynál megtalálható metódus. Az objektum létrehozásakor lefutó függvényt hívják konstruktornak, az inicializáló kódok kerülnek ide. Neve: New()

Polimorfizmus (Overloading) Egy osztálynak lehet több ugyanolyan nevű metódusa, amiknek más a paraméterezése. A Visual Studio ilyenkor egy nyilak segítségével görgethető listát jelenít meg, amiben az összes ilyen nevűt felsorolja.

Strukturált hibakezelés A hasznos műveletek, és a hibakezelés szétválasztható. Először megpróbálunk végrehajtani valamit, majd utána nézzük sorra a hibalehetőségeket. Try ‘muveletek Catch ‘hibakezeles End Try

Eddigi függvények A VB 6.0-ból megszokott függvények (pl. Cint, Left…) továbbra is használhatóak. A Microsoft.VisualBasic névtérben találhatóak. (De: mindegyik funkciója megoldató a .NET FrameWork (System névtér) valamelyik részével is.)

Bevezetés a .NET világba Micskei Zoltán

A cél A Microsoft „víziója”, hogy a felhasználók az Őket érdeklő információt bármikor, bármilyen eszközön elérjék.

A „.NET világ”

.NET FrameWork Az új futtatókörnyezet, a .NET lelke Egy egységes felület az összes, eddig külön-külön létezett technológia (ASP, MFC, VB Forms) „egyesítésével”. Az alapvető szolgáltatásokat egy közös, platformtól, programozási nyelvtől, eszköztől független, osztálykönyvtár segítségével érhetjük el.

A FrameWork felépítése VB C++ C# JScript … Visual Studio.NET Common Language Specification ASP.NET Windows Forms Data and XML Base Class Library Common Language Runtime Windows COM+ Services

CLR Futtatókörnyezet: a szabványos köztes kódról (InterMediate Language) natív, gépi kódra fordít futási időben (Just-In-Time), vagy ha kérjük, már telepítéskor. Futás közben ellenőriz is, pl. típusosságot, memóriában arra a helyre elfér-e. „Menedzselt” környezet (managed), pl. biztonság, szemétgyűjtés stb.

Class Library A fejlesztéskor szükséges funkciók nagy részét biztosító osztályok (listák, rendezésektől kezdve hálózati kapcsolatok kezelésén keresztül távoli eljáráshívásig szinte minden). Az igazi feladat ennek a megismerése.

Data and XML Adatelérés: - relációs adatok: a teljesen újraírt ADO.NET (pl. connected és disconnected mód, DataSet) - XML kezelés (az összes X-s W3C szabvány:) a kettő közötti átjárás biztosítva van természetes.

Megjelenítés Web és Windows Forms: a szétválasztás csak itt a felső rétegben van, így sokkal könnyebb pl. lecserélni a felületet. Tucatnyi új vezérlő elemmel bővült mindkettő (pl. DataList, Validator) „VB-t a webre!”

CLS .NET fejlesztéskor használhatunk bármilyen nyelvet (akár többet is egy projektben), ami teljesíti a CLS-t. A fordítók köztes nyelvre fordítanak, majd a CLR alakítja ezt végrehajtható gépi utasításra. Microsoft: VB, C#, JScript, J#, C++ Külső fejlesztők: több mint 20 másik nyelv

Végrehajtási modell Common Language Runtime VB C# ... Script IL Fordítás: IL Futtatás: Common Language Runtime Standard JIT Compiler Natív kód

Az osztálykönyvtár System System.Data System.Xml System.Web Globalization Diagnostics Configuration Collections Resources Reflection Net IO Threading Text ServiceProcess Security Design ADO SQLTypes SQL XPath XSLT Runtime InteropServices Remoting Serialization SessionState Caching Services Description Discovery Protocols UI HtmlControls WebControls System.Drawing Imaging Drawing2D Printing System.WinForms ComponentModel

Szemétgyűjtés Változás: nem a programozónak kell a lefoglalt memóriát felszabadítani (mert úgyis elfelejti), hanem egy központi folyamat „eltakarítja”, amikre már nem hivatkoznak. Memória-elszivárgástól (memory leak) végre megszabadultunk.

Assembly Alapegység a fordításnál Automatikus verziókövetés (DLL Hell) Biztonság (eredetiség igazolása strong key, futási jogok assembly szinten) Meta-adatok segítenek leírni: önleíró szerkezet

Szeparálás Logikailag: osztályok hierarchikus névterekbe szervezhetőek Fizikailag: teljesen különválasztva a logikaitól (egy fájlban több osztály, nem kell könyvtárstruktúrának a névtereket követni, több forrásfájl csomagolható egy assemblybe)

.NET más platformokon 2002 december: megjelent a CLI és C# ISO szabvány Rotor: osztott forráskódú implementáció oktatási és kutatási célokra (kb 2 millió sor kész már:) (pl. Distributed GC) Mono: .NET Framework Linuxra, open source, kb. 50% kész, nem csak az alap névterek (pl. ADO.NET is)

.Net Framework SDK .NET-es fejlesztéshez nem szükséges a Visual Studio.NET! Tartalmazza a fejlesztéshez, fordításhoz szükséges segédprogramokat Teljes dokumentáció, példák, tutorialok Ingyenes Kb 200 MB helyet foglal

Tanács Ha a parancssort használjuk, kapcsoljuk be az automatikus kiegészítést, így egy gomb lenyomásával kiegészíti a file és könyvtárneveket. (WinXP-ben már be van kapcsolva) A Q310530 knowledge base cikk leírja pontosan mit kell tennünk.

FELADAT Hello Console! Hello World feladat paracssori eszközökkel Notepadben írjuk meg: HelloConsole.vb Írjuk le mindig a lezáró részt egyből \WINDOWS\Microsoft.NET\Framework\v<verzio> könyvtárban vannak a fordítók Fordítás: vbc HelloConsole.vb FELADAT

Sub Main(ByVal CmdArgs() As String) Csiszoljuk egy kicsit! Option utasítások: szigorúbb ellenőrzések Imports: ne kelljen olyan sokat gépelni Paraméter átadás: Sub Main(ByVal CmdArgs() As String) FELADAT

Még lehet mit csiszolni Ellenőrizzük, hogy kaptunk-e paramétert Használjunk osztályt a modul helyett! A Shared kulcsszó jelöli, hogy a metódus közös, az osztályhoz tartozik és nem az objektumhoz, az osztály nevét kell eléírni meghíváskor. FELADAT

Adatelérés – ADO.NET

FELADAT Egyszerű adatelérés Visual Studio grafikus eszközeivel Fogd és vidd módszer Access fájlból adatok olvasása, majd módosítások visszamentése DataAdapter Fill és Update metódusa FELADAT

Mi is az az ADO.NET? Interfészek és absztrakt osztályok gyűjteménye Relációs adatbázisok elérésére Adatbázis független Egységes, adatbázis független kódolást tesz lehetővé

ADO.NET implementációk A framework részeként OleDb Microsoft SQL Server Egyéb implementációk a Microsoft-tól ODBC Oracle Más cégek implementációi Pl: MySQL

Az Adatbázis interfészek fejlődése Alapvetően kurzoros megoldás Első generáció Csak olvasható Egyirányú Második generáció Kétirányú Harmadik generáció Írható is

A kapcsolat alapú modell Előnyök Egyszerűbb a konkurencia kezelése Az adatok mindenhol a legfrissebbek Hátrányok Folyamatos hálózati kapcsolat Skálázhatóság

A kapcsolat nélküli modell Előnyök Nem szükséges folyamatos hálózati kapcsolat Skálázhatóság Hátrányok Az adatok nem mindig a legfrissebbek Ütközések lehetségesek

DataReader kontra DataSet Egyirányú, csak olvasható Ha az adatokat azonnal feldolgozzuk DataSet Lokális adat cache Ha az adatok közt navigálni is akarunk Ha az adatokat módosítjuk is

Adatbázis kezelés DataReader-el SqlDataReader Lépések Kapcsolat megnyitása Parancs futtatása Eredmény feldolgozása Reader lezárása Kapcsolat lezárása SqlCommand SqlConnection SQL Server

Az adatbázis kapcsolat felépítése ConnectionString megadása: ″server=(local);database=db;Integrated Security=SSPI″ Tanácsok Minél később megnyitni a kapcsolatot Minél előbb lezárni A kapcsolatokat a FrameWork újra felhasználja a teljesítmény növelése érdekében (pooling)

Az adatbázis parancs használata IDbCommand interfész Megadja, hogy mit is akarunk csinálni 3 különböző típus (CommandType) Tárolt eljárás Tábla teljes tartalma SQL query A parancs szövege (CommandText) Az adatbázis kapcsolat (Connection)

A lekérdezés eredménye ExecuteReader() Több rekord lekérdezése (kurzor) ExecuteScalar() Egy érték lekérdezése ExecuteNonQuery() Nincs visszatérési érték (Pl: INSERT esetén)

Gyakorlati tanácsok Ha lekérdezést adunk meg, használjunk paramétereket! Speciális karakterek nem okoznak gondot Biztonságos De inkább használjunk tárolt eljárásokat! Gyorsabb, hálózati forgalom spórolható meg Biztos, hogy csak azt csinálnak majd az adatokkal, amit mi terveztünk.

Hibakezelés A fontos hibák kivételeket okoznak A reader-t, és a kapcsolatot le kell zárni! Megoldás kivétel kezeléssel Lezárások a finally blokkban

Adatbázis kezelés DataSet-el Adatbázis a memóriában Tartalma Táblák, mezők, sorok Nézetek, kényszerek Kapcsolatok (szülő-gyermek) Lehetőségei Feltöltése (alapállapot) Visszatöltése (minden, ami változott)

Többformos mintapélda

Házhozszállítási Díj Számoló 1.0 Bekérjük a címét, és megadjuk az összeget A címet külön formon kérjük be, részekre szétszedve A számolás „bonyolult”, ezért külön projketben lévő osztály végzi Csináljunk menüt is az alkalmazásnak FELADAT