Я работаю над проектом, и я действительно пытаюсь написать объектно-ориентированный код JavaScript. Я только что начал читать Douglas Crockford JavaScript: "Хорошие детали" , и я быстро начинаю понимать, что запись OOP на Java-esque в JavaScript будет трудная задача.
До сих пор я написал что-то вроде следующего...
// index.html
$(document).ready(function() {
$().SetUpElements();
});
// this is in a different js file
$.fn.SetUpElements = function() {
// do stuff here
$().UpdateElement();
};
// this is in yet another different js file
$.fn.UpdateElement = function() {
// do stuff here
var element = new Element(id, name); // continue doing work
};
function Element(id, name) {
var id = id;
var name = name;
// other stuff
};
... идея состоит в том, что я хочу, чтобы объекты/функции были реорганизованы и развязаны как можно больше; Я хочу повторно использовать как можно больше кода. Я распространял много кода в разных файлах .js с целью группировки определенного соответствующего кода, так же, как если бы вы пишете разные классы в Java.
Поскольку я больше узнал о jQuery, я понял, что нотация $.fn.foo = function() { ... };
фактически добавляет эту функцию foo
к прототипу всех объектов jQuery. Это что-то я должен делать? Я как-то неправильно использую jQuery?
Я был бы признателен за предложения относительно того, как улучшить мой подход к ООП в JavaScript, и мне бы хотелось увидеть ссылки на источники/учебники/статьи/и т.д., которые обсуждают эту тему. Пожалуйста, не стесняйтесь предоставлять обратную связь, даже если был выбран ответ. Я ищу ваши советы... вот почему я опубликовал:)
** Примечание. Я не разрабатываю плагин jQuery. Я разрабатываю веб-приложение и сильно использую jQuery.