Обложка канала

Библиотека Java разработчика. Страница 26

9291 @BookJava

Библиотека Java разработчика. Книги по программированию на Java.

  • Библиотека Java разработчика

    Ждем всех Java-разработчиков на бесплатном митапе от Росбанка при поддержке JUG Ru Group. 🗓 6 сентября, 19:00. Онлайн: https://bit.ly/3TiozIc Офлайн: в деловом центре "Москва-Сити". Участники смогут посетить экскурсию по инновационному офису Росбанка. В программе: ✔Алексей Салаев — «Оптимизация запросов с использованием Spring cache и Bean scope» ✔ Семен Киреков — «Spring Data JPA. Save и границы его применения» ✔ Иван Пономарев — «Kafka streams testing: a deep dive» После каждого доклада вы сможете поучаствовать в дискуссии и задать вопросы спикерам. Автор лучшего вопроса получит удобный рюкзак от Росбанка 🎁 Участие бесплатное, нужно только зарегистрироваться: https://bit.ly/3TiozIc
  • Библиотека Java разработчика

    Какая версия JVM самая быстрая? Как на высокопроизводительное Java-приложение с низкой задержкой влияет используемая версия JVM? Каждая наносекунда имеет значение для торговых и других приложений, где обмен сообщениями между двумя разными потоками происходит примерно за 250 нс! Прочитайте эту статью и узнайте, какой вариант JDK является лучшим! #jvm 👉@BookJava
  • Библиотека Java разработчика

    Подборка каналов для IT специалистов 🎯 https://t.me/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С https://t.me/kotlin_lib Подборки полезного материала по Kotlin https://t.me/nodejs_lib Подборки по Node js и все что с ним связано https://t.me/React_lib Подборки по React js и все что с ним связано https://t.me/ruby_lib Библиотека Ruby программиста https://t.me/frontend_sovet Frontend советы, примеры и практика! Программирование C++📌 https://t.me/cpp_lib Библиотека C/C++ разработчика https://t.me/cpp_knigi Книги для программистов C/C++ Программирование Python 📌 https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍 https://t.me/BookPython Библиотека Python разработчика https://t.me/python_real Python подборки на русском и английском https://t.me/python_360 Книги по Python Rus Java разработка 📌 https://t.me/BookJava Библиотека Java разработчика https://t.me/java_360 Книги по Java Rus GitHub Сообщество 📌 https://t.me/Githublib Интересное из GitHub CodePen 📌 https://t.me/codepen_1 Сообщество пользователей CodePen Базы данных (Data Base) 📌 https://t.me/database_info Все про базы данных Мобильная разработка: iOS, Android 📌 https://t.me/developer_mobila Мобильная разработка Фронтенд разработка 📌 https://t.me/frontend_1 Подборки для frontend разработчиков Разработка игр 📌 https://t.me/game_devv Все о разработке игр Вакансии 📌 https://t.me/sysadmin_rabota Системный Администратор https://t.me/progjob Вакансии в IT Чат программистов📌 https://t.me/developers_ru Библиотеки 📌 https://t.me/book_for_dev Книги для программистов Rus https://t.me/programmist_of Книги по программированию https://t.me/proglb Библиотека программиста https://t.me/bfbook Книги для программистов БигДата, машинное обучение 📌 https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning Программирование 📌 https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций https://t.me/coddy_academy Полезные советы по программированию QA, тестирование 📌 https://t.me/testlab_qa Библиотека тестировщика Шутки программистов 📌 https://t.me/itumor Шутки программистов Защита, взлом, безопасность 📌 https://t.me/thehaking Канал о кибербезопасности Книги, статьи для дизайнеров 📌 https://t.me/ux_web Статьи, книги для дизайнеров https://t.me/arhitekturamira World Architecture Системное администрирование 📌 https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало) https://t.me/sysadminof Книги для админов, полезные материалы https://t.me/i_odmin Все для системного администратора https://t.me/i_odmin_book Библиотека Системного Администратора https://t.me/i_odmin_chat Чат системных администраторов https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др. https://t.me/sysadminoff Новости Линукс Linux Английский 📌 https://t.me/UchuEnglish Английский с нуля Математика 📌 https://t.me/Pomatematike Канал по математике Арбитраж трафика 📌 https://t.me/partnerochkin CPA и арбитраж трафика Крипта 📌 https://t.me/bitkoinoff Новости криптовалют Метавселенная, GameFi, Crypto 📌 https://t.me/metaverse360 DeepFake 📌 https://t.me/deepfakenow Публикуем deepfake видео Мир технологий 📌 https://t.me/mir_teh Видео из мира технологий Excel лайфхак📌 https://t.me/Excel_lifehack
    1C программист

    Cтатьи, курсы, советы, шаблоны кода 1С

    Telegram
  • Реклама

  • Библиотека Java разработчика

    Зачем нужен package-info? Обычно, чтобы создать новый пакет, вы создаете папку с соответствующим названием, и во всех ее .java файлах добавляете в начале строчку с названием пакета, вида package full.dir.path;. Этого вполне достаточно для работы. Однако, дополнительно вы можете добавить в пакет его объявление – файл package-info.java. Несмотря на то, что это .java-файл, это не объявление класса. В названии класса дефисы запрещены, так что неоднозначности не возникнет. Минимальное содержимое файла package-info.java – всё та же строка package full.dir.path;. Такой файл не несет практической пользы. Есть две вещи, которые можно в него добавить, чтобы польза появилась. Первое – документация пакета. Javadoc-комментарий будет использоваться генератором документации. Пример – описание пакета java.lang. Его исходник вы можете найти в файле java/lang/package-info.java. Второе возможное применение – аннотации уровня пакета. Для этого аннотация должна иметь Target PACKAGE. Например, некоторые пакеты Spring Framework помечены аннотацией @NonNullApi. Подробно объявления пакетов описаны в главе 7.4.1 спецификации. #jvm 👉@BookJava
  • Библиотека Java разработчика

    ORM — отвратительный анти-паттерн ORM - это ужасный анти-паттерн, который нарушает все принципы объектно-ориентированного программирования, разбирая объекты на части и превращая их в тупые и пассивные пакеты данных. Нет никаких оправданий существованию ORM в любом приложении, будь то небольшое веб-приложение или система корпоративного размера с тысячами таблиц и манипуляциями CRUD с ними. Какова альтернатива? Объекты, говорящие на языке SQL (SQL-speaking objects). От автора перевода: Написанный далее текст может не совпадать с мнением автора перевода. Все высказывания идут от лица оригинального автора, просьба воздержаться от неоправданных минусов. Оригинальная статья выпущена в 2014 году, поэтому некоторые фрагменты кода могут быть устаревшими или "нежелаемыми". original 👉@BookJava
  • Библиотека Java разработчика

    ⚡️ Для архитекторов, разработчиков, DevOps-инженеров или сетевых и сисадминов, тимлидов или специалистов ИБ OTUS открывает набор на онлайн-курс «Cloud Solution Architecture» Ответьте на 25 вопросов и проверьте, насколько вы готовы к обучению на курсе - «Cloud Solution Architecture» 📌 В результате обучения вы освоите необходимые компетенции для разработки и поддержки архитектуры облачных приложений 💻 Открытый урокОптимизация стоимости владения, 5 сентября в 20:00 💻 Открытый урокФункции как сервис на примере Yandex Cloud, 19 сентября в 20:00 Время прохождения теста ограниченно 45 минут 👉 ПРОЙДИТЕ ТЕСТ для оценки вашего уровня знаний и получите скидку https://clck.ru/uJ4f8
  • Библиотека Java разработчика

    Какие у аннотации бывают таргеты? Мета-аннотация @Target определяет, в каком контексте может применяться объявляемая аннотация. Допустимые контексты перечисляются значениями ElementType. По умолчанию, если @Target не указан, разрешены все контексты кроме TYPE_PARAMETER. Возможные таргеты: • TYPE – Объявление класса, интерфейса, аннотации или enum-а. • FIELD – Объявление поля (включая константы enum-ов). • METHOD – Объявление метода. • PARAMETER – Формальный параметр в объявлении метода. • CONSTRUCTOR – Объявление конструктора. • LOCAL_VARIABLE – Объявление локальной переменной. • ANNOTATION_TYPE – Объявление аннотации. Применяется для создания мета-аннотации. • PACKAGE – Объявление пакета (в package-info.java). –– С Java 8 –– • TYPE_PARAMETER – Обявление generic типа-параметра. • TYPE_USE – Любое использование типа. Например приведение: (@NonNull String) myObject. –– С Java 9 –– • MODULE – Объявление модуля. 👉@BookJava
  • Библиотека Java разработчика

    🔥Хардкорный тест по Java🔥 ⭕️Осторожно! Из-за этого курса можно стать супервостребованным Java-разработчиком! Пройди тест из 20 вопросов и проверь насколько ты готов к обучению на углубленном курсе - "Java Developer. Professional" от OTUS 🦸🏼‍♂️62 компании-партнера ждут, когда ты овладеешь этим мастерством. Проходя вступительный тест курса помни, большая сила — большая ответственность! 📌ПРОЙТИ ТЕСТ
  • Библиотека Java разработчика

    Как мы перевели API-модули микросервисного проекта с Feign на OpenFeign Всем привет! Недавно мы решили задачу, как перейти на новую версию Spring + OpenFeign в мультимодульном проекте, в котором выделен API с навешенными аннотациями @RestController и @FeignClient. По ссылке поделюсь с вами этим кейсом. 👉@BookJava
  • Библиотека Java разработчика

    Пишете Java-приложения? У вас есть два пути: 1. Делать монолитную архитектуру и разрабатывать ПО как единое целое 2. Разбить большое приложение на микросерверы и наладить между ними связь. У второго пути масса преимуществ: • Легче ловить сбои и приводить приложение в порядок • Отдельные компоненты можно масштабировать • Разные микросервисы — разные технологии разработки, это интереснее • Можно обновлять приложение по отдельным частям • Разработка микросервиса легче, чем монолита Если вы согласны, что второй путь вам многое облегчит в работе, ну или просто пора совершенствоваться как специалисту, то записывайтесь на наш курс по микросервисам на Java. Вы научитесь: - Делать микросервисы на Java и Kotlin - Работать с инструментами для разработки микросервисов - Использовать популярный Java-фреймворк Spring Boot Знания прямо по ходу курса можно использовать в работе. Курс подойдет для студентов IT-направлений и разработчикам. Старт курса 1 сентября, программа и запись на нашем сайте: https://slurm.club/3cfdWW4
  • Библиотека Java разработчика

    JRE – Java Runtime Environment, Java-окружение времени выполнения. Это набор всего необходимого чтобы запустить скомпилированную Java-программу. Окружение состоит из виртуальной машины Java (JVM), библиотеки классов (Java Class Library), консольной команды java и прочей инфраструктуры. Тем не менее, JRE не достаточно чтобы создавать новые программы. JDK – Java Development Kit, набор Java-разработчика. Это полнофункциональный SDK для Java. JDK включает в себя JRE, но кроме того содержит компилятор (javac) и другие инструменты разработки, такие как javadoc и jdb. С помощью JDK можно создавать и компилировать программы. В большинстве случаев, если вам нужно только запускать Java программы, вы устанавливаете только JRE, если же вы планируете программировать на Java, вместо этого вам необходим JDK. Источник 👉@BookJava
  • Библиотека Java разработчика

    ⚡️ Чтобы стать QA-инженером с нуля, нужно ориентироваться в web-технологиях. Ведь чтобы победить, нужно знать своего врага в лицо! 👉 Именно поэтому OTUS проводит открытый урок для тех, кто хочет с нуля освоить эту профессию https://otus.pw/Jd5i/ 🎯 На занятии мы с экспертом познакомимся с основами веб-технологий, чтобы нас не пугали такие слова, как HTML, CSS, FrontEnd и BackEnd. 👉 Регистрируйтесь на вебинар и до встречи в прямом эфире https://otus.pw/ZP1y/ 📌 PS. Продолжить осваивать новую профессию вы сможете на специализации «QA Automation Engineer». Это онлайн-курс для тех, кто хочет с нуля освоить автоматизацию тестирования на Java.
  • Библиотека Java разработчика

    Оцените количество памяти на хранение одного примитива типа byte в LinkedList? Каждый элемент LinkedList хранит ссылку на предыдущий элемент, следующий элемент и ссылку на данные. static class Node<E> { E item; Node<E> next; Node<E> prev; //... } Для 32-битных систем каждая ссылка занимает 32 бита (4 байта). Сам объект (заголовок) вложенного класса Node занимает 8 байт. 4 + 4 + 4 + 8 = 20 байт, а т.к. размер каждого объекта в Java кратен 8, соответственно получаем 24 байта. Примитив типа byte занимает 1 байт памяти, но в JCF примитивы упаковываются: объект типа Byte занимает в памяти 16 байт (8 байт на заголовок объекта, 1 байт на поле типа byte и 7 байт для кратности 8). Также напомню, что значения от -128 до 127 кэшируются и для них новые объекты каждый раз не создаются. Таким образом, в x32 JVM 24 байта тратятся на хранение одного элемента в списке и 16 байт - на хранение упакованного объекта типа Byte. Итого 40 байт. Для 64-битной JVM каждая ссылка занимает 64 бита (8 байт), размер заголовка каждого объекта составляет 16 байт (два машинных слова). Вычисления аналогичны: 8 + 8 + 8 + 16 = 40байт и 24 байта. байта. Итого 64 байта. 👉@BookJava
  • Библиотека Java разработчика

    Чем CompletableFuture отличается от Future? Future – интерфейс, который представляет пока еще недовычисленный результат. Когда породившая его асинхронная операция заканчивается, он заполняется значением. Метод get блокирует выполнение до получения результата, isDone проверяет его наличие. К примеру результат выполнения задач в ExecutorService, ForkJoinTask, реализует интерфейс Future. CompletableFuture появился в Java 8. Это класс-реализация старого интерфейса Future, а значит всё сказанное выше справедливо и для него. Вдобавок к этому, CompletableFuture реализует работу с отложенными результатами посредством коллбэков. Метод thenApply регистрирует код обработки значения, который будет автоматически вызван позже, когда это значение появится. В Java 9 прогресс пошел дальше, и появилась библиотека Flow API. Это встроенная реализация реактивных стримов. Реактивный стрим, сильно упрощая, – это более общий случай, последовательность отложенных значений. Другая их реализация – популярная, но не входящая в стандарт библиотека Reactive Extensions (RxJava). #Многопоточность #Классы 👉@BookJava
  • Библиотека Java разработчика

    Зачем нужно соединять Java-программу на компьютере и Arduino? Любой энтузиаст, строящий свои проекты на базе Arduino, рано или поздно сталкивается с необходимостью тем или иным способом обеспечить взаимосвязь этой платы со своим компьютером. Такой симбиоз даёт возможность как управлять платой с компьютера, так и наоборот — компьютером с платы. Об этом мы и поговорим в этой статье. 👉@BookJava
  • Реклама

  • Библиотека Java разработчика

    Подборка каналов для IT специалистов 🎯 https://t.me/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻 https://t.me/odin1C_rus Cтатьи, курсы, советы, шаблоны кода 1С https://t.me/kotlin_lib Подборки полезного материала по Kotlin https://t.me/nodejs_lib Подборки по Node js и все что с ним связано https://t.me/React_lib Подборки по React js и все что с ним связано https://t.me/ruby_lib Библиотека Ruby программиста https://t.me/frontend_sovet Frontend советы, примеры и практика! Программирование C++📌 https://t.me/cpp_lib Библиотека C/C++ разработчика https://t.me/cpp_knigi Книги для программистов C/C++ Программирование Python 📌 https://t.me/pythonofff Python академия. Учи Python быстро и легко🐍 https://t.me/BookPython Библиотека Python разработчика https://t.me/python_real Python подборки на русском и английском https://t.me/python_360 Книги по Python Rus Java разработка 📌 https://t.me/BookJava Библиотека Java разработчика https://t.me/java_360 Книги по Java Rus GitHub Сообщество 📌 https://t.me/Githublib Интересное из GitHub CodePen 📌 https://t.me/codepen_1 Сообщество пользователей CodePen Базы данных (Data Base) 📌 https://t.me/database_info Все про базы данных Мобильная разработка: iOS, Android 📌 https://t.me/developer_mobila Мобильная разработка Фронтенд разработка 📌 https://t.me/frontend_1 Подборки для frontend разработчиков Разработка игр 📌 https://t.me/game_devv Все о разработке игр Вакансии 📌 https://t.me/sysadmin_rabota Системный Администратор https://t.me/progjob Вакансии в IT Чат программистов📌 https://t.me/developers_ru Библиотеки 📌 https://t.me/book_for_dev Книги для программистов Rus https://t.me/programmist_of Книги по программированию https://t.me/proglb Библиотека программиста https://t.me/bfbook Книги для программистов БигДата, машинное обучение 📌 https://t.me/bigdata_1 Data Science, Big Data, Machine Learning, Deep Learning Программирование 📌 https://t.me/bookflow Лекции, видеоуроки, доклады с IT конференций https://t.me/coddy_academy Полезные советы по программированию QA, тестирование 📌 https://t.me/testlab_qa Библиотека тестировщика Шутки программистов 📌 https://t.me/itumor Шутки программистов Защита, взлом, безопасность 📌 https://t.me/thehaking Канал о кибербезопасности Книги, статьи для дизайнеров 📌 https://t.me/ux_web Статьи, книги для дизайнеров https://t.me/arhitekturamira World Architecture Системное администрирование 📌 https://t.me/tipsysdmin Типичный Сисадмин (фото железа, было/стало) https://t.me/sysadminof Книги для админов, полезные материалы https://t.me/i_odmin Все для системного администратора https://t.me/i_odmin_book Библиотека Системного Администратора https://t.me/i_odmin_chat Чат системных администраторов https://t.me/i_DevOps DevOps: Пишем о Docker, Kubernetes и др. https://t.me/sysadminoff Новости Линукс Linux Английский 📌 https://t.me/UchuEnglish Английский с нуля Математика 📌 https://t.me/Pomatematike Канал по математике Арбитраж трафика 📌 https://t.me/partnerochkin CPA и арбитраж трафика Крипта 📌 https://t.me/bitkoinoff Новости криптовалют Метавселенная, GameFi, Crypto 📌 https://t.me/metaverse360 DeepFake 📌 https://t.me/deepfakenow Публикуем deepfake видео Мир технологий 📌 https://t.me/mir_teh Видео из мира технологий Excel лайфхак📌 https://t.me/Excel_lifehack
    1C программист

    Cтатьи, курсы, советы, шаблоны кода 1С

    Telegram
  • Библиотека Java разработчика

    Не можете выбрать, какой язык учить? Пройдите бесплатный курс по профориентации Яндекс Практикума. Выбрать язык по душе
  • Библиотека Java разработчика

    Можно ли добавить одному элементу несколько одинаковых аннотаций? По умолчанию нельзя. До Java 8 нужно было создавать дополнительную аннотацию-контейнер, в ней в виде проперти объявлять массив интересующих аннотаций. При применении набор аннотаций нужно было оборачивать в этот контейнер (см. на картинке). Начиная с Java 8 в стандартную библиотеку добавлена мета-аннотация @Repeatable. Механизм ее действия такой же, как раньше: помечая ей интересующую аннотацию, необходимо указать параметром @Repeatable аннотацию-контейнер. Нововведение заключается в синтаксисе использования: теперь набор аннотаций оборачивается в контейнер неявно. Со стороны Reflection при чтении мета-информации тоже появилась возможность не оперировать контейнером явно – метод getAnnotationsByType при необходимости найдет и развернет этот контейнер. #Аннотации 👉@BookJava