Ответы пользователя по тегу Веб-разработка
  • Как добавлять данные постепенно в БД?

    @frozen_coder
    Java-developer
    Как вам уже заметили в комментариях, вам необходимо погуглить назначения методов HTTP, ибо метод GET вы используете некорректно.

    Про сессию уже написали. Ещё вариант - это использовать local strorage на стороне клиента и писать-читать из него (немного поработать с js).

    Если варианты выше не подходят, то можно в отдельной таблице хранить проекты заявок. Т.е. пользователь сначала создаёт проект заявки первым запросом - сохраняем его в отдельную таблицу, а потом на каждом шаге в эту запись добавляются данные с отдельных форм. В финале этот проект становится заявкой - удаляется из таблицы проектов и переносится в таблицу заявок. Это решение не зависит от состояния сессии и local storage. Пользователь может продолжить заполнять заявку с другого клиента в другой сессии, ведь мы храним его проект у себя в базе. Как бонус, таким макаром можно при необходимости организовать пользовательские шаблоны заявок (если форма большая и пользователем большая её часть вводится одинаковая), чтобы быстро создавать новые заявки из сохранённых шаблонов.

    Если требованиями not null полей можно немного принебречь, то можно ввести статусы заявки или флаг является ли заявка проектом и хранить их в одной таблице. Тоже, что и в предыдущем варианте, но только всё в одной таблице и в итоге мы просто меняем статус или флаг записи.

    Ещё вариант, если у вас есть html, который не меняется по ходу изменения форм (т.е. вы просто меняете куски страниц при переходе по формам), то можно завести скрытые поля, куда дублировать заполнение формы пользователем. В итоге у вас эти скрытые поля заполнены и именно их содержимое отправляется на сервер в итоге. Видел такое на старых проектах.

    В проектах с SPA такой проблемы нет, т.к. в таком случае на клиенте просто выполняется управление состоянием и роутингом
    Ответ написан
  • Книга Веб-разработчику?

    @frozen_coder
    Java-developer
    Может надо начать с чего-то одного? Ваш вопрос звучит как "Хочу знать и уметь всё, прочитав одну книгу и посмотрев один урок за 21 день, не написав ни строчки своего кода". Начните с чего-то одного. Хотите работать с БД, ок - определитесь с языком и изучайте бэкенд (для сайтиков - PHP, для Энтерпрайза - Java или C#, Python тоже хорошо зайдет). Хотите делать свистелочки и перделочки на сайтик - добро пожаловать в JavaScript(а его и в бэкенд можно) и иже с ними, начинайте с верстки, HTML, CSS. Веб-разработчик разрабатывает, а верстает - верстальщик. Веб-разработчик верстает по стольку, по скольку. А хороший должен уметь, а не знать какой-то абстрактный божественный свод знаний. Вывод: начинайте делать свои проекты и в процессе вы познаете, всё, что нужно.
    Ответ написан
  • Какой стек языков/технологий использовать?

    @frozen_coder
    Java-developer
    PHP не устарел, про 7 версию не слышали? Не ищите вы легче, ищете, где больше удовольствия и где интереснее. Всякие PHP, js имеют низкий порог вхождения ибо можно быстро узреть результат трудов своих в браузере. Вся сложность Java надумана, просто надо чуток больше знать и быть поболее разносторонним, экосистема весьма широка. Лично мне очень нравится как в Java сделано ООП. Я просто получаю удовольствие от языка. Работы полно. mysql+js вам знать всё равно очень желательно, ибо вы хотите в web. Не понимаете сервлеты? Ок, отложите их пока что. Попробуйте освоить абстракцию выше уровнем - Spring, а когда не поймете почему так, то вернетесь к сервлетам. Не забывайте, что в любом обучении главное - практика, независимо от языка.
    Ответ написан
  • В каком направлении двигаться со знанием Java Core?

    @frozen_coder
    Java-developer
    Везде есть как интересные, так и скучные задачи. Вам выбирать, на первых порах вам скучно не будет, в любом случае узнаете много нового, а потом уже можете пойти и искать другие задачи, места работы. Что-то слабо верится, что в СПБ мало вакансий и они все унылые. Можете расти как в ту, так и в другую сторону. Всё действительно зависит от ваших предпочтений и получаемого удовольствия. Вообще, далеко не везде спешат внедрять самое новое и это не зависит от языка и платформы - никто не хочет неоправданно рисковать переходом на новьё без особой на то выгоды. Я бы посоветовал в web. Может станете fullstack. Изучите клиентскую часть и, если уж так не понравится в Java-мире, потихоньку переплывете во front или js-мир. Уж его то прям колбасит от новых технологий, не соскучаетесь.)
    Ответ написан
  • Какую тему для диплома выбрать(Spring)?

    @frozen_coder
    Java-developer
    Java и Spring - это просто инструмент для решения проблемы. Темой они могут быть, если только Вы проблему нашли в их кишочках и как-то её решаете.
    Т.о., как Вы уже поняли, нужна проблема. Поговорите со своим куратором, он может предложить ряд каких-нибудь проблем, а Вы уже их будете решать инструментами.
    Вам также надо обосновать, почему Вы выбрали данные инструменты.
    web и Java = Enterprise. Это приложения масштаба предприятия, т.е. они как-то автоматизируют его бизнес-процессы и документооборот, переносят его работу в web и электронный формат. Они также могут общаться с другими приложениями, системами. Отсюда ищите проблемы. Вам нужно какое-то предприятие, у которого вся работа в оффлайн, всё плохо, бюрократия и ад. Возможно там проблемы класса BigData. А может быть всё распределенное в пространстве нашей великой и могучей родины и ещё где-то офис на Луне. Сложный бизнес-процесс со сложными сущностями. Разный и изменяющийся во времени и пространстве уровень доступа. Интеграция с гос. сервисами. Импортозамещение. Электронный банк, электронные платежи, электронная валюта. Моднявый блокчейн. Наворотить можно много чего.
    Для Java можно ударится в проблемы параллелизма, распределенных вычислений, искусственный интеллект и машинное обучение. А можно написать какую-нибудь библиотеку для разработчиков, еще один язык для работы в jvm. А можно какой-нибудь сервер, который будет лучше аналогов.
    В общем думайте в сторону поиска конкретной проблемы.
    Ответ написан
  • Нужен ли Linux для начинающего разработчика?

    @frozen_coder
    Java-developer
    Это очень субъективный и холиварный вопрос удобства разработки. Инструменты для фронта и бэка есть и там, и там. Всё заводится и работает и там, и там. Можете поставить второй системой, попробовать решить все те задачи, которые вы делаете в Windows. Или погонять в виртуалке, или попробовать развернуть в ней LAMP-сервер и использовать как среду для тестирования, запуская на нем свои разработки и таким образом познакомится с возможной боевой средой. Если не понравится, ну и ладно. Просто будете иметь представление и взаимопонимание с админами). Ставьте Mint - Ubuntu-based, много всякого из коробки, удобен и красив, если полегче в плане нагрузки на комп, то Xfce-версию. Тонны времени на разворачивание всего и вся не потребуется. Ответы на возникающие вопросы найдете быстро и интерфейс более, менее привычен. А если хотите погонять как сервер на виртуалке, то Debian. У Microsoft'овских интрументов хорошая поддержка TypeScript - надмножество JS от Microsoft, которое в тренде). В офисе разнице нет. У нас успешно работают на всех системах и можешь ставить себе, что угодно. Бросать всё и бежать на Linux сразу смысла нет. А если вам еще и офисные программы нужны (учеба, документы и проч.), то сразу добавляйте MS Office к ФШ на wine, ибо LibreOffice ужасен.
    Ответ написан
  • Подходит ли java для написания серверной части сервера?

    @frozen_coder
    Java-developer
    серверной части сервера
    страшно звучит. Вы подразумевали какой-то распределенный сервер, где его части общаются между собой по модели клиент-сервер? Всё ещё страшно звучит. Ну да ладно.
    Если по производительности, то Java скорее всего выйграет php и python. Скриптовые языки менее производительны компилируемых. Вообще выбирать php и python для написания сервера - плохая идея, они не для того и тут себя не раскроют и не окупят. Если хотите написать производительный сервер, то вам в C++, Golang, Rust, хотя и Java сойдет. У этих языков даже все инструменты для этого есть и библиотеки. Много серверов на них уже написано.
    Ответ написан