raspunsuri medii hatz

February 3, 2018 | Author: Demiii | Category: N/A
Share Embed Donate


Short Description

hatz...

Description

1 Descrieti ciclu de viata a unei forme Windows. Evenimentele si metodele unei forme sunt in general lansate in următoarea ordine: New(), Show(), Load. Activated, GotFocus, Closing, Closed, LostFocus, Deactivate, Dispose(). Metoda New genează evenimentul Initialize care pregăteste aplicaţia pentru folosire. In acest eveniment, variabilele sunt initializate, controalele sunt mutate la pozitia lor şi dimensionate la dimensiunea indicată la design time. Metoda Show include un load implicit. Dacă forma nu este deja incarcată, aplicatia incarca automat forma in memorie si apoi o afisează utilizatorului. Pentru a afisa forma ca şi o cutie de dialog, se poate apela ShowDialog(). Load: evenimentul load este utilizat pentru a realiza acele actiuni necesare inainte ca forma să fie afisată şi este invocat ori de câte ori forma este incarcată in memorie (ca rezultat al unei comenzi Load, Show sau o referentiere la un subcontrol neincarcat in memorie al formei) Activate/Deactivate apar atunci cand utilizatorul se mută intre 2 forme ale aplicaţiei. Activate apare atunci cand forma primeşte focus doar atunci cand forma este vizibilă. Deactivate apare atunci când forma pierde focusul. Deactivate apare după LostFocus. Closing este util pentru a identifica modul in care uitlizatorul inchide forma. Apare inainte Closed. Closed apare inainte de evenimentul Dispose. Specifica actiunile care trebuiesc executate la inchiderea formei. Poate include cod de validare la nivelul formei sau salvări ale datelor in fisiere. Metoda Dispose execută codul de terminare a formei, fiind substitutul destructorului. 3 Ce inseamna tracing si cum se realizeaza in aplicatiile web. Tracing inseamna primirea mesajelor informative despre executia unei aplicatii web la Runtime; aceste mesaje ajuta la diagnosticarea problemei aplicatiei sau la analiza performantei. Trace statement-urile la nivel de aplicatie sunt afisate in pagini individuale. Pt ca rezultatele sa fie vizibile, trebuie setata pagina: pageOutput=false in web.config. Cand se permite accesul tracingului la nivel aplicatie, setarile la nivel pagina raman in efect. Astfel: -daca la niv pagina trace=true si la niv aplicatie trace=true sau trace=false, rezultatele sunt afisate in pag -daca la niv pagina trace=false si la niv aplicatie trace=true sau trace=false, rezultatele nu sunt afisate in pag -daca la niv pagina trace nu este setat si la niv aplicatie trace=true, rezultatele sunt afisate in pag 4 Cum se realizeaza managementul starii partea de server intr-o aplicatie web Managementul starii pe partea de server foloseste resursele serverului pentru a stoca informatii despre stare. Aceste optiuni au un nivel mai mare de siguranta decat cele pe partea de client. Starea aplicatiei este un mechanism de stocare gobal, care este accesibil din toate paginile aplicatiei si este util pentru stocarea informatiilor legate de utilizator, care trebuie mentinute intre server si intre pagnile aplicatiei. 5 Cum se acceseaza un serviciu web si ce protocoale sunt folosite si comunicarea cu acestea Serviciul web se acceseaza urmand pasii urmatori: - Se genereaza proxyul, prin adaugarea unei referinte la serviciul web in proiect(Add web reference), sau prin rularea WSDL.exe - Se instantiaza proxy - Se apeleaza met serviciului web prin proxyul instantiat. Serviciile web XML utilizează SOAP ca și protocol pentru transmiterea de mesajele de reţea. SOAP este un protocol bazat pe XML, facilitând schimbul de informatii în medii descentralizate şi distribuite. Folosind SOAP-ul ca protocol de transmisire, mesajele pot transmite date prin referinţe şi pot conţine structuri complexe cum ar fi obiecte, structuri şi seturi de date. WSDL este o gramatică XML folosită pentru descrierea serviciului Web in sensul mesajelor care sunt acceptate și generate de serviciu. WSDL se comportă ca un contract intre consumatorul de serviciu web si furnizor. Descrierea serviciului web este folosită de .NET Framework când se adaugă o referinţă la un serviciu în aplicaţia client.

