Size: a a a

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

2020 August 17
Библиотека джависта
С технологической точки зрения интеграционное тестирование является количественным развитием модульного, поскольку так же, как и модульное тестирование, оперирует интерфейсами модулей и подсистем и требует создания тестового окружения, включая заглушки на месте отсутствующих модулей. Основная разница между модульным и интеграционным тестированием состоит в целях, то есть в типах обнаруживаемых дефектов, которые, в свою очередь, определяют стратегию выбора входных данных и методов анализа.

Допустим, есть класс, который при определенных условиях взаимодействует с web-сервисом через зависимый объект. И нам надо проверить, что определенный метод зависимого объекта действительно вызывается. Если в качестве зависимого класса передать:
☕️ реальный класс, работающий с web-сервисом, то это будет интеграционное тестирование.
☕️ заглушку, то это будет тестирование состояния.
☕️ шпиона, а в конце теста проверить, что определенный метод зависимого объекта действительно был вызван, то это будет тест взаимодействия.
источник
Библиотека джависта
#вопросы_с_собеседований
Что такое «SQL»?
источник
2020 August 18
Библиотека джависта
Бесплатный webinar по docker'у. Обсудим:
- как задизайнить и развернуть в докере систему из БД и java микросервисов
- какие вопросы могут задать по докеру на собеседовании
- как упомянуть docker во время собеседования и получить оффер не отходя от ZOOM 😉

Присоединяйся
источник
Библиотека джависта
SQL, Structured query language («язык структурированных запросов») — формальный непроцедурный язык программирования, применяемый для создания, модификации и управления данными в произвольной реляционной базе данных, управляемой соответствующей системой управления базами данных (СУБД).
источник
Библиотека джависта
#вопросы_с_собеседований
Сравните Iterator и ListIterator.
источник
2020 August 19
Библиотека джависта
☕️ ListIterator расширяет интерфейс Iterator;
☕️ ListIterator может быть использован только для перебора элементов коллекции List;
☕️ Iterator позволяет перебирать элементы только в одном направлении при помощи метода next(). Тогда как ListIterator позволяет перебирать список в обоих направлениях, при помощи методов next() и previous();
☕️ ListIterator не указывает на конкретный элемент: его текущая позиция располагается между элементами, которые возвращают методы previous() и next().
☕️ При помощи ListIterator вы можете модифицировать список, добавляя/удаляя элементы с помощью методов add() и remove(). Iterator не поддерживает данного функционала.
источник
Библиотека джависта
Если вам нравится делиться знаниями, мы принесли приятную новость – прямо сейчас Geekbrains ищет 30 преподавателей, авторов и ревьюеров:

👨‍🏫 Преподаватель ведет онлайн-занятия по любимым темам и видит, как растут новые кадры.
👨‍🎤 Автор разрабатывает собственную программу и делится знаниями с новичками.
🕵️ Ревьюер дает обратную связь на практические работы студентов и помогает освоить лучшие практики.

Не страшно, если нет опыта в образовательной сфере – компания ищет профессионалов в своей отрасли, а остальному научат. Можно даже совмещать преподавание с работой.

Станьте экспертом в GeekBrains и помогите тысячам людей найти себя в IT 👉 https://proglib.io/w/55057cc5
источник
2020 August 20
Библиотека джависта
#вопросы_с_собеседований
Что такое «контейнер сервлетов»?
источник
Библиотека джависта
Контейнер сервлетов — программа, представляющая собой сервер, который занимается системной поддержкой сервлетов и обеспечивает их жизненный цикл в соответствии с правилами, определёнными в спецификациях. Может работать как полноценный самостоятельный веб-сервер, быть поставщиком страниц для другого веб-сервера, или интегрироваться в Java EE сервер приложений.

Контейнер сервлетов обеспечивает обмен данными между сервлетом и клиентами, берёт на себя выполнение таких функций, как создание программной среды для функционирующего сервлета, идентификацию и авторизацию клиентов, организацию сессии для каждого из них.

Наиболее известные реализации контейнеров сервлетов:

☕️ Apache Tomcat
☕️ Jetty
☕️ JBoss
☕️ WildFly
☕️ GlassFish
☕️ IBM WebSphere
☕️ Oracle Weblogic
источник
Библиотека джависта
Android Programming: The Big Nerd Ranch Guide (2017)
Авторы: Bill Phillips, Chris Stewart, Kristin Marsicano
Количество страниц: 624

Это руководство, основанное на популярных учебных курсах по Android от Big Nerd Ranch, отлично подойдет всем, кто хочет начать писать приложения для мобильных устройств. Работая с книгой, вы можете писать и запускать код на каждом этапе обучения, используя Android Studio для создания приложений. Каждая глава и программа были разработаны и протестированы, чтобы проиллюстрировать конкретные актуальные знания, необходимые любому мобильному разработчику.

Скачать книгу
источник
2020 August 21
Библиотека джависта
​​Школа программистов открыла набор в Виртуальный класс для учеников 3-11 классов на 2020/21 учебный год! -

