Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Идея сайта... Стоит двигацца дальше?! (https://javascript.ru/forum/project/3686-ideya-sajjta-stoit-dvigacca-dalshe.html)

Gvozd 16.06.2009 16:02

Цитата:

Сообщение от B~Vladi
умаю было бы глупо создавать конструктор, если будет только один его экземпляр, как считаете?!

ну, иногда так делают специально даже:
http://ru.wikipedia.org/wiki/Синглтон
Главное, не превратить это в антипатерн, используя где надо, и где не надо

Kolyaj 16.06.2009 16:06

Gvozd,
ну это паттерн из другого мира. В JS достаточно
var singleton = {};

B~Vladi 16.06.2009 16:10

Цитата:

Сообщение от Kolyaj
Причины есть у всего

Вот именно
Цитата:

Сообщение от Kolyaj
Писать-то можно, вот только редактировать/дописывать/расширять это будет сложно.

Да, согласен, всё прекрасно понимаю. Может тогда хоть вы мне скажете, как в этом случае мне нужно было поступить?!

Цитата:

Сообщение от Kolyaj
Интерфейс делается под функциональность, у вас же получается наоборот.

Не уверен, что понял, но как раз интерфейс и является функционалом. Всё формируется/определяется/изменяется именно через него, а не сервер, как обычно. Мне кажется вы просто не поняли всей задумки.

Gvozd 16.06.2009 16:15

Цитата:

Сообщение от Kolyaj
ну это паттерн из другого мира. В JS достаточно

ну, там в статье чуточку поболее кода, чтобы можно было пользоватся конструктором, и чтобы не создать случайно два объекта
просто создание единого объекта, вполне нормально выглядит в JS, хотя для программистов с других языков, может выглядеть непонятно

Kolyaj 16.06.2009 16:33

Цитата:

Сообщение от B~Vladi
Может тогда хоть вы мне скажете, как в этом случае мне нужно было поступить?!

Объектный подход -- не значит много кода, зачастую это еще и меньше кода.

Цитата:

Сообщение от B~Vladi
как раз интерфейс и является функционалом.

Это как это так? Ну например, рассмотрим кнопку, при клике на которую сортируется массив и делается alert с новым массивом. Тогда, сортировка -- это функциональность, а кнопка и alert -- интерфейс. То, что у вас сейчас, даже прототипом не назовешь, так как везде одна рыба.

Kolyaj 16.06.2009 16:41

Gvozd,
конструкция
var a = new Singleton();
var b = new Singleton();
alert(a==b); // true
сама по себе глаз режет. Слово new значит новый, почему вдруг получается тот же? Singleton.getInstance() все-таки лучше.

А {} + конструктор тоже не вижу проблемы
var Singleton = {
    init: function() {

    }
};
Singleton.init();
Для особых эстетов можно завернуть это в класс Singleton, который будет вызывать init :):
var MySingleton = new Singleton({
    init: function() {

    }
})

Kolyaj 16.06.2009 16:43

Цитата:

Сообщение от Gvozd
просто создание единого объекта, вполне нормально выглядит в JS, хотя для программистов с других языков, может выглядеть непонятно

Программистам с других языков многое в JS выглядит непонятно, и я, например, не считаю, что под них следует подстраиваться.

B~Vladi 16.06.2009 16:56

Цитата:

Сообщение от Kolyaj
Это как это так? Ну например, рассмотрим кнопку, при клике на которую сортируется массив и делается alert с новым массивом. Тогда, сортировка -- это функциональность, а кнопка и alert -- интерфейс. То, что у вас сейчас, даже прототипом не назовешь, так как везде одна рыба.

Вобщем, сначала был функционал. И увидел я, что это хорошо. Потом появился интерфейс.
А не так, как вы это представили.

Kolyaj 16.06.2009 16:59

Ну я же про свои впечатления пишу. Я функционала не увидел, вот и спросил, какая идея сайта.

B~Vladi 16.06.2009 17:02

Можно конкретно услышать ваши мнения по поводу этих пунктов:
1. Удобно ли пользоваться окном, и теми элементами управления, которые он имеет?
2. Не вызывет ли такой интерфейс шока у поситителей. Напомню:
Цитата:

интерфейс очень даже извесного приложения, правда немного расширен в функциональности
3. Имеются ли лишние элементы управления?
4. Все ли, действительно нужные, элементы управления присутствуют в окне?

Может что-то потом добавлю.


Часовой пояс GMT +3, время: 06:00.