Как стать автором
Обновить
127.67
Рейтинг

Java *

Объектно-ориентированный язык программирования

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Как стать Java разработчиком в 35+

Программирование*Java*Учебный процесс в ITКарьера в IT-индустрииИнтервью
Из песочницы

Всем привет!  Хочу написать свою первую статью о моём пути из менеджера по продажам / руководителя департамента одного из крупных банков / индивидуального предпринимателя в разработчики, который длился без немногого 2 года. Я постараюсь предоставить некоторые советы и рекомендации тем, кто в начале или середине пути в освоении разработки. Искренне надеюсь, что эта статья будет полезна тем, кто сейчас изучает Java или только планирует заняться ее изучением.

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

Читать далее
Всего голосов 28: ↑27 и ↓1+26
Просмотры14K
Комментарии 28

Новости

Показать еще

DI не из ада

Программирование*Java*Проектирование и рефакторинг*ООП*

Год назад я написал статью про DI в Spring/Java EE. Мой тезис звучал довольно категорично: "DI через конструкторы является единственно правильным. Все остальное – от лукавого". Прошло время, я пообщался с разными разработчиками на эту тему, сменил проект, компанию, провел множество собеседований, отсмотрел большое количество строк на code-review и сейчас могу сказать, что не все так однозначно. Давайте наконец разберемся, как же все-таки инжектить правильно.

Читать далее
Всего голосов 3: ↑2 и ↓1+1
Просмотры5.2K
Комментарии 12

Формирование объектов PL/SQL для выгрузки отчётов в формате XLS из Formspider с помощью Java

Oracle*Java*SQL*
Из песочницы
Tutorial

Часто приходится делать различные выгрузки отчётов в формате XLS из Formspider (на самом деле не важно из какого UI выгружать BLOB), используя PL/SQL developer (Oracle 11g2). Так часто, что решил автоматизировать этот процесс на Java. Язык Java изучаю сам по книгам и видеокурсам уже четвёртый год, поэтому если будут какие-то дополнения или замечания по коду, то опишите их здесь.

Выгрузка из PL/SQL делается при помощи библиотеки AS_XLSX.

Gui создан для удобства. Скачал jar, открыл его (должна быть установлена Java на компьютере), указал параметры и столбцы, нажал кнопку, получил готовый код для вставки в пакет PL/SQL (сэкономил нервы и время).

Читать далее
Всего голосов 8: ↑6 и ↓2+4
Просмотры1.4K
Комментарии 21

Плагин для ранжирования кода по важности или как я пыталась облегчить жизнь программистам

Блог компании Питерская ВышкаПрограммирование*Java*Алгоритмы*Учебный процесс в IT

Обычно в кодовой базе крупных проектов есть более и менее важные фрагменты. Бывают ситуации, когда разработчику необходимо знать, какие части кода важнее других. Например, если на улучшение проекта дается фиксированное время или нужно выяснить, какие модули популярной библиотеки используются чаще. 

Сейчас готовых средств для ранжирования кода по важности нет. Поэтому студентка второго курса программы «Прикладная математика и информатика» Олеся Субботина решила написать такой плагин в рамках проектной работы по Java.

Как статический и динамический анализ кода помогают оценить его важность, какой анализ показывает лучшие результаты, и как вообще был реализован плагин, читайте под катом.

Читать далее
Всего голосов 13: ↑11 и ↓2+9
Просмотры2.9K
Комментарии 6

Spring Data: нюансы @Transactional

Программирование*Java*ООП*
Перевод

Любите Spring? А Spring Data? Я тоже люблю. Если хотите разобраться, почему же возникает этот unexpected transaction rollback, а также быть уверенным, что транзакция отменится, а не закоммитится, добро пожаловать под кат.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Просмотры5.1K
Комментарии 8

gRPC клиент. Попробуй на вкус клиент/сервер на gRPC

Java*API*Google API*СофтМикросервисы*
Tutorial

   В прошлой статье мы разобрали, как писать сервер на gRPC. И протестировали его с помощью BloomRPC. Теперь, давайте разберем как пишется клиент. И попробуем отправлять запросы с клиента на сервер. Это будет наш первый шаг к созданию микросервисов на грпц. 

   В моем случае я использую многомодульный проект, но можно создать отдельный проект. Структура проекта будет примерно следующей: 

Читать далее gRPC client
Всего голосов 7: ↑4 и ↓3+1
Просмотры4.1K
Комментарии 0

Spring Boot + ControllerAdvice + ResponseBodyAdvice или как обернуть ответ контроллеров

Программирование*Java*
Из песочницы

Всем привет, друзья! Сегодня хочу рассказать про способ использование Controller Advice для оборачивания объекта, возвращаемого контроллерами, в новый класс на уровне DispatcherServlet.