Формат Виртуального класса равносилен очному обучению, он происходит в режиме живой видеоконференции в малых группах (до 15 человек).
Учащиеся общаются с преподавателем и друг с другом через камеру и микрофон, работают в постоянном контакте с другими учениками, социализируясь и осваивая навыки командной работы, такой важной в IT-отрасли; проходят постоянные экспресс-тесты уровня знаний, выполняют проекты и разбирают ошибки в домашних работах. Кроме того преподаватель может использовать педагогические приемы, свойственные только очной форме обучения, например, виртуальный «вызов к доске» или совместное написание кода.

Школа программистов 19 лет предоставляет качественное IT-образование по всей России.
Наши достижения:
🥇Действующие чемпионы мира WRO (Всемирная олимпиада роботов)
🏆 77 наград на Всероссийских олимпиадах
📊 средний балл ЕГЭ по информатике у учащихся Школы программистов - 83 балла
👨‍🎓 Наши выпускники - студенты ведущих вузов страны: НИУ ВШЭ, МФТИ, НИЯУ МИФИ, СПбГУ, ИТМО и МГУ им. М.В. Ломоносова.
📊 А также стажируются и работают в крупных IT-компаниях, таких как: Apple, ABBYY, Google, Facebook, Kaspersky lab, Microsoft, NVIDIA и Яндекс

Даты ближайших экзаменов:
Школа программистов Junior (3-5 класс):
22 августа в 14:00
26 августа в 18:00

Средняя и старшая Школа (6-10 класс):
22 августа в 14:00
25 августа в 18:00

Получи фундаментальное IT-образование не выходя из дома!
Переходи по ссылке, выбирай экзамен и поступай в Школу программистов!👉🏻 http://mshponline.informatics.ru/
источник
2020 August 22
Библиотека джависта
Что такое «HTML»?
источник
Библиотека джависта
В этом году для GopherCon команда Ozon Tech подготовила пару часов докладов на самые разные темы: от классических — о микросервисной архитектуре, до по-настоящему гошных.
Итак для всех, кто пропустил онлайн, в нашем плейлисте доклады от разработчиков одной из самых больших Golang-команд России.
Наслаждайтесь!

https://habr.com/ru/company/ozontech/blog/516044/
источник
Библиотека джависта
HTML, HyperText Markup Language («язык гипертекстовой разметки») — стандартизированный язык разметки документов в WWW. На данный момент актуальна 5 версия этого языка - HTML5.
источник
2020 August 23
Библиотека джависта
#вопросы_с_собеседований
Почему HttpServlet класс объявлен как абстрактный?
источник
Библиотека джависта
Класс HTTPServlet предоставляет лишь общую реализацию сервлета для HTTP протокола. Реализация ключевых методов doGet() и doPost(), содержащих основную бизнес-логику, перекладывается на разработчика и по умолчанию возвращает HTTP 405 Method Not Implemented error.
источник
Библиотека джависта
#вопросы_с_собеседований
Что такое ReadWriteLock?
источник
2020 August 24
Библиотека джависта
ReadWriteLock – это интерфейс расширяющий базовый интерфейс Lock. Используется для улучшения производительности в многопоточном процессе и оперирует парой связанных блокировок (одна - для операций чтения, другая - для записи). Блокировка чтения может удерживаться одновременно несколькими читающими потоками, до тех пор пока не появится записывающий. Блокировка записи является эксклюзивной.

Существует реализующий интерфейс ReadWriteLock класс ReentrantReadWriteLock, который поддерживает до 65535 блокировок записи и до стольки же блокировок чтения.

ReadWriteLock rwLock = new ReentrantReadWriteLock();
Lock rLock = rwLock.readLock();
Lock wLock = rwLock.writeLock();

wLock.lock();
try {
   // exclusive write
} finally {
   wLock.unlock();
}
       
rLock.lock();
try {
   // shared reading
} finally {
   rLock.unlock();
}
источник
Библиотека джависта
#вопросы_с_собеседований
Что вы знаете о OutOfMemoryError?
источник
2020 August 25
Библиотека джависта
OutOfMemoryError выбрасывается, когда виртуальная машина Java не может создать (разместить) объект из-за нехватки памяти, а сборщик мусора не может высвободить достаточное её количество.

Область памяти, занимаемая java процессом, состоит из нескольких частей. Тип OutOfMemoryError зависит от того, в какой из них не хватило места:

☕️ java.lang.OutOfMemoryError: Java heap space: Не хватает места в куче, а именно, в области памяти в которую помещаются объекты, создаваемые в приложении программно. Обычно проблема кроется в утечке памяти. Размер задается параметрами -Xms и -Xmx.
☕️ java.lang.OutOfMemoryError: PermGen space: (до версии Java 8) Данная ошибка возникает при нехватке места в Permanent области, размер которой задается параметрами -XX:PermSize и -XX:MaxPermSize.
☕️ java.lang.OutOfMemoryError: GC overhead limit exceeded: Данная ошибка может возникнуть как при переполнении первой, так и второй областей. Связана она с тем, что памяти осталось мало и сборщик мусора постоянно работает, пытаясь высвободить немного места. Данную ошибку можно отключить с помощью параметра -XX:-UseGCOverheadLimit.
☕️ java.lang.OutOfMemoryError: unable to create new native thread: Выбрасывается, когда нет возможности создавать новые потоки.
источник