Szósta edycja PHPCon PL ponownie okazała się wielkim wydarzeniem. Już sama liczba uczestników robi wrażenie! Prawie 900 entuzjastów PHP przybyło na konferencję. Pomimo, iż wybrany został hotel zdecydowanie większy niż rok temu, już na miesiąc przed terminem imprezy zabrakło miejsc.

Gośćmi specjalnymi w tym roku byli: Matthias Noback (posiadający wiele publikacji na temat Symfony oraz prowadzący warsztaty z DDD) oraz Mathias Verraes (prowadzący kursy z DDD). Osobiście najbardziej oczekiwałem wykładów prowadzonych przez Marco Pivetta, który jest częścią zespołu pracującego nad Doctrine oraz Zend Framework. Przez trzy dni konferencji odbyło się prawie 40 wykładów i warsztatów. Na wyróżnienie moim zdaniem na pewno zasługują wystąpienia Leszka Krupińskiego, Sebastian Grodzickiego oraz Michała Pipy.

 

PHP 7 w praktyce – co nas czeka w PHP?

Czyli Leszek Krupiński o suchych, PHP-owych faktach i inspirującej genezie każdej nowości.

Jak wspomniał prowadzący, niektórych może zadziwić brak wersji 6. Złożyło się na to kilka powodów; przede wszystkim bardzo długie prace nad wersją 6 oraz implementacja niektórych elementów już w wersjach oznaczonych jako 5.3 i 5.4. W sieci znajduje się obszerny dokument (https://wiki.php.net/rfc/php6) opisujący podjętą decyzję o przeskoczeniu numeracji z wersji 5 na 7. Co ciekawe, wersja 7 będzie w dużej mierze kompatybilna z wersją numer 5. Jedynie te elementy, które zostały we wcześniejszej wersji oznaczone jako „E_DEPRECTED” zostały całkowicie usunięte.

Na miano jednej z największych i oczekiwanych zmian niewątpliwie zasługuje deklaracja typów na poziomie argumentów funkcji i metod. Dotychczas możliwe było to wyłącznie dla typów: klasa, callback i array. Natomiast teraz pojawiły się nowe funkcjonalności:

  • obsłużone zostaną typy proste (int, float, bool, string),
  • będzie można również deklarować typ zmiennej zwracanej w metodach i funkcjach,
  • zniknie konieczność osobnej obsługi wyjątków i błędów,
  • wszystkie typy błędów zostaną teraz rzucane jako wyjątki,
  • nastąpi rozgałęzienie wyjątków poprzez utworzenie klasy nadrzędnej Throwabel, po której dziedziczyć będą wyjątki Exception i Error.

Szykuje się naprawdę dużo zmian w PHP7, aż nie sposób ich wszystkich tutaj przytoczyć. Zainteresowanych zgłębieniem tematu odsyłam do poniższego linku, gdzie znajdziemy liczne przykłady i opisy nowych możliwości: http://php.net/manual/en/migration70.new-features.php.

 

Redis

Na konkretnych przykładach Sebastian Grodzicki obrazowo pokazał nie tylko, czym różni się Redis od Memcached, ale także opisał ogromny potencjał tego rozwiązania.

Bardzo popularnym rozwiązaniem stosowanym przez firmy jest aktualnie memcached, który dzięki trzymaniu danych w ramie jest bardzo szybki. Niestety, ma też pewne minusy. Nazwa klucza może zajmować tylko 250 bajtów, a wartość nie może przekraczać 1 MB. Nie ma także mechanizmów, które pomogłyby wybierać tylko część danych.

I tutaj właśnie pojawia się Redis!

Ma wszystkie zalety memcache:

  • jest bardzo szybki (gdyż przechowywany w RAMie),
  • zachowuje atomowość podstawowych operacji, takich jak: wyszukiwanie danych, sortowanie, działania na zbiorach,
  • obsługuje: stringi, listy, zbiory, zbiory sortowane oraz hashe. wingsuiting pomiędzy szczytami górskimi.

Wszystkich zainteresowanych konkretnymi przykładami odsyłam do prezentacji Sebastiana (https://speakerdeck.com/sgrodzicki/redis) w której można prześledzić dane zagadnienie przy użyciu memcached, a następnie rozwiązać je przy pomocy Redis.

HTTP Cache

Wiele osób zapomina o najprostszym możliwym cache, jakim jest zastosowanie cache protokołu HTTP. To najtańszy sposób pozwalający na odciążenie serwerów!

Michał Pipa wskazał, jak poprawić wydajność serwisów poprzez zastosowanie cache protokołu HTTP oraz przedstawił przykłady pokazujące w praktyce, jak prosto można to wykonać w frameworku Symfony. Dyrektywa „Cache-Control” umożliwia określenie czasu, w jakim przeglądarka ma przechowywać w swoich zasobach daną stronę oraz to, czy wysyłany zasób jest prywatny czy publiczny.

Równie dużym zainteresowaniem co wykłady cieszyła się strefa sponsorska, gdzie można było porozmawiać z prowadzącymi, a przy okazji wziąć udział w licznych konkursach. Do wygrania były m.in. drony, klawiatury, kamerki oraz niebieskie pluszowe słoniki (w tym: maskotka PHP) która jest obowiązkowym trofeum dla każdego programisty PHP. Ponadto, można było pobawić się Lego Mindstorms czy też wypróbować Oculusa (okulary wirtualnej rzeczywistości) z różnymi programami do wyboru, takimi jak: przejażdżka kolejką lub wingsuiting pomiędzy szczytami górskimi.

 

PHPcon_Pawel_JCommerce
Z rzeczy, które moim zdaniem są do poprawy, to na pewno wykłady sponsorskie. Niestety, w tym przypadku prowadzący często mieli problemy z używaniem poprawnego języka angielskiego i podchodzili do omawianego tematu zbyt ogólnie.

Sama konferencja była jednak jak najbardziej udana i za rok na pewno nas na niej nie zabraknie :)

Dodaj komentarz