Ответы пользователя по тегу Веб-разработка
  • Возможно ли тестирование сайта в автоматическом режиме?

    alexiusp
    @alexiusp
    senior frontend developer
    Ни в коем случае не начинайте использовать селениум! Это сплошные тормоза и глюки. Возьмите лучше упомянутый выше Cypress. Он не глючит и шустрее и тесты для него пишутся на JS с привычным синтаксисом как в Jest/Mocha.

    Автоматический запуск с уведомлением на почту у нас реализован через Jenkins.
    Ответ написан
  • Как запретить копировать (сохранять) файлы с сайта?

    alexiusp
    @alexiusp
    senior frontend developer
    Ответ: запретить сохранение нельзя никак.
    Комментарий: Зачем вам это нужно? Если вы боитесь, что заказчик сбежит не заплатив - на это есть авторское право, по умолчанию вы владеете всеми правами на ваш труд. Если заказчик не подписал акт приёмки - сайт ваш, если он попытается его без вас поднять где-то - подаёте на него в суд и доказываете в суде, что исходники были созданы вами. Он тогда не только за работу вам заплатит, но и компенсацию вреда. То же самое касается и других разработчиков. Если вы не опубликовали ваши скрипты под открытой (open source) лицензией, то их нельзя без вашего ведома использовать.
    Ответ написан
    Комментировать
  • Элементы div или span в качестве кнопок?

    alexiusp
    @alexiusp
    senior frontend developer
    Вообще лучше пользоваться button - это лучше с точки зрения доступности страницы. Разные скринридеры для слабовидящих опираются на разметку при чтении. Ну и вообще, если есть в спецификации кнопка и ссылка, то и нужно их использовать по назначению. Используют div вместо кнопки в некоторых случаях, когда не хотят или не умеют бороться с ненужными в конкретном случае особенностями рендеринга элемента button.
    Ответ написан
    Комментировать
  • В чем суть лучшего паттерна написания кода с отловом всех ошибок?

    alexiusp
    @alexiusp
    senior frontend developer
    Паттерн наилучшего написания кода с отловом ошибок - это TDD. При таком подходе ошибки отлавливаются в процессе написания, а не в рантайм. ;)
    Ответ написан
  • Можете показать, как правильно собирать проект?

    alexiusp
    @alexiusp
    senior frontend developer
    1 - найдите на github какой-нибудь boilerplate, starter или seed app, посмотрите как там всё сделано, разберитесь
    2 - погуглите best practices как по структуре react, так и по sass/scss
    Ответ написан
    1 комментарий
  • Можно ли (используют ли) один и тот же код (к примеру Angular или Vue) как для Веб, так и для Мобильных приложений?

    alexiusp
    @alexiusp
    senior frontend developer
    Если приложение не использует никаких возможностей мобильной платформы, то никаких проблем использовать один и тот же код нет - адаптивная разметка (можно тот же bootstrap и angular совместить) и cordova в помощь. Можно также посмотреть в сторону недавно появившихся WPA - там даже компилировать под платформу и выкладывать в маркет не нужно.

    Если же функционал на мобильной платформе будет немного отличаться от веб версии, то всё равно, используя cordova с плагинами и разделение кода на репозитории git, можно добиться практически полного переиспользования кода, хотя и усилий придётся затратить больше.

    Ionic, построенный на базе cordova и angular, тоже неплохое решение для гибридных приложений.
    Ответ написан
    Комментировать
  • По какому принципу создавать контроллеры в MVC?

    alexiusp
    @alexiusp
    senior frontend developer
    Как правильно написали выше - контроллер должен быть тонким. Так что если у вас много действий получается на один контроллер - лучше его разделить. С другой стороны нужно внимательно посмотреть, а не стоит ли разделить сущности. Возможно, как вы сами правильно заметили по ходу вопроса, заказ и просмотр - это отдельные сущности, которые требуют отдельных вьюх, моделей и контроллеров.
    Ответ написан
    Комментировать
  • Какие библиотеки CSS модулей/компонентов посоветуете?

    alexiusp
    @alexiusp
    senior frontend developer
    Я бы рекомендовал взять bourbon+neat как основу. А дальше смотреть как сделано у других (скажем, в bootstrap) и делать только те модули, которые нужны проекту в данный момент.
    Ответ написан
  • Web-разработка. Уровень погружения в язык программирования: PHP vs JavaScript. Где "глубже"?

    alexiusp
    @alexiusp
    senior frontend developer
    Из того, что не упомянули явно, можно ещё упомянуть хорошее понимание работы HTTP протокола (заголовки, POST/GET и пр.) ну и по возможности другие полезные протоколы: POP/SMTP например. Это особенно важно для работы со сторонними API, что сейчас в тренде. Ну и cURL обязательно прикрутите к PHP-сборке и попробуйте - на мой взгляд самый удобный инструмент для общения со сторонними ресурсами.
    Ответ написан
  • Где правильно выполнять бизнес-логику веб-приложения?

    alexiusp
    @alexiusp
    senior frontend developer
    Если не хочется показывать алгоритм расчёта, то, конечно, только вариант 2. Даже если js-файл с алгоритмом как-то минифицировать, всё равно найдётся умелец, который его "дизассемблирует".
    Во втором варианте я не совсем понял, что понимается по "оперативной памятью", но полагаю, что проще всего все необходимые для расчётов данные хранить в сессии на сервере (см. $_SESSION) - так меньше данных придётся передавать от клиента к серверу, а значит и скорость расчёта несколько увеличится. Если какие-то промежуточные данные необходимы клиенту, то можно сохранять их либо в куках, как подсказал автор выше, либо в LocalStorage в DOM, либо, если вы используете jQuery, то в дополнительных атрибутах тегов тех полей, которым эти данные нужны. Посмотрите в сторону функционала jQuery.data(). ;)
    Ответ написан
    Комментировать
  • Как избежать хранения исходного кода сайта на сервере в открытом виде?

    alexiusp
    @alexiusp
    senior frontend developer
    Меня интересует встречный вопрос: зачем это нужно? По-моему проще не давать прав на доступ к серверу тем людям, которые не должны читать ваши исходники. ;)
    Ответ написан
    1 комментарий
  • PHP или Python, что удобнее и выгоднее?

    alexiusp
    @alexiusp
    senior frontend developer
    Я тоже, как авторы выше, порекомендую учить оба языка. Как верно заметил один из вышеотписавшихся, только в сравнении познаётся истина. Чтобы понимать, как устроен тот или иной язык, какие в нём особенности, сильные и слабые места, в каких задачах в конце концов лучше этот язык использовать, всегда нужен образец для сравнения, т.е. другой язык.
    Поэтому учите оба языка, чтобы иметь возможность применять их в разных задачах, а значит иметь более широкий спектр потенциальных заказчиков на фрилансе.
    И, да, по поводу фриланса я бы не торопился. Лучше сначала поработать фулл-тайм в какой-нибудь конторе, чтобы набраться опыта: планирования рабочего времени, взаимодействия с коллегами и заказчиками и всё такое прочее. Когда годик поработаете на нормальной работе, тогда уже решайте нужен ли вам этот фриланс. Далеко не все могут успешно работать на фрилансе. Иногда удобнее в офисе.
    Ответ написан
    1 комментарий
  • Переквалификация PHP-программиста и карьера в провинции

    alexiusp
    @alexiusp
    senior frontend developer
    Если мы говорим действительно о провинции, то там нет такого понятия как php-программист. Специалист подобного профиля скорее является web-разработчиком и помимо php обычно знает ещё не менее одного-двух серверных языков, html/css/javascript и всё остальное, что нужно для полноценной разработки сайтов.
    Я работал в Хабаровске в разные годы на Perl, Pyton, php, C#.Net, кроме того делал и обычные программы на C#, потом понял, что дальше расти там некуда и уехал в Германию (правда перед этим два года язык учил). Здесь уже освоил конкретно Javascript (ранее знания, конечно были, но относительно поверхностные) и создание мобильных приложений. В общем, получил, что хотел. :)
    Ответ написан
    2 комментария