Size: a a a

2019 November 04
middlejava
#java, #vavr, #collections, #functionalprogramming, #translation

Have translated into Russian the article
"Guide to Collections API in Vavr" by baeldung.

Vavr core is a functional library for Java. It helps to reduce the amount of code and to increase the robustness. A first step towards functional programming is to start thinking in immutable values. Vavr provides immutable collections and the necessary functions and control structures to operate on these values. The results are beautiful and just work.

Master article https://www.baeldung.com/vavr-collections

\\\\\

Перевел на русский язык статью
"Руководство по API Коллекций Vavr" by baeldung.

VAVR (известная ранее, как Javaslang) — это некоммерческая функциональная библиотека для Java 8+. Она позволяет писать функциональный Scala-подобный код в Java и служит для уменьшения количества кода и повышения его качества.

https://habr.com/ru/post/474402

t.me/middle_java
источник
2019 November 05
middlejava
#gitlab #racism #github

Руководство Git-сервиса Gitlab запретило принимать в свой штат жителей России и Китая.

Инициатива была предложена в середине октября 2019 г., и в ней говорится о невозможности россиянам или китайцам занимать в Gitlab должности, так или иначе связанные с доступом к данным клиентов компании. К примеру, они не смогут работать инженерами по эксплуатации, технической поддержке или сфере обеспечения безопасности. На 5 ноября 2019 г. она находится на обсуждении и в силу не вступила, но по данным ресурса ZDNet, россияне уже стали получать отказы в приеме на работу в Gitlab.

Отказ Gitlab от приема на работу россиян стал вторым шагом глобальных Git-репозиториев за последние несколько месяцев по дистанцированию от России. В конце июля 2019 г. CNews сообщал, что GitHub, схожий по своим возможностям проект, начал блокировать аккаунты разработчиков из регионов, на которые распространяются санкции США, включая Крым. VPN не помогает, потому что заблокированы именно сами репозитории, причем скачать или экспортировать их невозможно.

https://www.cnews.ru/news/top/2019-11-05_gitlab_vvel_otbor_sotrudnikov

t.me/middle_java
источник
2019 November 08
middlejava
#agile #development #tools

10 Best Tools for Agile Development

\\\\\

10 лучших инструментов для Agile разработки

https://www.fromdev.com/2019/11/best-tools-for-agile-development.html

t.me/middle_java
источник
2019 November 11
middlejava
#kafka #messaging #book #itsumma #oreilly

На прошедшей на прошлой неделе конференции Highload++ компания ITSumma раздавала переведенную на русский язык неплохую книгу "Проектирование событийно-ориентированных систем. Концепции и шаблоны проектирования сервисов поточной обработки данных с использованием Apache Kafka" автора Бена Стопфорда, 2019 год.
В данном посте представлен фотоскан данной книги. Качество скана не идеальное, но все читается без проблем и для ознакомления идеально.
Купить книгу можно здесь https://www.itsumma.ru/press

\\\\\

Book "Designing Event-Driven Systems. Concepts and Patterns for Streaming Services with Apache Kafka", 2018.
In this book, author Ben Stopford explains how service-based architectures and stream processing tools such as Apache Kafka can help you build business-critical systems. Download to learn more! https://www.confluent.io/thank-you/designing-event-driven-systems

Or without registration https://cloud.mail.ru/public/5F5G/4eTQnoA4H

t.me/middle_java
источник
2019 November 14
middlejava
#ithumor #english #development

t.me/middle_java
источник
2019 November 18
middlejava
#java, #kafka, #translation

Have translated into Russian the article
"Synchronous Request-Reply using Apache Kafka".
Event Driven Architectures in general and Apache Kafka specifically have gained lots of attention lately. To realize the full benefits of an Event Driven Architecture, the event delegation mechanism must be inherently asynchronous. There may however be some specific use cases/flows where a Synchronous Request-Reply semantics is needed. This blog post shows how to realize Request Reply using Apache Kafka

Master article https://callistaenterprise.se/blogg/teknik/2018/10/26/synchronous-request-reply-over-kafka/

\\\\\

Перевел на русский язык статью
"Синхронный Запрос-Ответ с использованием Apache Kafka".
Архитектуры, управляемые событиями (Event Driven Architecture), в целом, и Apache Kafka, в частности, привлекли в последнее время большое внимание. Для реализации всех преимуществ архитектуры, управляемой событиями, механизм делегирования событий должен быть по своей сути асинхронным. Тем не менее, могут существовать некоторые особые сценарии/потоки использования, в которых требуется семантика Синхронного Запроса-Ответа. В этом выпуске показано, как реализовать "Запрос-Ответ" с помощью Apache Kafka

https://habr.com/ru/post/476156/

