Niezalogowany [ logowanie ]
Subskrybuj kanał ATOM Kanał ATOM

Autor wpisu: batman, dodany: 20.05.2010 12:00, tagi: php

Mam dzisiaj dla was niespodziankę – darmową książkę pod tytułem “PHP5. Programowanie z wykorzystaniem Symfony, CakePHP, Zend Framework”. Jej opis możecie znaleźć w serwisie helion.pl. Książka jest nowa, kilka razy otwierana.

Dlaczego chcę oddać tą książkę?

Ponieważ informacje w niej zawarte nie są mi do niczego potrzebne. Zend Frameworka znam na tyle dobrze, że potrafiłbym wytknąć autorom kilka błędów, Cake mnie nie interesuje, podobnie jak Symfony.

Czy książka jest warta uwagi?

To zależy. Ja nic ciekawego w niej nie znalazłem. Z drugiej jednak strony ktoś, kto posiada już jakąś wiedzę na temat danego frameworka, może chcieć tą wiedzę uporządkować. Jeśli chcecie poznać opinie na temat tej książki, odsyłam na forum.php.pl. Znajdziecie tam stosowny temat.

Jak zdobyć książkę?

Jeśli nadal jesteście zainteresowani książką, wystarczy, że napiszecie do mnie wiadomość (w prawej kolumnie znajduje się link do formularza kontaktowego). W temacie wiadomości wpiszcie Oddam książkę w dobre ręce (ortografia, wielkość liter oraz polskie znaki mają znaczenie). Ponieważ książkę mam tylko jedną, oddam ją pierwszej osobie, która wyśle wiadomość. Jedyny koszt jaki trzeba będzie ponieść w związku z książką, to opłata za przesyłkę. Rodzaj przesyłki ustalę bezpośrednio z osobą,  która wygra książkę.

Zapraszam do zabawy.

Autor wpisu: Damian Rusinek, Piotr Wierzgała, dodany: 19.05.2010 16:11, tagi: framework

Na konferencji Flash Camp 2010 Rafał Szemraj przedstawił w krótkim przemówieniu nowy framework do Flexa – Tequila. Jest to framework oparty na PureMVC z domieszką Fabrication. Niestety nie miałem jeszcze czasu zaznajomić się z nim dogłębniej, ale jak tylko znajdę czas to na pewno napisze jak mi się z nim pracuje :)

Ciekawym rozwiązaniem jest dołączenie do frameworka konsoli napisanej w AIR, która pomaga debugować program.

Po więcej informacji odsyłam na stronę autora.

Autor wpisu: batman, dodany: 18.05.2010 20:33, tagi: javascript

Co to jest Deep Zoom?

Podczas poznawania Silverlighta natknąłem się na ciekawą technologię – Deep Zoom. Pozwala ona na przeglądanie obrazów o wysokiej rozdzielczości w bardzo prosty i intuicyjny sposób. Deep Zoom pozwala na płynną zmianę wielkości przybliżenia (zoom) oraz na ładowanie poszczególnych elementów obrazu.

Gdzie stosować Deep Zoom?

Wszędzie tam, gdzie wymagane są operacje na dużych obrazach. Microsoft podaje trzy główne zastosowania:

  • przeglądanie obrazów o bardzo dużej rozdzielczości. Do obrazów takich można zaliczyć np mapę, która w zależności od wartości przybliżenia, pozwala oglądać kolejne szczegóły danego miejsca
  • fotografia 3D – dzięki zastosowaniu kolekcji, można stworzyć na podstawie samych zdjęć, model 3D miejsca, które zostało sfotografowane
  • reklama, którą można przybliżać i oddalać w celu poznania innych szczegółów reklamowanego produktu

Jak korzystać z Deep Zoom?

Jeśli myślicie, że trzeba w tym celu skorzystać z Silverlighta, to macie rację. Ale nie do końca. Microsoft przygotował bibliotekę Javascript o nazwie Seadragon Ajax, która oferuje praktycznie te same możliwości co Silverlight (oczywiście w kontekście Deep Zoom). Zanim będzie można skorzystać z możliwości jakie oferuje Deep Zoom, należy wpierw przygotować zdjęcie. W tym celu należy pobrać darmową aplikację Deep Zoom Composer, a następnie przy jej pomocy przygotować zdjęcie. W skrócie, polega to na stworzeniu szeregu folderów, w których przechowywane są zdjęcia o odpowiednich rozmiarach dla każdego z poziomów przybliżenia. Więcej szczegółów technicznych można znaleźć na stronach MSDN.

