В последнее время я борется с пониманием лучшего способа организовать код jQuery. Я задал еще один вопрос раньше, и я не думаю, что я был достаточно конкретным (найденным в этом вопросе здесь).
Моя проблема в том, что чем богаче вы создаете приложение, тем быстрее ваша клиентская сторона выходит из-под контроля. Рассмотрим эту ситуацию...
//Let start some jQuery
$(function() {
var container = $("#inputContainer");
//Okay let list text fields that can be updated
for(var i=0; i < 5; i++) {
//okay let add an event for when a field changes
$("<input/>").change(function() {
//okay something changed, let update the server
$.ajax({
success:function(data) {
//Okay - no problem from the server... let update
//the bindings on our input fields
$.each(container.children(), function(j,w) {
//YIKES!! We're deep in here now!!
$(w).unbind().change(function() {
//Then insanity starts...
}); // end some function
}); //end some loop
} // what was this again?
}); //ending something... not sure anymore
}).appendTo(container); //input added to the page... logic WAY split apart
}; //the first loop - whew! almost out!
}); //The start of the code!!
Теперь эта ситуация не слишком далека от невозможности. Я не говорю, что это правильный способ сделать это, но не редкость найти несколько уровней в команде jQuery и начать задаваться вопросом, сколько логики может добавить до того, как экран начнет таять.
Мой вопрос: как люди управляют этим или организуют, чтобы ограничить сложность своего кода?