Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

RequireJS cyclic dependencies

No description
by

Marek Będkowski

on 18 October 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of RequireJS cyclic dependencies

Wady

Publisher/Subscriber

Miało być tak pięknie…

Aplikacja
do wyświetlania
losowego zdjęcia!

GWARANTOWANE
2lips.pl/blog/cyclic-dependencies-requirejs/ - moj blog
EventEmitter2
EventBus – GWT
MaDGe - AMD dependency analyser
http://requirejs.org/docs/optimization.html

Ciekawe linki.
Podsumowanie
Cykl życia sterowany zdarzeniami
Publisher/Subscriber

Co się stało?

Co się stało?

A wyszło, jak zawsze…
https://github.com/bendi/code/tree/master/amd-message-bus/part-2

No to dodaję!
Będzie, obiecuję Ci to!

Będzie dobrze…?

część konfiguracji musi pochodzić z bazy danych
dodamy zależność do Settings i będzie dobrze…
Zmiany, zmiany, zmiany…
Pięknie!

Modularyzacja
Automatyczne rozwiązywanie zależności
Optymalizacja do jednego pliku w standardzie (r.js)
AMD/RequireJS

3 moduły
Ustawienia – przechowujemy adres usługi generującej zdjęcie
Dao – odpowiadające za dostęp do URLi obrazków
Zaczynamy od czegoś prostego

Miliony w tydzień

Najlepsza
Najbardziej wystrzałowa
Nietuzinkowa
Rewolucyjną
Pytania?
Co zrobić jak któryś z subscriberów „rzuci” wyjątkiem

Obsługa błędów

Miękkie zależności

Śledzenie przepływu

https://github.com/bendi/code/blob/master/amd-message-bus/tests-wit-mbus/src/Settings.js

Modularyzacja
https://github.com/bendi/code/blob/master/amd-message-bus/tests-wit-mbus/src/Settings.js

Hermetyzacja
https://github.com/bendi/code/blob/master/amd-message-bus/tests-wit-mbus/src/Settings.js

Wzajemne zależności

Zalety/Wady

https://github.com/bendi/code/blob/master/amd-message-bus/tests-wit-mbus/src/Settings.js

Publisher/Subscriber
A wyszło, jak zawsze…
https://github.com/bendi/code/blob/master/amd-message-bus/part-2/Settings.js

No to dodaję!
http://2lips.pl/blog/code/amd-message-bus/part-1/

Parę godzin kodowania i jest
https://github.com/bendi/code/blob/master/amd-message-bus/part-1/Dao.js

Parę godzin kodowania i jest
https://github.com/bendi/code/blob/master/amd-message-bus/part-1/Settings.js

Parę godzin kodowania i jest
https://github.com/bendi/code/tree/master/amd-message-bus/part-1

Parę godzin kodowania i jest
Pomysł na super aplikację…

Marek Będkowski
RequireJS cyclic dependencies fix with message bus
Marek Będkowski

Dziękuję za uwagę
https://github.com/bendi/code/blob/master/amd-message-bus/tests-wit-mbus/spec/SettingsSpec.js

Ułatwienie testowania
Event2

Event1

Dao

Settings

Publisher/Subscriber

Zależy od

Zależy od

Dao

Settings

Co się stało?
Full transcript