Kilka słów o Seadragon Ajax

Seadragon Ajax jest biblioteką Javascript umożliwiającą operowanie obrazem w formacie Deep Zoom. Oferuje ona te same możliwości co Silverlight, z jednym wyjątkiem. Nie obsługuje kolekcji.

Korzystanie z biblioteki jest niezmiernie proste i sprowadza się do napisania kilku wierszy kodu. Na sam początek należy dołączyć do strony bibliotekę.

<script type="text/javascript" src="http://seadragon.com/ajax/0.8/seadragon-min.js"></script>

Następnie wystarczy na obiekcie Viewer wywołać metodę openDzi i gotowe.

Czytaj dalej tutaj (rozwija treść wpisu)
Czytaj dalej na blogu autora...

Autor wpisu: sokzzuka, dodany: 18.05.2010 09:06, tagi: php

Phpdoc jest bardzo przydatnym narzędziem używanym do automatycznego generowania dokumentacji z kodu. Ma on jednak poza tym jeszcze inne zastosowania.

Jednym z nich, a właściwie zastosowaniem jego tagów jest pomoc w podpowiadaniu kodu. Jako, że większość swoich projektów php-owych pisze w Netbeans, postanowiłem przybliżyć kilka sposobów na ułatwienie sobie życia.

Jeszcze krótkim słowem wstępu, jak wyglądają tagi phpdoc-a ?

/**
* @param integer $a
*/
function foo($a){
    return $a+1;
}

Jak widzimy tagi pisane są w komentarzu, który zaczyna się od dwóch gwiazdek ‘/**’ i znaku nowej linii. Otwierając komentarz i pisząc właśnie ‘/**’ i wciskając enter, netbeans sam wstawi nam template do uzupełnienia tagów.

Pytanie teraz, jak tagi phpDoc-a mogą nam ułatwić życie, poprawić komfort pisania kodu ? To proste, w php nie da się deklarować typu zmiennych oraz tworzyć typowanych argumentów funkcji (oprócz typowania na klasy i interfejsy). Wobec tego IDE ma ograniczone możliwości podpowiadania. Co więcej, gdy używamy magicznych funkcji __get i __set, sprawa staje się jeszcze bardziej beznadziejna.

Przydatne tagi i przykłady zastosowania:

  • /*@var $zmienna NazwaKlasy */ -  używany wewnątrz funkcji, działa jak deklaracja typu zmiennej w językach statycznie typowanych, np. C czy Javie (tag obsługiwany tylko w netbeans)
  • @var TypParametru – używany w klasie przed deklaracją właściwości klasy
  • @param TypParametru $zmienna – używany przed deklaracją metody/funkcji mówi jaki typ ma parametr przekazywany do funkcji
  • @property TypParametru $zmienna – używany przed deklaracją klasy, informuje o właściwościach klasy implementowaych przez magiczne metody __get i __set
  • @property-read – j.w tylko dla właściwości tylko do odczytu
  • @property-write – j.w tylko dla właściwości tylko do zapisu
  • @method TypZwracany nazwaMetody() - używany przed deklaracją klasy, deklaruje metodę implementowaną przez magiczną metodę __call
  • @return TypZwracany – informuje o typie zwracanym przez funkcje/metodę

Dzięki stosowaniu tych tagów w swoich projektach, można wymiernie poprawić swoją efektywność w pisaniu kodu, oraz jako skutek uboczny mieć automatycznie wygenerowaną podstawową dokumentacje.

P.S inne edytory też to obsługuja (np. Eclipse)

Autor wpisu: JoShiMa, dodany: 17.05.2010 01:00, tagi: sql

Skoro pokazałam już jak wygląda struktura drzewa nested set oraz jak wczytać całe drzewo a także jak pobrać wybraną gałąź, pora zająć się dodawaniem rekordów do omawianej struktury. W przypadku najprostszej implementacji struktury drzewiastej w bazie, jaką opisałam w pierwszym artykule tej serii, dodanie kolejnego rekordu jest proste i wymaga wykonania jednego zapytania. Wystarczy tylko aby [...]

Autor wpisu: Damian Tylczyński, dodany: 15.05.2010 21:14, tagi: php