t.me/middle_java
источник
2019 November 22
middlejava
#job #java #moscow

New job opportunities in Sberbank and Sbertech (Russia, Moscow)

\\\\\

Свежие вакансии в Сбербанке и Сбертехе:

Москва
-- Java-разработчик    
-- Java Developer
-- Главный Java-разработчик    
-- Senior Java-разработчик    
-- Методолог релизного процесса    
-- Специалист по информационной безопасности    
-- Инженер по нагрузочному тестированию

Резюме прошу присылать на middle.java@mail.ru

t.me/middle_java
источник
middlejava
#java #spring #springsecurity

Weekly Java news by Eugene.
Еженедельная подборка новостей по Java от Евгения.


Highlights:
-- A quick rundown of available Java versions and distributions
-- A good write-up on testing event-driven applications
-- A look at Waterfall vs Agile from a planning perspective
-- And the Spring Security 5 OAuth story continues

https://www.baeldung.com/java-weekly-308

t.me/middle_java
источник
2019 November 25
middlejava
#tutorial #java #kafka #oauth

Kafka with Java: Build a Secure, Scalable Messaging App
In this tutorial, you’ll learn the basic concepts behind Apache Kafka and build a fully-functional Java application, capable of both producing and consuming messages from Kafka.

\\\\\

Kafka с Java: создание защищенного, масштабируемого приложения обмена сообщениями
В этом уроке вы изучите основные концепции Apache Kafka и создадите полнофункциональное Java-приложение, способное как отправлять, так и принимать сообщения из Kafka.

https://developer.okta.com/blog/2019/11/19/java-kafka

t.me/middle_java
источник
2019 December 01
middlejava
#book #xml #json

Java XML and JSON:
Document Processing for Java SE.
Jeff Friesen


XML and (the more popular) JSON let you organize data in textual formats. This book
introduces you to these technologies along with Java APIs for integrating them into your
Java code. This book introduces you to XML and JSON as of Java 11.

Part I: Exploring XML
Chapter 1: Introducing XML
Chapter 2: Parsing XML Documents with SAX
Chapter 3: Parsing and Creating XML Documents with DOM
Chapter 4: Parsing and Creating XML Documents with StAX
Chapter 5: Selecting Nodes with XPath
Chapter 6: Transforming XML Documents with XSLT
Part II: Exploring JSON
Chapter 7: Introducing JSON
Chapter 8: Parsing and Creating JSON Objects with mJson
Chapter 9: Parsing and Creating JSON Objects with Gson
Chapter 10: Extracting JSON Values with JsonPath
Chapter 11: Processing JSON with Jackson
Chapter 12: Processing JSON with JSON-P
Part III: Appendixes
Answers to Exercises

t.me/middle_java
источник
2019 December 08
middlejava
#job #java #moscow

New job opportunities in Sberbank and Sbertech (Russia, Moscow)

\\\\\

Свежие вакансии в Сбербанке и Сбертехе:

Москва
-- Разработчик Java
-- Ведущий инженер сопровождения ИТ-систем Сбербанка
-- Java developer
-- Jira администратор / методолог
-- Middle/Senior Frontend Developer

Резюме прошу присылать на middle.java@mail.ru

t.me/middle_java
источник
middlejava
#java #jms #ibm #mq #mqseries #spring #springboot #translation

Have translated into Russian the article
"MQ JMS application development with Spring Boot".
Application developers who are working in Java, using the JMS interface, often choose to work with the Spring Framework. Spring can simplify the coding of new applications by providing templates for common patterns, and has been successfully used for many years with the MQ JMS classes. The JmsTemplate class in Spring is the key interface here, but it still relies on having dependencies and configurations defined or coded.
The Spring Framework includes several modules for different capabilities. One of these components is Spring Boot. Spring Boot starters conveniently pull in all the dependencies and auto-configuration libraries required to use a particular technology. This makes it very easy to get going with a new application and technology, faster than working directly with classes like JmsTemplate. So how can we enable this easy access for MQ applications?

Master article https://developer.ibm.com/messaging/2018/04/03/mq-jms-spring-boot/

\\\\\

Перевел на русский язык статью
"Разработка MQ JMS приложения на Spring Boot".
Разработчики приложений, работающие на Java, при использовании интерфейса JMS, часто предпочитают работать со Spring Framework. Spring может упростить написание кода новых приложений, предоставляя шаблоны для общих паттернов (templates for common patterns) и успешно используется в течение многих лет с классами MQ JMS. Класс Spring JmsTemplate является ключевым интерфейсом, но он по-прежнему зависит от конфигураций и зависимостей в коде.
Spring Framework включает в себя различные модули для различных нужд. Одним из таких компонентов является Spring Boot. Spring Boot стартеры удобно подтягивают все зависимости и библиотеки авто-конфигураций, необходимые для использования конкретной технологии. Это позволяет очень легко начать работу с новым приложением и технологией, быстрее, чем работать непосредственно с классами, такими как JmsTemplate. Итак, как мы можем воспользоваться этим легким доступом для приложений MQ?

