Archive for category Tehnical
WebMatrix – unelte si tehnologii simple pentru programatori web
Microsoft și-a dat seama acum câțiva ani că abordarea lor inițială cu platfotma ASP.NET avea un avantaj: posibilitatea de a crea aplicații web foarte complexe, dar pe de altă parte un dezavantaj: efortul mare de învățare necesar unui programator pentru a dezvolta cu această tehnologie. De fapt, până prin 2005 Microsoft a ocolit (nu cred că voit) programatorii web începători. Cam atunci au apărut primele inițiative gândite tocmai pentru acei programatori care vor să dezvolte în 1-2 săptămâni un site web, fără cunoștințe preliminare (și nu dupa 2 luni de învățare să zicem): apariția de unelte de dezvoltare din suita Express (VS C#, VS Web Developer, SQL Server Express). Ramânea totuși problema tehnologiei, care chiar dacă tot evolua (ASP.NET 2.0 față de 1.1 este îmbunătățit enorm), era la fel de greu de învățat. Au continuat apoi cu ASP.NET MVC – o implementare a șablonului MVC arhi-cunoscut între programatorii web, cu o tehnologie relativ simplu de învățat.
Însă acum în 2010, mi se pare că în sfărșit Microsoft se deschide total pentru programatorii începători sau care vor să facă lucruri simple foarte repede. E vorba de mai multe unelte și tehnologii, îmbrăcate sub numele WebMatrix. E încă în stadiul Beta, dar poate fi descărcat și te poți juca cu el.
Ce conține WebMatrix:
- IIS Developer Express. Chiar dacă Visual Studio venea cu un server web integrat, era cu totul altceva și nu 100% compatibil cu IIS (serverul web de producție). Acum avem un IIS mic și ușor de instalat, excelent pentru dezvoltare.
- SQL Server Compact Edition. Când dezvolți un site mic, cu o bază de date în spate, și nu vrei să îți bați capul cu instalarea bazei de date într-un server specializat, SQL Server Compact Edition este soluția: lucrezi cu fișiere .mdf direct în aplicație (seamănă ca simplitate cu lucrul cu baze de date Access), dar ulterior le poți migra la un server dedicat.
- ASP.NET Razor: un nou motor de randare și vizualizare a codului, care permite realizarea de funcționalitate folosind o sintaxă simplă și foarte optimizată pentru generarea de HTML.
- O unealtă simplă de dezvoltare.
Mi-am descărcat WebMatrix și m-am jucat cu el, și pot spune că e chiar foarte ușor să faci aplicații web relativ simple. Un post foarte detaliat apare ca de obicei pe blog-ul lui Scott Guthrie: http://weblogs.asp.net/scottgu/archive/2010/07/06/introducing-webmatrix.aspx.
P.S.: dacă e să însumez toate eforturile Microsoft pe parte de web pur – deci nu RIA (IE9 care implementează HTML 5, evoluțiile pe partea de Ajax, acum WebMatrix pentru programatori), e clar că investiția lor e foarte decisivă în această direcție. Deci, ca programator de aplicații web, pot sta liniștit o vreme, încă va fi de lucru pentru noi :-).
IE 9 Preview – in Delta
Weekend-ul trecut am fost în Deltă într-o locație excelentă (http://www.greenvillage.ro/ ), invitat fiind de Microsoft România (Tudor, Petru, George), să discutăm despre browsere și HTML 5 (http://dev.w3.org/html5/spec/Overview.html). Mi-a prins foarte bine această ieșire, pentru că înainte să merg acolo am testat și eu IE 9 Preview (http://ie.microsoft.com/testdrive/), care merge foarte bine și care implementează standardul HTML 5. Pe scurt: viteză, add-on-uri, ușurință de utilizare.
De asemenea, am discutat despre standardul HTML 5, care vine cu câteva lucruri excelente: elemente html pentru fișiere multimedia, CSS evoluat (mă rog, ăsta e un alt standard), facilități pentru aplicații web offline, etc. Însă sunt și limitări / probleme, cel puțin pe moment: lipsa de standardizare în piața de codec-uri (ceea ce înseamnă că dacă vrei să expui fișiere video într-un site HTML, trebuie să creezi mai multe versiuni ale acelor fișiere), probleme de performanță la streaming de video, lipsa de DRM (Digital Rights Management) la stream-uri video, etc. E clar, HTML evoluează foarte bine, și cel puțin pentru site-uri publice este un progres enorm. Pe de altă parte, pentru aplicații web mai ”de business” sau cu stream-uri video, soluția ramâne tot o tehnologie RIA (Silverlight, Flex, Flash, etc.).
Entity Framework 4.0 – eBook
[RO]
M-am apucat de treaba asta – să scriu o carte electronică despre Entity Framework 4.0 – și recunosc că e mai greu decât pare. Am hotărât să public ceea ce am până acum, având încă un capitol extrem de interesant care urmează să fie scris. Cartea este foarte utilă pentru programatorii care își pun problema tehnologiei în care să realizeze Data Layer-ul unei aplicații .NET.
Cartea este aici: http://www.hpc-consulting.ro/download/Building%20the%20data%20layer%20with%20Entity%20Framework%204.0.pdf. Iar exemplele folosite și referite în diferite momente, sunt aici: http://www.hpc-consulting.ro/download/Entity Framework eBook - Mihai Tataran.zip. Exemplele sunt realizate cu MS SQL Server 2008, și cu Visual Studio 2010 Beta 2 – dar merg și cu versiunea finală.
Feedback-ul este binevenit. Lăsați comentarii sau email.
[EN]
I started working on an Entity Framework 4.0 eBook and it’s harder than it seems. I decided to publish what I have so far, though there is a very interesting chapter in the pipeline. The book is useful for the programmers who wander which is the technology to write the Data Layer in for a .NET application, or for anybody which wants to learn Entity Framework from .NET 4.0.
The book is here: http://www.hpc-consulting.ro/download/Building%20the%20data%20layer%20with%20Entity%20Framework%204.0.pdf. The samples are here: http://www.hpc-consulting.ro/download/Entity Framework eBook - Mihai Tataran.zip - they are build with MS SQL Server 2008 and Visual Studio 2010 Beta 2 but they work with the final version of Visual Studio.
Feedback is welcomed, as comments or on email.
Dupa Codecamp la Cluj, 15 mai
Ca de obicei, sunt încântat după un eveniment Codecamp, mai ales că am impresia că ne-a ieșit bine în ciuda unor încurcături legate de locație. E de remarcat că lumea (45+ participanți) a stat toată ziua într-o sâmbătă :-).
Am pus aici resursele prezentării mele. Pentru demo-ul cu 3 proiecte folosesc o bază de date pe care nu o mai atașez în resurse, dar poate fi creată foarte simplu pe baza modelului Entity Framework (e o facilitate a lui EF din .NET 4.0).
Vom reveni cu fotografii, și cu celelalte prezentări.
Dupa Codecamp-ul de la Timisoara
Posted by mihai in News/Events, Tehnical on March 24th, 2010
Pentru noi a fost foarte interesant să organizăm acest eveniment. Pentru Timişoara, o prezenţă de peste 50 de persoane este ceva de reţinut :-), mai ales că inclusiv la laboratoare am avut aproximativ 40 de participanţi – sâmbătă, într-o frumoasă zi de primăvară cu mult soare, la ora 16.30 lumea scria cod :-).
Am citit şi feedback-ul participanţilor şi în general este foarte pozitiv. Un aspect am reţinut eu personal (deşi nu apărea menţionat, îl simt eu), că ar fi trebuit mai mult timp pentru laboratoare. Poate data viitoare :-).
Prezentările şi exemplele pot fi descărcate de aici. Aplicaţia lui Raul poate fi găsită şi aici: http://studentclub.ro/raul/Default.aspx. Fotografii de la eveniment aici.
Inregistrare LiveMeeting – Ajax 4.0 CRUD
În LiveMeeting-ul de vineri, am discutat despre realizarea de operații Create/Read/Update/Delete folosind Ajax 4.0, cu diferite modele arhitecturale. Am dat câteva exemple de Ajax cu ASP.NET MVC, Ajax cu serviciu Windows Communication Foundation, cu data layer construit cu Entity Framework 4.0, folosind chiar și facilitatea disponibilă din această versiune de EF, anume entități POCO (Plain Old CLR Object).
Aici poate fi găsită înregistrarea: https://www119.livemeeting.com/cc/mvp_no_voip/view?id=FNT4NN. Foarte probabil voi mai organiza o discuție pe tema Ajax 4.0, de data aceasta mergând mai detaliat în ceea ce privește alegerea arhitecturii unei astfel de aplicații.
Live Meeting inregistrat – Ajax Data Binding
Am înregistrat întâlnirea de azi, în sfârșit pe server-ul de Live Meeting. Deși din titlu reieșea că voi povesti despre Client Templates și Data Binding, am început cu o introducere legată de conceptele din spatele bilbiotecii Ajax: scripturi, cum sunt încărcate, cum le folosim, etc.
Ce a ieșit poate fi vizionat aici. Introduceți un nume, după care confirmați multe dialog-uri ale browser-ului (Popups, Run Add-ons, etc), și în cele din urmă veți putea să urmăriți prezentarea.
Live Meeting-uri inregistrate
Așez aici link-uri către 4 live meeting-uri susținute de mine în ultima perioadă, și care pot fi urmărite la cerere. Toate întâlnirile pe care le organizez pe web ar trebui să fie înregistrate pe serverul de Live Meeting, dar acestea 4 mi-au scăpat și au fost înregistrate local pe calculatorul de pe care prezentam. Nu-i nimic, le puteți vedea de aici (intrați vă rog cu IE, nu prea merge cu alte browsere):
Model aplicatie Silverlight, WCF, EF - screencast
Un client mi-a cerut să îi dezvolt un mic framework - nici măcar nu e un framework în sine – ci mai degrabă un model de soluție Visual Studio 2008 pentru o aplicație Silverlight, care să includă tehnologiile WCF pentru serviciu / Business Layer și Entity Fraamework pentru Data Layer, după cum urmează:
- Un tabel User in baza de date:
- Id
- Username (50, not null) - Model generat cu Entity Framework
- WCF Service
- Silverlight UI: un form cu validarea câmpului Username
Modelul conține deci un serviciu Windows Communication Foundation, cu un model Entity Framework mapat pe o bază de date cu o tabelă, respectiv un client Silverlight. Pentru partea de validare din interfață am folosit un proiect open source de pe Codeplex: http://silverlightvalidate.codeplex.com/.
M-am gândit că e bine să înregistrez toți pașii pe care îi fac, realizând până la urmă un screencast cu desktop-ul meu și sunet de la microfon. Screencast-ul poate fi luat de pe Skydrive.
Soluția Visual Studio cu un backup al bazei de date (MS SQL Server 2008) este aici, pe Skydrive.

