Конкуренция — это способ одновременного решения множества задач.
Признаки:
☕️ Наличие нескольких потоков управления (например Thread в Java, корутина в Kotlin), если поток управления один, то конкурентного выполнения быть не может
☕️ Недетерминированный результат выполнения. Результат зависит от случайных событий, реализации и того как была проведена синхронизация. Даже если каждый поток полностью детерминированный, итоговый результат будет недетерминированным
Параллелизм — это способ выполнения разных частей одной задачи.
Признаки:
☕️ Необязательно имеет несколько потоков управления
☕️ Может приводить к детерминированному результату, так, например, результат умножения каждого элемента массива на число, не изменится, если умножать его по частям параллельно.
Признаки:
☕️ Наличие нескольких потоков управления (например Thread в Java, корутина в Kotlin), если поток управления один, то конкурентного выполнения быть не может
☕️ Недетерминированный результат выполнения. Результат зависит от случайных событий, реализации и того как была проведена синхронизация. Даже если каждый поток полностью детерминированный, итоговый результат будет недетерминированным
Параллелизм — это способ выполнения разных частей одной задачи.
Признаки:
☕️ Необязательно имеет несколько потоков управления
☕️ Может приводить к детерминированному результату, так, например, результат умножения каждого элемента массива на число, не изменится, если умножать его по частям параллельно.
Крутой Java-разработчик, Data-scientist или аналитик? 😎
DigitalSuperHero ждет тебя! Успей зарегистрироваться до 27 июля на онлайн-хакатон Fintech & Security Superhero!🚀
Не пропусти, команды уже вовсю подают заявки! Хакатон пройдет с 1 по 8 августа, принять участие можно из любой точки России.
🏆Что тебя ждет?🏆
- задачи от Ак Барс Банка, Kaspersky Innovation Hub и InnoSTage
- общий призовой фонд в 700 000 рублей
- возможность получить предложение на работу
- поддержка в запуске пилота
Тематика хакатона Кибербезопасность и Финтех , основные виды задач:
● Автоматизировать ежедневные рутинные операции эксперта по кибербезопасности
● Создать новые сервисы для банка.
Подавайте заявку до 27 июля тут: dshkazan.ru/its
P.S. А еще у нас есть телеграм-канал, где выкладываем свежие новости о хакатонах: https://yangx.top/dshkzn
DigitalSuperHero ждет тебя! Успей зарегистрироваться до 27 июля на онлайн-хакатон Fintech & Security Superhero!🚀
Не пропусти, команды уже вовсю подают заявки! Хакатон пройдет с 1 по 8 августа, принять участие можно из любой точки России.
🏆Что тебя ждет?🏆
- задачи от Ак Барс Банка, Kaspersky Innovation Hub и InnoSTage
- общий призовой фонд в 700 000 рублей
- возможность получить предложение на работу
- поддержка в запуске пилота
Тематика хакатона Кибербезопасность и Финтех , основные виды задач:
● Автоматизировать ежедневные рутинные операции эксперта по кибербезопасности
● Создать новые сервисы для банка.
Подавайте заявку до 27 июля тут: dshkazan.ru/its
P.S. А еще у нас есть телеграм-канал, где выкладываем свежие новости о хакатонах: https://yangx.top/dshkzn
#вопросы_с_собеседований
Опишите работу блока try-catch-finally.
Опишите работу блока try-catch-finally.
try — данное ключевое слово используется для отметки начала блока кода, который потенциально может привести к ошибке. catch — ключевое слово для отметки начала блока кода, предназначенного для перехвата и обработки исключений в случае их возникновения. finally — ключевое слово для отметки начала блока кода, который является дополнительным. Этот блок помещается после последнего блока catch. Управление передаётся в блок finally в любом случае, было выброшено исключение или нет.
Общий вид конструкции для обработки исключительной ситуации выглядит так, как показано на картинке.
Общий вид конструкции для обработки исключительной ситуации выглядит так, как показано на картинке.
#вопросы_с_собеседований
Почему char предпочтительнее String для хранения пароля?
Почему char предпочтительнее String для хранения пароля?
👋 Всем привет!
28 июля приглашаем на онлайн-лекцию о разработке приложений на Java Spring, Quarkus, Vert.x и GraalVM с деплоем в MicroK8s.
Сергей Кошкинов и Андрей Смирнов покажут процесс создания приложения на Java-фреймворке Quarkus с деплоем в MicroK8s. А также сравнят производительность и потребления памяти приложений на Spring WebFlux, Spring Boot, Quarkus, Quarkus+Vert.x и скомпилированными в native code с помощью GraalVM.
Подробности и регистрация 👉 https://clc.to/_java_MicroK8s
28 июля приглашаем на онлайн-лекцию о разработке приложений на Java Spring, Quarkus, Vert.x и GraalVM с деплоем в MicroK8s.
Сергей Кошкинов и Андрей Смирнов покажут процесс создания приложения на Java-фреймворке Quarkus с деплоем в MicroK8s. А также сравнят производительность и потребления памяти приложений на Spring WebFlux, Spring Boot, Quarkus, Quarkus+Vert.x и скомпилированными в native code с помощью GraalVM.
Подробности и регистрация 👉 https://clc.to/_java_MicroK8s
С момента создания строка остаётся в пуле, до тех пор, пока не будет удалена сборщиком мусора. Поэтому, даже после окончания использования пароля, он некоторое время продолжает оставаться доступным в памяти и способа избежать этого не существует. Это представляет определённый риск для безопасности, поскольку кто-либо, имеющий доступ к памяти сможет найти пароль в виде текста. В случае использования массива символов для хранения пароля имеется возможность очистить его сразу по окончанию работы с паролем, позволяя избежать риска безопасности, свойственного строке.
#вопросы_с_собеседований
Что такое «нормализация»?
Что такое «нормализация»?
Нормализация - это процесс преобразования отношений базы данных к виду, отвечающему нормальным формам (пошаговый, обратимый процесс замены исходной схемы другой схемой, в которой наборы данных имеют более простую и логичную структуру).
Нормализация предназначена для приведения структуры базы данных к виду, обеспечивающему минимальную логическую избыточность, и не имеет целью уменьшение или увеличение производительности работы или же уменьшение или увеличение физического объёма базы данных. Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в базе данных информации.
Нормализация предназначена для приведения структуры базы данных к виду, обеспечивающему минимальную логическую избыточность, и не имеет целью уменьшение или увеличение производительности работы или же уменьшение или увеличение физического объёма базы данных. Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в базе данных информации.
#вопросы_с_собеседований
Что вы знаете о функции main()?
Что вы знаете о функции main()?
Метод main() — точка входа в программу. В приложении может быть несколько таких методов. Если метод отсутствует, то компиляция возможна, но при запуске будет получена ошибка Error: Main method not found.
static void main(String[] args) {}
#вопросы_с_собеседований
Что будет, если добавлять элементы в TreeSet по возрастанию?
Что будет, если добавлять элементы в TreeSet по возрастанию?
В основе TreeSet лежит красно-черное дерево, которое умеет само себя балансировать. В итоге TreeSet все равно в каком порядке вы добавляете в него элементы, преимущества этой структуры данных будут сохраняться.
Не пропусти — докладов еще нет в сети и они будут доступны только в онлайн-формате в четверг на Java MeetUp😉
С нами на связи будут два классных спикера:
👨🏻💻Владимир Плизга расскажет о том, как добавлять в чистовой код тестовое поведение и спать спокойно.
👨🏻💻Иван Углянский отправит в путешествие в нативный код из уютного мира Java: туда и обратно.
Эксперты митапа:
🗣Всеволод Брекелов — Software engineer, PMM в JUG Ru Group, член программного комитета конференций HeisenBug, JPoint, Joker, ведущий шоу «Ошибка Выжившего» и подкаста «Битовая каска».
🗣Евгений Мандриков — занимается разработкой статических анализаторов кода в SonarSource, является одним из ведущих разработчиков JaCoCo, руководитель проекта EclEmma в Eclipse Foundation, OpenJDK контрибьютор, спикер.
Когда: 30 июля 17:00 по МСК
Подробности и регистрация
Ссылка на трансляцию
С нами на связи будут два классных спикера:
👨🏻💻Владимир Плизга расскажет о том, как добавлять в чистовой код тестовое поведение и спать спокойно.
👨🏻💻Иван Углянский отправит в путешествие в нативный код из уютного мира Java: туда и обратно.
Эксперты митапа:
🗣Всеволод Брекелов — Software engineer, PMM в JUG Ru Group, член программного комитета конференций HeisenBug, JPoint, Joker, ведущий шоу «Ошибка Выжившего» и подкаста «Битовая каска».
🗣Евгений Мандриков — занимается разработкой статических анализаторов кода в SonarSource, является одним из ведущих разработчиков JaCoCo, руководитель проекта EclEmma в Eclipse Foundation, OpenJDK контрибьютор, спикер.
Когда: 30 июля 17:00 по МСК
Подробности и регистрация
Ссылка на трансляцию
Learning Java by Building Android Games (2018)
Автор: John Horton
Android - одна из самых популярных операционных систем для мобильных устройств. Для написания приложений любого типа под Android хорошо подходит язык Java. В своей книге автор учит создавать приложения для смартфонов и планшетов, используя Java. В отличие от остальных книг по мобильной разработке, здесь вам не обязательно знать Java до чтения для комфортного обучения.
Скачать книгу
Автор: John Horton
Android - одна из самых популярных операционных систем для мобильных устройств. Для написания приложений любого типа под Android хорошо подходит язык Java. В своей книге автор учит создавать приложения для смартфонов и планшетов, используя Java. В отличие от остальных книг по мобильной разработке, здесь вам не обязательно знать Java до чтения для комфортного обучения.
Скачать книгу
Telegram
Книги для программистов (reserved)
Learning Java by Building Android Games (2018)
Автор: John Horton
Автор: John Horton
🆓 Лучшие бесплатные онлайн-курсы по Kotlin
В захвате мира языком Kotlin заинтересованы не только JetBrains и Google, но и «простые смертные». Посмотрим, какие есть бесплатные онлайн-курсы по Kotlin, чтобы начать разработку на этом языке уже сегодня.
https://proglib.io/sh/GFJiCL4jeE
В захвате мира языком Kotlin заинтересованы не только JetBrains и Google, но и «простые смертные». Посмотрим, какие есть бесплатные онлайн-курсы по Kotlin, чтобы начать разработку на этом языке уже сегодня.
https://proglib.io/sh/GFJiCL4jeE
📱 Как стать Android-разработчиком: с нуля до публикации приложения на Google Play
15 шагов, и вы Android-разработчик! Какой язык выбрать, как научиться писать приложения и на что обратить внимание при разработке программ под мобильные устройства.
https://proglib.io/sh/aIEUG3R520
15 шагов, и вы Android-разработчик! Какой язык выбрать, как научиться писать приложения и на что обратить внимание при разработке программ под мобильные устройства.
https://proglib.io/sh/aIEUG3R520
Новое крупное обновление Intellij IDEA 2020.2
Теперь можно управлять пул-реквестами GitHub прямо из IntelliJ IDEA, просматривать полный список проблем с текущим файлом в специальном окне и быстро навигироваться по ошибкам и предупреждениям с помощью нового виджета. Если внесенные изменения привели к ошибкам в других файлах, IDE об этом сообщит. IntelliJ IDEA 2020.2 поддерживает Jakarta EE и предоставляет новые возможности для работы с Quarkus, Micronaut и OpenAPI.
https://proglib.io/w/a6d1488b
Теперь можно управлять пул-реквестами GitHub прямо из IntelliJ IDEA, просматривать полный список проблем с текущим файлом в специальном окне и быстро навигироваться по ошибкам и предупреждениям с помощью нового виджета. Если внесенные изменения привели к ошибкам в других файлах, IDE об этом сообщит. IntelliJ IDEA 2020.2 поддерживает Jakarta EE и предоставляет новые возможности для работы с Quarkus, Micronaut и OpenAPI.
https://proglib.io/w/a6d1488b
JetBrains
IntelliJ IDEA — ведущая IDE для разработки на Java и Kotlin
IntelliJ IDEA, безусловно, лучшая IDE для разработчиков. It makes Java and Kotlin development a more productive and enjoyable experience.