• Что можно написать на Node.js?

    MarcusAurelius
    @MarcusAurelius Куратор тега Node.js
    автор Impress Application Server для Node.js

    Часто применяется для:

    1. Локальные приложения и утилиты командной строки
    • Сборщики и трансляторы
    • Пакетная обработка и сценарии отложенной обработки
    • Скрипты, CLI (интерфейсы командной строки)
    • Генерация документации, отложенное формирование отчетов
    • Сценарии тестирования для других систем

    2. Серверы
    • Серверы веб-приложений и SPA
    • Серверы и API для мобильных приложений
    • Любые другие веб-API (RPC, JSON, REST)
    • Серверы сообщений и трансляция событий (чаты, игры, интерактив)
    • Заплаты на уже готовые системы, написанные на других языках, для реализации вебсокетов, SSE, лонг-пулинга и т.д., т.е. для затыкания дыр, для решения проблем в узких местах уже работающих систем.

    3. Клиенты
    • Оконные приложения (nw.js, node-webkit)
    • Кравлеры, парсеры и сбор данных

    4. Железо
    • Программирование микроконтроллеров (arduino, espruino, tessel)
    • Промышленная автоматизация

    Редко применяется (но подходит) для:
    • CMS, публикация контента (просто ниша уже занята и в этой задаче нода не дает чего-то принципиально нового или сверх соблазнительного).
    • Массовая электронная коммерция и торговля (не применяется для массовых движков магазинов, но используется отдельными крупными компаниями для торговых и платежных задач в качестве дополнительного средства к уже имеющемуся ПО, по сути закрывает узкие места).

    И плохо подходит:
    • Вычисления и моделирование, со скоростью математических операций нода и JS, как не типизированный язык, не дают хороших показателей
    • Научные приложения (по тем же причинам)
    Ответ написан
    10 комментариев
  • Оператор switch case в Arduino для диапазона данных?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Мне не нравится обилие if. Как можно сократить конструкцию, используя switch case?

    Следуя стандарту С/С++ -- никак. К тому же dist у вас -- float, а в кейсах оператора switch можно указать только целочисленные метки.
    Но можно кучу if заменить на следующее:
    digitalWrite(led1, 1);
    digitalWrite(led2, dist <= 40);
    digitalWrite(led3, dist <= 30);
    digitalWrite(led4, dist <= 20);
    digitalWrite(led5, dist <= 10);
    Ответ написан
    Комментировать
  • Монетизация Android-приложения в Беларуси?

    jetman
    @jetman
    Только реклама. Если Google Admob, то там вывод через чеки.

    БелАрусь, Белоруссия
    Ответ написан
    Комментировать
  • Устройство по мониторингу температуры и её отправке по СМС на основе Arduino

    @ur3ckr
    Публикуйте! Статей на тему «умный дом», «мониторинг температуры» и т.п. хватает на Хабре, но в каждой есть своя изюминка и подход в реализации.
    Ответ написан
    Комментировать