Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Веб-программирование > JavaScript / HTML

JavaScript / HTML Создание динамической разметки страниц

Ответ
 
Опции темы
Старый 19.08.2013, 04:39   #1
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Инклуд js-файла в Node.js

Хотел заинклудить gl-matrix в свой серверный код на node.js и столкнулся с тем, что нельзя просто заинклудить файл, нужно обязательно трахнуть мозг пытающемуся это сделать.

Почитал это: http://stackoverflow.com/questions/7...ile-in-node-js
И был весьма огорчён сложностью действа.

Блин, неужели нет простого способа? Это что, сильно нужно? Ёмоё я хотел просто заинклудить либу и юзать её. Опять же, ковыряться в готовой либе (а потом при необходимости её обновить — повторять процедуру) это какой-то совсем не труЪ-вей.

В голову лезут совсем уж тупые варианты вроде промежуточного сборщика из нескольких js-файлов одного.

Так вот. Что, собственно предложите делать для решения задачи? Мока, твой выход.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 19.08.2013, 14:41   #2
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Инклуд js-файла в Node.js

Есть два способа:
npm - если твоя либа в репе, то тупо: 'npm install gl-matrix';
Это скачает и поставит её как либо (делай находясь в директории главного исполняемого файла).
Затем в коде (скорее всего):
var mat4 = require('mat4').mat4
Второй способ самому пихнуть класс в exports и также заинклудить (require).

Причина по которой нету тупого инклуда очевидна - это не PHP тебе, и компиляции тут тоже нету.
Модули загружаются, и могут выгружаться, есть куча зависимостей разных модулей и т.п. следственно нужна дельная система, со своим scope'ом чтобы не ломать другие модули и приложения, например объявляя глобальные переменные (конфликты).

Тем более ты когда для себя откроешь npm по полной - это же сказка.
Никакой парилки скачивать не нада, тупо 'npm install blah' и всё.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Phantom (21.08.2013)
Старый 21.08.2013, 14:29   #3
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Инклуд js-файла в Node.js

Тем более ты когда для себя откроешь npm по полной - это же сказка.
Никакой парилки скачивать не нада, тупо 'npm install blah' и всё.
Если бы ещё под виндой было всё так просто. Например попробуй поставить sqlite на Windows. Я так и не осилил. Какого хрена, я пишу на JavaScript, но должен разобраться как поставить интерпретатор питона и компилятор C++, чтобы собрать либу? Очень огорчает, что нет готовых бинарников под Windows.
(Offline)
 
Ответить с цитированием
Старый 21.08.2013, 14:56   #4
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Инклуд js-файла в Node.js

Любой разраб пишущий мало-мальски серьёзные приложения должен иметь С++ бинарники, питон и т.п.
Да даже не серьёзные - должен иметь. На линях там всё идёт обычно из коробки, на винде - извольте сами ставить. Я например предпочитаю скачать сорсы и собрать как полагается под свой таргет с оптимизациями и т.п. а не юзать бинарник который собран для всех и не оптимален для конкретно моей машины.

Ты на линуксах или mac'е попробуй graphicsmagic собрать - обосрёшься вообще.

Да и забудь про sqllite. Юзай mongodb.
(Offline)
 
Ответить с цитированием
Старый 21.08.2013, 15:05   #5
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Инклуд js-файла в Node.js

Ну видимо я не пишу мало-мальски серьёзные приложения. Я хочу взять технологию и работать с ней, а не разбираться с кучей технологий, не касающихся моей непосредственно. Насчёт Sqlite, я с ней работал и для моих задач она подходит, скорость работы не критична, базу данных заполняют люди, которые уже это умеют делать. С Mongodb я не работал, кроме того придётся переучивать людей работать с новым менеджером базы данных.
(Offline)
 
Ответить с цитированием
Старый 21.08.2013, 18:17   #6
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Инклуд js-файла в Node.js

В mongo нету пока официального менеджера - пиши сам (тем более бд слишком динамична для какой либо стандаризации для менеджеров). И в этом есть плюсы, т.к. ты напишешь конкретно под задачу то что нужно, что будет в разы удобнее любых менеджеров.

Я написал single-page CMS за 2 недели, с кучей разных данных и типов полей, с фильтрами и всем чем нужно, с использованием RESTful доступа к бд (есть из коробки).

А вообще если нету бинарников для какой-то технологии это всегда проблема, и нужно компилить самому. Ваще зажрались. Раньше народ порой сам писал либы зависимостей и затычки..
Это как писать на С++, и жаловаться что тебе нужно ещё и компилить свой код.
(Offline)
 
Ответить с цитированием
Старый 22.08.2013, 14:02   #7
Phantom
Элита
 
Аватар для Phantom
 
Регистрация: 14.06.2008
Адрес: Украина, Киев
Сообщений: 2,273
Написано 754 полезных сообщений
(для 1,833 пользователей)
Ответ: Инклуд js-файла в Node.js

В mongo нету пока официального менеджера - пиши сам (тем более бд слишком динамична для какой либо стандаризации для менеджеров). И в этом есть плюсы, т.к. ты напишешь конкретно под задачу то что нужно, что будет в разы удобнее любых менеджеров.
Но зачем, если есть Sqlite и прекрасно работает в моих условиях? Как можно что-то рекомендовать, не зная конкретной ситуации?
Это как писать на С++, и жаловаться что тебе нужно ещё и компилить свой код.
Причём тут C++? Я пишу на интерпретируемом языке ради всех его преимуществ. Если мне при этом приходится разбираться с компилируемыми языками, то преимущества теряются.
(Offline)
 
Ответить с цитированием
Старый 22.08.2013, 14:15   #8
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Инклуд js-файла в Node.js

Ты же SQLite собрать пытаешься - а он на C собран.

Тем более если говорить о node.js, то там большая часть модулей - это аддоны (либы), написанные на С. Следственно и компилить их нужно.

Поставь node-gyp и cygwin со всякими плюшками и забудь о проблемах компиляции.
Если разраб библиотеки не позапотился о нормальной компиляции под винь - то тут уж прости.

И различай что твой интерпретируемый язык, работает не в закрытой и кем-то разработанной среде (броузер) а в системе, которая везде разная.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Phantom (23.08.2013)
Старый 25.09.2015, 20:15   #9
ANIK123
Знающий
 
Аватар для ANIK123
 
Регистрация: 29.11.2010
Сообщений: 244
Написано 31 полезных сообщений
(для 49 пользователей)
Ответ: Инклуд js-файла в Node.js

Здравствуйте
вот файл "DB.ts"
module DB {
}; 
вот файл "app.ts"
var db = require('DB').DB
Получаю заряд печали:
Error: Cannot find module 'DB'

А ёсли пробую так:
///<reference path='DB'/> 
И пытаюсь использовать обьект DB, то получаю:
ReferenceError: DB is not defined

С Node.js познакомился только сегодня, поэтому я в нем даже не начинающий
На этой фиговине прилично подзастрял

UPD: Какую базу лучше использовать (не-реляционную)? Из требований: максимально быстрая запись. Вроде как Cassandra подходит
__________________
Intel Core i3-4005U (1.7 ГГц), 4 ГБ ОЗУ, nVidia GeForce 940M 4 ГБ, Win8.1
(Offline)
 
Ответить с цитированием
Старый 25.09.2015, 20:20   #10
Nikich
Бывалый
 
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений
(для 275 пользователей)
Ответ: Инклуд js-файла в Node.js

.ts? Ты уверен, что тебя интересует TypeScript?
UPD: вроде как монга подходит
(Offline)
 
Ответить с цитированием
Старый 25.09.2015, 21:14   #11
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Инклуд js-файла в Node.js

Тоже не советую TypeScript юзать.
Cassandra может и быстрая и вместительная, но по фичам и приятности работы проседает конкретно.
RethinkDB, MongoDB глянь.
На счет "скорость записи", тут чаще твой код больше будет потреблять.
У нас real-time сервер редактора на nodejs+redis+mongodb+websockets, и летает при большой нагрузке отлично.
(Offline)
 
Ответить с цитированием
Старый 26.09.2015, 12:23   #12
ANIK123
Знающий
 
Аватар для ANIK123
 
Регистрация: 29.11.2010
Сообщений: 244
Написано 31 полезных сообщений
(для 49 пользователей)
Ответ: Инклуд js-файла в Node.js

А чем TypeSctipt плох? Мне, после всяких там Java, C#, очень непривычно и неуютно опять писать на JavaScript, и тут TS оказался кстати

Спасибо, значит выбираю монго, чтоб легче освоиться в ноде
__________________
Intel Core i3-4005U (1.7 ГГц), 4 ГБ ОЗУ, nVidia GeForce 940M 4 ГБ, Win8.1
(Offline)
 
Ответить с цитированием
Старый 26.09.2015, 14:24   #13
Nikich
Бывалый
 
Регистрация: 22.12.2011
Сообщений: 844
Написано 150 полезных сообщений
(для 275 пользователей)
Ответ: Инклуд js-файла в Node.js

ИМХО, он просто ненужен. Но дело личное и тред не об этом.
Твой модуль должен экспортировать класс DB, т.е.
module DB {
export class DB {}
}
и использовать нужно reference, да.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
moka (26.09.2015)
Старый 28.09.2015, 18:51   #14
ANIK123
Знающий
 
Аватар для ANIK123
 
Регистрация: 29.11.2010
Сообщений: 244
Написано 31 полезных сообщений
(для 49 пользователей)
Ответ: Инклуд js-файла в Node.js

Стесняюсь спросить: делать ли для каждого подключенного юзера свое соединение с базой или хватит одного общего?
Использую socket.io и mongoDB (+async для ожидания выполнения запросов к базе)
Вопрос идиотский, но все же спросил, на всякий случай
__________________
Intel Core i3-4005U (1.7 ГГц), 4 ГБ ОЗУ, nVidia GeForce 940M 4 ГБ, Win8.1
(Offline)
 
Ответить с цитированием
Старый 28.09.2015, 20:14   #15
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Инклуд js-файла в Node.js

Одно соединение.

Хороший mongo модуль будет держать свой пулл сокетов и менеджить его, также из-за натуры асинхронности, не нужно много выпендриваться с разными соединениями.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
ANIK123 (29.09.2015)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 01:29.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com