• Почему я не могу получить код сайта nodejs?

    Возможно, на этом сайте используется что-то более сложное, чем просто request/response get-запроса, например, использование веб-сокета, тут нужно углубляться в работу сайта
    Если нет желания тратить на это время, можно посмотреть на puppeteer - библиотеку от разработчиков chrome, которая запускает headless-версию chrome, с помощью которой можно пропарсиьь страницу так же, как если бы она была открыта вручную в браузере
    Ответ написан
    Комментировать
  • Что надо, чтобы написать node js веб-приложение?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Начните с детального ТЗ, и декомпозиции. "сайт - рулетку, многопользовательский режим" - это буквально значит "хочу чего-то как-то сделать".
    Ответ написан
    3 комментария
  • Какие шаблоны проектирования js применяются на практике чаще всего?

    sfi0zy
    @sfi0zy Куратор тега JavaScript
    Creative frontend developer
    какие паттерны применяются чаще всего на практике и где

    Сразу отмечу, что все это чисто мое имхо, которое может не совпадать с мнением окружающих. В контексте фронтенда обычно все довольно просто. По моим наблюдениям в среднем сайте могут иметь смысл:
    1. Модули (делим код на независимые части)
    2. Фабрики (для компонентов интерфейса)
    3. Синглтоны (для хранилищ, точек сбора полифиллов / утилит и.т.д.)
    4. Адаптеры (для зависимостей и полифилов, которые могут измениться / выпилиться)
    5. Наблюдатели (для сбора происходящих событий в одном месте)
    6. Хранители (для сохранения действий пользователя и "Ctrl-Z")
    7. Стратегии (если действуем в зависимости от прилетевших данных)

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

    Важно понимать, что паттерны проектирования - это просто хорошие идеи по поводу того, как организовать большой объем кода в той или иной ситуации. Это не "изучи тайное знание, запомни, и делай так всегда", не "используй паттерны, потому что великие их используют", это скорее "если не уверен как организовать код, возьми готовую идею, она вроде работает". Если вы будете просто решать задачи, то через N лет практики вы сами их все "изобретете", только не будете знать, что у них есть названия. Эффективно будет организовать себе заметку о том, какие из этих идей для чего примерно применяют, а потом, в процессе работы, в нее подглядывать, если встал вопрос "как организовать этот код".
    Ответ написан
    7 комментариев
  • Какую СУБД лучше выбрать для Node.js и есть ли разница?

    Всё же платформу тоже нужно учитывать: если node.js, то я взял бы монгу. Javascript обьекты и nosql базы можно сказать братья) Работать с ними будет очень удобно. Я бы даже предложил взять очень классный модуль для сериализации обьектов в монгу:ClassJS. Смотрите как просто создаются модели для Ajax транспорта и MongoDB драйвера gist

    Если же нужно очень много взаимосвязей между таблицами, то в nosql базах это будет сложно настроить. Лучше выбрать тогда MySQL.
    Ответ написан
    3 комментария
  • Какие есть хорошие книги по mean.js?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Может хватит использовать mongodb как основное хранилище? Это весьма скверная затея.

    В целом же рекомендую вам так же перестать пытаться мыслить стэком технологий как единым целым. учим все по отдельности.

    сначала изучаем javascript (я как-то подозреваю что вы его не особо знаете)
    - потом... углубляемся в javascript
    - потом учим express.js, попутно постигая тайный смысл аббривиатуры SOLID, изучая ООП, немного функциональщины полезно будет ну и все такое.
    - потом учим angularjs (можно express.js и angularjs поменять местами в принципе, это не столь важно).
    - Ну и еще неплохо изучить базы данных (SQL). Причем монгу оставьте на потом, эта штука клево себя ведет как основное хранилище данных только для записи логов, и в редких случаях, когда вам реально нужна документо-ориентированность (очень редкий кейс). Ну и для ускорения выборок из реляционных баз данных за счет хранения аггрегаций, но для этого должна быть необходимость (много джойнов в выборках например, очень сложные запросы, тогда монгу можно использовать как кэш первого уровня для хранения денормализованной копии данных для упрощения этих сложных выборок).
    Ответ написан
    Комментировать
  • Отдавать ли SPA приложение сервером (express) или положить его отдельно?

    @numfin
    Никак неправильно. Если ты про рендер, то работаешь через сокеты и рендеришь нужный контент. Если ты про спа только на клиенте, то через апи проверяешь есть ли доступ к нужным данным. А если ещё и хочешь 2 отдельных спа для авторизованных и нет - тебе нужно для разных роутов свой статик отдавать на сервере
    Ответ написан
    3 комментария