Ответы пользователя по тегу JavaScript
  • Какие функции должен знать JS Frontend Junior?

    @stratosmi
    1) Знать где искать. Примерно представлять какие есть. Все никто не помнит. Например, под фронтенд (браузеры): https://developer.mozilla.org/ru/
    2) Прекратить мыслить на уровне "выучить функции". Это не уровень джуна. Это уровень trainee еще.
    Ответ написан
    Комментировать
  • Как на клиентском JS подключить файл с неизвестным расширением?

    @stratosmi
    Что мешает проверить саму?
    Это быстрее, чем вопрос был написан.
    Ответ написан
    Комментировать
  • Управление блогом без cms, только фронтенд?

    @stratosmi
    Видимо вы имеете ввиду класс ПО static website generator
    Это, например, https://gohugo.io/
    Можно реализовать вплоть до поиска на сайте без бэкенда.
    Например, с помощью www.tipue.com/search
    Я понимаю что вообще без бэкенда не бывает, потому что как минимум есть какой-то сервер(на php, node не важно)

    Как раз бывает. Совсем без бэкенда. Если не считать отдачу статики бэкендом, но я один голый nginx или cloud storage со статическими же файлами не называл бы бэкендом.
    Есть ли какие-то решения добавлять посты и редактировать текущие не ходя в код, но на стороне фронтенд?

    У static website generator идея такая:

    У вас имеются файлы с настойками, файлы стилей и пр. CSS/JS.
    У вас имеются обычные текстовые файлы с текстами блогостатей.

    После того как вы изменили текст, запускаете static website generator.
    Он на основании ваших CSS/JS и файлов конфигурации и файлов с текстами блогостатей создает html-ки.
    Эти html-ки являются обычным статическим веб-сайтом.

    Чтобы не запускать это все вручную имеются схемы типа:
    https://gohugo.io/hosting-and-deployment/

    Ну вот например:
    https://gohugo.io/hosting-and-deployment/hosting-o...
    Просто пишете тексты в репе на github, после чего автоматически генерируется и публикуется ваш сайт.
    Ответ написан
  • Почему гугл и яндекс не сделали свои главные страницы в виде pwa?

    @stratosmi
    Незачем.

    PWA предполагает что в браузере остается работать некая часть кода сайта, берущая на себя частично серверный функционал.

    Но зачем это поисковику?
    Какой там будет функционал?
    Как вы себе представляете без сети поисковик?

    А, скажем, для почты того же Google некоторый смысл в этом есть и они используют PWA для GMail. Также и для Youtube. И mail.ru использует.
    В Firefox в этом можно убедиться вбив в строке адресной
    about:serviceworkers
    Ответ написан
    3 комментария
  • Какова суть фреймворков и библиотек?

    @stratosmi
    1) Фреймворк, как правило, рекомендует (а некоторые и навязывают) определенную организацию структуры кода, да. За это он тебе тоже кое-что дает - берет на себя типовую работу, что повторяется из проекта в проект, зачем ее делать каждый раз заново.

    Да, функционал их разный. От минималистичного до всеобъемлющего.

    Вполне можно использовать на одном сайте фрейморк CSS для верстки, фреймворк JS для динамики, фреймворк для бекенда. Если фреймворк для CSS и фреймворк для JS еще, возможно, и могут мешать друг другу (но как правило не мешают), то фреймворк для бэкенда функционирует на сервере как вообще независимая от CSS/JS вещь (CSS/JS фунционируют в браузере, а не на сервере).

    2) Да. Если они специализированы на разных проблемах (Zurb Foundation для CSS и Vue.js для JS и Yii для PHP, например).

    Но если они занимаются сходными вещами (например, React и Vue) то целесообразность такого применения непонятна. Более того - они запросто могут мешать друг другу. Нужно смотреть по ситуации.

    3) Библиотеки - весьма конкретно-местный инструмент. Потому более независимы от проекта.
    Фреймворки же нацелены на большую автоматизацию решения ваших проблем в какой-то конкретной ситуации, а вас от них более зависимыми (что не плохо, учитывая приносимую фреймворками пользу, просто нужно учитывать).

    То что фреймворки используют библиотеки - не позволяет нам делать никаких дополнительных выводов.
    Все используют библиотеки, это норма.

    4) Штатные API выбранного сервиса карт (Yandex Maps, 2GIS Maps, OpenStreet Maps и пр.). Эти API реализованы в виде библиотек. Фреймворки тут вообще не при делах.

    P.S.:
    2GIS специализированный сервис:
    В 2GIS очень хорошо представлены предприятия\фирмы\организации (в городах, где 2GIS присутствует), лучше прочих. Между городами 2GIS нет в принципе.
    Ответ написан
    Комментировать
  • Строгая типизация возвращаемых значений функцией?

    @stratosmi
    Это холивар на тему "языки со статической типизацией vs языки с динамической типизацией"
    Каждая сторона может привести кучу значимых аргументов в свою пользу.

    Если проект очень сложный/очень ответственный - все должно быть строго, иначе нахлебаетесь.
    Для простых - лучше гибче, без лишней строгости. Разработка будет быстрее, дешевле.
    Ответ написан
    Комментировать
  • Как разделить код?

    @stratosmi
    Сейчас написано строк 200 кода, а в нем уже начинаешь путаться, так как функции в перемешку идут, а не по порядку исполнения, а по порядку их выставить не реально, так как некоторые функции не зависимы друг от друга.


    А и не надо по порядку.
    Сгруппировать по смыслу, по функционалу. И дать внятные название, скажем, все обработчики начинать с On.


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


    Достаточно везде одинаковые по смыслу аргументы именовать одинаково. Но только на одном уровне абстракции. Пытаться использовать сквозное наименование - категорически не нужно.
    Ну и локальные переменные можно выделять, например, префиксом l.

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


    Это типичная ошибка новичка - все пытаться удержать в голове.
    Для программиста нормой является "разделяй и властвуй" - абстрагирование на каждом уровне от предыдущего уровня.

    Важнейший (ну или один из самых важнейших) навыков программиста - декомпозиция.


    А вообще почитайте серию статью Дядюшки Бо "Чистая архитектура" и ее переложение под ваш язык программирования (есть несколько адаптаций статей под разные языки программирования).
    Ответ написан
    Комментировать