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

Zarządzanie Assetami w Rails

Zarządzanie Assetami w Rails

Podsumowanie pięciu najbardziej powszechnych sposobów na zarządzanie assetami w aplikacjach Railsowych.

Filip Bartuzi

October 15, 2014
Tweet

Transcript

  1. Jaki jest najlepszy sposób na :
    Zarządzanie
    Assets w Rails
    Filip Bartuzi!
    WRUG 15 / 10 /2014

    View Slide

  2. Q&A: W jaki sposób Wy
    zarządzacie assetami?

    View Slide

  3. #1 Manualna instalacja
    vendor/assets/
    Przeciw: !
    - Zależności między bibliotekami nie są
    rozwiązane.!
    - Kłopotliwe aktualizacje.!
    - Powielanie tych samych plików między
    projektami.!
    - Czasochłonna instalacja.!
    - Problem ze ścieżkami do plików.!
    !
    Za:

    - Brak zależności bower/bundler/npm.

    View Slide

  4. #2 rubygems.org
    Ruby Gems
    Za:!
    + Używa Bundlera (zależności, require w
    sprockets).!
    + Wszystko w jednym pliku Gemfile.!
    + Łatwo i szybko.!
    !
    Przeciw:!
    - Zwykle nie są aktualne.!
    - Wersja gema != wersja biblioteki.!
    - Czasochłonne dla opiekuna Gema.!
    - Każdy Gem opakowuje bibliotekę inaczej.!

    View Slide

  5. #3 bower.io
    Bower
    Za:

    + Rozwiązywanie zależności.!
    + Zawsze najnowsze wersje.!
    !
    Przeciw:!
    - Brak bezpośredniej integracji z Rails.!
    - Kłopotliwa konfiguracja (Rails i Bower)!
    - Dodatkowy proces przy budowaniu
    projektu.!
    - Zależności Node, npm i git.

    View Slide

  6. #4 42dev/bower-rails
    Gem Bower + Rails
    Za:!
    + DSL (domain specific language)!
    + Ułatwiona konfiguracja z Railsami…!
    !
    Przeciw:

    - … ale wciąż czasochłonna.!
    - Żonglowanie rake-taskami.

    View Slide

  7. #5 rails-assets.org
    Rails-Assets!
    Za:!
    + Brak vendor/assets.!
    + Poprawne wersjonowanie.!
    + Wszystkie zalety Bundlera.!
    + Brak dodatkowych kroków (bundle).!
    + Używane na produkcji bez zarzutów.!
    + Łatwa instalacja i konfiguracja.

    + Open Source!

    View Slide

  8. source 'https://rubygems.org'!
    + source 'https://rails-assets.org'!
    !
    gem 'rails', '~> 4.0.0'!
    !
    group :assets do!
    gem 'sass-rails'!
    gem 'uglifier'!
    gem 'coffe-rails'!
    + gem 'rails-assets-bootstrap'!
    + gem 'rails-assets-angular'!
    + gem 'rails-assets-leaflet'!
    end

    View Slide

  9. –Rails Way™
    “Bundle”

    View Slide

  10. View Slide

  11. ❖ application.js


    //= require_self

    + //= require bootstrap

    + //= require angular

    + //= require leaflet

    //= require_tree .!
    ❖ style.csss

    /*

    *= require self

    + *= require bootstrap

    + *= require leaflet

    *= require_tree .

    */


    View Slide

  12. View Slide

  13. View Slide

  14. View Slide

  15. View Slide

  16. View Slide

  17. Malutka prywata

    View Slide

  18. Cześć, jestem Filip!

    Umiem Rails i Angulara.

    View Slide

  19. View Slide

  20. View Slide

  21. Przyjmę ofertę pracy!

    View Slide

  22. Dziękuję!

    View Slide