Java Portal | Программирование
11.3K subscribers
798 photos
59 videos
19 files
591 links
Присоединяйтесь к нашему каналу и погрузитесь в мир для Java-разработчика

Связь: @devmangx

РКН: https://clck.ru/3H4WUg
加入频道
📓 Android for Java Programmers.

• The book is intended for introductory or advanced Android courses to be taught in one or two semesters at universities and colleges. It uses code samples and exercises extensively to explain and clarify Android coding and concepts. It is written for students and programmers who have no prior Android programming knowledge as well as those who already have some Android programming skills and are excited to study more advanced concepts or acquire a deeper knowledge and understanding of Android programming. All the apps in the book are native Android apps and do not need to use or include third-party technologies to run.

#Eng
📓 The Java Workshop: A New, Interactive Approach to Learning Java.

What you will learn:
• Get to grips with fundamental concepts and conventions of Java 12;
• Write clean and well-commented code that’s easy to maintain;
• Debug and compile logical errors and handle exceptions in your programs;
• Understand how to work with Java APIs and Java streams;
• Learn how to use third-party libraries and software development kits (SDKs);
• Discover how you can work with information stored in databases;
• Understand how you can keep data secure with cryptography and encryption;
• Learn how to keep your development process bug-free with unit testing in Java;

#Eng
📓 OpenCV и Java. Обработка изображений и компьютерное зрение.

• Книга знакомит с современными технологиями компьютерного зрения, позволяющими машинам, роботам, веб-камерам и другим устройствам распознавать изображения. Приведено описание библиотеки компьютерного зрения OpenCV применительно к языку программирования Java.

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

#RU
📓 Волшебство Kotlin.

• Kotlin — один из самых новых языков в экосистеме Java, устраняющий многие ограничения Java и гораздо более универсальный. Среди его преимуществ: полная совместимость с Java и возможность интеграции на уровне исходного кода, широкая поддержка парадигмы функционального программирования, помогающая писать надежный и безопасный код, лаконичность синтаксиса, а также, что весьма немаловажно, гарантии поддержки со стороны IT-гиганта Google.

• Автор является опытным разработчиком на Java, в своей книге подробно освещает нюансы программирования на Kotlin, переходя от общего описания языка к его характерным особенностям и возможностям, включая приемы функционального программирования. Издание предназначено для разработчиков, знакомых с Java и стремящихся повысить безопасность своих программ, а также упростить их написание, тестирование и сопровождение.

#RU #Kotlin
📓 Java EE to Jakarta EE 10 Recipes.

What you will learn:
• Develop enterprise java applications using the latest open-source Jakarta EE platform;
• Create great-looking user interfaces using Jakarta Servlets, Jakarta Server Pages, Jakarta Server Faces and the Eclipse Krazo framework (an implementation of Jakarta MVC);
• Build database applications using Jakarta NoSQL, Jakarta Persistence, and Jakarta Enterprise Beans;
• Develop enterprise grade applications using Context & Dependency Injection, and Jakarta RESTFul web services;
• Automate testing through cohesive test suites built on Arquillian for Jakarta EE applications;
• Build loosely coupled distributed applications using Jakarta Messaging;
• Deploy microservices applications in cloud environments using Docker;
• Secure applications utilizing the Jakarta EE Security API;

#Eng
📓 Основы Java.

• Описан базовый синтаксис языка Java: типы данных, операторы, условия, циклы, регулярные выражения, объектно-ориентированное программирование. Рассмотрены основные классы стандартной библиотеки, получение данных из Интернета, работа с базой данных MySQL. Приводится описание большинства нововведений: Date API, Stream API, лямбда-выражения, ссылки на методы, функциональные интерфейсы и др.

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

#RU
📓 Learn Java 17 Programming: Learn the fundamentals of Java Programming with this updated guide with the latest features.

What you will learn
• Understand and apply object-oriented principles in Java;
• Explore Java design patterns and best practices to solve everyday problems;
• Build user-friendly and attractive GUIs with ease;
• Understand the usage of microservices with the help of practical examples;
• Discover techniques and idioms for writing high-quality Java code;
• Get to grips with the usage of data structures in Java.

#Eng
📓 Основы программирования с Java.

• Эта книга предназначена для всех, кто хочет изучить основы программирования с использованием языка Java.
Эта книга даст понимание основных элементов программирования на Java и абстракции данных с использованием объектно-ориентированного подхода.

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

📌 Скачать.

#RU
📓 Гид Java-разработчика.