1.Filozofia .net cu limbajele de programare .Net Framework furnizează suport pentru mai multe limbaje de programare. C# a fost proiectat special pentru .NET Framework. Este primul limbaj orientat pe componente din familia C şi C++. Poate fi inglobat in paginile ASP.NET. Facilităti importante sunt clasele, interfetele, delegates, boxing si unboxing, spatiile de nume, proprietătile, indexerele, gestiunea versiunilor, etc. Se elimina fisierele header si IDL. C++ managed este o extensie minimală a C++ pentru a furniza acces la toate facilitătile .NET Framework, incluzând aici garbage-collectorul, mostenirea simplă şi multiplă şi oferă de asemenea access la nivel jos ori de câte ori este necesar. Visual Basic include inovatii multe fată de versiunea anterioară oferind suport pentru mostenire, constructori, polimorfism, exceptii structurate, verfiicarea strictă a tipurilor, fire de execuţie si altele. Jscrip.NET este rescris total pentru suport .NET. Furnizează suport la clase, mostenire, tipuri, compilare si facilităti pentru performantă sportită si productivitate. Visual J#.NET este o unealtă de dezvoltare pentru programatorii Java fiind total compatibil cu .NET. .NET suportă si alte limbaje terţe precum APL, COBOL, PASCAL, EIFFEL, Haskell, Oberon, Perl, Python, Scheme, Smalltalk. 2.Delegate+handler de evenimente In .NET Framework un eveniment este folosit pentru a semnala apariţia unei acţiuni. Un eveniment poate fi generat si in mod programatic, de exemplu la finele unei proceduri care realizează un calcul lung. Obiectul care lansează evenimentul este referit ca si trimitătorul evenimentului. Procedura care tratează evenimentul este referită ca şi receptorul evenimentului. Trimitătorul evenimentului nu stie ce obiect sau metodă va recepţiona evenimentul. Deci, este nevoie de o componentă care să lege trimitătorul evenimentului de receptor. .NET Framework foloseste tipul Delegate care să funcţioneze ca şi un pointer intre trimitător şi receptor. Obiectele de tip Delegate sunt utilizate pentru a apela metode ale altor obiecte. Aceste obiecte sunt necesare atunci cand avem nevoie de un intermediar intre procedura care apelează si cea apelată. Folosirea delegates este utilă atunci când aplicaţia trebuie să facă o actiune prin apelul unei metode dar nu se cunoaste care e acea actiune. Delegates permite specificarea actiunii care se va invoca la runtime. 3.diferente forma web de forma windows Formele Windows diferă de formele Web in ceea ce priveste următoarele criterii: - Instalarea: la formele windows aplicaţiile sunt download-ate, instalate şi rulează direct pe calculatorul utilizatorilor. La formele Web, nu există operatia de instalare la client, clientul rulează aplicaţia din browser. - Timpul de răspuns al aplicaţiei: Formele Windows rulează direct la client deci pot să ofere cel mai rapid timp de răspuns posibil. La formele Web insă, de cele mai multe ori răspusurile necesită o vizită la server pentru diverse procesări, de astfel, timpul de răspuns este mai mare. Plaforma pe care rulează: Windows Forms necesită ca pe calculatorul unde se execută să fie instalat .NET Framework. Web Forms necesită doar un browser (de exemplu Internet Explorer). Serverul Web trebuie să aibă instalat şi să suporte .NET Framework. - Grafica: Formele Window includ GDI+ care permit realizarea de grafică sofisticată pentru crearea de jocuri, sau alte aplicaţii bogate in grafică. Formele Web pentru a genera o grafică interactivă sau dinamică necesită vizite repetate la serverul web pentru improspătarea continutului afisat pe browser. GDI+ poate fi folosit pentru a crea o grafică customizabilă - Modelul de programare: Windows Forms sunt bazate pe un model de programare la client, cu pompare de mesaje, in care instanţele componentelor sunt create, utilizate şi disponibilizate de către programator. Web Forms se bazează pe un model de programare in mare pare asincron şi deconectat. Componentele aplicaţiei sunt de obicei invocate prin HTTP. Acest model de programare poate să nu fie potrivit pentru aplicaţii care necesită grad ridicat de responsivitate sau un volum ridicat de tranzacţii, sau aplicaţii pe baze de date care necesită un grad ridicat de concurenţă . - Securitatea: Windows Forms utilizează permisiuni granulare la controlul accesului la implementările de cod. Aceasta permite o expunere ingrijită a functionalităţii cu mentinerea unui nivel de securitate corespunzător. Web Forms permite controlul identităţii sub care codul server este executat. Aplicaţiile pot

