2012-08-07 17 views
13

Robię aplikację javascript. Zwykle robię różne moduły i uzyskujemy dane wejściowe lub kliknięcia użytkowników w funkcji $(document).ready();. Działa to dobrze w przypadku małych aplikacji. Ale kiedy podążam tym samym schematem, mam na myśli klikanie zdarzeń w $(document).ready();, wtedy robi się bałagan.Porządkowanie kodu javascript

Jak mogę zorganizować ten plik dla ogromnej aplikacji?

Dzięki z góry

+3

Z całym szacunkiem nie zgadzam się ze stanowiskiem; musisz gdzieś zacząć. Ale al0ne może rozważyć rozszerzenie pytania, aby pokazać za pomocą kodu, w którym występuje "brudny próg". – cantera

+1

@ cantera25 Ma to sens. Przez niechlujny mam na myśli to, że kod mógłby sięgać ponad tysiąca linii w jednym pliku. Nie chcę tego. – 2619

Odpowiedz

12

jednorazowego najlepszy zasób znalazłem na ten temat jest twórcza fotografia książka Addy Osmani, w Patterns for Large-Scale JavaScript Application Architecture. Jest oparty na części Nicholasa Zakasa "Scalable JavaScript Application Architecture, dostosowując go do klasycznych wzorców projektowych i nowoczesnego przepływu pracy.

Gdy osiągniesz nawet niewielki poziom złożoności, będziesz czerpał korzyści z pracy z ramą zbudowaną przy użyciu odmiennego wzorca architektury MVC. Backbone.js jest liderem i jest mikroukładem, co oznacza, że ​​mniej trzyma się za rękę niż inni. Inne popularne opcje to: Ember.js, KnockoutJS.

Rozszerzenia i płyty kotłów są również zbudowane na tych strukturach w celu obsługi powtarzalnych zadań, takich jak wiązanie danych/modelu i rusztowania. Jeśli chodzi o kręgosłup, sprawdź Backbone.Marionette z Derick Bailey i Backbone Aura, niezupełnie gotową do produkcji adaptację modelu architektonicznego Osmani/Zakas, zbudowanego przy użyciu szkieletu jako ... dobrze, szkieletu.

6

Będąc JavaScriptem w języku skryptowym, struktura jest jedną z najważniejszych kwestii w projektach JavaScript na dużą skalę. Ważne jest, aby części aplikacji były dobrze oddzielone od siebie i "samodzielne". Na przykład możesz utworzyć własne komponenty interfejsu użytkownika z własnym szablonem, logiką, stylem, lokalizacjami itp. W jednym folderze. Takie samoograniczanie pozwoli ci zorganizować złożony kod front-end w łatwy do opanowania sposób.

Po uporządkowaniu kodu i samodzielnym wystąpieniu, istnieją inne problemy, które należy również rozwiązać.

  • Jak należy te luźno elementy interakcji z odchodzący napięty sprzężenia
  • Jak należy zoptymalizować te poszczególne elementy, aby załadować szybko w moim produkcyjnej ENV

Jestem autorem BoilerplateJS architektury referencyjnej dla aplikacje na dużą skalę.

http://boilerplatejs.org

Zawiera większość najlepszych praktyk opisanych w Mikołaja Zakas'presentation. Znajdziesz również przykładową implementację modułowego zestawu produktów w kodzie. Spójrz, zrozumiesz obawy, na które trzeba zwrócić uwagę przy tworzeniu aplikacji na dużą skalę z JavaScript.

Powiązane problemy