Читать далее
Всего голосов 9: ↑8 и ↓1+7
Просмотры5.1K
Комментарии 6

Пишем паническую кнопку под андроид (Часть 2)

Блог компании Huntmix appsИнформационная безопасность*Java*Разработка под Android*GitHub

Заглядываем под капот, решаем проблемы и баги. Как все устроено и что используется - ответы тут! С вами Алексей и сегодня речь пойдет именно от этом.

Читать далее
Всего голосов 8: ↑7 и ↓1+6
Просмотры4.5K
Комментарии 5

Пишем паническую кнопку под Android (Часть 1)

Блог компании Huntmix appsИнформационная безопасность*Java*Разработка под Android*Хакатоны
В этой части я коротко расскажу о мотивах и с чего начиналась разработка. Меня зовут Алексей и я желаю вам приятного чтения!

Идея


Тут все произошло более чем спонтанно зимнем вечером — я на тот момент ещё junior java developer с опытом не более двух месяцев листал новости. И без упоминания ужасных событий того времени — меня просто взбудоражила новость говорящая подобное: «У молодого человека задержали телефон и посадили за подписку на канал». Это дало мне пинок для размышлений, а как вообще защищены данные на android. И тут скорее вопрос не к шифрованию хранилища, не в бэкдорах от «компании добра», а просто в экстренных ситуациях. Ведь любой пароль в принципе можно достать из владельца, и причем многими способами. И сделать так может любой человек просто даже подсмотрев его или подобрав. В поисках решение подобной проблемы я нашел только одно приложение (Ripple) — но его функционал оставлял желать лучшего учитывая что проект официально не обновлялся 2 года.

Поняв что подобного нет, я загорелся идеей создать такое приложение хотя бы для себя

Первые версии


Спустя всего-то 2-3 дня — я получил самую сырую версию которая могла только удалять приложения имена пакетов которых я вводил в ручную — быстро и тихо. А запускалось все отдельной иконкой или внутри приложения.

Скриншоты
image
image

Несмотря на то что приложение писалось полностью под себя, некоторым моим знакомым оно понравилось, сработал эффект сарафанного радио, начали поступать запросы на новые функции и я решил выложить приложение в массы и на спец. форумы.
Читать дальше →
Всего голосов 21: ↑19 и ↓2+17
Просмотры9.9K
Комментарии 71

Да, опять онлайн: анонс восьми осенних конференций от JUG Ru Group

Блог компании JUG Ru GroupJavaScript*Java*.NET*C++*


Пришло время анонсировать 8 наших конференций, уже хорошо знакомых хабравчанам. Мы распределили даты так, чтобы каждую неделю проходило по одной — получился двухмесячный «осенний марафон»:


  • Heisenbug (тестирование): 5-7 октября
  • SmartData (data engineering): 11-14 октября
  • DotNext (.NET): 18-21 октября
  • Joker (Java): 25-28 октября
  • HolyJS (JavaScript): 2-5 ноября
  • DevOops (девопс): 8-11 ноября
  • C++ Russia (C++): 15-18 ноября
  • Mobius (мобильная разработка): 22-25 ноября

Под катом — ответы на главные вопросы. Почему снова онлайн? Что там будет? Есть ли абонемент на весь сезон? Можно ли выступить с докладом? Что известно о программе и как меняется цена билетов?

Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Просмотры1.4K
Комментарии 6

Как мы запустили программу на Java без JavaVM

Блог компании 1СJava*Софт
Всем привет! В этой статье мы расскажем о том, как технология GraalVM Native Image помогла нам решить ряд задач в одном из наших новых продуктов, написанном на Java, расскажем о проблемах, с которыми столкнулись в ходе применения этой технологии, и о том, как эти проблемы решали.
image
Читать дальше →
Всего голосов 14: ↑14 и ↓0+14
Просмотры4.7K
Комментарии 6

DINS JAVA EVENING: подходы к разработке API и JavaFX-приложение на Kotlin

Блог компании DINSJava*

Георгий Клюковкин из DINS сравнит стандарты разработки API и расскажет, как выбрать подходящий для вашего проекта. Иван Белозор из КРОК покажет несколько инструментов, которые стоит использовать при разработке JavaFX-приложений на Kotlin. Участие бесплатное, но нужно зарегистрироваться

Подробная программа и информация о спикерах — под катом.

Читать далее
Всего голосов 5: ↑4 и ↓1+3
Просмотры1.5K
Комментарии 0

Незаслуженно забытый ZooKeeper

Программирование*Java*Распределённые системы*

В наш век распределенных микросервисов постоянно возникают распределенные проблемы. Это самые обычные computer science проблемы, но они распределены по разным серверам или даже разным датацентрам. Для их решения часто выдумывают много разного. Не делайте так, просто возьмите ZooKeeper. Он, несмотря на то что придуман бумерами, просто работает. Он решит немалую часть ваших проблем с распределенными системами.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Просмотры5.6K
Комментарии 16

gRPC сервер с нуля

Разработка веб-сайтов*Java*API*Google API*Софт
Tutorial

  Всем приветы. В прошлом посте https://habr.com/en/post/565020/ мы сравнили gRPC и REST. И собственно, прежде чем писать новый сервер на gRPC, давайте попробуем понять нужен ли он нам действительно. Нашей команде была необходима кодогенерация на разные языки программирования. На эту роль не плохо подходил Swagger, Thrift и gRPC со встроенным кодогенератором. От Thrift, спустя какое-то время, пришлось отказаться, из-за его особенностей и сложностей поддержи на c# (по-моему это была основная причина отказа). Дальше был выбор между Swagger + REST и gRPC. В целом оба варианта хороши, но если мы думаем гонять много и часто данные между клиентом и сервером, то почему бы не протестировать gRPC?  

Структура проекта будет выглядеть следующим образом.

Read more about gRPC server creation.
Всего голосов 9: ↑6 и ↓3+3
Просмотры5.5K
Комментарии 12

Программа в 50 строк на Java/Scala, которая сэкономит вам 50 тыс. р. при подаче декларации 3-НДФЛ

Программирование*Java*Scala*ООП*Функциональное программирование*
Recovery mode

Вы, наверное, знаете, с любых доходов нужно платить налоги, в т.ч. с доходов от торговли ценными бумагами и производными инструментами (проще говоря, от игры на бирже). Очень удобно, когда брокер делает расчеты за вас, перед тем как вы выведите деньги со счета, выполняя функции налогового агента.

Но если брокер такой как у меня - Interactive Brokers (организация, третьего дня запрещенная на территории РФ), декларацию вам придется делать и подавать самому. Делать это всем, конечно же лень, и неплохо бы отдать подготовку на аутсорс...

Читать далее
Всего голосов 28: ↑16 и ↓12+4
Просмотры7.4K
Комментарии 23

Вилкой в глаз, или ForkJoinPool в Java

Программирование*Java*
Tutorial

Всем привет. Сегодня я хотел бы поговорить о многопоточности. Вернее, не о многопоточности вообще, а о таком её механизме как ForkJoinPool. Нельзя сказать, что данная технология является новой (она появилась ещё в Java 7), или что в сети нельзя найти материалы по данной теме. Информации хватает. Например, для глубокого погружения могу порекомендовать лекцию блистательного Алексея Шипилёва, которую можно без труда найти на YouTube. Но лично мне большинство этих материалов показались либо слишком сложными, либо наоборот – поверхностными. Так же некоторые из них содержат явные ошибки, что вносит ещё большую неразбериху в данную тему. Судя по тому, что в комментариях под одной из этих статей я нашёл вот такую картинку, подобные проблемы были не только у меня.

Читать далее
Всего голосов 12: ↑10 и ↓2+8
Просмотры7.8K
Комментарии 12

Spring WebFlux: Реактивное программирование веб-сервисов

Программирование*Java*Параллельное программирование*
Из песочницы

Модуль WebFlux появился в 5й версии фреймворка Spring. Этот микрофреймворк является альтернативой Spring MVC и отражает собой реактивный подход для написания веб-сервисов. В основе WebFlux лежит библиотека Project Reactor, позволяющая легко запрограммировать неблокирующие (асинхронные) потоки (streams), работающие с вводом/выводом данных.

Следует учесть, что WebFlux для работы требуется встроенный в Spring сервер Netty. Встроенные Tomcat и Jetty не подходят. Следующая диаграмма иллюстрирует особенности окружения, в котором работает WebFlux [1].

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Просмотры5K
Комментарии 11

Spring MVC vs Spring WebFlux. Что лучше? Объясняем на пингвинах

Java*IT-компании

Существует множество способов реализации REST-API. Большой популярностью пользуется Spring MVC на основе блокирующих вызовов, но все чаще попадаются проекты, использующие WebFlux на неблокирующих вызовах. В этой статье разберемся, какой из этих двух фреймворков работает лучше. 

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Просмотры6.9K
Комментарии 7

Современный JSON процессор

Программирование*Java*Функциональное программирование*Kotlin*Разработка под Linux*

Вместо тысячи слов... Хотели бы вы обрабатывать json в терминале таким образом?

Если да, то вам под кат.
Всего голосов 16: ↑11 и ↓5+6
Просмотры5.7K
Комментарии 26

Вклад авторов