Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Облачная платформа для разработки javascript приложений (https://javascript.ru/forum/project/6763-oblachnaya-platforma-dlya-razrabotki-javascript-prilozhenijj.html)

Hivext Technologies 20.12.2009 18:07

Облачная платформа для разработки javascript приложений
 
Приглашаю javascript разработчиков попробовать возможности облачной платформы Hivext Platform позволяющей создавать веб приложения и сайты на серверном Javascript.

Мы расширили серверный javascript дополнительными нативными объектами чтобы можно было работать с веб сервером (сессионные переменные, cookie, http заголовки и т.д.), базами данных (создание таблиц, записей, выборки по критериям) и файловым хранилищем. Можно производить вставки в Javascript на Java и использовать возможности базовых библиотек Java. Есть шаблонизатор на Embed Javascript (EJS).

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

Платформа объединяет в себе возможности хостинга и готового набора методов, функций, техник к которым можно обращаться из клиентского javascript по сети и серверного javascript локально, через нативные объекты.

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

Hivext Platform

Hivext Technologies 21.12.2009 04:34

Пример вывода данных на клиент из серверного JS.

/*
 Название: Output Buffer
 Описание: Вывод данных через буфер.
*/

// Укажем веб серверу и клиенту что данные в html формате.
hivext.local.SetHeader("Content-Type", "text/html");

// Запишем данные в буфер вывода.
// Данные отправляются частями, автоматически по мере заполнения буфера.
hivext.local.out.Write("<html><body>");
hivext.local.out.Write("<h1>Hello world</h1>");
hivext.local.out.Write("</body><html>");

// Принудительная отправка данных из буфера вывода.
hivext.local.out.Flush();

return;​
 
/*
 <html><body>
 <h1>Hello world</h1>
 </body></html>
*/​


Примеры на серверном Javascript

Riim 21.12.2009 05:29

Зарегистрироваться не получается, перехожу по ссылке из письма, вижу json-строку и все, пробую снова через форму, она говорит что я уже присоединен, но вот где форма авторизации, а не присоединения.

Hivext Technologies 21.12.2009 05:51

Riim,
Если json строка значит все ок - зарегились :)
А так да, надо добавить нормальное сообщение чтобы не сбивало с толку.
Форма авторизации в Hive IDE, откроем его в начале февраля 2010 года, там работы выше крыши сейчас :)

Kolyaj 21.12.2009 12:20

Зачем привносить из других языков стиль кодирования? В JS принят camelCase-стиль для всех идентификаторов, включая методы.

По-моему у вас Java головного мозга, по крайней мере симптомы :)

Цитата:

var sParam = hivext.local.GetParam("param1") + ""; // Преобразуем в тип string.
// Если param1 не указан значение по умолчанию "Hello world".
sParam = sParam || "Hello world";

Зачем здесь приведение к строке? Параметры вроде и так строками всегда прилетают.
И сигнатуру getParam лучше сделать в виде getParam(name, defaultValue), тогда вторая строчка будет не нужна.

Про JSON: не лучше добавить хост-объект JSON с методами parse и stringify? Это уже стандарт.

И какой движок у вас используется?

Hivext Technologies 21.12.2009 13:09

Kolyaj,

1. cameCase есть, можете писать и так hivext.local.getParam(...).
2. Можно поподробнее в чем была заподозрена ява головного мозга?
3. Приведение к строке, из-за того что в Javascript попадает Java объект String и JS его не понимает, приходится приведение типа делать. Тут пробовали бороться, но не так все просто, как может показаться на первый взгляд.
4. GetParam, совет хороший, перегрузим :)
5. JSON подумаем, можно и добавить
6. Двиг Rhino 1.6.

Kolyaj 21.12.2009 13:18

Цитата:

Сообщение от Hivext Technologies
2. Можно поподробнее в чем была заподозрена ява головного мозга?

В пункте 3 частичный ответ :) Получается слишком много букв для слишком простых действий.

Цитата:

Сообщение от Hivext Technologies
6. Двиг Rhino 1.6.

А TraceMonkey есть возможность прикрутить? С ним было бы намного вкусней.

Hivext Technologies 21.12.2009 13:30

Kolyaj,

Цитата:

В пункте 3 частичный ответ Получается слишком много букв для слишком простых действий.
Кто на ассемблере программировал тот в цирке не смеется. Это я про слишком много букв :)

Цитата:

А TraceMonkey есть возможность прикрутить? С ним было бы намного вкусней.
Можно будет, но только не до старта BETA версии. В любом случае разрабатывать можно начинать с тем движком который есть, как добавим TraceMonkey или v8, у скриптов можно сменить тип движка и все.

Ruslan 23.12.2009 01:42

Цитата:

3. Приведение к строке, из-за того что в Javascript попадает Java объект String и JS его не понимает, приходится приведение типа делать. Тут пробовали бороться, но не так все просто, как может показаться на первый взгляд.
хе-хе, уже ведутся работы что бы без этих лишних движений все работало великолепно

Ruslan 26.12.2009 00:16

готово, теперь работает без дополнительного "гемора"


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