Poświęciłem kilka minut na zaprezentowanie i skomentowanie nowej propozycji, która pojawiła się na stronach wiki PHP. Jest naprawdę ciekawie.

Autor wpisu: cojack, dodany: 15.05.2010 13:12, tagi: php

Kto z Was nigdy nie łamał sobie głowy jakie jest najlepsze środowisko edytorskie dla naszego “ukochanego” języka skryptowego pod linuksem? Założę się że każdy z Was, a ja chciałbym Wam zaproponować KDevelop. Nie tak dawno temu zespół KDevelop ogłosił publicznie finalną ver. oznaczoną numerkiem 4.0, w całości zostało przeportowane na qt 4. Nie dość że ślicznie wygląda to jeszcze komuś się chciało napisać plugin dla PHP! To już całkiem niezły wyczes z wypasem.

Co nam oferuje KDevelop

Planeta PHP

KDevelop i PHP

  • Tworzenie projektów
  • Obsługa SVN z poziomu programu
  • Kolorowanie składni
  • Integracja z manualem PHP
  • Autosugestia metod w klasach
  • Autosugestia nazw zmiennych ( :p )
  • i wiele wiele wiele… more

Otóż po rozmowie z twórcą pluginu i zgłoszeniu paru błędów wiem czego na razie nie ma, nie działają podpowiedzi w statycznym wywoływaniu metod np:

SomeClassName::

Nie dostaniemy listeningu metod statycznych. Mi przynajmniej nie działa, on mówi że mu działa, eee nie wiem co jest grane ;]

KDevelop posiada kolorowanie składni również dla wielu wielu innych języków skryptowych. Wspaniałością jest to iż posiada kolorowanie składni dla skryptów SQL, tudzież PostgreSQL. Gdzie dla mnie to jest po prostu cudowna sprawa, ale był błąd w kolorowaniu składni procedur w języku pl/pgsql (będzie mini kurs wprowadzający w programowaniu pl/sql). By naprawić kolorowanie w tymże języku należy pobrać: sql-postgresql.xml plik i wrzucić go do:

$ /usr/share/kde4/apps/katepart/syntax/

tam już takowy plik będzie, zróbmy sobie pierw jego kopie, a następnie wrzućmy nowy. Po tej całej operacji restart KDevelop i będzie nam piknie działać. Napisałem że ma błąd w kolorowaniu składni ale nie napisałem jaki, otóż sprawa ma się tak, przyjrzyjmy się funkcji:

CREATE FUNCTION "getMenuPath" ( "_idMenu" INT ) RETURNS LTREE AS $BODY$
	SELECT
	   "menuPath"
	FROM
	   "menu"
	WHERE
	   "idMenu" = $1;
$BODY$ LANGUAGE 'SQL' WITH (ISCACHABLE);

Jak widzimy po strukturze $BODY$ mamy ciało SQL, natomiast KDevelop interpretował to jako string, i tutaj był problem z kolorowaniem składni.

Błędy w KDevelop

Jest parę błędów w KDevelop które często powodują że nurtują mnie pytania czy dobrze zrobiłem że się na KDevelop przesiadłem, otóż mimo iż jest to oficjalne wydanie środowisko jest dosyć nie stabilne. Potrafi się często wyłożyć w najmniej oczekiwanych momentach, dlatego np odradzam korzystanie z SVN w KDevelop a wykorzystać do tego zewnętrzny program np: kdesvn, lub po prostu jechać z konsoli. Czasami potrafi się też wysypać przy zamykaniu zakładek otwartych dokumentów. Innym ficzerem jest też taka opcja że gdy się najedzie na funkcję w php to pokazuje się tooltip ballon z informacją o funckji z linkiem w środku: Show uses, po kliknięciu na niego najprawdopodobniej powinny się pojawić jakieś przykłady jak to użyć, ale pojawia się nowe okno z paskiem postępu i cały KDevelop zdechł.

Praca z KDevelop

Wszystko co nam potrzebne do pracy z KDevelop to kawałek internetu, 3kilo root’a i z 2 głośniki. Polecam też zainstalowanie paczek z debug symbols.

Czytaj dalej tutaj (rozwija treść wpisu)
Czytaj dalej na blogu autora...

Wszystkie wpisy należą do ich twórców. PHP.pl nie ponosi odpowiedzialności za treść wpisów.