Top Banner
6\PIRQ\ :DU 6WRULHV 6HQVLR/DEV 8. -DNXE =DODV 6\PIRQ\ 8VHU *URXS %XGDSHVW $SULO KWWSZZZUJEVWRFNFRPELJSKRWRPK<'&<
41

Symfony War Stories

Jul 01, 2015

Download

Technology

Jakub Zalas

Symfony User Group Budapest, April 2013
http://www.meetup.com/sfugbp/events/113983192/
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Symfony War Stories

6\PIRQ\:DU�6WRULHV

6HQVLR/DEV�8.

-DNXE�=DODV

6\PIRQ\�8VHU�*URXS�%XGDSHVW

$SULO������

KWWS���ZZZ�UJEVWRFN�FRP�ELJSKRWR�PK<�'&<

Page 2: Symfony War Stories

6\PIRQ\�:DU�6WRULHV

Ɣ %XQGOLQJ�WKH�FRGH

Ɣ 7KLQNLQJ�RXWVLGH�RI�WKH�EXQGOH

Ɣ %HLQJ�OD]\

Ɣ /HDUQLQJ�\RXU�VWXII

Ɣ .HHSLQJ�\RXU�SOD\JURXQG�FOHDQ

Ɣ %XLOGLQJ�WKH�TXDOLW\�LQ

Page 3: Symfony War Stories

%XQGOLQJ�WKH�FRGH

KWWS���ZZZ�UJEVWRFN�FRP�ELJSKRWR�PI;N<8T

Page 4: Symfony War Stories

96

Page 5: Symfony War Stories

:KHQHYHU�LQ�GRXEW���

Ɣ 6WDUW�VLPSOH�DQG�OHW�WKH�GHVLJQ�HPHUJHƔ ([WUDFW�EXQGOHV�ZKHQ�\RX�QHHG�WR�UHXVH�LW�

RU�\RX�VHH�LW�ZRXOG�LPSURYH�FODULW\Ɣ $YRLG�WZR�ZD\�GHSHQGHQFLHV�EHWZHHQ�

EXQGOHV

Page 6: Symfony War Stories

7KLQNLQJ�RXWVLGH�RI�WKH�EXQGOH

KWWS���ZZZ�UJEVWRFN�FRP�ELJSKRWR�PI%<5�6

Page 7: Symfony War Stories

96

Page 8: Symfony War Stories

7R�NHHS�\RXU�GHVLJQ�FOHDQ���

Ɣ 7UHDW�EXQGOHV�DV�DQ�LQWHJUDWLRQ�OD\HU�EHWZHHQ�3+3�OLEUDULHV�DQG�WKH�6\PIRQ\�IUDPHZRUN

Ɣ ,Q�\RXU�OLEUDULHV��DYRLG�GHSHQGHQFLHV�RQ�EXQGOHV

Page 9: Symfony War Stories

%HLQJ�OD]\

KWWS���ZZZ�V[F�KX�SKRWR�������

Page 10: Symfony War Stories

7KHUHV�D�EXQGOH�IRU�WKDW�

Page 11: Symfony War Stories

/HDUQLQJ�\RXU�VWXII

KWWS���ZZZ�V[F�KX�SKRWR��������

Page 12: Symfony War Stories

+DYH�\RX�HYHU�XVHG"

Ɣ (YHQW�OLVWHQHUV�DQG�VXEVFULEHUV

Ɣ )RUP�GDWD�WUDQVIRUPHUV

Ɣ 7ZLJ�H[WHQVLRQV

Ɣ 3URILOHU�H[WHQVLRQV

Ɣ ',&�FRPSLOHU�SDVVHV

Ɣ PRUH���

Page 13: Symfony War Stories

,WV�HDV\�

OHWV�VHH�IHZ�H[DPSOHV���

Page 14: Symfony War Stories

QDPHVSDFH�6HQVLR?/LVWHQHU�

XVH�'RFWULQH?250?(YHQW?/LIHF\FOH(YHQW$UJV�XVH�6HQVLR?(QWLW\?3URGXFW�

FODVV�6HDUFK,QGH[HU^����SXEOLF�IXQFWLRQ�SRVW3HUVLVW�/LIHF\FOH(YHQW$UJV��DUJV�����^���������HQWLW\� ��DUJV�!JHW(QWLW\������������HQWLW\0DQDJHU� ��DUJV�!JHW(QWLW\0DQDJHU���

��������LI���HQWLW\�LQVWDQFHRI�3URGXFW��^�� �,QGH[�PH� ��`����``

Page 15: Symfony War Stories

(YHQW�OLVWHQHUV�DQG�VXEVFULEHUV��'RFWULQH�

�VHUYLFHV�����VHQVLR�OLVWHQHU�VHDUFKBLQGH[HU���������FODVV��6HQVLR?/LVWHQHU?6HDUFK,QGH[HU��������WDJV������������������������������QDPH��GRFWULQH�HYHQWBOLVWHQHU����������������HYHQW��SRVW3HUVLVW

Page 16: Symfony War Stories

/LIHF\FOH�FDOOEDFNV��'RFWULQH�

� � �#250?(QWLW\��� �#250?+DV/LIHF\FOH&DOOEDFNV��� �FODVV�8VHU^����� ����� �#250?3UH3HUVLVW����� �����SXEOLF�IXQFWLRQ�XSGDWH&UHDWHG$W���^�� ����� ��``

Page 17: Symfony War Stories

QDPHVSDFH�6HQVLR?0\%XQGOH?(YHQW/LVWHQHU�

FODVV�0\/LVWHQHU^����SXEOLF�IXQFWLRQ�RQ.HUQHO&RQWUROOHU������������������������������)LOWHU&RQWUROOHU(YHQW��HYHQW�����^���������FRQWUROOHU� ��HYHQW�!JHW&RQWUROOHU������������UHTXHVW� ��HYHQW�!JHW5HTXHVW���

������������������``

Page 18: Symfony War Stories

(YHQW�OLVWHQHUV�DQG�VXEVFULEHUV��6\PIRQ\�

VHUYLFHV���VHQVLR�DFWLRQBOLVWHQHU�����FODVV��6HQVLR?0\%XQGOH?(YHQW/LVWHQHU?0\/LVWHQHU����WDJV�����������������QDPH��NHUQHO�HYHQWBOLVWHQHU��������HYHQW��NHUQHO�FRQWUROOHU��������PHWKRG��RQ.HUQHO&RQWUROOHU

Page 19: Symfony War Stories

(YHQW�OLVWHQHUV�DQG�VXEVFULEHUV��)RUPV�

�FDOOEDFN� �IXQFWLRQ�)RUP(YHQW��HYHQW��^����LI��QXOO� ��HYHQW�!JHW'DWD����^���������IRUP'DWD� ��HYHQW�!JHW)RUP���!JHW'DWD������������HYHQW�!VHW'DWD��IRUP'DWD������``�

�EXLOGHU�!DGG�HPDLO��WH[W���EXLOGHU�!JHW�HPDLO������!DGG(YHQW/LVWHQHU���������)RUP(YHQWV��35(B%,1'���FDOOEDFN������

Page 20: Symfony War Stories

'DWD�WUDQVIRUPHUV��)RUPV�

FODVV�,VVXH7R1XPEHU7UDQVIRUPHU�����������������LPSOHPHQWV�'DWD7UDQVIRUPHU,QWHUIDFH�^����SXEOLF�IXQFWLRQ�WUDQVIRUP��LVVXH�����^�����������UHWXUQ�LVVXH�QXPEHU����`

����SXEOLF�IXQFWLRQ�UHYHUVH7UDQVIRUP��QXPEHU�����^�����������UHWXUQ�,VVXH�LQVWDQFH����``

Page 21: Symfony War Stories

�ILHOG� ��EXLOGHU�!FUHDWH�LVVXH��WH[W������!DGG0RGHO7UDQVIRUPHU�QHZ�,VVXH7R1XPEHU7UDQVIRUPHU����

�EXLOGHU�!DGG��ILHOG��

Page 22: Symfony War Stories

7ZLJ�H[WHQVLRQV

�����,QVWHDG�RI����!

�GLY�FODVV �SULFH�!�����^^���������_QXPEHUBIRUPDW����������``��GLY!

�����MXVW�GR����!

�GLY�FODVV �SULFH�!����^^���������_SULFH�``��GLY!

Page 23: Symfony War Stories

FODVV�6HQVLR([WHQVLRQ�H[WHQGV�?7ZLJB([WHQVLRQ^����SXEOLF�IXQFWLRQ�JHW)LOWHUV������^��������UHWXUQ�DUUD\�������������SULFH� !�QHZ�?7ZLJB)LOWHUB0HWKRG���������������������������������������WKLV��SULFH)LOWHU���������������`

����SXEOLF�IXQFWLRQ�JHW1DPH������^��������UHWXUQ�VHQVLRBH[WHQVLRQ�����`

����SXEOLF�IXQFWLRQ�SULFH)LOWHU��QXPEHU��� ����� ����^``

Page 24: Symfony War Stories

SXEOLF�IXQFWLRQ�SULFH)LOWHU������QXPEHU���GHFLPDOV� �����GHF3RLQW� �����VHS� ���^�����SULFH� �QXPEHUBIRUPDW����������QXPEHU���GHFLPDOV���GHF3RLQW���VHS������

����UHWXUQ����SULFH�`

Page 25: Symfony War Stories

VHUYLFHV�����VHQVLR�WZLJ�DFPHBH[WHQVLRQ���������FODVV��6HQVLR?7ZLJ?6HQVLR([WHQVLRQ��������WDJV���������������^�QDPH��WZLJ�H[WHQVLRQ�`

Page 26: Symfony War Stories

:HE�SURILOHU

Page 27: Symfony War Stories

��DSS�FRQVROH�FRQWDLQHU�GHEXJ��DSS�FRQVROH�FRQWDLQHU�GHEXJ�WZLJ�ORDGHU

��DSS�FRQVROH�URXWHU�GHEXJ��DSS�FRQVROH�URXWHU�GHEXJ�KRPHSDJH

��DSS�FRQVROH�URXWHU�PDWFK��ORJRXW

'HEXJJLQJ�FRPPDQGV

Page 28: Symfony War Stories

'HEXJJLQJ�FRPPDQGV

Page 29: Symfony War Stories

.HHSLQJ�\RXU�SOD\JURXQG�FOHDQ

KWWS���ZZZ�UJEVWRFN�FRP�ELJSKRWR�P=7.QZ�

Page 30: Symfony War Stories

8VH�WKH�VHUYLFH�FRQWDLQHU�

Page 31: Symfony War Stories

SXEOLF�IXQFWLRQ�SXEOLVK$FWLRQ��GDWH�^

�����VKRZ� ��WKLV�!ILQG6KRZ��GDWH�������ILOH1DPH� �VSULQWI�VKRZ��V�MVRQ���GDWH�!IRUPDW�<�P�G���

����ZKLOH��ILOHBH[LVWV��ILOH1DPH���^���������ILOH1DPH� ��ILOH1DPH�SUHJBUHSODFH���MVRQ�������MVRQ������`

�����RSWLRQV� �DUUD\��� �RSWLRQV�KHUH� ���������V�� �QHZ�$PD]RQ6���RSWLRQV���

�����REMHFW2SWLRQV� �DUUD\���������ERG\� !�MVRQBHQFRGH��VKRZ���DFO� !��RSWLRQV>REMHFW$FO@��

����LI����V��!FUHDWHBREMHFW�P\�EXFNHW���ILOH1DPH���REMHFW2SWLRQV��^��������WKURZ�QHZ�?([FHSWLRQ�&RXOG�QRW�VDYH�ILOH������`

����������`

Page 32: Symfony War Stories

SXEOLF�IXQFWLRQ�SXEOLVK$FWLRQ��GDWH�^�����VKRZ� ��WKLV�!ILQG6KRZ��GDWH��

�����ILOH1DPH5HVROYHU� �QHZ�)LOH1DPH5HVROYHU��������ILOHV\VWHP� ��WKLV�!JHW�JDIUHWWHBILOHV\VWHP��

�����SXEOLVKHU� �QHZ�3XEOLVKHU����������ILOH1DPH5HVROYHU���ILOHV\VWHP������

�����SXEOLVKHU�!SXEOLVK��VKRZ���GDWH��`

Page 33: Symfony War Stories

8VH�WKH�VHUYLFH�FRQWDLQHU�

SXEOLF�IXQFWLRQ�SXEOLVK$FWLRQ��GDWH�^�����VKRZ� ��WKLV�!ILQG6KRZ��GDWH�������SXEOLVKHU� ��WKLV�!JHW�VHQVLR�SXEOLVKHU�������SXEOLVKHU�!SXEOLVK��VKRZ���GDWH��`

Page 34: Symfony War Stories

%H�62/,'�

Page 35: Symfony War Stories

� � �#250?(QWLW\��� �FODVV�3URGXFW^����������

����SXEOLF�IXQFWLRQ�FUHDWH2UGHU5HSRUW��PRQWK�����^������������WKLV�!HP�!JHW5HSRVLWRU\����������`

����SXEOLF�IXQFWLRQ�VHW(QWLW\0DQDJHU��HP�����^���������WKLV�!HP� ��HP�����``

Page 36: Symfony War Stories

FODVV�2UGHU5HSRUW*HQHUDWRU^����SULYDWH��HP� �QXOO�

����SXEOLF�IXQFWLRQ�BBFRQVWUXFW�(QWLW\0DQDJHU��HP�����^���������WKLV�!HP� ��HP�����`

����SXEOLF�IXQFWLRQ�JHQHUDWH�3URGXFW��SURGXFW���PRQWK�����^������������������``

Page 37: Symfony War Stories

%XLOGLQJ�TXDOLW\�LQ

KWWS���ZZZ�UJEVWRFN�FRP�SKRWR�QUF\RY4�SHUIHFW

Page 38: Symfony War Stories

8QLW�WHVWV

FODVV�5HSRUW7HVW�H[WHQGV�?3+38QLWB)UDPHZRUNB7HVW&DVH^����SXEOLF�IXQFWLRQ�WHVW7KDW,W5HWXUQV)LOH3DWK������^���������UHSRUW� �QHZ�5HSRUW���

���������ILOH� ��UHSRUW�!FUHDWH�-DQXDU\��

���������WKLV�!DVVHUW6DPH��MDQXDU\�FVY���ILOH������``

Page 39: Symfony War Stories

����RU�VSHFV

QDPHVSDFH�VSHF�

FODVV�5HSRUW�H[WHQGV�?3+36SHF�?2EMHFW%HKDYLRU^����IXQFWLRQ�LWBUHWXUQVBILOHBSDWK������^���������WKLV�!FUHDWH�-DQXDU\���������������!VKRXOG5HWXUQ��MDQXDU\�FVY������``

Page 40: Symfony War Stories

0DQDJLQJ�H[SHFWDWLRQV

)HDWXUH��9LHZLQJ�UHFHQW�QHZV�RQ�WKH�KRPHSDJH��$V�D�0DUNHWLQJ�0DQDJHU��,�ZDQW�9LVLWRUV�WR�VHH�UHFHQW�QHZV�RQ�WKH�KRPHSDJH��,Q�RUGHU�WR�JHW�WKHP�LQWHUHVWHG�LQ�WKH�FRQWHQW

��6FHQDULR��9LHZLQJ�UHFHQW�QHZV����*LYHQ�WKHUH�DUH����QHZV�LWHPV������$QG�WKHUH�ZHUH���QHZV�LWHPV�ZULWWHQ�VLQFH�\HVWHUGD\�����:KHQ�,�YLVLW�WKH�KRPHSDJH�����7KHQ�,�VKRXOG�VHH���UHFHQW�QHZV�LWHPV�LQ�WKH�QHZV�VHFWLRQ

��6FHQDULR��7KHUH�LV�QRW�HQRXJK�QHZV����*LYHQ�WKHUH�DUH����QHZV�LWHPV������%XW�WKHUH�ZHUH���QHZV�LWHPV�ZULWWHQ�VLQFH�\HVWHUGD\������:KHQ�,�YLVLW�WKH�KRPHSDJH�����7KHQ�,�VKRXOG�VHH���UHFHQW�QHZV�LWHPV�LQ�WKH�QHZV�VHFWLRQ

Page 41: Symfony War Stories

-DNXE�=DODV

6HQVLR/DEV�8.

7ZLWWHU��#MDNXEB]DODV

%ORJ��KWWS���]DODV�HX

*LWKXE��#MDN]DO

7KDQN�\RX