wtorek, 29 lipca 2008

Google XML Pages

Google udostępniło system szablonów na bazie którego od wielu lat działają takie serwisy jak Blogger, Google Analytics czy Google Reader. Przeznaczony jest do wyświetlania stron XML/SGML. Na tę chwilę dostępny jest dla języka Java i w przygotowaniu C++ (chociaż na jednej stronie znalazłem, że podobno już jest gotowy - kodu nie znalazłem niestety).
Aktualna wersja to 0.2 beta, dostępna jest na stronie Google Code : GXP.
Możliwości jakie posiada GXP można obejrzeć na prezentacji: GXP Introduction Slides.

Jednak zanim przyjdzie nam z tego korzystać trzeba będzie poczekać na dokumentację której jak narazie nie ukończono ;P

poniedziałek, 28 lipca 2008

My life for Auir !


wtorek, 22 lipca 2008

Wymiana oleju to strata pieniędzy ?


Znalazłem gdzieś w sieci artykuł w którym postawiono tezę, że okresowa wymiana oleju w samochodzie to strata pieniędzy, która dodatkowo szkodzi! Najciekawsze jest to, że taką tezę postawił były dyrektor Castrol - Henk de Groot.
Zapraszam do lektury.
ARTYKUŁ


niedziela, 20 lipca 2008

troszkę inny 'switch'

Całkiem niedawno odkryłem ciekawe, inne użycie switcha (pewnie wszyscy je znali a ja ciągle siedziałem w średniowieczu ale co tam). W każdym skrypcie zawsze znajdą się linie kodu podobne do tego:
$i = 1;

if ( $i == 0 ) {
echo 'Goodnight, world!!';
} elseif ( $i == 1 ) {
echo 'Hello, world!';
} elseif ( $i > 4 ) {
echo 'Dont cry for me.... ARGENTINA !!';
} else {
echo 'die die die!';
}
(warunek prosty dla przykładu)
Mnie osobiście takie tasiemce elseif elseif elseif troszkę brzydzą i dla mnie taki kod jest nieczytelny (zwłaszcza gdy warunki robią się duże). Taki kod można prosto przerobić w konstrukcję switch, która będzie "ładniejsza" w taki sposób:

$i = 1;

switch ( true ) {
case ( $i == 0 ):
echo 'Goodnight, world!!';
break;

case ( $i == 1 ):
echo 'Hello, world!';
break;

case ( $i > 4 ) :
echo 'Dont cry for me.... ARGENTINA !!';
break;

default:
echo 'die die die!';
break;
}
Od razu ładniej:) Zachowanie mamy praktycznie takie same. Kodu może troszkę więcej powstaje ale co tam! Ważne, że ładnie :)
Co do szybkości wykonywanie to nie sprawdzałem, mam to gdzieś :)
Dodam jeszcze, że należy pamiętać, że zawsze zostanie wykonany tylko pierwszy 'case' który ma spełniony warunek a następne nie będą już sprawdzane (nawet gdy ich warunek spełniony). Oczywiście pomijam tutaj możliwość opuszczenia 'break'.

Wiem, że nic genialnego nie odkryłem ale może komuś się przyda/spodoba ^^