31
GARŚĆ PORAD DLA POCZĄTKUJĄCYCH Michał Kurzeja, accesto.com

Symfony2 - garść porad

Embed Size (px)

Citation preview

GARŚĆ PORAD DLA

POCZĄTKUJĄCYCHMichał Kurzeja, accesto.com

KTO?

• Michał Kurzeja

• Współzałożyciel WSG

• CTO @ accesto.com

[email protected]

• @michalKurzeja

• 3 lata doświadczenia w Sf2

• Mąż, programista,

przedsiębiorca, piwowar

O CZYM?

• Środowisko (system, oprogramowanie)

• Uruchamianie projektu

• Kodzik

• Podejście do projektu

ŚRODOWISKO

• System

• PHP, serwer www

• Dodatki: composer, IDE …

SYSTEM

• Windows

• Linux

• OS X

Który wybrać?

PHP

• Jaką wersję wybrać?

• Połączenie z serwerem www

• A może HHVM?

SERWER WWW

DODATKI

• Composer

• Node, npm, bower, grunt …

• XDebug

• Mailcatcher, dnsmasq, ohmyzsh, psysh

IDE

• Wygoda/Obsługa klawiaturą :)

• Wykrywanie błędów

• Niezawodność

NIE DA SIĘ SZYBCIEJ?

http://blog.accesto.pl

URUCHAMIAMY PROJEKT

• Pobieramy Symfony 2

• Kontrola wersji, GIT?

• Konfiguracja

• Podział na bundle

• Testy

• Automatyzacja

POBIERAMY SYMFONY 2

• Composer

• Symfony Installer

• symfony new NAZWA_PROJEKTU

GIT?

• GIT czy nie GIT? Kiedy GIT?

• Repozytorium?

• Częste błędy i problemy

• git status

• git config --global core.excludesfile ~/.gitignore_global

• chmod

• Commit message!

PLIKI KONFIGURACYJNE

• Lokalne ustawienia zawsze w

parameters.yml

• Pamiętaj o aktualizacji parameters.yml.dist

PODZIAŁ NA BUNDLE

TESTY

• Testuj! Jeśli możesz to test-first (TDD)

• Zacznij od małych/prostych testów

• Dużo mocków = błędny design

• Behat to nie konieczność, BDD to nie jedyne

wyjście

• Czytaj

AUTOMATYZACJA

KODZIK

• Kontroler

• Serwisy

• Repozytoria

• Encje i Fixtures

• Formularze

• „Inne”

KONTROLERY

• Rozszerzając Controller (ContainerAware)

• POPO

• Wykorzystaj framework

SERWISY

• Interfejs

• Zależności

• ! Wstrzykiwanie kontenera

• Repozytoria

• http://php-and-

symfony.matthiasnoback.nl/2014/05/inject-a-repository-

instead-of-an-entity-manager/

ENCJE

• Logika?

• Skąd brać dane? - Fixtures

FORMULARZE

• Gdzie je definiować?

• Formularz jako serwis

• Typy podstawowe, extenstions, events,

transofmers

• Form Handler?

INNE

• Symfony Best Practices

• Standardy w Twojej firmie

• PSR-1 i PSR-2

EKSPERYMENTUJ!

PYTANIA ?

REKRUTUJEMY!http://kariera.accesto.pl

WIĘCEJ NIEBAWEMhttp://blog.accesto.pl i może na WSG ;)

GARŚĆ PORAD DLA

POCZĄTKUJĄCYCHMichał Kurzeja, accesto.com