Technologie i narzędzia: język PHP 5, Java, JavaScript, Python, system Zend Framework, Django, biblioteka jQuery, Smarty, platforma Eclipse, MySQL, SVN, CVS, UML, Firefox.
WebProgramming - wszystko o serwisach internetowych
O serwisach internetowych.
[php] Operacje na napisach (string) i ich wydajność (krótka historia)
Od dawna zastanawiałem się, czy operacje na napisach są kosztowne (pamięciowo i/lub obliczeniowo)? W językach typu Java, C# spotykamy specjalną klasą typu StringBuilder, która jest zalecanym sposobem tworzenia napisów (jest optymalną wersją “zwykłych” napisów - optymalną pod względem wykonywania operacji na nich). W przypadku języka PHP takiej klasy nie posiadamy - istnieje tylko prosta zwykła konkatenacja.
[smarty] Ciekawe wykorzystanie modyfikatora.
Przyszedł czas na ciekawostkę, a dokładnie na nietypowe (wg mnie) wykorzystanie modyfikatorów biblioteki Smarty. Wyobraźmy sobie, że mamy bibliotekę do obsługi formularzy (wraz z walidacją pól), która dla każdego pola przechowuje informacje o tym, czy jest ono poprawne, czy też nie - informacja ta bardzo by się przydała w warstwie widoku, tylko jak ją “przekazać”. Pierwsza myśl jaka przyszłaby mi do głowy to stworzenie funkcji (wtyczki typu ‘template function’) Smarty, która realizowałoby tą funkcjonalność, na przykład:
-
function smarty_function_hasError($params, &$smarty) {
-
$hasError = false;
-
// Sprawdź, czy pole $params['field'] ma błędy
-
$hasError = Form::getFieldError($params[‘field’]);
-
}
-
return $hasError;
-
}
Serwis dobrzypolitycy.pl w Google.
Kilkanaście dni temu wzmianka o tym serwisie znalazła się nawet w telewizji - postanowiłem więc, że sam tam zajrzę. Z racji jednak, że nie pamiętałem dokładnie adresu (wiedziałem tylko, że był związany ze słowem “politycy” ) postanowiłem skorzystać z wszechwiedzącego Google. Po kilku próbach odnalazłem poszukiwany serwis.. z tym że zaciekawił mnie jego opis (stan na 1 luty 2009).
Postulat odnośnie pojęcia “informatyk”.
Witam po dłużej przerwie - na rozgrzewkę zaproponuje Wam artykuł z kategorii “przemyślenia”, oto on:
Chciałbym zaproponować wniesienie postulatu o upowszechnienie bardziej stosownych pojęć określających pracę związaną z komputerami - czyli postuluje o zastąpienie słowa “informatyk” kilkoma innymi, które bardziej określałyby, czym dana osoba się zajmuje.
[firebug] Ciekawy plugin dla programistów AJAX - FirePHP.
Szybka notka o bardzo ciekawej wtyczce, na którą natknąłem się jakiś czas temu, ale dopiero najnowsza wersja jest naprawdę godna uwagi. Mowa tutaj o wtyczce FirePHP, która umożliwia wyświetlanie informacji w konsoli Firebug przesyłanych z poziomu serwera (czyli z poziomu PHP).
[php] Ciekawostka dotycząca obiektowości.
Ciekawostka polega na nietypowym zachowaniu się interpretatora PHP w przypadku gdy wywołamy metodę, w której znajduje się odwołanie do instancji obiektu (za pomocą $this), jako metodę statyczną.
[php|asp] Wydajność
Znalazłem dość ciekawy “benchmark” porównujący wydajność PHP i ASP (oraz CGI) na podstawie jednego produktu (stworzonego w różnych w/w technologiach).
Porównanie jest dostępne pod adresem http://www.wrensoft.com/zoom/benchmarks.html.
W wielkim skrócie wynika z niego, iż produkt napisany w języku PHP jest bardziej wydajny od tego napisanego w technologii ASP. Oczywiście na wyniki tego porównania należy patrzeć z małym przymrużeniem oka - tą samą funkcjonalność można przecież napisać w tym samym języku na kilka sposobów - mniej lub bardziej wydajnie. Mimo wszystko daje nam pewne spojrzenie na ten temat.
[zend] Poznaj Zend Framework
Już niebawem cykl artykułów poświęconych systemowi Zend Framework - prawdopodobnie najlepszemu frameworkowi w rodzinie PHP. Cykl zaczniemy od ogólnego spojrzenia na framework, po czym omówimy szczegółowo takie komponenty jak tłumaczenie adresów (routing), cache, obsługę baz danych.
Jeżeli ciekawi Cię konkretny temat napisz propozycję w komentarzu.
Ciekawe tłumaczenia UI w aplikacjach.
W ramach rozrywki chciałem się podzielić z Wami ciekawymi tłumaczeniami jakie napotkałem (i które jeszcze pamiętam).
Na rozgrzewkę napisze najnowszą treść z jaką miałem do czynienia. W aplikacji webowej phpMyAdmin, po wykonaniu instrukcji TRUNCATE TABLE xxx moim oczom ukazał się komunikat “Tabela xxx została opróżniona”. Mam nadzieje, że chociaż spłukała po sobie