Ответы пользователя по тегу Java
  • С чего начать изучать бекенд разработку на Java?

    aparusov
    @aparusov
    Разработчик ПО, предприниматель
    Добрый день, если рассматривать серверную часть на Java, то можно копать в сторону технологии EJB (часть Java EE). По сути, это Java классы на сервере, которые обрабатывают запросы от клиентов и ими реализуется вся бизнес логика (средний уровень, сервер приложений). В качестве сервера, например, может быть JBoss, точнее ныне WildFly ( https://ru.wikipedia.org/wiki/WildFly ). По моему опыту, - все неплохо работает, в том числе с Андроидными клиентами ( www.volocktech.ru/index.php/2016/11/16/javaee-meet... ). WildFly может выставить наружу, как чистые Java бины, так и Web сервисы с WSDL и REST сервисы. У нас все эти варианты используются. Причем Андроид подключается к серверу через REST. Главные бины с бизнес логикой у нас @Stateless, для работы с БД используем Hibernate (встроен в WildFly) и PostgreSQL. Операции с БД выполняются с помощью простых Java объектов с аннтоацией @Entity.
    Для обмена с клиентами используются POJO (простые Java классы, но не те, что @Entity!)
    Использование этой технологии это не очень простой путь, но для создания серьезных приложений хороший вариант.
    Если хочется как следует изучить технологию, лучше книгу иметь типа такой: https://www.litres.ru/debu-panda-2/ejb-3-v-deystvi...

    Есть еще более простые варианты по технологии Servlet, но про них ничего не скажу, т.к. не использовал.
    Ответ написан
    Комментировать
  • На чем писать кроссплатформенное GUI приложение?

    aparusov
    @aparusov
    Разработчик ПО, предприниматель
    Да, C++ на порядок сложнее по сравнению Java и С#, хотя Qt многое упрощает.

    Для кроссплатформенных офисных приложений хороша Java, - GUI на JavaFX или Swing, но не SWT (в нем много косяков, которые отнимают много времени). Если лучше знаешь C#, то на нем (язык посовременнее, фреймворк попроще будет) и сразу в MonoDevelop (так-как нужна кроссплатформенность).

    С серверной частью (если трехзвенка) важно определиться на чем она должна работать (в какой ОС). Если тоже кроссплатформенная, то лучше все на java делать и разобраться с серверными технологиями Java: Spring или Servlet-контейнер или даже сервер Java EE. Использовать ORM (Hibernate, например). Но с этим стеком Java придется повозиться, - порог вхождения высокий, зато потом открываются богатые возможности (независимые от ОС! ).
    Ответ написан
    Комментировать