+ All Categories
Home > Documents > Elementele Limbajului Vb Net 2013-2014

Elementele Limbajului Vb Net 2013-2014

Date post: 25-Feb-2018
Category:
Upload: andreea-ilmb
View: 240 times
Download: 1 times
Share this document with a friend

of 39

Transcript
  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    1/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    1

    Confereniar universitar dr. Veronica POPESCU

    UNITATEA DE NVARE 3

    ELEMENTELE LIMBAJULUI VB.NET___________________________________________________________________________

    CuprinsObiectivele unitii de nvare 3

    3.1. Introducere n VB.NET

    Evoluia limbajului BASICCaracteristicile limbajului VB.NETPlatforma .NET FrameworkStructura unei aplicaii n VB NETntrebri

    3.2. Tipuri de date

    Definirea conceptului de tip de datCategorii de tipuri de dateCopierea i compararea datelorntrebri

    3.3. Structurile lexicale ale limbajului VB.NET

    Categorii de uniti lexicaleComentariileCuvintele cheieIdentificatorii

    LiteraliiSeparatoriiVariabileleConstanteleOperatoriInstruciunilentrebri

    3.4. Instruciuni n VB.NET

    Instruciunile declarativeInstruciunile de control

    Alte instruciuni executabilentrebri

    3.5. Subprograme in VB.NET

    Funciile de sistem (intrinseci)Subprogramele definite de utilizatorntrebri

    Bibliografie Unitatea de nvare 3

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    2/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    2

    Confereniar universitar dr. Veronica POPESCU

    OBIECTIVELE UNITII DE NVARE 3

    nsuirea cunotinelor necesare pentru a nelege noiunile de soluie, proiect i

    aplicaie.

    Cunoaterea caracteristicilor platformei .NET Framework, a provocrilor

    induse de globalizarea programrii n Internet i soluiile de unificare adoptate.

    Definirea conceptului de tip de dat, nelegerea tipurilor de date, a modului de

    comparare i copiere.

    nsuirea unitilor lexicale n VB.NET i a deprinderilor de utilizare corect a

    lor.

    nsuirea principalelor instruciuni declarative i de control implementate n

    VB.NET.

    Cunoaterea principalelor categorii de funcii de sistem (intrinseci) implementate

    n VB.NET.

    Definirea i apelul subprogramelor definite de utilizator.

    3.1. Introducere n VB.NET

    Evoluia limbajului BASIC

    Evoluia limbajului BASIC (Beginners Allpurpose Symbolic Instruction Code) poate fi

    sintetizat astfel:

    a fost creat n 1963 la Darmouth College, SUA, ca limbaj de programare facil pentru

    studenii cu profil uman;

    a cunoscut o larg rspndire pe microcalculatoarele anilor 70 i home computers n

    anii 80;

    n 1975 firma Microsoft ofer un interpreter BASIC pentru calculatorul Altair 8800(primul produs al firmei nou nfiinate);

    Microsoft a dezvoltat ulterior noi versiuni: pentru MS-DOS (GWBasic i QBasic);

    pentru interfee grafice ncepnd din 1991(VB versiunea 1), 1998 VB 6; limbaje

    derivate (VBA Visual Basic for Application ncorporat n MS-Office; VBScript

    pentru WEB). Limbajul Visual Basic nu a rmas pe loc, n timp ce provocrile

    tehnologice s-au modificat i au crescut. VB 3 a adugat capabilitatea DAO (Data

    Access Object) pentru a accesa bazele de date i alte surse de date. VB 4a oferit doucompilatoare separate unul pe 16 bii i altul pentru 32 bii. De asemenea a permis

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    3/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    3

    Confereniar universitar dr. Veronica POPESCU

    dezvoltatorilor s construiasc programe pe baza modelului COM (Component Object

    Model), oferind posibilitatea de a crea biblioteci cu legturi dinamice (DLL) i a

    debutat programarea bazat pe clase. n VB 5limbajului i s-a adugat capacitatea de a

    construi i distribui controale ActiveX. VB 6a fost rescris n ntregime i a oferit noi

    controale de WEB i posibilitatea motenirii interfeelor pentru clase;

    VB Net este succesorul lui VB6; versiunile lui VB Net sunt: 2002 (versiunea 7.0),

    2003 (versiunea 7.1), 2005 (versiunea 8.0), 2008 (versiunea 9.0), 2010 (versiunea

    10.0). Tranziia de la limbajele de programare tradiionale la VB.NET este considerat

    de ctre muli1, inclusiv de Bill Gates, a fi mai dramatic dect tranziia de la DOS la

    Windows.

    Caracteristicile limbajului VB.NET

    VB.NET:

    este un limbaj complet pentru programarea orientat pe obiecte, avnd

    implementate toate paradigmele programrii orientate obiect;

    este un limbaj puternic tipizat la activarea directivei Option explicit on (care

    foreaz definirea explicit a variabilelor nainte de utilizare). Dac se activeaz i

    Option strict on(nu vor fi permise conversiile implicite cu pierdere de mrime sau

    precizie) ;

    trateaz structurat excepiile prin structura: Try Catch Finally;

    ofer suport pentru prelucrrile multi-fir (multi-threading);

    ofer suport pentru dezvoltarea WEB.

    Platforma .NET Framework

    Trecerea de la programarea clasic la programarea orientat pe obiecte a permis realizarea

    saltului calitativ dup ce limbajul C++

    a ctigat teren. Dar cum VB.NET i C++

    au rutine deexecuie separate, fiecare cu componente distincte. Pentru a rezolva problema comunicrii

    ntre limbaje Microsoft a dezvoltat mai nti mecanismele COM. Modelul COM este un

    standard (o convenie) care stabilete regulile cum trebuie construit o component COM,

    pentru a putea comunica cu orice component COM, indiferent de limbajul n care a fost

    construit. Astfel COM a nceput s acioneze ca un standard binar de interoperabilitate ntre

    obiecte. S-a dovedit c utilizarea standardului COM prin intermediul Internetului pe o main

    aflat la distan nu s-a putut realiza fr probleme, deoarece modelul COM distribuit

    1John Connell, Microsoft Visual Basic .NET, Editura Teora 2003, pg. 4

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    4/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    4

    Confereniar universitar dr. Veronica POPESCU

    (DCOM) s-a lovit de eterogenitatea sistemelor de operare i a platformelor de lucru n

    Internet. Au fost mai multe ncercri de soluionare a problemelor ivite (proiectul COBRA,

    etc.), fr a se gsi o soluie viabil n marea eterogenitate de platforme, sisteme i

    dispozitive.

    Platforma .NET Framework a venit cu urmtoarea soluie2: n loc de a nva noi tehnici

    pentru a optimiza programele n funcie de echipamentul hardware i sistemul specific de

    operare vom utiliza compilatoare separate n funcie de arhitectur pentru fiecare platform

    nou (sau deja existent) i apoi vom denumi fiecare versiune pe care dezvoltatorii o pot

    utiliza .NET. La baza acestei noi abordri se afl Rutina de execuie a limbajului comun

    (Common Language Runtime - CLR). CLR ofer multe beneficii programatorilor n orice

    limbaj .NET (VB.NET, C++ , C# sau altul din cele 17 limbaje suportate de CLR). CLR

    faciliteaz pentru programatorii n VB.NET proiectarea i construirea de aplicaii ale cror

    obiecte pot interaciona cu obiectele scrise n alte limbaje, deoarece platforma .NET este

    construit pe mai multe nivele astfel:

    Compilatorul VB ca i compilatoarele celorlalte 16 limbaje recunoscute de

    platform se gsesc n partea superioar a platformei;

    Sub compilatoare se gsesc specificaiile comune de limbaj (Common Language

    Specifications - CLS): un set de reguli minimal pentru a asigura interoperabilitatea

    componentelor obinute cu limbajele recunoscute de platform.

    Practic, programele scrise n limbajele de programare care vor respecta cerinele minimale

    impuse de Common Language Specifications - CLS, vor putea rula pe platforma .NET, vor

    putea valorifica toate clasele i derivatele acestora din biblioteca comun i vor putea fi

    executate pe orice calculator pe care lucreaz Common Language Runtime - CLR.

    Pe ultimul nivel se afl CLR (Common Language Runtime) care preia codul

    generat de VB.NET i orice limbaj compatibil (care respect specificaiile CLS) i

    l convertete n limbajul nativ al arhitecturii platformei curente.Practic CLR (Common Language Runtime) este marele unificator, el fiind responsabil de

    rularea programului pe orice platform pe care poate rula CLR. CLR (Common Language

    Runtime) ofer suport pentru tot ce se afl deasupra sa: biblioteca claselor de baz; date i

    XML; servicii de WEB sau interfee cu utilizatorul; CLS i compilatoare i asigur i

    conversia codului pentru arhitectura specific pe care se execut aplicaia, aa cum se

    prezint n diagrama de mai jos.

    2John Connell, Microsoft Visual Basic .NET, Editura Teora 2003, pg. 7

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    5/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    5

    Confereniar universitar dr. Veronica POPESCU

    Structura unei aplicaii n VB NET

    a) Soluii, proiecte i module

    Un proiecteste un grup de fiiere cu cod surs sau modulecare, atunci cnd este compilat i

    rulat, formeaz o singur aplicaie, cum ar fi un program executabil, o bibliotec, un serviciu

    WEB sau o aplicaie WEB de tipul ASP.NET.

    O soluie este un container pentru un proiect sau mai multe proiecte inter-relaionate i se

    folosete pentru gestionarea proiectelor. Orice proiect este plasat n cadrul unei soluii. Cnd

    o soluie conine mai multe proiecte, acestea au de regul, legtur ntre ele.

    b) Tipuri de proiecte

    Tipurile de proiecte care pot fi realizate n VB.NET sunt prezentate n caseta de modele

    (templates) la crearea unui nou proiect (New Project) i difer de destinaia acestora, fiind

    diferite pentru:

    Aplicaii Windows:

    Servicii WEB:

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    6/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    6

    Confereniar universitar dr. Veronica POPESCU

    Astfel, de exemplu:

    .Windows Application (aplicaie Windows) este folosit pentru a crea o aplicaie

    executabil n format Windows, de obicei cu extensia .exe i reprezint standardul de aplicaii

    care lucreaz sub sistemul de operare Microsoft Windows;

    .Class Lirary(biblioteca de clase) este folosit pentru a crea un fiier bibliotec cu extensia

    .dll;

    .Console Application (aplicaie n mod consol) folosit pentru a crea o aplicaie

    executabil care poate rula n mod consol (din linia de comand);

    .Windows Control Library(librrie de controale Windows) folosit pentru a crea controale

    Windows definite de utilizator;

    .ASP.NET Web Application (aplicaie Web ASP.NET) folosit pentru a crea o aplicaie

    Web de tip ASP.NET;

    . ASP.NET Web Service(serviciu Web ASP.NET) folosit pentru a crea un serviciu Web.

    c) Folosirea instrumentului Solution Explorer

    Solution Explorer(instrumentul de navigare prin soluii) este un instrument Visual Studio,

    care permite gestionarea i navigarea printre proiectele i resursele unei soluii. Activarea luiSolution Explorer se face selectnd din meniul ferestrei design View, Solution Explorer.

    Pentru a vizualiza toate fiierele soluiei se poate activa opiunea Show All Files (afieaz

    toate fiierele).

    Solution Explorer permite: adugarea unui proiect nou unei soluii existente (opiunea Add

    (adugare) din meniul contextual); adugarea unui proiect preexistent la o soluie (opiunile:

    Add (adugare) din meniul contextual, Existing Project (proiecte preexistente)); configurarea

    proprietilor paginii unei soluii (n caseta Property Pages (pagini cu proprieti)), inclusiv

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    7/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    7

    Confereniar universitar dr. Veronica POPESCU

    stabilirea proiectului de start; configurarea paginilor unui proiect, inclusiv stabilirea

    subrutinei de Startup al unui proiect; etc.

    ntrebri

    1.Prezentai cteva argumente n favoarea ideii c Limbajul Visual Basic nu a rmas pe loc, n

    timp ce provocrile tehnologice s-au modificat i au crescut.

    2.Care sunt principalele caracteristici ale limbajului VB.NET?

    3.Care au fost principalele provocri induse de globalizarea programrii pentru Internet?

    4. Care sunt soluiile adoptate de .NET Framework pentru a permite realizarea serviciilor

    Web?

    5.Enumerai cteva tipuri de proiecte care por fi realizate cu VB.NET.

    6.Care este rolul instrumentului Solution Explorer?

    3.2. Tipuri de date

    Definirea conceptului de tip de dat

    Un tip de date este un plan (un model) pentru alocarea unei zone de memorie. Acest plan

    determin domeniul de valori pe care memoria le poate stoca, modul de stocare i operaiile

    pe care le putem realiza n memorie.

    Categorii de tipuri de date

    VB.NET utilizeaz dou categorii de tipuri de date: tipul valoare i tipul referin.

    nelegerea diferenelor dintre tipurile de date valoare i referin este important din mai

    multe motive:

    Sunt tratate diferit de ctre sistemul de gestiune a memoriei;

    Testeaz egalitatea n mod diferit;

    Sunt iniializate diferit de rutina de execuie a limbajului comun (CLR); Sunt tratate diferit n declaraiile de atribuire.

    a) tipul valoare(primitiv sau elementar)

    conine ntotdeauna o valoare;

    se iniializeaz cu valoarea predefinit (dac nu sunt iniializate explicit);

    poate fi ntotdeauna accesat direct;

    nu poate fi derivat n alte tipuri (este nchis - sealed);

    este memorat n stiv (stack).

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    8/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    8

    Confereniar universitar dr. Veronica POPESCU

    Tipurile primitive din VB.NET sunt identificate prin intermediul cuvintelor cheie care sunt n

    realitate alias-uri pentru tipuri de structuri predefinite din spaiul de nume System (exemplu -

    tipul Byte este alias-ul pentru System.Byte).

    Tipurile de date de tip valoare acceptate de VB Net sunt:

    TipMrimealocaiei

    Valoareaimplicit

    Domeniu

    Byte 1 octet 0 0-255 (fr semn)

    Boolean 4 octei False True sau False

    Char 2 octei Chr(0) 0, 65.535

    Short 2 octei 0 -32.768 , 32.767

    Integer (ntreg) 4 octei 0 2.147.483.648, 2.147.483.647

    Long (ntreg lung) 8 octei 0 9.223.372.036.854.775.808,

    -9.223.372.036.854.775.807

    Single (simpl precizie) 4 octei 0.0 -3.402823E38, -1.401298E-45

    Double (dubl precizie) 8 octei 0.0 -1.79769313486231D308, -4.940654584124D-324

    Date (dat calendaristic) 8 octei #01/01/0001 12:00:00AM#

    ian 1,100 i dec 31,9999

    Structure n funcie deplatform

    Ushort 2 octei 0, 65.535

    b) tipul referin

    conine o referire ctre o alt adres de memorie la care se afl datele propriu-zise;

    un tip referin conine o adres valid ctre un obiect sau o adres vid (Nothing); cu

    o referin vid este ilegal s se fac altceva dect s i se atribuie o valoare adecvat;

    nu poate fi iniializat automat cu valori implicite;

    referinele sunt pstrate de obicei n stiv;

    datele propriu-zise sunt pstrate n memoria dinamic (heap grmad, mulime ).

    Acest aranjament permite colectorului de gunoaie s urmreasc un obiect care a fost marcat

    pentru a fi ters i s elibereze memoria alocat obiectului atunci cnd acesta nu mai este

    necesar.

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    9/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    9

    Confereniar universitar dr. Veronica POPESCU

    Tipurile de date referin n VB Net sunt:

    Tip Mrimea locaiei Domeniu

    Object 4 octei Variaz

    String 10 + 2 octei/caracter 0, 2 miliarde de caractereUnicode

    Copierea i compararea datelor

    Cum n cazul datelor de tip valoare zona de memorie conine chiar valoarea, atunci cele dou

    zone de memorie vor conine aceeai valoare. n codul prezentat mai jos valorile vor fi egale,

    chiar dac ocup zone de memorie diferite:

    Dimv1 AsInteger= 20Dimv2 AsInteger= 20

    Copierea (atribuirea) datelor de tip valoare nseamn c valoarea (coninutul) unei zone dememorie va fi copiat (atribuit) altei zone de memorie:

    v1 = v2

    (nsemn c v1 va lua valoarea lui v2);

    Dac ulterior modificm valoarea lui v1:

    V1 = 20

    ( v2 rmne nemodificat).

    n faza iniial, dei obiectele o1 i o2 sunt de acelai tip, variabilele de tip referin vor

    memora adrese diferite de memorie. Chiar dac la adresele respective vor fi obiecte identice,

    n urma comparaiei se va obine rezultatul False.

    Copierea (atribuirea) datelor de tip referin nseamn c valoarea (coninutul) unei zone de

    memorie va fi copiat (atribuit) altei zone de memorie. Cum n cazul datelor de tip referin

    zona de memorie conine adresa unde se afl un obiect, atunci cele dou zone de memorie vor

    puncta (vor adresa) aceeai zon de memorie, deci acelai obiect. n codul prezentat mai jos:

    o1 = o2

    nsemn c o1 va lua (i va fi transferat) coninutul lui o2; adic att o1 ct i o2 se refer la

    aceeai zon de memorie (n general acelai obiect); dac ulterior se modific obiectul prin

    o1, va fi modificat i o2. Mai mult, obiectul referit prin o1 i pierde referina (nu mai poate fi

    accesat), devine indisponibil i va intra n sfera de influen a Colectorului de gunoaie vezi

    figura 3.2(1).

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    10/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    10

    Confereniar universitar dr. Veronica POPESCU

    PublicClassForm1

    PrivateSubButton1_Click(ByValsender AsSystem.Object, ByVale AsSystem.EventArgs) HandlesButton1.Click

    Dimv1 AsInteger= 20Dimv2 AsInteger= 20

    Dimo1 AsNewLabelDimo2 AsNewLabelMessageBox.Show(v1.Equals(v2).ToString, "v1=20, v2=20 - Dei ocup

    zone de memorie diferite") 'True'Dei ocup zone de memorie diferite v1 i v2 au valori egalev2 = 25MessageBox.Show(v1.Equals(v2).ToString, "v1=20, v2=25") 'False'Acum v1 este diferit de v2v1 = v2'Coninutul lui v2 i se atribuie i lui v1MessageBox.Show(v1.Equals(v2).ToString, "v1 = v2") 'True'Dei ocup zone de memorie diferite v1 i v2 au valori egalev1 = 20

    MessageBox.Show(v1.Equals(v2).ToString, "Modificarea valorii lui v1las pe v2 nemodoficat") 'False'Modificarea valorii lui v1 las pe v2 nemodoficatMessageBox.Show(o1.Equals(o2).ToString, "Dei conin referine la

    obiecte identice") 'False'Dei conin referine la obiecte identice, variabilele referin

    au valori diferiteo1.Text = "Eticheta1"o2.Text = "Eticheta2"MessageBox.Show("Propietatea Text a lui o1 este: "& o1.Text & "

    Iar propietatea Text a lui o2 este: "& o2.Text, "o1 si o2 refera obiectediferite")

    'o1 si o2 refera obiecte diferiteo1 = o2'Coninutul variabilei o2 se atribuie variabilei o1 (conin/refer

    - aceai zon de memorie, adic acelai obiect)MessageBox.Show(o1.Equals(o2).ToString, " o1 = o2") 'TrueMessageBox.Show("Propietatea Text a lui o1 este: "& o1.Text & "

    Iar propietatea Text a lui o2 este: "& o2.Text, " Amandoua variabilelerefera obiectul 2")

    'Variabilele o1 si o2 au aceeasi valoare (refera aceasi adresa dememorie - acelasi obiect)

    o1.Text = "Valoare modificata"MessageBox.Show("Propietatea Text a lui o1 este: "& o1.Text & "

    Iar propietatea Text a lui o2 este: "& o2.Text, " Modificarea uneiproprietati prin variabila de referinta o1 modifica aceeasi proprietate dino2")

    'Modificarea unei proprietati prin variabila de referinta o1modifica aceeasi proprietate din o2

    'De fapt zona de memorie (obiectul referit initial de o1)s-apierdut (nu mai este referit)

    EndSubEndClass

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    11/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    11

    Confereniar universitar dr. Veronica POPESCU

    Figura 3.2(1)

    Iniial:

    Ulterior: O1= O2

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    12/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    12

    Confereniar universitar dr. Veronica POPESCU

    ntrebri

    1.Definii conceptul de tip de dat.

    2.Ce stabilete tipul de dat pentru zona de memorie?

    3.Prin ce se caracterizeaz datele de tip valoare?

    4.Prin ce se caracterizeaz datele de tip referin?

    5.Cnd dou variabile de tip referin sunt egale?

    3.3. Structurile lexicale ale limbajului VB.NET

    Categorii de uniti lexicale

    Un program VB.NET din punct de vedere lexical se compune dintr-un set de elemente de

    programare (uniti lexicale), grupate n urmtoarele categorii:

    comentarii;

    cuvinte cheie (cuvinte rezervate);

    identificatori (denumiri date de utilizator sau generate automat de sistem);

    literali (valori);

    separatori;

    variabile;

    constante;

    operatori;

    expresii;

    instruciuni;

    funcii i proceduri intrinseci (existente n sistem);

    proceduri i funcii definite de utilizator.

    Comentariile

    Comentariile sunt note explicative n program care sunt ignorate de compilator. Ele se

    definesc cu ajutorul:

    apostrofului ();

    sau

    a comenziiRem.

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    13/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    13

    Confereniar universitar dr. Veronica POPESCU

    n sensul c tot ce urmeaz dup apostrof este comentariu, iar linia care ncepe cu Remeste

    comentariu.

    Exemple:

    Dimv1 AsInteger= 20 'Definire variabila tip valoare cu initializare

    Rem dei ocup zone de memorie diferite v1 i v2 au valori egale

    Cuvintele cheie

    Cuvintele cheie sau cuvintele rezervate sunt cuvinte cu rol bine determinat n cadrul

    metalimbajului.

    Exemple de cuvinte rezervate: As, ByVal, Class, Dim, Integer, Private, Public.

    Identificatorii

    Sunt nume atribuite de utilizator diferitelor elemente de limbaj (variabile, constante, clase,

    proprieti, metode, etc.) sau sunt generate automat de sistem.

    Identificatorii:

    trebuies fie diferii de cuvintele cheie;

    trebuies nceap cu o liter sau ( _ underscore);

    pot conine litere, cifre sau _;

    dac ncep cu _ trebuie s mai conin cel puin o cifr sau liter;

    nu pot depi 1023 caractere.

    Dei limbajul nu face deosebire ntre literele mari i mici cea mai utilizat convenien VB

    NET este:

    fiecare cuvnt din denumirea unei clase sau metode ncepe cu liter mare

    (ContCurent, CitesteNume);

    denumirea unei variabile sau proprieti ncepe cu liter mic, iar urmtoarele

    cuvinte ncep cu majuscule (dataCurenta, numeAngajat);

    identificatorii pentru constante se scriu cu litere mari, desprite prin _

    (COTA_TVA).

    Literalii

    Literalii descriu (definesc/conin) valori de un anumit tip. Astfel:

    valorile alfanumerice (string) sunt ncadrate ntre ghilimele ( );

    data calendaristic este ncadrat ntre diez (# #);

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    14/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    14

    Confereniar universitar dr. Veronica POPESCU

    Exemple:

    DimiNumar AsInteger= 123 'Numar intregDimstrNume AsString= "Ion"'SirDimdtDataUnu AsDate= #12/10/2011# 'Data calendaristicaDimdtDataCurenta AsDate= Now() 'Data curenta

    Separatorii

    Separatorii sunt caractere speciale utilizate pentru delimitarea unitilor lexicale. Acetia

    sunt:

    parantezele rotunde () - utilizate la: definirea procedurilor, funciilor, tablourilor

    sau la modificarea precedenei operatorilor;

    punctul (.) - separ denumirea unui obiect de denumirea unui membru (calific o

    proprietate sau o metod);

    virgula(,) - separ elementele unei mulimi (argumentele unei funcii);

    liniua de subliniere(_) precedat i urmat de spaiu permite continuarea unei

    instruciuni pe linia urmtoare;

    dou puncte(:) separ dou sau mai multe instruciuni scrise pe acelai rnd.

    Observaii:Trebuie precizat c un spaiu sau mai multe joac rol de separator. De asemenea

    operatorii aritmetici i de comparare sunt i separatori.

    VariabileleVariabila reprezint o zon din memoria intern n care este stocat o valoare de un anumit

    tip, care poate fi modificat n timp.

    O variabil este definit:

    printr-un calificativ de acces;

    printr-un nume (identificator);

    printr-un tip de dat;

    printr-o valoare.

    Lucrul cu variabilele presupune:

    Declararea variabilei

    [calificator de acces] numeVariabil [As tipData] [=valoare iniial]

    Definirea variabileipresupune:

    alocarea unei zone n memoria intern;

    stabilirea unui identificator (denumire); specificarea tipului de dat pe care o conine;

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    15/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    15

    Confereniar universitar dr. Veronica POPESCU

    precizarea calificativului de acces.

    Declararea unei variabilestabilete:

    durata de via (perioada de timp n care variabila poate fi utilizat);

    domeniul de vizibilitate (zona din program din care variabila este vizibil

    (accesibil, cunoscut). Domeniul de vizibilitate este dependent de locul n care

    variabila a fost definit i de nivelul de protecie stabilit);

    nivelul (drepturile) de acces (definete nivelul de protecie (de acces). Precizeaz

    permisiunea de acces a variabilei din afara zonei n care a fost definit).

    Drepturile de acces sunt : public, private, protected (accesibil n clasa n care a fost

    definit i n clasele derivate din aceasta), friend (\frend\) (accesibil numai n proiectul unde

    a fost definit), protectedFriend (combinaia celor dou).

    Iniializarea variabilei

    Iniializarea unei variabile nseamn setarea sa cu o valoare iniial. Iniializarea poate fi:

    realizat automat de compilator cu valoarea implicit (n cazul variabilei de tip

    valoare, dac programatorul nu o iniializeaz n mod explicit);

    trebuie realizat explicit de programator (n cazul variabilei de tip referin).

    Constantele

    Constantele descriu zone din memoria intern n care sunt stocate valori de un anumit tip carenu pot fi modificate.

    O constant este definit astfel:

    [calificator de acces] Const numeConstant [As tipData] =valoare

    Operatori

    Operatorul este un element ce execut o operaie asupra uneia sau mai multor valori (numite

    operanzi). Operatorii limbajului VB.NET sunt grupai n urmtoarele categorii:

    operatori aritmetici:

    Operator Descriere

    ^ Ridicare la putere

    Operatoriiunari: +,-

    *,/ nmulire/mprire

    \ mprire ntreag (returneaz partea ntreag ampririi a dou numere)

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    16/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    16

    Confereniar universitar dr. Veronica POPESCU

    Operator Descriere

    Mod Restul mpririi

    +,- Adunare/Scdere

    operatori de atribuire:

    Operator Sintaxa Descriere

    = operand1= operand2 Atribuie operandului din stnga(operand1) valoarea operandului dindreapta (operand2)

    += operand1+= operand2 operand1= operand1 + operand2

    -= operand1-= operand2 operand1= operand1 - operand2

    *= operand1*= operand2 operand1= operand1 * operand2

    /= operand1/= operand2 operand1= operand1 / operand2

    \= operand1\= operand2 operand1= operand1 \ operand2

    ^= operand1^= operand2 operand1= operand1 operand2

    operatori de comparare:

    Operator Descriere

    = Egal

    Diferit

    < Mai mic

    Mai mare

    >= Mai mare sau egal

    Is Compar dou valori de tip referin i returneaz True dacambele refer acelai obiect

    isNot Opusul lui Is

    Like Compar dou iruri de caractere. Admite i jokerii: ? oricecaracter singular; * zero sau mai multe caractere; # o cifr

    operatori de concatenare:

    Operator Descriere

    + Concateneaz doi operanzi doar dac ambii sunt de tip ir; ncearc sadune dac este posibil n caz contrar

    & Face conversia la modul string a opranzilor i i concateneaz

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    17/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    17

    Confereniar universitar dr. Veronica POPESCU

    operatori logici:

    Operator Sintaxa Descriere

    Not Not operandLogic Returneaz negaia logic a operandului

    And,AndAlso

    a)operandLogic1 AndoperandLogic2

    sau

    b)operandLogic1AndAlso operandLogic2

    a) Returneaz True dac ambii operanzi suntTrue i False n caz contrar

    b) Ca la a) dar ignor operandul2 dac primuleste False

    Or, OrElse

    a)operandLogic1 OroperandLogic2

    sau

    b)operandLogic1 OrElseoperandLogic2

    a)Returneaz True dac un operand este Truei False n caz contrar

    b)Ca la a) dar ignor operandul2 dac primuleste True

    Xor

    (sauexclusiv)

    operandLogic1 XoroperandLogic2

    Returneaz True cnd operanzii au valoridiferite

    ali operatori:

    Operator Sintaxa Descriere

    AddressOf AddressOfnumeProcedur

    Returneaz adresa din memorie a unei proceduri

    GetType GetType (tipDate) Returneaz obiectul aferent unui tip precizat

    TypeOf TypeOf operand is tipDate Returneaz True dac operand este de tipultipDate i Fals n caz contrar

    Instruciunile

    Instruciunile sunt uniti lexicale ale limbajului care descriu ce trebuie s fac programul(prelucrrile pe care le face). Sunt propoziii construite cu ajutorul cuvintelor cheie i/sau al

    expresiilor.

    Acestea pot fi:

    Instruciuni declarative

    Instruciunile declarative sunt cele prin care sunt definite variabilele,

    constantele, procedurile, clasele, etc.

    Instruciuni executabile

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    18/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    18

    Confereniar universitar dr. Veronica POPESCU

    Instruciunile executabile sunt instruciunile care declaneaz anumite aciuni. Acestea

    pot fi:

    Instruciuni de control;

    Alte instruciuni de execuie.

    Expresiile

    Expresia este o construcie format din cel puin un operand i un operator. Operanzii unei

    expresii pot fi variabile, constante, literali, proprieti sau metode ale unui obiect, funcii

    intrinseci VB.NET sau definite de utilizator, alte expresii.

    ntrebri

    1.Care sunt principalele uniti lexicale?

    2.Cum pot fi inserate comentariile ntr-un program VB.NET?

    3.Ce restricii trebuie s respectm atunci cnd construim un identificator?

    4.Ce rol au separatorii?

    5.Ce presupune lucrul cu variabilele?

    6.Care sunt principalii operatori logici i n ce ordine se execut?

    7. Dai exemple de ali operatori.

    8. Ce sunt instruciunile i cum se clasific?

    3.4. Instruciuni n VB.NET

    Instruciunile declarative

    Sunt instruciunile prin care se definesc variabile, constante, proceduri, clase, etc.

    Cele mai importante instruciuni declarative n VB.NETsunt:

    Instruciune Nivel Descriere Exemple

    ClassFiier/Clas

    Definete o clasutilizator

    Class Student

    End Class

    Const OricareDeclar una sau maimulte constante

    Const Pi As Single = 3,14

    Dim Oricare

    Declar una sau maimulte variabile(echivalent cu tipul

    Private)

    Dim a, b As Integer

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    19/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    19

    Confereniar universitar dr. Veronica POPESCU

    Instruciune Nivel Descriere Exemple

    EnumFiier/Clas

    Declar o enumerare,o list de constantentregi, fiecareidentificat printr-unnume

    Enum MsgBoxRezult

    Ok=1

    Cancel=2

    Abort=3

    Retry=4

    Ignore=5

    Yes=6

    No=7

    End Enum

    Function ClasDefinete o funcieutilizator sau metod

    Function ArieCerc (r As Single) As

    SingleConst Pi As Single = 3,141

    Return Pi*r^2

    End Function

    Property

    Set

    Get

    Clas

    Declar procedurispecifice pentruscrierea/citirea

    proprietilor(atributelor) unei clase

    Class Persoana

    Private m_Nume As String

    Public Property sNume() _

    As String

    Get

    Return m_Nume

    End Get

    Set(ByVal numeNou As String)

    m_Nume = numeNou

    End Set

    End Property

    End Class

    InterfaceFiier/Clas

    Definete o interfa(clas abstract pur,ce conine numaisemnturileoperaiilor)

    Interface FormeGeometrice

    End Interface

    Namespace FiierDefinete un spaiu denume propriu

    aplicaiei

    Namespace Operaii

    End Namespace

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    20/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    20

    Confereniar universitar dr. Veronica POPESCU

    Instruciune Nivel Descriere Exemple

    Sub ClasDefinete o procedurutilizator sau ometod

    Sub AfiseazaArieDreptunghi (p1 AsSingle, p2 As Single)

    MsgBox(p1*p2)

    End Sub

    Instruciunile de control

    Instruciunile de control (structurile de control) stabilesc ordinea de execuie a prelucrrilor,

    de cte ori sau pn cnd se execut anumite prelucrri.

    Acestea pot fi grupate n:

    structuri de control fundamentale (liniar, alternativ i repetitiv cu test iniial)

    a) liniar

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    21/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    21

    Confereniar universitar dr. Veronica POPESCU

    Exemplu n VB.Net

    Dimnota1 AsIntegerDimnota2 AsIntegernota1 = InputBox("Tastati nota1")

    nota2 = InputBox("Tastati nota2")

    MsgBox("nota1= "& nota1 & Chr(13) & Chr(10) & " nota2= "& nota2)MsgBox("media notelor= "& (nota1 + nota2) / 2)

    b) alternativ

    daccondiieatunci

    secvena 1

    altfel

    secvena 2

    sfrit(comand)

    Grafic Pseudocod

    implementarea n VB.NET

    If expresieLogica = TRUE Then

    secvena 1

    else

    secvena 2

    End If

    exemplu

    DimnotaLaProgramare AsIntegerDimnrPromovati AsInteger

    DimnrNePromovati AsIntegernotaLaProgramare = InputBox("Tastati nota la programare")IfnotaLaProgramare > 4 Then

    nrPromovati = nrPromovati + 1Else

    nrNePromovati = nrNePromovati + 1EndIfMsgBox(Promovati: & nrPromovati & Nepromovati: & nrNePromovati)

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    22/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    22

    Confereniar universitar dr. Veronica POPESCU

    c) structura repetitiv cu test iniial

    Ct timpcondiieexecut

    secvena

    sfritcomandGrafic Pseudocod

    implementarea n VB.NET

    While conditieLogica

    Secvena care se repet

    End While

    exemplu

    Dimraspuns AsString= "da"DimnumarIntreg AsInteger

    DimsumaNumerelor AsIntegersumaNumerelor = 0Whileraspuns = "da"

    numarIntreg = InputBox("Tastati un numar intreg: ")sumaNumerelor += numarIntregraspuns = LCase(InputBox("Mai sunt date? (da/nu)"))

    EndWhileMsgBox("Suma calculata= "& sumaNumerelor)

    alte structuri de control

    a) pseudo alternativ

    - stnga

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    23/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    23

    Confereniar universitar dr. Veronica POPESCU

    If expresieLogica = TRUE Then

    else

    secvena Nu

    End If

    - dreapta

    Schema logica

    Set_Instructiuni

    Pseudocod

    Daca

    Sfrsit daca

    Conditie

    NU DA

    Set_Instructiuni

    Altfel

    atunciconditie

    Set_Instructiuni

    Schem a logica Pseudocod

    Set_Instructiuni

    Daca

    Sfrsit daca

    Condit ie

    N U D A

    atuncicondit ie

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    24/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    24

    Confereniar universitar dr. Veronica POPESCU

    If expresieLogica = TRUE Then

    secvena Da

    End If

    b) If imbricat (if n if)

    If conditie_1Then

    [Set_Instruciuni_1]

    [ElseIf condiie_2 Then

    [Set_Instruciuni_2]]

    ...

    [Else

    [Set_Instruciuni_n]]

    End If

    Exemplu: S se scrie o procedur care realizeaz o apreciere n funcie de valoarea

    notei obinute.

    SubApreciere(iNota AsInteger)

    IfiNota = 9 OriNota = 10 ThenMsgBox("foarte bine")

    ElseIfiNota = 7 OriNota = 8 ThenMsgBox("bine")

    ElseIfiNota = 5 OriNota = 6 ThenMsgBox("satisfacator")

    ElseMsgBox("mai invata")

    EndIf

    EndSub

    c) structura alternativ generalizat

    - permite execuia selectiv a unui singur bloc de instruciuni ales dintre mai multeblocuri n funcie de o condiie (opiune) stabilit. O instruciune Select Case are

    aceleai posibiliti cu instruciunea If ... Then ... Else, dar ea face codul mai lizibil

    atunci cnd exist mai multe opiuni.

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    25/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    25

    Confereniar universitar dr. Veronica POPESCU

    Select Caseexpresie de testat

    [Caselista de expresii 1

    [bloc de instruciuni 1]]

    [Caselista de expresii 2

    [bloc de instruciuni 2]]

    .

    .

    .

    [Case Else

    [bloc de instruciuni n]]

    End Select

    Not:

    Execuia unei instruciuni Select Case ncepe ntotdeauna prin evaluarea expresiei de test,

    care poate fi o expresie numeric sau o expresie ir de caractere. Visual Basic compar apoi

    rezultatul acestei expresii cu valorile din fiecare bloc Case al structurii. Dac apare oechivalen, blocul de instruciuni asociat acelui Case va fi executat.

    Set_Instructiuni_1

    Schema logica

    Set_Instructiuni_n

    Pseudocod

    Set_Instructiuni_1

    Alege

    Sfrsit alege

    expresie

    Set_Instructiuni_n+1

    Altfel

    valoare_1:

    expresie

    Set_Instructiuni_n+1. . .

    valoa

    re_1

    altfe

    l

    valoare_n

    Set_Instructiuni_2valoare_2:

    Set_Instructiuni_nvaloare_n:. . .

    dintre

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    26/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    26

    Confereniar universitar dr. Veronica POPESCU

    Fiecare list de expresii este o list avnd una sau mai multe valori. Dac ntr-o singur list

    se afl mai multe valori, ele trebuie separate prin virgule. Fiecare bloc de instruciuni conine

    zero sau mai multe instruciuni. Dac mai multe clauze Case sunt echivalente cu expresia de

    testat, doar blocul de instruciuni asociat primei clauze Case echivalente, va fi executat.

    Visual Basic execut instruciunile din clauza Case Else (care este opional) doar dac nici

    una din valorile din lista de expresii nu este egal cu expresia de testat.

    Observaie:

    n lista de expresii se pot defini: enumerri separate prin virgul; domenii nchise cu ajutorul

    cuvntului rezervat To (exemplu de la 20 la 41 impune 20 To 41 (sau Between20 And

    41); intervale (domenii) deschise definite prin cuvntul rezervat Is i a operatorilor de

    comparaie > (mai mare) sau < (mai mic) i ali operatori de comparaie (=, , >=,

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    27/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    27

    Confereniar universitar dr. Veronica POPESCU

    d) structura repetitiv cu test final

    e) structuri repetitive cu test iniial (anterior) sau final (posterior)

    -cu test iniialDo [{While | Until} condiie]

    [Set_Instruciuni_1]

    [Exit Do]

    [Set_Instruciuni_2]

    Loop

    -cu test final

    Do

    [Set_Instruciuni_1]

    [Exit Do]

    [Set_Instruciuni_2]

    Loop [{While | Until} condiie]

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    28/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    28

    Confereniar universitar dr. Veronica POPESCU

    f) cu numr cunoscut de pai (cu contor) sau structura For Next

    Sintax:

    For contor=val_iniial TO val_final [Steppas]

    [Set_Instruciuni_1]

    [Exit For]

    [Set_Instruciuni_2]

    Next [contor]

    Practic, execuia ciclului For Nextpresupune:

    1. Se iniializeaznceput, sfriti opional pas. Fixeaz contorul egal cu nceput.

    contor = val_initiala

    Schema logica Pseudocod

    Set_Instructiuni

    Repeta

    contor

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    29/39

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    30/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    30

    Confereniar universitar dr. Veronica POPESCU

    instruciunile de un numr dat de ori. Acest lucru este util mai ales cnd nu se tie exact cte

    elemente are o colecie.

    Sintaxa unei bucle For Each ... Next este:

    For EachelementIngrup

    [bloc de instruciuni 1]

    [Exit For]

    [bloc de instruciuni 2]

    Next[element]

    Alte instruciuni executabileCele mai utilizate instruciuni executabile altele dect cele de control sunt:

    Instruciune Descriere Exemple

    CallApeleaz o procedur uneori ifuncie la care nu neintereseaz rezultatul returnat

    Call AfiseazaArieDreptunghi(4.1,2.3)

    End Termin execuia programului End

    ImportsImport elementele unui spaiude nume n fiierul surs

    Import System.Math

    OptionExplicit

    Activeaz On sau dezactiveazOff obligativitatea declarriiexplicite a variabilelor, nainteautilizrii lor

    Option Explicit On

    Option Explicit Off

    Option Strict

    Activeaz On sau dezactiveazOff conversiile impliciteefectuate cu restrngereadomeniului

    Option Strict On

    Option Strict Off

    Rem Definete un comentariu Rem Urmeaza initializarea

    ReturnDetermin ieirea dintr-oprocedur sau funcie cuntoarcerea rezultatului n cazulfunciilor

    ReturnReturn PI*r^2

    StopSuspend temporar execuia

    programului (Reluarea se facecu F5 - Run)

    Stop

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    31/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    31

    Confereniar universitar dr. Veronica POPESCU

    ntrebri

    1.Ce sunt instruciunile declarative?

    2.Ce sunt instruciunile de control?

    3.Care sunt structurile fundamentale de control specifice programrii structurate i cum suntimplementate n VB.NET?

    4. Ce alte structuri de control au mai fost implementate n VB.Net n afara celor

    fundamentale?

    3.5. Subprograme n VB.NET

    Subprogramele n VB.NET sunt definite de proceduri i funcii. Procedurile i funciile por fiintrinseci (definite de MS i incluse n bibliotecile de baz ale sistemului) sau definite de utilizator.

    Funciile de sistem (intrinseci)

    Funciile de sistem sunt uniti lexicale definite de creatorul limbajului care execut anumite

    prelucrri. n VB numele unei funcii trebuie urmate de paranteze rotunde (), ntre care se

    introduc parametrii actuali dac este cazul. Apelul lor este permis doar n interiorul

    subprogramelor (proceduri sau funcii). Deoarece funciile ntorc prin numele su o valoare

    pot fi utilizate i ca operanzi ntr-o expresie.

    n VB.NET pentru funciile de sistem au fost definite metode care respect toate cerineleprogramrii .NET. Existena funciilor este legat doar de compatibilitatea cu versiunile

    anterioare ale lui VB.

    Principalele categorii de funcii intrinseci (de sistem) n VB sunt:

    a) Funcii pentru conversii de tipuri

    - permit conversia valorilor dintr-un tip de date n altul

    - principalele funcii din aceast categorie sunt:

    Funcie Descriere Exemple

    Asc(c)

    AscW(c)

    Returneaz codul ASCII sau

    UNICODE al caracterului c; rezultatul

    este de tip ntreg

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    32/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    32

    Confereniar universitar dr. Veronica POPESCU

    Funcie Descriere Exemple

    CBool(e)

    CByte(e)

    CChar(e)

    CDate(e)

    Cdble(e)

    CDec(e)

    CInt(e)

    CLng(e)

    CSng(e)CStr(e)

    Convertete o expresie (compatibil) n

    tipul specificat: Boolean, Byte,

    Character,etc.

    Chr (i)

    ChrW(i)

    Returneaz caracterul ASCII sau

    UNICODE aferent ntregului i

    CType(e,t)Convertete expresia (e) compatibil n

    tipul specificat (t)

    Dim i As integer

    i= CType(34,Integer)

    Format(e,f) Convertete espresia (e) n ir decaractere dup formatul (f) specificat

    MsgBox(Format(3.7,#0.00))

    Str(n)

    Convertete numrul n (cu separatorul .

    pentru virgul) ntr-un ir de caractere

    Cnd nu lucrm n sistemul anglo-

    saxon se prefer funcia CStr(e)

    Val(s)

    Convertete irul s n numr

    Cnd nu lucrm n sistemul anglo-

    saxon se prefer funcia CNumeric(e)

    b) Funcii pentru operaii cu iruri de caractere

    - mai sunt pstrate n VB.NET din motive de compatibilitate cu versiunile anterioare

    ale limbajului VB

    - n VB.NET este de recomandat s se utilizeze metodele clasei String (IndexOf,

    Replace, Substring, ToLower, ToUpper, Trim, etc.)

    - principalele funcii pentru operaii cu iruri de caractere sunt:

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    33/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    33

    Confereniar universitar dr. Veronica POPESCU

    Funcie Descriere Exemple

    Instr(s1,s2) Returneaz prima poziie n care

    apare irul de caracteres2n cadrul

    irului s1 (0 dac s2 nu se regseten s1)

    LCase(s) Transform literele irului s n litere

    mici

    Len(s) Returneaz numrul de caractere

    din irul s

    Mid(s,p,l) Extrage din irul s, un subir

    ncepnd din poziia p de lungime l

    (numrtoarea) ncepe de la zero

    UCase(s) Transform literele irului s n litere

    mari

    Trim(s) Elimin spaiile de la nceputul sau

    sfritul irului s

    c) Funcii pentru operaii cu date calendaristice

    Funcie Descriere Exemple

    Day(d) Extrage ziua din data caendaristic

    d

    DateAdd(i,nr,d) Returneaz o dat calendaristic

    nou obinut prin adunarea la o

    dat calendaristic iniial da unui

    interval nrde un anumit tip i

    (DateInterval.Day,

    DateInterval.Month, etc.)

    DateDiff(i,d1,d2) Returneaz diferena (intervalul)

    de tipul intervalului i specificat

    (DateInterval.Day,

    DateInterval.Month, etc.) dintre

    datele calendaristice d2 i d1

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    34/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    34

    Confereniar universitar dr. Veronica POPESCU

    Funcie Descriere Exemple

    Month(d) Extrage luna dintr-o dat

    calendaristic d

    Now() Returneaz data i ora siatemului

    Year(d) Extrage anul dintr-o dat

    calendaristic d

    d) Funcii de informare

    - testeaz apartenena unei variabile la un anumit tip de dat

    Funcie Descriere Exemple

    IsArray(e) Returneaz Truedac argumentul este

    vector iFalsen caz contrar

    IsDate(e) Returneaz Truedac argumentul este dat

    calendaristic iFalsen caz contrar

    IsNothing(e) Returneaz Truedac argumentul este un

    obiect concret iFalsen caz contrar

    IsNumeric(e) Returneaz Truedac argumentul estenumeric iFalsen caz contrar

    IsReference(e) Returneaz Truedac argumentul este de

    tip referin iFalsen caz contrar

    TypeName(e) Returneaz numele tipului argumentului e

    e) Funcii pentru interaciunea cu utilizatorul final

    - cele mai utilizate sunt InputBox (p1, [p2],[p3]) i MsgBox(p4, [p5],[p6])Unde: p1, p4-mesajul afiat; p2,p6 titlul ferestrei, p3-valoarea predefinit,

    p5-butoanele generate

    f) Funcii matematice

    g) Funcii financiare

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    35/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    35

    Confereniar universitar dr. Veronica POPESCU

    Subprogramele definite de utilizator

    Subprogramele definite de utilizator reprezint proceduri sau funcii definite de utilizator,

    formate din blocuri de instruciuni destinate realizrii mpreun a unor operaii pentru

    atingerea unui obiectiv.

    Procedurile (numite i subrutine) sunt subprograme care nu returneaz valori.

    Funciile sunt subprograme ca returneaz o valoare prin numele funciei. Numele procedurii

    sau funciei i lista de parametrii definesc semntura procedurii sau funciei.

    Avantajele utilizrii subprogramelor sunt:

    simplific programul(prelucrrile ca se repet se scriu o singur dat i apoi sunt

    apelate nu mai sunt inserate n program);

    programele sunt mai uor de verificat i de ntreinut (se verific mai nti

    subprogramul i dup ce se constat c este corect poate fi utilizat cu ncredere;

    cnd se fac modificri acestea se fac doar n subprogramele afectate restul

    programului nu este afectat);

    se ncurajeaz reutilizarea(subprogramele pot fi utilizate n mai multe programe

    sau proiecte).

    Procedurile i funciile utilizatorului, n cadrul claselor se numesc metode.

    Definirea i apelul unei proceduri (subrutine)

    Definirea unei proceduri

    Public/Private/Protected/Friend/ Sub numeSubrutina ([List parametrii _

    formali])

    Instruciuni

    [Return]

    End Sub

    - la apel se execut prelucrrile cuprinse ntre Sub i End Sub sau ntre Sub i prima

    instruciune Return/Exit ntlnit dup care prelucrarea va continua cu instruciuneaurmtoare celei care a apelat-o

    - prelucrrile se fac asupra (cu valorile) parametrilor actuali (reali) transmii la apel

    Apelul unei proceduri

    [Call] numeSubrutina([List parametrii actuali])

    Definirea i apelul unei funcii

    Definirea unei funcii

    Public/Private/Protected/Friend/ Function numeFunctie([List parametrii _formali]) [As tipRezultat]

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    36/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    36

    Confereniar universitar dr. Veronica POPESCU

    Instruciuni

    [Return expresie]

    End Function

    - la apel se execut prelucrrile cuprinse ntre Function i End Function sau ntre

    Function i prima instruciune Return/Exit ntlnit, dup care prelucrarea va continua

    cu instruciunea urmtoare celei care a apelat-o sau imediat dup locul apelului n

    cazul utilizrii n cadrul unei expresii

    - prelucrrile se fac asupra (cu valorile) parametrilor actuali (reali) transmii la apel

    - deoarece numele Funciei ntoarce un rezultat atunci: fie numele funciei va apare cel

    puin o dat n partea stng a unei expresii de atribuire, fie se va utiliza Return

    expresie (expresia este cea care calculeaz i ntoarce rezultatul)

    Apelul unei funcii

    [Call] numeFunctie([List parametrii actuali])

    - cnd se ignor (nu se valorific) rezultatul returnat de funcie

    [rezultat =] numeFunctie([List parametrii actuali])

    - cnd se valorific rezultatul returnat de funcie prin variabila rezultat sau n cadrul

    unei expresii

    Transmiterea parametrilor subprogramelor

    Parametrii pot fi transmii subprogramelor:

    prin valoare ByVal (implicit):

    Sunt transmise copii ale valorilor supuse prelucrrii i dac acestea se modific prin

    subprogram, valorile iniiale rmn nemodificate.

    prin referin ByRef:

    Sunt transmise adresele din memorie a valorii parametrilor i dac aceste valori vor fi

    modificate prin subprogram vor fi modificate i valorile iniiale.

    Specificaia ByVal sau ByRef se face la definirea subprogramelor n lista de parametrii

    formali pentru fiecare parametru n parte.

    Exemple:

    a) definire i apel procedur

    - definire

    Private Calcule(ByVal x As Integer, ByVal y As Integer, ByVal z As Integer)

    Dim suma1 As Integer

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    37/39

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    38/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    38

    Confereniar universitar dr. Veronica POPESCU

    ntrebri

    1. Ce categorii principale de funcii intrinseci sunt implementate n VB.NET.

    2.Ce sunt subprogramele i cum se transmit parametrii?

    3. Cum se definete i cum se apeleaz o funcie definit de utilizator?

    Bibliografie Unitatea de nvare 3

    1. A. COZGAREA Programarea calculatoarelor, introducere n VB.NET,

    Editura ASE Bucureti, 2008;2. Gh. POPESCU Programarea calculatoarelor n limbajul Visual Basic, Editura

    Gestiunea Bucureti, 2007.

  • 7/25/2019 Elementele Limbajului Vb Net 2013-2014

    39/39

    Unitatea de nvare 3 ELEMENTELE LIMBAJULUI VB.NET_________________________________________________________________________________________________________________

    OBIECTIVELE UNITII DE NVARE 3.............................................................................. 2

    3.1. Introducere n VB.NET........................................................................................................ 2

    3.2. Tipuri de date ....................................................................................................................... 7

    3.3. Structurile lexicale ale limbajului VB.NET........................................................................ 12

    3.4. Instruciuni n VB.NET...................................................................................................... 18

    3.5. Subprograme n VB.NET................................................................................................... 31

    Bibliografie Unitatea de nvare 3........................................................................................... 38


Recommended