• Этот гид позволит вам прокачать свои навыки ООП и ознакомиться с его приемами на примере реальных проектов. Авторы представляют проектно-ориентированный подход к созданию ПО на Java, используя который можно стать эффективным разработчиком.

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

📌 Скачать.

#RU
Строки в Java

По своей сути, строки — это массив символов char, обёрнутый в класс String. Такая обёртка позволяет обрабатывать строку всеми возможными методами: split, join, trim и другими.

Особенность строк Java в том, что они — ссылочные и неизменяемые. Это позволяет оптимизировать занимаемую память строкой.

#lesson
Массив vs Список

В основном вы будете работать с массивами — наборами данных определённой длины. В Java они имеют Си-подобный синтаксис и являются очень быстрыми в работе.

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

#java #lesson
System.arraycopy

Невероятно полезный и часто используемый метод. Суть в чём: он копирует данные из одного массива в другой с учётом индексации.

Ситаксис:

System.arraycopy(source, from, root, dest, len);

В результате метод копирует значения из source[from] по source[from + len] и вставляет их в массив root в позицию dest.

#lesson
Инструмент StreamAPI

Думаем, любой программист наслышан о том, как просто можно обрабатывать списки в таких языках, как Python.

Java тоже не обделена подобными особенностями, а в частности — она имеет SteamAPI. Это некий набор объектов и методов, которые позволяют обрабатывать списки.

P.S.: В следующих уроках под тегом #stream мы будем подробно рассказывать о методах обработки

#java #lesson #stream
map и flatMap

Для перевода значений Stream существуют два метода: map и flatMap. В чём же в них разница?

Метод map перевод одно входящие значение строго в одно выходное. Другими словами если переводить массив new int[10] в тип double[], то получится массив длинной 10, не больше и не меньше.

flatMap же не имеет таких ограничений и на выходе может выдавать несколько значений или вообще ничего не возвращать. В основном он нужен для изменения размерности массивов.

#java #lesson #stream
Ключевые типы и их классы

Структура языка Java сильно завязана на ООП. По этой причине, практически всё с чем вы взаимодействуете в Javaобъект.

Даже привычные для всех типы int, float, char и так далее — это всё сокращения объекта. Другими словами, их легко можно заменить соответствующими им классами: Integer, Float и Character.

Однако, у сокращений типов есть одна особенность — они не могут быть null.

#java #lesson #theory
implements и extends

Одной из основных догм в ООП является наследование. В Java можно наследовать как и классы, так и интерфейсы, но делается это по-разному.

Ключевое слово extends привязывает к классу родительский класс и только один. В своё время ключевое слово implements привязывает к классу один или несколько интерфейсов, которые класс должен реализовать.

#java #lesson #oop
В чём разница между абстрактными классами и интерфейсами?

С первого взгляда эти два объекта выполняют одну и тоже функцию — планирование классов. Однако не всё так очевидно.

Абстрактные классы — это такие же обычные классы, но некоторые их методы можно «оставить на потом». Другими словами метод объявленный ключевым словом abstract не надо реализовывать, он будет реализован в дочерних объектах.

Интерфейсы же являются описанием структуры методов класса, которые нужно реализовать. В интерфейсах нельзя объявлять переменные.

#java #lesson #oop
В чём разница между абстрактными классами и интерфейсами?

С первого взгляда эти два объекта выполняют одну и тоже функцию — планирование классов. Однако не всё так очевидно.

Абстрактные классы — это такие же обычные классы, но некоторые их методы можно «оставить на потом». Другими словами метод объявленный ключевым словом abstract не надо реализовывать, он будет реализован в дочерних объектах.

Интерфейсы же являются описанием структуры методов класса, которые нужно реализовать. В интерфейсах нельзя объявлять переменные.

#java #lesson #oop
Stream Filter

Метод Stream::filter позволяет отфильтровывать значения из набора данных.

Синтаксис: .filter(object -> condition)

Работает он предельно просто: он проходит по каждому элементу из массива и проверяет его с помощью лямбды object -> condition. Если результат равен true, значение оставляем в массиве.

#java #lesson #stream
Кортежи в Java

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

В Java кортежи реализованы интерфейсом Cortege<F, S> и имплементированы классом CortageChain. Чтобы хранить в нём данные, достаточно с помощью дженериков задать типы и присвоить им значения.

Важной особенностью кортежей является возможность выстраивать цепочки, например так:

Cortege<Long, Cortege<String, Cortege<Float, Cortege.End>>>

#java #lesson #collections
Теория дженериков в Java

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

Использовать дженерики можно в классах и методы. Обозначаются они стрелочными скобками и именем типа <T> (примеры вы можете увидеть выше).

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

#java #lesson #oop