https://habr.com/ru/post/479232/

t.me/middle_java
источник
2019 December 15
middlejava
#jetty #springboot #microservices #tutorial #oauth #jwt

Get Started with Jetty, Java, and OAuth

Jetty is a small, highly-scalable Java-based web server and servlet engine. It supports HTTP/2, WebSockets, and many other protocols. It powers websites and frameworks, both large and small, such as Google AppEngine. Because it is an Eclipse project, its open source project is called Eclipse Jetty. It is standards compliant and open source, as well as commercially usable. It is the main alternative to Tomcat when hosting Java applications. Like you can with Tomcat, you can use Jetty both embedded and stand-alone.

By default, Spring Boot creates applications with embedded web servers, which means that the server is embedded within the application code itself, so you don’t have to run a separate web server to publish Java web applications. However, with a little configuration, you can also publish a WAR file to a separate Jetty or Tomcat servlet container (old-school application server style). Spring also uses Tomcat by default, but you can easily change this, as you’ll see.

In this tutorial, you will build a simple web service with Jetty embedded. After that, you will build the same web service in Spring Boot and Jetty. Finally, you’ll add JWT (JSON Web Token) authentication and authorization to the web service using method-level security with Okta as the OAuth/OIDC provider.

\\\\\

Начало работы с Jetty, Java и OAuth

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

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

В этом тьюториале вы создадите простой веб-сервис на встроенном Jetty. После этого вы соберете этот же веб-сервис на Spring Boot и Jetty. Наконец, вы добавите к веб-сервису аутентификацию и авторизацию JWT (JSON Web Token), используя безопасность на уровне методов (method-level security) с применением Okta, как поставщика OAuth/OIDC.

https://developer.okta.com/blog/2019/11/07/java-jetty-oauth

t.me/middle_java
источник
2019 December 23
middlejava
#job #java #moscow

New job opportunities in Sberbank and Sbertech (Russia, Moscow)

\\\\\

Горячие вакансии в Сбербанке и Сбертехе:

Москва
-- Java Developer
-- Разработчик Java/Kotlin
-- Архитектор системы

Резюме прошу присылать на middle.java@mail.ru

t.me/middle_java
источник
2019 December 29
middlejava
#java #staticcodeanalysis

Статический анализ кода

- это процесс выявления ошибок и недочётов в исходном коде программ.
Его можно рассматривать как автоматизированный code review.
Задачи, решаемые программами статического анализа кода, можно разделить на 3 категории:
-- Выявление ошибок в коде.
-- Рекомендации по оформлению кода.
-- Подсчет метрик кода.

Для решения этих задач существует множество инструментов. Я пишу в целом на Java, поэтому описывать буду в основном средства для работы с этим языком.
Базовые инструменты анализа (далеко не самые плохие) встроены в IDE: IDEA, Eclipse и т.д.
Далее есть возможность подключать дополнительные инструменты к IDE в виде плагинов (FindBugs, SonarLint и др.).
Следующий уровень контроля может быть интегрирован в системы сборки (например в Jenkins).
Исчерпывающий список статических анализаторов кода с кратким описанием приведен по ссылке:
https://github.com/mre/awesome-static-analysis
Примеры неочевидных проблем, обнаруженных в Java коде анализатором PVS-Studio приведены по ссылке:
https://habr.com/ru/company/pvs-studio/blog/481186

В заключение небольшой опрос:
(Если вашего варианта в опросе нет, то прошу отписаться в группе или в комментарии к этому посту)

t.me/middle_java
источник
middlejava
Which tool do you or your company use for Static Java Code Analysis?
Какой инструмент статического анализа Java кода используете вы или ваша организация?
Анонимный опрос
3%
Checkmarx CxSAST
1%
CodeFactor
1%
CodeScene
3%
Fortify
1%
Kiuwan
1%
Parasoft
9%
PVS-Studio
72%
SonarQube
0%
Synopsys
10%
Another / Другой
Проголосовало: 134
источник
2020 January 26
middlejava
#java #webflux #reactive #springdata #springsecurity #springhateoas #spring #springboot #tutorial #translation

Have translated into Russian the tutorial
"Reactive BookStore Service Broker" - sample application that represents some of the progress made across the portfolio to support a Reactive programming model.
The BookStore Service Broker sample application has been updated to demonstrate the integration of several of the various Spring projects, including Spring Cloud Open Service Broker, Spring Data, Spring Security, Spring HATEOAS, and of course Spring WebFlux and Spring Boot. All of these projects have GA versions that include Reactive support and are ready for production in your own applications and services.

