Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ThinkPHP #7: Bluz - наш код как музыка

ThinkPHP #7: Bluz - наш код как музыка

thinkphp_com_ua

July 25, 2013
Tweet

More Decks by thinkphp_com_ua

Other Decks in Programming

Transcript

  1. Why? • Почему не "as is"? • Почему не ZF2/Symfony2?

    • Почему не Yii? • Почему не Kohana/CodeIgniter? • Почему не Silex/Slim? • Почему не Falcon?
  2. Usability кода. Profit! • Изучаю проект за час • Нахожу

    баги по скриншоту • Копирую и работает
  3. PHP 5.4+ • PSR-0 • PSR-1 • PSR-2 • PSR-3

    • namespaces • closures • traits • goto
  4. sth • composer • jQuery • RequireJS (for AMD) •

    Twitter Bootstrap • GitHub - https://github.com/bluzphp • Travis CI
  5. Model V C <?php namespace Application\Users; class Table extends \Bluz\Db\Table

    { protected $table = 'users'; protected $primary = array('id'); } /** * @property integer $id * @property string $login */ class Row extends \Bluz\Db\Row {} /models/Users/Table.php /models/Users/Row.php
  6. M V Controller <?php return /** * @privilege View-Profile *

    @cache 5 minutes * @route /profile/{$id}/ * @param integer $id * @return \closure */ function ($id) use ($view) { $view->user = Users\Table::findRow($id); }; /modules/users/controllers/profile.php
  7. Packages • RESTFul CRUD • Grid • DBQuery Builder •

    Mailer ~~ PHPMailer • Translate ~~ gettext
  8. Declarative Front End Dev <a class="ajax" href="/get">...</a> <a class="confirm" href="/delete"

    data-id="42" data-confirm="Are you sure?">...</a> <a class="ajax confirm" href="/delete" data- id="42">...</a>
  9. Generation P • Модули готовые к изменениям • Модули готовые

    к использованию • Skeleton готовый к использованию