Risipa de key_press | Programare

Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

Risipa de key_press | Programare - Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

Prima aplicatie in WP7 (I)

Silverlight este platforma de dezvoltarea in Windows Phone 7 pentru scrierea aplicatiilor sau utilitarelor. Aceste programe sunt construite dintr-o combinatie de markup si cod managed.

Silverlight aduce in Windows Phone Rich Internet Applications (RIA), incluzand media si Web. Silverlight in Windows Phone inseamna o versiune a Silverlight 3 plus alte imbunatatiri, excluzand functionalitati care nu adresate telefonului. Toate diferentele sunt expuse in acest articol de pe msdn, Differences Between Silverlight and Silverlight for Windows Phone.

Continue reading

Dynamic in C# 4.0

In cadrul lansarii .Net 4.0, una din temele principale a fost legata de programare dinamica. Tot atunci, a fost introdus cuvantul cheie dynamic in C#.
Un obiect este definit ca dinamic prin faptul ca structura si comportamentul lui nu sunt conforme cu un tip static (pe care compilatorul il recunoaste).
Exemple de obiecte dinamice sunt obiecte provenite din limbaje de programare dinamice ca Python sau Ruby, obiecte care isi schimba structura – HTML DOM – si altele.

C# este un limbaj type-safe. Acest lucru inseamna ca o variabila poate fi accesata doar prin tipul asociat, adica nu se poate interactiona cu o variabila de tip string ca si cum ar fi una de tip integer. Altfel spus, C# suporta static type checking (limbajul verifica type safety la momentul compilarii). Complementar, exista dynamic type safety ce are loc la runtime.

Un limbaj dinamic are proprietati opuse limbajului static. Tipul expresiei sau variabilei nu este cunoscut la momentul compilarii.
Continue reading

Controale in WPF – Containere

Controale in WPF:

In WPF exista cateva tipuri de controale container. Un astfel de container poate gazdui orice tip de continut (Content): string, obiect, UIElement etc. Containerele pot fi clasificate in 4 categorii:

  1. ContentControl: poate “gazdui” un singur element copil: Content. Window deriva din ContentControl, ceea ce inseamna ca o fereastra poate gazdui doar un singur element. Elementul gazduit poate fi de orice tip (object, string, UIElement etc).
  2. HeaderedContentControl: Este asemanator cu ContentControl cu diferenta ca acest control are o parte (proprietate) header in plus fata de Content. Exemple de controale: GroupBox, Expander, TabItem etc
  3. ItemsControl: Acest tip de control poate gazdui multiple obiecte, insa nu ca si Content ci ca ItemsControl. Exemple de astfel de controale ListBox, ListView.
  4. HeaderedItemsControl: Contine o colectie de elemente care au, fiecare, un header distinct. TreeView este un exemplu de element de tip HeaderedItemsControl. Alte controale care deriva din HeaderedItemsControl sunt ToolBar si MenuItem.

Continue reading

GC

Mi-am propus ca in acest articol sa scriu despre modul in care .Net Framework, mai exact CLR, administreaza obiectele in memorie prin intermediul Garbage Collection. De asemenea, voi incerca sa identific legaturile dintre Finalize si Dispoze, folosite pentru crearea obiectelor de tip disposable.

Dupa cum stiti, ca programator C# nu trebuie sa eliberezi un obiect din memorie. Obiectele .Net sunt alocate in managed heap unde acestea vor fi distruse de garbage collector mai tarziu.

Managed heap

Managed heap este o “portiune de memorie” folosita de toate limbajele .Net pentru alocarea referintelor catre tipurile de obiecte create.

Continue reading

C# 4.0 – Parametri optionali

C# 4.0 a fost anuntat in .Net Framework 4.0, care a fost lansat in aprilie, anul acesta.

Principala tema abordata este programare dinamica (obiectele sunt dinamice, structura si comportamentul lor nu sunt reprezentate de un tip static). Limbaje dinamice din .Net Framework sunt IronRuby, Iron Python. Javascript este cel mai folosit limbaj dinamic. Despre cum a fost introdus tipul dynamic in C#, care este un limbaj static, si modul in care este folosit, vom scrie intr-un viitor articol. O functionalitate foarte utila, pe care vreau sa o dezvolt in acest articol, este legata de parametri.

Continue reading

Windows Phone 7

Windows Phone 7 este cel mai nou sistem de operare pentru telefoane mobile. Atunci cand s-a lansat, parerile au fost impartite. Foarte multi specialisti au spus ca aceasta mutare a Microsoft, de a reconstrui intreaga platforma mobile, chiar daca a fost curajoasa, a venit prea tarziu pe piata sistemelor de operare mobile. Daca lansarea ar fi fost facuta mai devreme, ar fi putut constitui o reala amenintare pentru iPhone si Android, in ceea ce priveste vanzarile si atragerea dezvoltatorilor.

Dupa cum se stie, cele mai cautate telefoane la ora actuala sunt Apple iPhone si cele cu sisteme de operare Google Android. Cu toate ca inca au cote mari din piata, tendintele arata ca Nokia si BlackBerry sunt in scadere iar Microsoft va incepe sa le depaseasca din punct de vedere al inovatiei si al functionalitatilor.

Sa analizam Windows Phone 7 din doua puncte de vedere: al utilizatorului si al dezvoltatorului.
Continue reading