co z tym php?

22
2015.02.03 / ADRIAN PIĘTKA PHP

Upload: adrian-pietka

Post on 15-Apr-2017

309 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Co z tym PHP?

PHP2015.02.03 / ADRIAN PIĘTKA

Page 2: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Najkrótszy żart informatyczny?

Page 3: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Programista PHP

Page 4: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Programista JS

Page 5: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Page 6: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Co wpływa na popularność?► Niski koszt infrastruktury► Hosting► Syndrom słowa dużo

literatury, społeczności, wydarzeń, bibliotek, pracy.

Page 7: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Co wpływa na popularność?► Niski próg wejścia► PHP nic nie narzuca

standardów nazewnictwa kodowania

architektury aplikacji

Page 8: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Prawie nic nie narzuca…

Page 9: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

API► zgłaszanie błędów ► różna kolejność parametrów w funkcjach► niekonsekwencja w nazewnictwie► hacki m.in:

rzutowanie case sensitive zmiennych, no case sensitive funkcji niezainicjowane zmienne

Page 10: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

PHP 5.6► Namespaces► Traits► Interfaces► Abstract & final class► Type Hinting► Lambda, Closure

► Reflection API► OPCache

► Off = 41 r/s► On = 270/s (CakePHP)

► Wbudowany serwer

Page 11: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

PHP 7► Listopad 2015► Refaktoryzacja Zend Engine► Return Type Declarations► Uniform Variable Syntax► Nowa implementacja JSON► Ułatwienia w składni► Praca nad problemami z rzutowaniem

Page 12: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Standarydy & dobre praktyki► PSR-0 – Autoloading Standard

<Vendor Name>(\<Subnamespace>)*\<Class name>

► PSR-1 – Basic Coding Standard StudlyCaps, camelCase, UTF-8

► PSR-2 – Coding Style Guide Wcięcia, spacje, nowe linie, długość linii

► PSR-3 – Logger Interface► PSR-4 -Autoloader

Page 13: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Composer

► Dependency Manager► Packagist, VCS, PEAR

$: cat composer.json

{ "require": { "monolog/monolog": "1.2.*" }}

$: composer install$: composer update

Page 14: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Symfony2

► Initial release – październik 2005► Inspiracja: Ruby on Rails, Django, Spring► OOP, MVC► Dependency Injection► Event Driven Programming► Scaffolding► Security

Page 15: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Phalcon

► Framework dla PHP napisany C► Działa jako moduł PHP► Udostępnia klasy dostępne z poziomu PHP► Wysoka wydajność► Niedostępny na większości hostingów

Page 16: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Doctrine

► ORM - Hibernate dla PHP► DBAL► EntityManager► Query Builder

Page 17: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Twig

► System szablonów

Page 18: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

PHPUnit► Framework &Test Runner► Data Providers► Mock Objects► Testowanie wyjątków► Generator raportów► Code Coverage► Wsparcie dla Selenium

Page 19: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

HHVM

► virtual machine dla aplikacji PHP► just-in-time (JIT) compilation► zamiast bezpośredniej interpretacji:

PHP > Kod pośredni Optymalizacja Uruchomienie

► Tylko PHP 5.3

Page 20: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Phing

► Project building► Bazuje na Apache Ant► Wsparcie dla

PHPowych narzędzi SCA Konfiguracji projektu Testowania Publikacji

Phint + JenkinsAnt + Jenkins

Page 21: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP

Podsumowanie

► Zj***ć można wszystko – niezależnie od języka► PHP – to tylko narzędzie w rękach rzemieślnika► Spagetti code? Wordpress► Dobre praktyki? Symfony2► Kiedy użyć PHP? To zależy.► badprogramming.com/search/php

Page 22: Co z tym PHP?

2015.02.03 / ADRIAN PIĘTKAPHP