kciray
@kciray
Студент

Насколько правильны перечисленные архитектурные решения на JS?

Создаю сайт, клиентская часть на HTML5/JS/CSS. Серверная - Java/Spring. Нормально разбираюсь в серверном программировании, но вот в клиентской части - весьма плохо ориентируюсь.

Итак, вопросы:

1)Стоит ли использовать ООП в JS? Если стоит, то почему оно там так слабо реализованно? Если не стоит, то как мне достичь хорошего уровня абстракции, привык с объектами везде работать.

2)Стоит ли использовать геттеры\сеттеры для классов JS?

Рассмотрим небольшой фрагмент исходного кода:
//Файл section.js, подключается в <head> страницы 
function Section(id) {
    var _id = id;

    this.paste = function () {
        ...
    }
}

//Внутри страницы
<script>
var thisSection = new Section("${section.id}");
</script>
...
<button onClick="thisSection.paste()">Вставить</button>

Вопросы следующие:

3)Стоит ли для каждого класса js создавать отдельный файл? Если у меня будет на странице подключаться 10-15 файлов js - хорошо ли это?

4)Будет ли правильным решением в один js-файл запихнуть несколько небольших классов?

5)Корректен ли подход - прописывать onClick + функцию, или же лучше прописать id и потом через jQuery после подгрузки страницы найти все необходимые элементы по id и прописать клики, типа $("#id").click(...)?

6)Вся страница разбита на блоки (в моём случае это JSP-теги 2.0) с параметрами. Мне кажется удобным в этих блоках прописывать рядом с HTML теги script и в них уже - логику. Корректен ли такой подход?

7)Говорят что лучше разделять логику и представление, но если я разделю их - как я сделаю var thisSection = new Section("${section.id}"), т.е. как создать переменную, привязанную к конкретному блоку HTML-разметки, но при этом не объявляя её внутри этого блока?
  • Вопрос задан
  • 2347 просмотров
Решения вопроса 1
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.

1)Стоит ли использовать ООП в JS? Если стоит, то почему оно там так слабо реализованно? Если не стоит, то как мне достичь хорошего уровня абстракции, привык с объектами везде работать.

Воспользуйтесь coffeescript там ооп попривычнее

2)Стоит ли использовать геттеры\сеттеры для классов JS?

См поддержку
https://developer.mozilla.org/ru/docs/Web/JavaScri...
5)Корректен ли подход - прописывать onClick + функцию, или же лучше прописать id и потом через jQuery после подгрузки страницы найти все необходимые элементы по id и прописать клики, типа $("#id").click(...)?

Второе получше будет, ибо потом тяжко будет логику переделывать и несколько обработчиков не повесишь.

3)Стоит ли для каждого класса js создавать отдельный файл? Если у меня будет на странице подключаться 10-15 файлов js - хорошо ли это?

На этапе разработки нормально, в продакшен кидайте объединенную и минифицированную версию
6)Вся страница разбита на блоки (в моём случае это JSP-теги 2.0) с параметрами. Мне кажется удобным в этих блоках прописывать рядом с HTML теги script и в них уже - логику. Корректен ли такой подход?

Абсолютно некорректен (у вас же на сервере разделены шаблоны и код - на клиенте аналогично нефиг все в кучу лепить)
7)Говорят что лучше разделять логику и представление, но если я разделю их - как я сделаю var thisSection = new Section("${section.id}"), т.е. как создать переменную, привязанную к конкретному блоку HTML-разметки, но при этом не объявляя её внутри этого блока?

Вот это что-то совсем непонятное
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы