Size: a a a

Библиотека джависта

2019 November 11
Библиотека джависта
источник
2019 November 12
Библиотека джависта
источник
2019 November 13
Библиотека джависта
Как стать мастером Java Streams?
Декларативный код (например, функциональная композиция с потоками) обеспечивает превосходные метрики кода во многих случаях. Можно кодировать свой путь через эту серию практических лабораторных работ и стать лучшим Java-разработчиком, изучив Java Streams. Вся идея Streams состоит в том, чтобы представить конвейер, по которому будут передаваться данные, а функции конвейера работают с данными. Так могут быть выражены операции в функциональном стиле на потоках элементов.

Серия статей о Java Streams, состоящая из 6 тем (на сегодняшний день опубликовано 5):
Часть 1. Создание потоков.
Часть 2. Промежуточные операции.
Часть 3. Операции с терминалами.
Часть 4. Потоки базы данных.
Часть 5. Превращение объединенных таблиц базы данных в потоки.
Часть 6. Создание приложения базы данных с использованием потоков.

Интерфейс Java Stream был впервые представлен в Java 8 и вместе с лямбдами выступает вехой в развитии Java, поскольку он вносит большой вклад в упрощение декларативного (функционального) стиля программирования. Поток Java можно представить в виде конвейера, по которому будут передаваться данные. Функции конвейера будут работать с данными, например, фильтруя, отображая и сортируя элементы. И наконец, терминал операция может быть выполнена, чтобы собрать элементы в предпочтительной структуре данных, такие как List, Array или Map. Важно отметить, что поток может быть использован только один раз. Потоковый конвейер состоит из трех основных частей: источник потока, промежуточная операция (операции) (от нуля до нескольких) и операция терминала.
источник
2019 November 14
Библиотека джависта
Преимущество OpenJ9 для сериализации Java
Сериализация Java предоставляет способ легко преобразовать последовательность байтов в и из java.lang.Object.

Одним шагом, который происходит в процессе десериализации, является загрузка класса, указанного дескриптором класса, в поток байтов. Это включает в себя вызов двух методов, которые способствуют снижению производительности: java.lang.Class.forName, java.io.ObjectInputStream. latestUserDefinedLoader
Это частный метод, который находит последний определенный пользователем загрузчик классов или «LUDCL» для использования Class.forName. Если сначала получить доступ к ВМ, это означает, что безопасно исследовать структуры данных ВМ и пройтись по стеку. Затем он обходит стек, чтобы найти самое последнее — ClassLoader, что является дорогостоящим действием.

В OpenJ9 есть несколько оптимизаций
Кэширование классов: создайте, java.io.ClassCache, чтобы уменьшить количество вызовов java.lang.Class.forName для повторных поисков.
Кэширование «LUDCL»: загрузчик может быть безопасно кэширован в ObjectInputStreamклассе. Если пользовательские readObjectметоды вызываются во время этого процесса, LUDCL необходимо обновить.
Замена JIT ObjectInputStream.readObject: Чтобы исключить другое извлечение LUDCL, JIT заменит ObjectInputStream.readObject()вызов на ObjectInputStream.redirectedReadObject(ObjectInputStream iStream, Class caller). ObjectInputStream.redirectedReadObject предоставит информацию LUDCL через аргумент, предотвращающий дополнительные вызовы LUDCL.

Результаты производительности
С этими оптимизациями производительность приложений увеличивается на 4% .
Это свойство десериализации будет включено по умолчанию, начиная с выпуска OpenJ9 0.18.0 в январе 2020 года для всех версий Java.
источник
2019 November 15
Библиотека джависта
Вы хотели в детстве близнеца, на которого можно было отправить ходить в школу, мыть посуду, выносить мусор?

Сегодня Ваши мечты стали реальностью!

Мы предлагаем Вам цифрового двойника, на которого можно повесить абсолютно любую рутинную задачу, связанную с ИТ, а так же предлагаем возможность абсолютно БЕСПЛАТНО сконструировать и начать поддерживать своего собственного бота в Telegram, и для всего этого не потребуется каких-либо знаний в сфере программирования.

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

https://prglb.ru/e5vj

Мы только начали развиваться и продолжаем делать это каждый день, для того чтобы помочь каждому!
источник
Библиотека джависта
Начните с Jetty, Java и OAuth
Jetty — это небольшой масштабируемый веб-сервер на основе Java, поддерживающий HTTP/2, WebSockets и многие другие протоколы. Он поддерживает веб-сайты и платформы, как большие, так и маленькие, такие как Google AppEngine. Поскольку Jetty принадлежит Eclipse, его проект с открытым исходным кодом называется Eclipse Jetty. Он соответствует стандартам открытого исходного кода, а также коммерчески применим. Это главная альтернатива Tomcat при размещении Java-приложений. Как и в случае с Tomcat, вы можете использовать Jetty как встроенный, так и автономный.

По умолчанию Spring Boot создает приложения со встроенными веб-серверами, что означает, что сервер встроен в сам код приложения, поэтому нет необходимости запускать отдельный веб-сервер для публикации веб-приложений на Java. Однако с небольшой настройкой можно опубликовать файл WAR в отдельном контейнере Jetty или Tomcat (стиль сервера приложений старой школы). Spring также использует Tomcat по умолчанию, но это легко изменяемо.

Благодаря этому руководству вы можете создать:
- простой веб-сервис со встроенной Jetty =>
- один и тот же веб-сервис в Spring Boot и Jetty =>
- аутентификацию и авторизацию JWT (JSON Web Token) к веб-сервису, используя безопасность на уровне методов с Okta в качестве поставщика OAuth/OIDC.
источник
Библиотека джависта
Подборка статей для Java Junior
Java Junior — лишь начало пути, но уже на этом этапе нужно обладать рядом знаний и умений. Представляем подборку материалов, которые могут оказаться весьма полезными для Джуна.

1) Подборка интерактивных курсов по C# и Java. Здесь собраны полезные ссылки на бесплатные и официальные ресурсы по этим двум языкам программирования.

2) Скрытые возможности в Java. Статья познакомит вас с такими неочевидными фактами, которые помогут понять тонкости ЯП и блеснуть знаниями на собеседовании.

3) Кстати, о работе: эта статья по Java приоткроет завесу тайны над собеседованиями и расскажет, что должен знать новичок.

4) Там же вы найдете пункт о Spring, универсальном фреймворке, который разобран по косточкам в статье Java Spring для начинающих: наиболее полный видеокурс.

5) Полезными будут и 34 крутые видеолекции по Java FX для начинающих.

6) А вот тем, кто уже задумывается об улучшении своего кода, предлагаем ознакомиться со статьей Пишем элегантный и чистый Java код в 5 этапов.

7) Еще в Java работают с базами данных, поэтому вы должны знать SQL минимум на уровне работы с PRIMARY KEY и FOREIGN KEY.

8) Полезные материалы по Java для тех, кто знает английский язык. Здесь рассматриваются библиотеки, приемы, советы по трудоустройству и многое другое.

9) Лучшие Java шпаргалки, с которыми не придется перерывать интернет в поисках ответов.
источник
2019 November 16
Библиотека джависта
Поддержка Java 8
Хотя мы находимся на Java 13, есть много производственных установок, работающих с Java 8. В этом детальном рассмотрении совместимости с Java 8 показано как создавать байт-код Java 8 и исключить вызовы JDK, которые недоступны в Java 8.
источник
2019 November 17
Библиотека джависта
Добавление уровней безопасности в приложение в OpenShift
Сегодня защита приложений является «обязательной», но сложно представить ее без изменения кода, если не думать об этом в самом начале. К счастью, новые собственные облачные шаблоны, создаваемые контейнерами и платформами, такими как Kubernetes, предлагают простые способы решения проблем безопасности, не затрагивая код.

В серии блогов Лоран Бруду показывает каждый этап, чтобы обезопасить существующее fruits-catalog приложение:
Часть 1 - Развертывание и вход TLS
Часть 2. Аутентификация и авторизация с помощью Keycloak
Часть 3 - Секретное управление с Vault
Часть 4 - Динамические секреты с Vault
Часть 5 - Взаимный TLS с Istio
источник
Библиотека джависта
​​🔥19 ноября в 20:00 (мск) онлайн День открытых дверей курса
«Разработчик на Spring Framework».

Зарегистрируйтесь: https://otus.pw/djLb/

👉🏻А пока есть время до встречи – знакомьтесь с программой и проходите вступительный тест в группу: https://otus.pw/AH71/

📌Вас ждет знакомство с преподавателем курса, Юрием Дворжецким – автором обучающей программы, архитектором. Специалистом, которому по плечу разработка больших и маленьких проектов, высоконагруженных и очень красивых, многим известных и совсем специфических, а также тренером компании Luxoft.
📌Рассказ в деталях о курсе и формате обучения, программе трудоустройства и карьерных перспективах выпускников.

💣50% выпускников прошлых групп уже получили офферы от наших партнеров.
.
⚠️Присоединяйтесь и вы к числу успешных Java-Developers. Готовьте вопросы и задайте их лично преподавателю в прямом эфире.
источник
Библиотека джависта
Структуры данных и алгоритмы в Java. Классика Computers Science. 2-е изд.
Автор: Лафоре Р.

#programming #java #book

Целевая аудитория: для начинающих разработчиков.

Структуры данных и алгоритмы на Java, второе издание, разработаны так, чтобы их было легко читать и понимать, хотя сама тема сложна. На четких и простых программных примерах автор объясняет эту сложную тему, предлагая читателям написать собственные программы и на практике освоить полученные знания.

В книге рассматриваются следующие темы:
✔️программы для различных структур данных и алгоритмов на Java;
✔️как анализировать алгоритмы;
✔️как писать и отслеживать рекурсивные алгоритмы и другое.

Преимущества:
➕ отлично подходит для тех, кто даже не знает Java, поскольку в первой главе объясняется, что вам нужно знать, чтобы следовать коду;
➕язык ясен и точен, и представление систематизировано и хорошо организовано.

Недостатки:
➖примеры часто плохи (загадочные имена переменных, дублирующий код и д.р.);
➖ часто запутанная.
источник
Библиотека джависта
источник
2019 November 18
Библиотека джависта
Что такое Maven, и где он обитает?
Лаконичный гайд по первым шагам в использовании maven. Пишем свой первый проект.

👇🤔
https://proglib.io/sh/D51ikuLNAd
источник
2019 November 19
Библиотека джависта
Quarkus представляют новую версию и просят разработчиков протестировать ее

Недавно сообщество Quarkus выпустило первый выпуск Quarkus 1.0 Candidate Release, и вскоре планирует выпустить финальную версия 1.0. Последние несколько недель до объявления об этом сообщество очень усердно работало над повышением качества Quarkus: исправлением ошибок, улучшением документации, новыми расширениями и, прежде всего, повышением стандартов для разработчиков. "Теперь пришло время внести ваш вклад: протестировать Quarkus 1.0.0.CR1 и присоединиться к нам :)", — обращается к разработчикам команда Quarkus.

Quarkus — это стек с открытым исходным кодом для написания Java-приложений, предлагающий беспрецедентное время запуска, объем памяти и опыт разработчиков. Он предлагает знакомые модели программирования и API (Hibernate, JAX-RS, Eclipse Vert.x, Apache Camel, Eclipse MicroProfile, совместимость с Spring API и многое другое).
источник
Библиотека джависта
Многие платят за образование, но после выпуска работают за зарплату ниже рынка, только чтобы получить опыт работы. МТС и Сколково создали образовательную программу для выпускников бакалавриата и магистратуры(возраст - 19-24 года), которая поможет подтянуть навыки и скиллы и, что самое главное, получить реальный опыт работы над проектом.

Программа платная, но у тебя есть возможность выиграть 100% грант на обучение. Узнай о программе, перейдя по ссылке https://prglb.ru/1gwha со своего ПК, найди все подсказки, информацию об обучении и сразу же стартуй с одного из этапов квеста.
источник
Библиотека джависта
hazelcast —> Отличный пост (с образцом репозитория) о том, как ввести hazelcast как слой между базой данных и клиентами, а также улучшить производительность и гибкость в результате. Он берет пример с Spring JPA и дополняет его Spring Hazelcast для дополнительной скорости и устойчивости, не отбрасывая то, что уже есть.
"Для разработчика это маленькие шаги, а для архитектора — гигантские скачки".
источник
2019 November 20
Библиотека джависта
Senior/Middle Java Backend Developer в TextBack

➕ 120 000 - 200 000 ₽ на руки
➕ Санкт-Петербург

https://prglb.ru/4z1dn
источник
Библиотека джависта
6-8 декабря в Москве состоится хакатон Rosbank Tech.Madness. К участию приглашаются разработчики и аналитики. Вас ждет:

- возможность заявить о себе в самом безумном соревновании уходящего года;

- незаезженные задачи;

- призовой фонд в 600 000 руб.

Регистрируйся на сайте https://prglb.ru/38nev
источник
2019 November 21
Библиотека джависта
Cписок лучших инструментов с их функциями и ссылками для скачивания

1) JUnit:
JUnit — это инструмент модульного тестирования с открытым исходным кодом для языка программирования Java. Это важный инструмент для разработки и развертывания на основе тестирования.
Ссылка для скачивания: http://junit.org/junit4/

2) NetBeans — это бесплатная IDE с открытым исходным кодом. Это позволяет разрабатывать приложения для рабочего стола, мобильные и веб-приложения.
Ссылка для скачивания: https://netbeans.org/downloads/index.html

3) Apache Maven — это программный инструмент управления проектами. Он основан на концепции объектной модели проекта (POM).
Ссылка для скачивания: http://maven.apache.org/download.cgi

4) JRat — это инструментарий анализа среды выполнения Java. Это простой в использовании профилировщик производительности с открытым исходным кодом для платформы Java. Он может контролировать выполнение приложения и измерения производительности.
Ссылка для скачивания: https://sourceforge.net/projects/jrat/files/JRat/

5) Mockito — это популярный фреймворк для Java с открытым исходным кодом. Он помогает разработчикам писать чистый, хорошо разработанный и слабо связанный код.
Ссылка для скачивания: http://site.mockito.org/
источник
Библиотека джависта
Идет набор на программу подготовки сильных Javа-программистов за 5 месяцев с оплатой после трудоустройства.Зарплата от 120 000 рублей на старте. За свою работу мы просим процент от зарплаты разработчика. У нас нет скрытых условий или кредитов.

Пройти тестовое задание нужно до 29 ноября:🙋‍♂️👉 https://clck.ru/KBUKt

👇Что ждет участника:
1. Подготовка с личным ментором online по индивидуальной программе
2. Жесткий контроль знаний на каждом этапе
2. Обучение востребованному на рынке стеку технологий: Java Core, Maven, Git, Junit, Tomcat, Servlet, Spring MVC, Core, Security, Hibernate
4. Отработка знаний в настоящем бизнес проекте, который даст опыт и строчку для резюме
5. Поддержка и общение со студентами-разработчиками в групповом чате slack (уже 1200 участников)
6. Возможность быстрого карьерного развития за счет программы поддержки на 2 года: митапы, мастер-классы, закрытые лекции со спикерами и offline интенсивы

Какие условия для участия?
— Обучению минимум 25 часов в неделю
— Готовность к переезду в Москву
источник