Задать вопрос

PHP или Java в backend ?

Что более полезно использовать на сайте (PHP или Java), имея в качестве цели gov сайт, чтобы иметь возможность контролировать большую базу данных, иметь быстрый ответ от сервера, умение сгенерировать excels, pdf, создание рапортов. Цели: скорость исполнения, чтения / записи в БД, и простота использования сайта.
Спасибо)
  • Вопрос задан
  • 24926 просмотров
Подписаться 3 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 8
sayber
@sayber Куратор тега PHP
Да, я программирую на PHP и еще асинхронно!
Работал в банке, там вся банковская финансовая система была написана на php. Ей нонстоп пользовались 20 операционисток. В минуту проходило до 1000 проводок от пользователя к нам а затем в ЦБ. Те кто знают что такое банковская CRM, представляют ее сложность.
И все работало на ура.

Так что не вижу разницы.
Что нравится, на том и пишите.

P.S.
Сейчас под php библиотек, классов и т.д. просто немерено. Стоит только поискать на git
Ответ написан
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Ну а почему только PHP или Java? Можно взять Hack как компромисс: сочетает в себе плюсы php и привносит в него строгость java.

Ну а если серьезно... в плане безопасности разницы особо нету. В плане производительности java быстрее, но есть не нулевая вероятность что разницы особо вы не почувствуете. В плане поиска рабочей силы... Java имеет свое преимущество, ибо шансы найти разработчика который пишет ногами чуть ниже чем в случае с PHP. И последний жирный плюс в сторону Java и против PHP - инструменты разработки, библиотеки и фреймворки и хорошая культура разработки среди джавистов. В PHP все это только зарождается. Некоторых инструментов нету, некоторые пока сырые или кривые... В основном это относится к тестированию кода. Но ситуация с каждым днем улучшается.

Но вернемся к нашим баранам. Что мы имеем из задания:
1000 пользователей, пускай и активных, выдержит нормально написанный сайт что на php что на java. Это не хай-лоад.

безопасность - зависит от настроек сервера. в плане PHP - при использовании PDO, prepared statements и/или нормальной ORM которая в свою очередь все это внутри использует, вероятность sql инъекций равна нулю. При использовании шаблонизаторов типа Twig вероятность XSS стремится к нулю (зависит от опыта разработчика, но экранирование вывода по умолчанию снижает вероятность ошибки). Для генерирования репортов: проще будет взять node.js, phantom.js и репорты генерить в этом добре, связав с основным приложением через какой rabbitmq/zeromq/Resque. Явно будет эффективнее и круче.
Ответ написан
tashik
@tashik
родной язык - PHP
Руковожу проектами, напишу со своей колокольни: Java более энтерпрайзна, строга, красива и все такое, но на PHP стоимость часа разработки значительно дешевле, разработчиков (и неплохих, если уметь различать) найти проще, PHP развивается довольно быстрыми темпами в последние годы, у меня за плечами целая серия gov-проектов, написанных командой на PHP, и работающий от года до пяти лет (включая площадку для размещения госзаказа). Я за PHP, просто нужно уметь заставить людей писать на нем красиво. Если говорить за "конкретные аргументы": PHP "создан чтобы умирать", в этом его главный минус в плане быстродействия: на каждый запрос собирается все приложение заново: инклюдятся нужные файлы, инитятся всякие инфраструктурные классы и создается объект приложения и только потом роутится запрос. В Java объект приложения собирается один раз, при поступлении запроса мы сразу в роутинг попадаем. Условно говоря. Описала на пальцах, чтобы было понятней. НО: можно на Java кривыми ручками написать так, что весь выигрыш будет слит, а можно для пыхи найти решение, чтобы он каждый раз не умирал или умирал частично. Для работы с базой, если там не оракл, разницы особой нет. Простота использования сайта от языка программирования не зависит: это работа дизайнеров и спецов по usability
Ответ написан
qmax
@qmax
программер
Если вы знаете и php, и java - забудтье php, пожалуйста.
Ответ написан
@DemaFayz
Лучше всего для бекенда, это Java. Но тут есть одно условие... Когда речь идёт о Java, нужно подразумевать Spring (объясняю почему... Дело в том, что истинный потенциал языка программирования Java заключается не в ООП, а в АОП, и потенциал АОП открывается благодаря мощнейшому фреймворку Spring Framework), Но для этого нужны очень хардкорные знания программирования и для изучения необходимо уйма времени и сил... И когда ты выучишь Java EE Spring в России тебе не будет цены. А этот PHP для сосунков. Писать на PHP очень просто. Но истинный хардкорный бекенд программист всегда пишет на Java Spring... А всю остальную фигну он на одном месте вертит... Так что решай сам идти какой дорогой, по легкому или по сложному.
Ответ написан
Scorpi
@Scorpi
То что лучше знаете, если не знаете ничего, то для работы с большой БД наверно Java.
Ответ написан
Комментировать
@binaryk Автор вопроса
А конкретные аргументы ? Наймём на работу людей которые знают.
Ответ написан
Комментировать
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
Под java либ для работы с pdf попроще будет найти.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы