BLOGas.lt
Sukurk savo BLOGą Kitas atsitiktinis BLOGas

JavaScript failų lokalizacija

Parašė Sergejus | 2009-03-31 23:13

Tikriausiai nemažai jūsų esate susidūrę su ASP.NET puslapių kūrimu keliomis kalbomis. Laimei, tai padaryti nėra sunku. Priminsiu, norint kad Web puslapis palaikytų lietuvių ir anglų kalbas, užtenka aprašyti atitinkamus resursų failus (pavyzdžiui, Global.resx ir Globa.en-US.resx). Vertimai iš antrojo failo bus naudojami tik esant EN-US kalbai, o iš pirmojo – visais kitais atvejais.



ASP.NET puslapyje vietoje konkretaus teksto galima rašyti $Resources arba GetGlobalResourceObject / GetLocalResourceObject. Einamosios kalbos keitimą aš realizuosiu spaudžiant ant atitinkamų mygtukų:



C# pusėje apdorojamas einamos kalbos pakeitimas, o pasirinkta kalba išsaugome sesijoje:



Kam aš visą tai rašau? Praeitą savaitę darbe reikėjo realizuoti panašų mechanizmą, bet skirtą ne ASPX puslapiams, o JavaScript failams. Sprendimas ties kuriuo apsistojau yra pakankamai paprastas, bet tuo pačiu metu ir galingas.


Pirma reikia sukurti du JavaScript failus, skirtus saugoti lietuviškus ir angliškus pranešimus:



Tada reikia pridėti nuorodas į aprašytus failus atitinkamai į Global.resx ir Global.en-US.resx:



Tokiu būdu, pats ASP.NET lokalizacijos mechanizmas mums grąžins teisingą kelią iki JavaScript resursų failo, kurį mes registruojame mūsų puslapyje:



Tai leido panaudoti mano aprašytą JavaScript objektą Resources tiesiog alert funkcijoje. Paprasta ir patogu! Dar vienas svarbus aspektas - Resources objektas prieinamas ir kituose JavaScript failuose. O ką jus manote apie tokį JavaScript lokalizacijos būdą?

Rodyk draugams

Antrasis Baltijos šalių MSP susitikimas Rygoje

Parašė Sergejus | 2009-03-29 21:21

Praėjusį penktadienį ir šeštadienį Rygoje vyko antrasis Baltijos šalių Microsoft studentų partnerių susitikimas. MSP – tai studentai, dalinantis savo žiniomis apie Microsoft produktus su kitais studentais. Jo metu buvo dalijamasi patirtimi iš susitikimų organizavimo, svarstomi būdai kaip pagerinti susitikimų kokybę bei pritraukti daugiau narių. Aš skaičiau du pranešimus: apie savo stažuotę Redmonde ir apie MVP (Most Valuable Professional) veiklas.





Renginys buvo tikrai puikiai organizuotas ir ypač vakarinė dalis ;)



Kitais metais Baltijos šalių MSP susitikimas vyks Vilniuje, tad raginu IT studentus prisijungti prie šios šaunios veiklos!

Rodyk draugams

Lietuvos .NET vartotojų grupės susitikimo medžiaga

Parašė Sergejus | 2009-03-23 20:51

Kas nesate prisirašęs prie DotNetGroup.LT RSS noriu pranešti, kad jau patalpinta ASP.NET MVC medžiaga. Artimiausiu metu bus patalpintas ir Romualdo kodas bei skaidrės.

Rodyk draugams

MIX09 sesijos parsiuntimui

Parašė Sergejus | 2009-03-20 19:17

Tapo prieinamos parsiuntimui MIX09 sesijos (ne visos dar patalpintos):


Rodyk draugams

Internet Explorer 8 ir ASP.NET MVC 1

Parašė Sergejus | 2009-03-19 20:11

Šiandien atroji MIX09 konferencijos diena. Pagrindinė šios dienos naujiena - galutinės Internet Explorer 8 versijos anonsavimas. Jus galite parsisiųsti ją čia. Taip pat vakar vakare buvo paskelbta ir apie galutinės ASP.NET MVC versijos prieinamumą. Visus raginu pradėti bandyti naują karkasą realiuose projektuose!

