prostota i mozliwosci symfony2

21
PROSTOTA I MOŻLIWOŚCI FRAMEWORKA SYMFONY Natalia Stanko Kraków, 2014

Upload: natalia-stanko

Post on 28-Nov-2014

250 views

Category:

Technology


0 download

DESCRIPTION

Symfony jest z jednej strony kompleksowym frameworkiem, z drugiej zbiorem samodzielnych i niezależnych komponentów. Jest łatwy do nauki i jednocześnie szeroko konfigurowalny. Sprawdza się zarówno dla małych jak i dużych projektów. Pracę z nim cechuje szybkie tworzenie aplikacji.

TRANSCRIPT

Page 1: Prostota i mozliwosci symfony2

PROSTOTA I MOŻLIWOŚCI FRAMEWORKA SYMFONY

Natalia Stanko Kraków, 2014

Page 2: Prostota i mozliwosci symfony2

O MNIE

• EPI WZKS UJ, IS WFAIS UJ

• web developer

• coach

• organizator Women in Technology w Krakowie

• organizator hack4good hackathon2

Page 3: Prostota i mozliwosci symfony2

AGENDA• jak działają aplikacje internetowe

• czym jest framework

• czym jest Symfony?

• architektura i komponenty Symfony

• cechy Symfony

• aplikacja w 10 minut

• najbardziej użyteczne bundle3

Page 4: Prostota i mozliwosci symfony2

JAK DZIAŁAJĄ APLIKACJE INTERNETOWE

4

Page 5: Prostota i mozliwosci symfony2

CZYM JEST FRAMEWORK?• szkielet do budowy aplikacji

• "don't reinvent the wheel"

• zarządzanie komunikacją z bazą danych

• mechanizmy bezpieczeństwa

• obsługa błędów

• system szablonów (+/-)

• generator kodu (+/-)5

Page 6: Prostota i mozliwosci symfony2

CZYM JEST SYMFONY?

• Fabien Potencier

• SensioLabs

• PHP

• open source

• framework

• zbiór komponentów

6

Page 7: Prostota i mozliwosci symfony2

COMPOSER• getcomposer.org

• packagist.org

!

• dołączanie bibliotek (bundles) third party (i twoich własnych!)

• rozwiązywanie zależności

• przykład: Silex7

Page 8: Prostota i mozliwosci symfony2

–Mikołaj Gogol

“Prawdziwa wielkość ubrana jest w prostotę.”

8

Page 9: Prostota i mozliwosci symfony2

KOMPONENTY

• konfiguracja YAML

• app/console - interfejs linii poleceń

• Doctrine ORM

• migracje db

• formularze

9

Page 10: Prostota i mozliwosci symfony2

KOMPONENTY

• Assetic

• Dependency Injection Container

• EventDispatcher

10

Page 11: Prostota i mozliwosci symfony2

KOMPONENTYAnnotacje ! /** * @Route("/{id}") * @Method("get") * @ParamConverter("post", class="SensioBlogBundle:Post") * @Template("SensioBlogBundle:Annot:show.html.twig") * @Security("has_role('ROLE_ADMIN')") */ public function showAction(Post $post) { }

Page 12: Prostota i mozliwosci symfony2

KOMPONENTY

• debug toolbar

• system tłumaczeń

• ACL db

• PHPUnit, behat itp

• scaffolding, generatory kodu

• mechanizmy stronicowania, sortowania, filtrowania

12

Page 13: Prostota i mozliwosci symfony2

KOMPONENTYTwig - http://twig.sensiolabs.org/

{% extends "layout.html" %}

{{ include('page.html', sandboxed = true) }}

{{ var|raw }}

{% for user in users %}

<li>{{ user.username }}</li>

{% endfor %}13

Page 14: Prostota i mozliwosci symfony2

CECHY SYMFONY• prostota instalacji

• wieloplatformowość

• dla małych i dużych projektów

• zgodność z najlepszymi standardami

• łatwość rozbudowy

• niezależność od systemu bd

• automatyzacja pracy14

Page 15: Prostota i mozliwosci symfony2

SUPPORT• Symfony 2.3 wersja z długoterminowym wsparciem, 3

lata od maja 2013

• Symfony 2.5 ostatnia stabilna wersja

• łatwy upgrade do wyższej wersji

• bardzo dobra dokumentacja

• wsparcie społecznosci15

Page 16: Prostota i mozliwosci symfony2

ZBUDUJ APLIKACJĘ W 10 MINUT

16

Page 17: Prostota i mozliwosci symfony2

NAJBARDZIEJ UŻYTECZNE BUNDLE

• http://symfony.com/blog/the-30-most-useful-symfony-bundles-and-making-them-even-better

• https://packagist.org/

17

Page 18: Prostota i mozliwosci symfony2

NAJBARDZIEJ UŻYTECZNE BUNDLE

• FOSUserBundle

• FOSRestBundle

• Sonata lub Admin Generator

• NelmioApiDocBundle

• MigrationsBundle18

Page 19: Prostota i mozliwosci symfony2

NAJBARDZIEJ UŻYTECZNE BUNDLE

• Translatable

• Timestampable

• Sluggable

• Loggable i Blameable

• Softdeleteable19

Page 20: Prostota i mozliwosci symfony2

!

http://symfony.com/ !

http://sensiolabs.com/

20

Page 21: Prostota i mozliwosci symfony2

DZIĘKUJĘ !

pytania?

nataliastanko.com !

@nataliastanko