"7 tygodni = 7 aplikacji"

Witam, w ramach Railsowo-JavaScriptowej edukacji postanowiliśmy z kolegą zrealizować projekt pt. “7 tygodni = 7 aplikacji”. Mamy zrobioną wstępną listę najważniejszych rzeczy, na które chcemy zwrócić uwagę podczas pisania. Założeniem jest, że przy każdym projekcie chcemy wykorzystać co najmniej 1 funkcji, której nigdy nie używaliśmy, lub używaliśmy bez zastanawiania się “skąd się to bierze i dlaczego działa?” i w pełni zrozumieć i ogarnąć ich działanie (mogą to być gemy, pluginy JS i jQuery, w moim przypadku na pewno Data Mapper itd.). Oczywiście każdy tydzień musi zakończyć się działającą aplikacją. W związku z tym mam prośbę o parę wskazówek na temat tego na co powinniśmy zwrócić szczególną uwagę, jakie rozwiązania przydadzą się w przyszłości, co warto wiedzieć i znać. Obecnie lista wygląda tak:
-nokogiri
-clearance, devise
-Shoulda, Factory_girl i zwrócenie dokładniej uwagi na testowanie aplikacji (do tej pory zwykle testy traktowałem jako coś co kiedyś się przyda, ale w sumie nie wiem jeszcze po co)
-DataMapper (niby wiem jak działa, ale jeszcze nie do końca)
-działanie aplikacji w trybie offline
Oprócz tego dokładniejsze poznanie tego co już niby znamy, używamy, ale czegoś tam nie wiemy. Ogólnie rozszerzenie wszystkiego :wink:
Będę bardzo wdzięczny za wszystkie wskazówki na co jeszcze powinniśmy zwrócić uwagę. Wystarczą mi nawet pojedyncze hasła, których poszukam w internecie. Sam eksperyment chcemy zacząć po Wielkanocy, jak odrobimy się z obecnymi projektami, więc mamy trochę czasu na przygotowanie listy “Co ogarnąć?”.

EDIT: Nie będę wypisywał tego, co już znamy, bo chcemy przez ten czas poznać jak najwięcej “na nowo” i od podstaw, które często się pomijało głównie z powodu braku czasu i chęci jak najszybszego oddania działającego projektu klientowi, co kończyło się nieraz dosyć kosmicznymi rozwiązaniami z myślą “wow! to działa! nie dotykam już, bo jeszcze zepsuje. Jak oddam projekt to się nad tym zastanowię”.

EDIT2: Tak teraz zauważyłem, że chyba zły dział z tym tematem wybrałem, przepraszam.

może w ramach javascriptowej cześci dołóżcie Backbone.js

Przeglądnięte, oczytane i dołożone. Wygląda ciekawie, dzięki :slight_smile:

warto sobie obejżeć: http://twitter.github.com/bootstrap/
co do unit testów spróbujcie nie używać factory_girl tylko jak najwiecej mockować

[quote=rubytree]warto sobie obejżeć: http://twitter.github.com/bootstrap/
co do unit testów spróbujcie nie używać factory_girl tylko jak najwiecej mockować[/quote]
Przy czym to “jak najwięcej mockować” trzeba umieć robić :wink: Jak rspec się robił popularny, to takie podejście też zaczynało się robić popularne, ale z reguły bez zrozumienia jak powinien wyglądać kod, żeby to miało sens. I w rezultacie niektórzy (w tym ja), błednie stwierdzali, że mocki są bez sensu.

Polecam:

http://www.confreaks.com/videos/659-rubyconf2011-why-you-don-t-get-mock-objects


http://www.confreaks.com/videos/697-rubyconf2011-your-tests-are-lying-to-you

I obowiązkowo: object on rails avdiego: http://objectsonrails.com/

Z książek to o czym wspominają najczęściej to: http://www.amazon.com/Growing-Object-Oriented-Software-Guided-Tests/dp/0321503627/ref=sr_1_1?s=books&ie=UTF8&qid=1332426713&sr=1-1 (to do javy, ale ogólnie jako community uczymy się od innych języków i to bardzo dobrze, po co powtarzać te same błędy? :wink: )

PS. W którymś temacie pisałem, że po tytule i opisie powyżej wklejony talk “Integration tests are scam” wydaje się bezsensowny, ale po obejrzeniu muszę powiedzieć, że naprawdę warto - jako że w community rubiego trochę inaczej rozumiemy testy integracyjne, trochę mnie tytuł zmylił.