Rodyk draugams

Silverlight 3.0

Parašė Sergejus | 2009-03-18 20:23

Taigi ką tik MIX09 konferencijos metu buvo oficialiai paskelbta apie Silverlight 3.0. Pagrindinės nuorodos:



Silverlight 3.0 palaiko 3D akceleraciją, naujus HD kodekus bei Windows ir Mac OS operacinėse sistemose moka dirbti už naršyklės ribų! Taip pat pats instaliacinis rinkinys sumažėjo 40KB. Detalus naujovių sąrašas - čia bei čia.

Rodyk draugams

Konferencija MIX09

Parašė Sergejus | 2009-03-18 00:47

Taigi šiandien prasideda viena svarbiausių Web konferencijų - MIX09. 19 valandą Lietuvos laiku galėsite tiesiogiai žiūrėti pagrindinius pristatymus. Šių metų MIXas turi būti tikrai įdomus vien pagal anonsų skaičių, tad tikrai rekomenduoju nepraleisti progos ir pamatyti viską savo akimis!

Rodyk draugams

DateTime.Now testavimas

Parašė Sergejus | 2009-03-15 14:20

Paskutiniu metu kažkodėl pradėjau ypač daug dėmesio skirti testavimui ir testuojamumui (t.y. kada programa projektuojama taip, kad būtų lengva testuoti). Prieš kelias dienas aš susidūriau su datos testavimo problema. Tarkime, mes turime metodą, kuris pasako ar reikia suteikti nuolaidą:



 Nuolaida yra suteikiama tik tada, kai einamoji data yra paskutinė mėnesio diena:



Akivaizdu, kad testuoti šį metodą yra labai sunku dėl DateTime.Now. Kaip, pavyzdžiui, jus patikrinsite ar mėnesio paskutinę dieną jis grąžins reikšmę true? Datos ir laiko testavimui, aš pasinaudojau patobulintu Ayende pasiūlymu:



Realizacija gali iš pirmo žvilgsnio atrodyti kiek keista. Aš aprašau delegatą, kuris grąžina DateTime tipą, o konstruktoriuje nurodau, kad pagal nutylėjimą delegatas siejamas su Lambda išraiška, kuri grąžina einamąją datą ir laiką. Tokiu būdu, atnaujintas ApplyDiscount metodas atrodys taip:


Kaip matyti, nieko per daug nepasikeitė, bet dabar aš galiu labai paprastai aprašyti reikalingus man testus:



Vienintelis šio metodo trūkumas, po testo būtina SystemDateTime.Now priskirti Lambda išraišką pagal nutylėjimą DateTime.Now. Mano atveju, aš tiesiog tai aprašau TestCleanup metode, kuris yra vykdomas po kiekvieno testo, taip minimizuojant klaidos galimybę.


O ką jus manote apie tokį datos ir laiko testavimą? Kaip jus sprendžiate šią problemą?

Rodyk draugams

Naujasis MoQ 3.0

Parašė Sergejus | 2009-03-11 21:14

Kol aš buvau MVP susitikime Redmonde, atsinaujino mano mėgstamiausias Mocking karkasas - MoQ. Naujoji versija yra suderinama su Silverlight, tad dabar mes galima paprasčiau testuoti ir Silverlight aplikacijas. Kitos naujovės apima pagerintą API įvykių iškvietimui, savybių nustatymui, elgsenos (angl. behavior) tikrinimui ir pan. Daugiau informacijos - oficialiame MoQ karkaso puslapyje.




P.S.


Eilinį kartą užstrigau su lietuvybę: kaip siūlytumėte versti “Mocking” ir “Stubbing”?

Rodyk draugams

Galima vartotojų sąsaja po dešimtmečio

Parašė Sergejus | 2009-03-07 18:39

Office Labs paruošė gražų klipą apie galimą vartotojų sąsają per ateinančius dešimt metų. Kol kas atrodo neįtikėtinai, bet pafantazuoti naudinga! Labiausiai norėčiau lankstomą el. laikraštį…


Rodyk draugams