executa codul folosind identitatea entitătii care lansează cererea (impersonation) sau pot sa livreze continut dinamic pe baza rolului entitătii solicitante. 4.Ce este o forma web? controale web server de controale html O forma Web este componenta fundamentala a ASP.Net, fiind o pagină pe care utilizatorul o vizualizeaza in browser. O aplicație web in ASP.NET este compusă din una sau mai multe forme web. Forma web este in același timp o pagina dinamică care poate accesa resurse de pe server. O formă web este formată dintr-o combinație de cod HTML, cod sursă și controale care se execută pe un server web care rulează Microsoft IIS. Formele web afisează interfața grafică prin generearea codului HTML care este livrat la browser, in timp de codul sursă aferent si controalele rulează pe server. 5.Localizare servicii web Localizarea serviciilor web este importanta in comunicarea furnizor – client. Descoperirea locației unui serviciu Web se poate face static sau dinamic. Descoperirea statica este posibila atunci cand locatia documentului de descoperire este deja cunoscuta. Descoperirea statica implica furnizarea unui URL explicit si interpretarea continutului acestuia. Descoperirea dinamica are loc cand consumatorul cunoaste doar punctual terminal a furnizorului de serviciu. In aceasta situatie el va descoperi o lista cu servicii web disponibile si contractele WSDL asociate, la punctul terminal. 8.cookie si cookieless Cookie-urile sunt modalitati prin care aplicatiile web care ruleaza pe server pot sa il determine pe utilizator sa retina inf serverului web, la fiecare cerere HTTP. Informatiile retinute la pot fi utilizate pt mentinerea starii cu clientul, peste multiple cereri. Cookie-urile sunt trimise clientului ca parte din headerul HTTP in raspunsul clientului sau sunt trimise in raspunsul serverului. Cookie-urile pot fi dezactivate. Daca nu se mai folosesc cookies in browserul utilizatorului, fiecare cerere facuta de utilizator incepe o noua sesiune. Fiecare sesiune care a fost asociata cu utilizatorul respectiv este pierduta cand se cere o pagina noua. 10.Tipuri de controale utilizator Controalele utilizator apar in Toolbox şi pot fi clasificate după funcţionalitatea pe care acestea o oferă. Astfel avem: - Controale de grupare, de tip container: Panel, GroupBox, TabControl, - Controale pentru afisarea de text: Textbox RichTextbox, Label sau StatusBar - Controale cu optiuni: CheckedListbox, ComboBox, DomainUpDown, ListBox, ListView, NumericUpDown, TreeView - Controale pentru afisare de grafică: ImageList, PictureBox, - Meniuri: MainMenu, ContextMenu - Cutii de dialog: ColorDialog, FontDialog, PageSetupDialog, PrintDialog, OpenFileDialog, - Controale care accepta input de la utilizator: Button, LinkLabel, NotifyIcon, ToolBar