Master article https://spring.io/blog/2020/01/14/reactive-bookstore-service-broker

\\\\\

Перевел на русский язык тьюториал
"Реактивный брокер сервиса BookStore" - пример приложения, демонстрирующего часть прогресса, достигнутого в портфеле проектов Spring в части поддержки Реактивной модели программирования.
Образец приложения BookStore Service Broker был обновлен для демонстрации интеграции нескольких различных проектов Spring, включая Spring Cloud Open Service Broker, Spring Data, Spring Security, Spring HATEOAS и, конечно, Spring WebFlux и Spring Boot. Все эти проекты имеют версии GA, включающие Реактивную поддержку и готовые к продакшену в ваших собственных приложениях и сервисах.

https://habr.com/ru/post/485498/

t.me/middle_java
источник
2020 February 26
middlejava
#job #it #java

Друзья, привет!
У меня к вам вопрос:
У меня есть прямой доступ к вакансиям Сбербанка в IT в разных городах России (в основном Москва, Питер): разработчики, аналитики, системные инженеры, UI, UX и т.п.
Нужно ли мне их выкладывать в канале?
=====
Hi friends!
I have a question to you:
I have direct access to hot job vacancies from Sberbank for IT specialities in different cities of Russia (mainly located in Moscow and Saint Pittsburg), among them: developers, analytics, system engineers, UI, UX etc.
Would you wish me to publish those vacancies in the channel or not?

t.me/middle_java
источник
middlejava
Нужно ли мне выкладывать вакансии Сбербанка в IT в канале? ===== Would you wish me to publish job vacancies of Sberbank in the channel?
anonymous poll

Нет / No – 94
👍👍👍👍👍👍👍 72%

Да / Yes – 37
👍👍👍 28%

👥 131 people voted so far.
источник
2020 March 22
middlejava
#java #spring #webflux #microservices #books #education #kubernetes #intellij

Друзья привет!
За прошедший месяц накопилось много полезного материала. И только сейчас добрались руки оформить его по-нормальному.

Hi friends!
A lot of usefull materials has been discovered over the past month. And only now hands got to make it structured.

Книги / books:
-- Architecting Modern Java EE Applications - Designing lightweight, business-oriented enterprise applications in the age of cloud, containers, and Java EE 8 - Sebastian Daschner
https://drive.google.com/open?id=1W5PNHoSLU99d_Ykl40tjdnUDSgD5sRsJ
-- Mastering Java 9 - Write reactive, modular, concurrent, and secure code - Dr. Edward Lavieri, Peter Verhas
https://drive.google.com/open?id=1YIkH_7S2XdgcYyFtw1J8VOzUmTImkES6
-- Kafka: The Definitive Guide - Real-Time Data and Stream Processing at Scale - Neha Narkhede, Gwen Shapira, and Todd Palino
https://drive.google.com/open?id=1Tp2vpqzg389ZK-vke5r8Z1dQKpsA5LHR
-- Instant MongoDB - Get up to speed with one of the world's most popular NoSQL database - Amol Nayak
https://drive.google.com/open?id=18VJRwfvEs1EGXF9DdhhrjI-8pf_7Vmyy
-- Гигантское количество бесплатных книг по Python / Huge amount of free Python books
https://www.pythonmembers.club/2020/01/29/legally-free-python-books-list/

Обучение / education:
-- Исходники всех заданий с сайта https://www.root-me.org
-- Sources of all excercises from https://www.root-me.org
https://drive.google.com/open?id=1_jpcCF83EyrD_eCv-35ISri9710ydbzN
За предоставленный архив спасибо @SmS_SysteM

Статьи / articles:
-- Best Practices For Microservices on Kubernetes (ENG)
https://piotrminkowski.com/2020/03/10/best-practices-for-microservices-on-kubernetes
-- Советы и хитрости IntelliJ IDEA: 2. Анализ зависимостей (RUS)
https://habr.com/ru/post/491812/
-- The same article in English: Analyzing dependencies in IntelliJ IDEA (ENG)
https://www.vojtechruzicka.com/idea-analyzing-dependencies/
-- Введение в Reactive Spring (RUS)
https://springgears.com/reactive-spring-introduction
-- Введение в функциональный Spring Web (RUS)
https://springgears.com/spring-webflux-introduction

Видео / video:
-- Микросервисы, отвечающие за несколько микросекунд - друзья и враги - Дмитрий Писклов (RUS)
https://www.youtube.com/watch?v=QV-ue1YMdds

Пароль для всех файлов / password for all the archives:
https://tele.gg/middle_java

t.me/middle_java
источник