curs tehnologii web

19
TEHNOLOGII WEB LIMBAJUL Visual C#

Upload: georgeanton

Post on 13-Oct-2015

25 views

Category:

Documents


1 download

DESCRIPTION

Curs Tehnologii Web

TRANSCRIPT

  • 5/22/2018 Curs Tehnologii Web

    1/19

    TEHNOLOGII WEB

    LIMBAJUL Visual C#

  • 5/22/2018 Curs Tehnologii Web

    2/19

    Cuprins

    1. Limbajul C#. Generali!"i..........................................................................1.1. Crearea a$li%a"iil&r %&ns&l! 'n Visual C#...................................................1.(. )ru%ura unui $r&*ram C#........................................................................+1.,. Cu-ine %eie 'n C#..................................................................................../1.0. C&nsane.................................................................................................../1.. Variabile...................................................................................................121.. Ti$uri 3e 3ae...........................................................................................121.4. C&n-ersia i$uril&r 3e 3ae.......................................................................111.+. O$era&ri C#............................................................................................1,1./. Insru%"iuni C#.........................................................................................1,

    1./.1. Insru%"iunea i5..........................................................................................1,

    1./.(. Insru%"iunea s6i%..................................................................................101./.,. Insru%"iunea 5&r.......................................................................................11./.0. Insru%"iunea 5&rea%................................................................................11./.. Insru%"iunea 6ile...................................................................................11./.. Insru%"iunea 3&76ile..............................................................................1

    1.12. Tabl&uri....................................................................................................11.11. 8iruri 3e %ara%ere....................................................................................1+

    1.11.1. 9e%lararea :i ini"iali;area :iruril&r 3e %ara%ere.......................................1+1.11.(. C&n%aenarea :iruril&r 3e %ara%ere..........................................................1+1.11.,. C&m$ararea :iruril&r 3e %ara%ere............................................................1+1.11.0.

  • 5/22/2018 Curs Tehnologii Web

    3/19

    Lista figurilor

    5i*ura 171 )ele%area i$ului 3e a$li%a"ie....................................................................................5i*ura 17(

  • 5/22/2018 Curs Tehnologii Web

    4/19

    Lista tabelelor

    abelul 171 Ti$uri 3e 3ae C#.....................................................................................................11abelul 17( O$era&ri C#...........................................................................................................1,

  • 5/22/2018 Curs Tehnologii Web

    5/19

    1. Limbajul C#. Generaliti

    C# ese un limbaj 3e $r&*ramare &riena7&bie% %&n%e$u 3e Mi%r&s&5 la s5>r:iul

    anil&r /2. )e $&ae s$une %! a 5&s %&n%e$u %a un %&n%uren $enru limbajul Ja-a [email protected] 3e ba;! ale $r&*ram!rii &rienae $e &bie%e m&:enire $&lim&r5ism 'n%a$sularese re*!ses% :i 'n limbajul C#. )ina=a limbajului se aseam!n! 3esul 3e mul %u %ea alimbajel&r CDD :i Ja-a. Limbajul C# $une la 3is$&;i"ia $r&*rama&ril&r & muliu3ine 3e%lase $re3e5inie sru%urae 'n s$a"ii 3e nume namespace7uri. enru lu%rul %u & anumi!%las! se -a Fim$&ra names$a%e7ul %are %&n"ine 3e5ini"ia a%eseia sau se -a uili;a numele%&m$le al %lasei.

    1.1. Crearea aplicaiilor consol n Visual C#

    enru %rearea unei a$li%a"ii F%&ns&l! -e"i $ar%ur*e urm!&arele ea$e

    Lansarea n execuie a mediului de dezoltare !icrosoft Visual "tudio $1$ 7 sea%i-ea;! meniul StartPrograms a$&i se sele%ea;!Microsoft Visual Studio 2010 ->

    Microsoft Visual Studio 2010

    Crearea unei noi aplicaii Visual C# 7 se a%i-ea;! meniul File New a$&i sesele%ea;! &$"iunea Project. 9in 5ereasra $re;ena! 'n 5i*ura 1 71 se sele%ea;!Visual C :i Console !pplication.

    5i*ura 171 )ele%area i$ului 3e a$li%a"ie

    "crierea codului

    "oluia 1

    o )e a%i-ea;! &$"iunea Solution "#plorer 3in meniul View

  • 5/22/2018 Curs Tehnologii Web

    6/19

    o )e sele%ea;! %rogram.cs :i a$&i se ale*e &$"iunea Code 3in meniul Viewsause e5e%uea;! 3ublu7%li% 3e m&use $e $i%&*rama as&%ia! 5i*ura 1 7(.

    "oluia o )e a%i-ea;! &$"iunea Class View 3in meniul View

    o 9a%a se 3&re:e -i;uali;area 'nre*ului %&3 surs! se -a sele%a %rogram :i a$&i&$"iunea Code 3in meniul View sau se -a e5e%ua 3ublu7%li% 3e m&use $e$i%&*rama as&%ia!. 9a%a se 3&re:e $&;i"i&narea la 'n%e$uul unei anumieme&3e 5un%"ii se -a sele%a me&3a 'n %au;! :i a$&i se -a e5e%ua 3ublu7%li% 3e m&use $e $i%&*rama as&%iaa sau se -a ale*e &$"iunea $o %o

    &efinition 3in meniul 3erulan %e ese a5i:a la un %li% 3rea$a 3e m&use $enumele me&3ei 5i*ura 1 7,.

    5i*ura 17(

  • 5/22/2018 Curs Tehnologii Web

    7/19

    %rima aplicaie & consol' Visual C#

    //"Importarea" spatiilor de nume ce vor fi folosite in

    //aplicatie.

    usingSystem;

    usingSystem.Collections.Generic;

    usingSystem.Linq;

    usingSystem.Text;

    //definirea unui nou namespace

    namespace ello!orld

    //definirea unei noi clase

    class #rogram

    //definirea metodei $ain % punctul de intrare in

    //aplicatie

    static void $ain&string'( args)

    //afisarea la consola a unui mesa*

    System.Console.+ut.!rite&"#rimul program in C,");

    --

    -

    (bseraie) O mare $are 3in %&3ul surs! %&res$un;!&r a$li%a"iei *ello+orldese *enera'n m&3 au&ma 3e %!re me3iul 3e 3e;-&lare Mi%r&s&5 Visual )u3i& (212. Kn a%es %a;iner-en"ia $r&*rama&rului -a %&nsa 3&ar 'n s%rierea insru%"iunii 3e a5i:are a mesajuluiFPrimul program in C. Kn ea$a 3e s%riere a %&3ului $r&*rama&rul -a 5i asisa 3e %!reInelli)ense 5i*ura 1 70.

    5i*ura 170 Inelli)ense

    %entru compilarea ,i lansarea n execuie a aplicaiei ei tasta combinaia detaste Ctrl + F5 sau ei alege una din opiunile Start Debugging sau Start Without

    Debuggingdin meniulDebug.

    1.. "tructura unui program C#

    Ori%e a$li%a"ie C# ese al%!ui! 3in una sau mai mule %lase. T&ae %lasele sun*ru$ae 'n s$a"ii 3e nume names$a%es as5el 'n%> 'nr7& a$li%a"ie $& e=isa mai mule %lase%u a%ela:i nume. Trebuie men"i&na 5a$ul %! & sin*ur! %las! -a %&n"ine punctul de intrare

    n aplicaie enr $&in. un%ul 3e inrare -a 5i re$re;ena 'n&3eauna 3e %!re me&3asai%! !ain. )ru%ura unui names$a%e ese ilusra! 'n5i*ura 1 7.

    +

  • 5/22/2018 Curs Tehnologii Web

    8/19

    5i*ura 17 )ru%ura unui namespace

    1.-. Cuinte ceie n C#

    Cu-inele %eie 3in limbajul C# sun $re;enae 'n 5i*ura 1 7:i5i*ura 1 74.

    5i*ura 17 Cu-ine %eie %&ne=uale

    5i*ura 174 Cu-ine %eie

    1./. Constante

    Kn limbajul C# %&nsanele $& 5i 3e%larae :i ini"iali;ae uili;>n3 %u->nul %eie constsau m&3i5i%a&rul readonl0.

    "intaxa)

    attributes2 modifiers2 const t0pe declarators3

    4x.)const int x; //gresit constanta nu a fost initialiata

    /

  • 5/22/2018 Curs Tehnologii Web

    9/19

    const int x 0 12; //corect

    readonly int x; //corect

    readonly int x 0 12; //corect

    1.5. Variabile

    Variabilele C# sun F%ase7sensii-e :i %&n"in & -al&are a unui i$ F$rimii- sau &re5erin"! la un &bie%.

    4x.)

    int x;

    int 3;

    c4ar unCaracter;

    1.6. 7ipuri de date

    Kn limbajul C# i$urile 3e 3ae se 'm$ar 'n 3&u! %ae*&rii 3isin%e i$uri aloare8sru%uri enumer!ri i$uri $rimii-e int b0te sort long double e%. :i i$uri referinclasele interfeele tablourile :i i$urile delegat9. Kn abelul 1 71 sun $re;enae

    $rin%i$alele i$uri 3e 3ae 3in limbajul C#.

    7ip 7ip C7" :escriere 4xemplu

    &bje% )sem.Obje% Ti$ul 3e ba;a $enru &ae %elelale i$uri &bje% & null

    srin* )sem.)rin* Ti$ul srin* un srin* ese & se%-en"! 3e%ara%ere Uni%&3e srin* s ell&sbe )sem.)be Val&are 'nrea*! $e + bi"i %u semn. sbe -al 1(s&r )sem.In1 Val&are 'nrea*! $e 1 bi"i %u semn. s&r -al 1(in )sem.In,( Val&are 'nrea*! $e ,( bi"i %u semn. in -al 1(l&n* )sem.In0 Val&are 'nrea*! $e 0 bi"i %u semn. l&n* -al1 1(

    l&n* -al( ,0Lbe )sem.Be Val&are 'nrea*! $e + bi"i 5!r! semn. be -al1 1(us&r )sem.UIn1 Val&are 'nrea*! $e 1 bi"i 5!r! semn. us&r -al1 1(uin )sem.UIn,( Val&are 'nrea*! $e ,( bi"i 5!r! semn. uin -al1 1(

    uin -al( ,0U

    ul&n* )sem.UIn0 Val&are 'nrea*! $e 0 bi"i 5!r! semn. ul&n* -al1 1(ul&n* -al( ,0Uul&n* -al, Lul&n* -al0 4+UL

    5l&a )sem.)in*le Num!r 'n -ir*ul! m&bil! $e ,( bi"i 5l&a -al 1.(,

  • 5/22/2018 Curs Tehnologii Web

    10/19

    0.9B&&l )sem.B&&lean Val&are b&&lean! rue5alse b&&l -al1 rue

    b&&l -al( 5alse

    Car )sem.Car Cara%er uni%&3e $e 1 bi"i. %ar -al PP

    3e%imal )sem.9e%imal Val&are $e 1(+ 3e bi"i %are re"ine (+ 3e;e%imale semni5i%ai-e $enru %al%ule 3e

    $re%i;ie ri3i%a!

    3e%imal -al 1.(,M

    abelul 171 Ti$uri 3e 3ae C#

    1.;. Conersia tipurilor de date

    Limbajul 3e $r&*ramare C# lu%rea;! %u 3&u! i$uri 3e %&n-ersii implicite :iexplicite. C&n-ersiile im$li%ie sun %ele %are se reali;ea;! 5!r! $ier3ere 3e 3ae int7Q long

    5iin3 reali;ae 'n m&3 au&ma 3e %!re %&m$ila&r.E=.

    int valInt 0 152;

    long valLong 0 valInt;

    Console.!riteLine&"6- 1-" valInt valLong);

    C&n-ersiile e=$li%ie -&r 5i reali;ae 3e %!re $r&*rama&r $rin inerme3iul&$era&rului castsau a me&3el&r 3in %lasa Conert.

    E=.

    long valLong 0 Int78.$ax9alue;

    int valInt 0 &int)valLong;Console.!riteLine&"&int)6-01-" valLong valInt);

    A%eas! %&n-ersie se reali;ea;! %u $ier3ere 3e 3ae $enru %a;ul %&n-ersiil&r e=$li%ie %> :i$enru %a;ul %el&r im$li%ie.

    7em)Creai o aplicaie Visual C# la niel de consol iar n metoda !ain introduceisecena de cod surs de mai jos. :ai alte exemple de conersii ce se realizeaz cu ,ifr pierdere de date.

    dou:le x y;

    float ;

    :yte :;

    int i;

    c4ar c4;

    uint u;

    s4ort s;

    long l;

    x 0 16.6;

    y 0 2.6;

    // conversie dou:le < int &cu pierdere de date)

    11

  • 5/22/2018 Curs Tehnologii Web

    11/19

    i 0 &int)&x / y);

    Console.!riteLine&"int & x / y )= " > i);

    Console.!riteLine&);

    // conversie int : > " fara pierdere de date.");

    // conversie int : > " cu pierdere de date.");

    Console.!riteLine&);

    // conversie uint < s4ort &fara pierdere de date)

    u 0 25666;

    s 0 &s4ort)u;

    Console.!riteLine&"s0 &s4ort)25666= " > s > " fara pierdere dedate.");

    // conversie long < uint &fara pierdere de date)

    l 0 78666;

    u 0 &uint)l;

    Console.!riteLine&"u0 &uint)78666= " > u > " fara pierdere de

    date.");

    // conversie long < uint &cu pierdere de date)

    l 0 15;

    u 0 &uint)l;

    Console.!riteLine&"u0 &uint)15= " > u > " cu pierdere de date.");Console.!riteLine&);

    // conversie :yte < c4ar

    : 0 AA;

    c4 0 &c4ar):;

    Console.!riteLine&"c40 &c4ar)AA = " > c4);

    7em)Creai o aplicaie Visual C# la niel de consol iar n metoda !ain introduceisecena de cod surs de mai jos.

    intvalInt;

    stringsir 0 "152";

    valInt 0 Convert.ToInt25&sir);

    Console.!riteLine&"Br06-" valInt);

    //sau

    Console.!riteLine&"Br0"> valInt);

    //o alta metoda de realiare a conversiei

    valInt 0 Int25.#arse&sir);

    1(

  • 5/22/2018 Curs Tehnologii Web

    12/19

    1.=. (peratori C#

    O$era&rii C# se 'm$ar 'n rei %ae*&rii unari binari :i ernari abelul 1 7(.

    Categorie (peratori

    rimari =. 5= a?=@ =DD =77 ne6 $e&5 %e%e3 un%e%e3Unari D 7 R S DD= 77= T=Muli$li%ai-i A3ii-i D 7)i5are QQelai&nali si 3e esare i$uri Q Q is asE*aliae R)I L&*i% XYO L&*i% Z

    )AU L&*i% [)I C&n3i"i&nal XX)AU C&n3i"i&nal [[O$era&rul %&n3i"i&nal \Asi*nare D 7 QQ X Z [

    abelul 17( O$era&ri C#

    1.>. .1.

  • 5/22/2018 Curs Tehnologii Web

    13/19

    1.>..

  • 5/22/2018 Curs Tehnologii Web

    14/19

    :reaF;

    default=

    numeHng 0 "nu exista traducere";

    :reaF;

    -

    Console.!riteLine&"Hng&6-)01-"nume numeHng);

    1.>.-.

  • 5/22/2018 Curs Tehnologii Web

    15/19

    1.>.6.

  • 5/22/2018 Curs Tehnologii Web

    16/19

    rv'1( 0 5.?;

    rv'5( 0 &float)2.5;

    //$alouri cu mai multe dimensiuni

    int'( numere 0 neE int'2 5( 1 5- 2 8- ? 7- -;

    string'( numems 0 neE string'5 5( "osy""Jmy"-"#eter""Jl:ert"-

    -;System.Console.!riteLine&numere' 1 6();//%& 'e a"iseaza ()(

    //*servatie+ La declarare si initializare nu este //oligatorie

    speci"icarea dimensiunilor

    int'( num:ers 0 neE int'( 11 55- 22 88- ?? 77- -;

    string'( names 0 neE string'( "osy""Jmy"- "#eter""Jl:ert"- -;

    //*servatie+ La declarare si initializare se poate omite

    //cuvantul cheie ne,

    int'( num:ers1 0 1 5 - 2 8 - ? 7 - -;

    string'( si:lings 0 "osy" "Jmy" - "#eter" "Jl:ert" - -;

    System.Console.!riteLine&num:ers1' 1 1();//%& 'e a"iseaza //((System.Console.!riteLine&si:lings' 1 6(); //%& 'e a"iseaza //(eter(

    //agged rras - elementele unui ast"el de arra sunt arra-uri

    int'('( *numere 0 neE int'('( neE int'( 1 2 ? - neE int'( 5 8

    7 A16 - -;

    System.Console.!riteLine&*numere' 1('8();//%& 'e a"iseaza //(10(

    7em)"tudiai ,i ncercai n Visual "tudio $1$ exemplul de mai jos.

    usingSystem;

    usingSystem.Collections.Generic;

    usingSystem.Text;

    namespaceHx9ectori

    class#rogram

    //ordonarea vectorului

    staticvoidMSort&int'( v)

    intoF 0 6;

    E4ile&oF 00 6)

    oF 0 1;

    for&inti 0 6; i D v.Lengt4 1; i>>)

    if&v'i( < v'i > 1()

    intsE 0 v'i(;

    v'i( 0 v'i > 1(;

    v'i > 1( 0 sE;

    oF 0 6;

    -

    -

    -

    //afisarea vectorului

    staticvoidJfis&int'( v)

    foreac4&intelement inv)

    System.Console.!rite&element > " ");

    -

    staticvoid$ain&string'( args)

    14

  • 5/22/2018 Curs Tehnologii Web

    17/19

    //Neclararea si initialiarea vectorului

    int'( a 0 1 ? 2 5 8 ? -;

    //Sortarea vectorului

    MSort&a);

    //Jfisarea vectrului

    Jfis&a);

    - -

    -

    1.11. iruri de caractere

    1.11.1. :eclararea ,i iniializarea ,irurilor de caractere

    4x.)

    string s1 0 "Jcesta este un sir de caractere";

    string s5 0 "";

    string s2 0 "Ionescu #op";

    1.11.. Concatenarea ,irurilor de caractere

    enru %&n%aenarea :iruril&r 3e %ara%ere se uili;ea;! &$era&rul FD

    4x.)

    strings1 0 "Jcesta "> "este";

    s1 0 s1 > " un sir de caractere";

    Console.!riteLine&s1);

    1.11.-. Compararea ,irurilor de caractere

    enru %&m$ararea :iruril&r 3e %ara%ere se uili;ea;! &$era&rii F :i FR sau me&3a4Hualsa %lasei "tring.

    4x.)

    strings10"C,";

    strings50"CS";

    if&s100s5)

    Console.!riteLine&"s10s5");

    else

    Console.!riteLine&"s10s5");

    if&s1.Hquals&s5))

    Console.!riteLine&"s10s5");else

    Console.!riteLine&"s10s5");

    1.11./. Iuncii importante n lucrul cu ,iruri de caractere

    metode de comparare:o Compare

    o CompareOrdinal

    o CompareTo

    metode pentru cutare:

    o EndsWith

    1+

  • 5/22/2018 Curs Tehnologii Web

    18/19

    o StartsWith

    o IndexOf

    o LastIndexOf

    metode pentru modifcarea irurilor

    o Concato CopyTo

    o Insert

    o Join

    o PadLeft

    o PadRight

    o Remove

    o Replace

    o Split

    o Sustring

    o ToLo!er

    o To"pper

    o Trim

    o TrimEnd

    o TrimStart

    1/

  • 5/22/2018 Curs Tehnologii Web

    19/19

    . Jibliografie

    ?1@. $r&.6ii$e3ia.&r*6iiW)9L?(@. $ss.elia.$ub.r&ne6sTEME])OIII](212)CITlimbaje]s%ri$are.$35

    ?,@. $r&.6ii$e3ia.&r*6iiA).NET?0@. $666.s%rib3.%&m3&%144/Manual7C?@. $r&.6ii$e3ia.&r*6iiC]sar$

    (2