5 executors Executors este un obiect intermediar intre un client si taskurile pe care acesta le executa. Executors gestioneaza ciclul de viata a taskurilor asincrone fara sa fie nevoie sa gestionam explicit ciclul de viata a unui obiect Thread

6 sectiuni critice Sectiunile critice sunt zonele de cod unde poate sa apara coliziunea intre threaduri. Avem nevoie de sectiuni critice daca partea critica este o bucata de cod dintr-o metoda (spre deosebire de intreaga metoda). Sectiunea critica poate sa fie marcata de cuvantul cheie synchronized(obiect)

Monitorul se achizitioneaza pt obiectul specificat. Daca se sincronizeaza doar pe sectiuni critice (si nu pe toata metoda) se poate castiga timp pretios la executia programului. Pt sectiuni critice se pot folosi si obiecte de tip Lock. La sincronizare pe sectiuni critice, trebuie sa se utilizeze acelasi obiect ca si tinta a sincronizarii

7 descrieti common language runtime (CLR) Common Language Runtime – CLR este un mediu de executie care furnizează un set comun de servicii pentru proiectele dezvoltate in mediul .NET Framework, indiferent de limbajul de programare in care aceste programe sunt scrise. Componenetele acestui mediu de execuţie sunt: Class loader-ul, Microsoft Intermediate Language to native compiler (MSIL), managerul de cod, garbage-colectorul, motorul de securitate, motorul de debug, verificatorul de tipuri, managerul de exceptii, suportul pentru fire de execuţie, marshalerul COM, suport pentru biblioteca de clase de bază. 8 ce este un control custom si cum cream un astfel de control Controlul custom este un control creat nou. Controalele custom afisează interfaţa grafică prin apel la un obiect de tip Graphics (din GDI+) in metoda de tratare a evenimentului OnPaint. Controalele custom sunt derivate direct din clasa Control care furnizează un dreptunghi gol care poate fi desenat. Pentru realizarea desenelor noului control trebuie rescrisă metoda de tratare a evenimentului OnPaint a controlului. De asemenea, intr-un control custom se pot suprascrie proprietăţi, metode şi evenimente ale clasei Control. Clasa Control furnizează handlerele pentru fereastră, gestionează rutarea mesajelor şi furnizează evenimente de mouse si tastatură ca şi alte evenimente produse intr-o interfaţă grafică. 9 care este modelul prin care se valideaza inputul utilizatorului in aplicatiile web Validarea inputului utilizatorului se face prin validare pe parte de client si validare pe parte de server. Prima data se face validarea pe parte de client. Aceasta este dependent de versiunea browserului, ofera raspuns imediat si reduce ciclurile postback. Validarea pe parte de server repeta toate validarile facute la client si poate valida impotriva informatiilor stocate. 10 ce este un DataSet? care este diferenta dintre tip si untip? Dataset este o copie locala a bazei de date de pe sursa de date in memoria aplicatiei. Este utila pentru ca furnizeaza o referinta la aceste date locale. Seturile de date pot fi cu tip sau fără tip. Seturile de date cu tip sunt clase generate din fişiere de schemă XML (.xsd). În comparaţie, un set de date fără tip nu are o schem ă înglobată corespunz ător. Setul de date cu tip este o clasă derivată din clasa de bază DataSet. Aceasta moşteneşte toate metodele, evenimentele şi proprietăţile setului de date, furnizează metode, evenimente şi proprietăţi puternic tipizate. Aceasta înseamnă că tabelele şi coloanele pot fi accesate cu nume în loc de a folosi metode bazate pe colectii. 12 diferenta dintre task si thread In Java exista distinctie intre task si thread. Taskul este jobul ce trebuie executat, obiect ce implementeaza clasa Runnable, iar threadul este mecanismul care executa taskul. 13 descrieti modul de compilare si executie in net.Framework a aplicatiilor web

La prima cerere de livrare a unei pagini web, se execută în mod succesiv urm ătoarele evenimente: clientul lansează o cerere HTTP GET/POST, parserul ASP.NET interpretează codul sursă a paginii web, - dacă acest cod nu este deja compilat intr/un DLL, ASP.NET invocă compilatorul și se generează codul intermediar de tip MSIL - in final, mediul de execuție încarcă si execută codul MSIL. La cererile de livrare următoare (a doua figură), mediul de execuție incarcă și execută imediat codul MSIL, cod care este deja compilat de la prima cerere de incărcare a paginii web. 14 cum se adauga suport la designtime pt controalele utilizator? descrieti cateva atribute de proprietate Atributele la design atașează componentelor funcționalitate la momentul dezvolt ării aplicație. Atributele la design pot fi atașate și aplicate proprietăților, evenimentelor, metodelor, claselor și chiar assembly-urilor. Atributele la nivel de proprietăți sunt: • Browsable – proprietatea sau evenimentul va fi afișat in fereastra de Properties/Events • Category – specifica numele categoriei unde proprietatea va fi afisată • Description – specifică descrierea propriet ății, această descriere urmează să fie afisată in fereastra de properties • DefaultProperty – valoarea proprietatea implicită care este selectată in designer după ce controlul este tras din toolbox pe forma windows • DefaultValue – specifică valoarea implicită a proprietății • TypeConverter – convertorul implicit utilizat pentru conversia valorii spre alte tipuri • Editor – editorul folosit pentru editarea valorii • RefreshProperties – indică modul in care designerul face refresh atunci valoarea asociată controlului se schimbă 15 caracterizati fisierul global assa si explicati rolul acestuia intr-o aplicatie web Fisierul Global.asax. conține cod la nivel de aplicație care să răspundă evenimentelor generate de ASP.NET. 17 descrieti modelul ado.net pt lucrul cu date in aplicatiile .net

18 descrieti mecanismul prin care se pot returna din taskuri. ce clase si interfete trebuie sa utilizati in acest sens Interfata Callable: metoda call care trebuie sa returneze o valoare. Obiectele Callable trebuie apelate de metoda submit a unui ExecutorService. Metoda submit produce un obiect de tip Future parametrizat cu tipul rezultatului specific returnat din task. Obiectul Future poate fi interogat cu metoda isDone() pentru a vedea daca metoda call a produs rezultatul. Metoda get() a obiectului Future obtine rezultatul produs de metoda call. Daca rezultatul nu este disponibil, metoda get este de tip blocking (pana cand rezultatul devine disponibil) 19 ce inseamna excluderea mutuala si cum se realizeaza sincroniser acest lucru

Excluderea mutuala este un mecanism care previne ca doua taskuri sa utilizeze aceasi resursa sensibila in acelasi timp. Prin excludere mutuala se serializeaza accesul taskurilor la resursa partajata. Cuvantul cheie synchornized: realizeaza mutual exclusion pentru o resursa Resursa partajata se incapsuleaza intr-un obiect. Toate metodele care utilizeaza resursa sunt marcate ca si synchronized. Mecanismul synchronized: fiecare obiect are un monitor (lacat). Cand un thread intra in zona de cod synchronized, threadul achizitioneaza monitorul, si nici un alt thread nu va mai putea intra intr-o zona synchornized a aceluiasi obiect. Daca primul thread care a achizitionat monitorul intra intr-o noua zona synchornized a aceluiasi obiect, se tine un contor a numarului de monitoare achizitionate de thread. Exista si un monitor la nivel de clasa pt synchronized la metode statice. Cooperarea intre taskuri. Este vorba de modul in care taskurilor pot lucra in comun pentru atingerea aceluiasi obiectiv: un task trebuie realizat inaintea altuia.

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF