Java Spring — Список вопросов
Какие есть типы данных в Java и какой у них размер
Какие есть модификаторы в Java и Kotlin
Какие вы знаете Java Collection
Какие уровни сложности для операций с коллекциями
Что такое HashMap
Как отсортировать коллекцию, содержащую сложный класс, Comparator и Comparable
В чем разница между ArrayList и LinkedList
Как работает TreeMap
Какие правила нейминга в Java
Что такое статические классы в Java
Какая разница между StringBuffer и StringBuilder
Что такое рефлексия в Java
В каких ситуациях возникает Memory leak
Что такое Generic (Дженерики)
Какие методы есть у класса Object в Java и Any в Kotlin
Что такое Enum в Java
Какой в Java приоритет при преобразовании примитивных типов
Что такое приведение типов / преобразование типов / каст
Для чего нужны и как создавать аннотации в Java
Что такое Wrappers (обертки) в Java
Какие есть операторы перехода
Что такое Stack (стек) и Heap (куча) в Java
Что такое JDK, JRE и JVM
Какими значениями инициализируются переменные по умолчанию
Возможно ли сузить уровень доступа/тип возвращаемого значения при переопределении метода
Какие существуют типы ссылок в Java
В чем разница между map и flatMap
Какие есть типы ошибок в Java
Как работает Garbage Collector и как организована память в JVM
Что такое Java NIO (New Input/Output)
Какой порядок выполнения Java класса
Может ли абстрактный класс наследоваться от обычного
Какие бывают циклы в Java и Kotlin
Что такое ClassLoader
Что такое SecurityManager
Что такое JavaCompiler
Как запустить JavaScript из Java
Что такое Optional в Java и Kotlin
Какие есть побитовые (поразрядные) операции в Java и Kotlin
Что такое ByteBuffer и Unsafe
Что такое лямбда (lambda) в Java
Как в Java загрузить исполняемый код из сети
Что такое AsynchronousServerSocketChannel
Что такое функциональные интерфейсы и аннотация @FunctionalInterface в Java
Какие есть встроенные функциональные интерфейсы в Java
Какие есть типовые параметры в Java
Какой механизм работы у volatile переменных в Java
Как в JVM работают стеки потоков, с точки зрения взаимодействия с процессором
Что такое внутренние классы (Inner Classes) в Kotlin
Какие есть функции области видимости (Scope Functions) в Kotlin
Как работает корутина и что такое suspend
Какая разница между методом запуска корутин launch и async
Что такое Делегаты в Kotlin
Что такое Extension в Kotlin
Что такое companion object в Kotlin
Как использовать геттеры (get) и сеттеры (set) в Kotlin
Что такое аннотация @JvmStatic
Что такое обратный вызов (callback), функциональные типы и Unit в Kotlin и как используется
Какие существуют уровни сложности у коллекций
Какие наиболее часто используемые паттерны
В чем отличия наследования от композиции
Что такое SOLID
Что такое функции высшего порядка
В чем отличие структурной, функциональный и объектно-ориентированной парадигмы в программировании
Какие форматы обмена данными с сервером существуют
Какие существуют основные операторы в RxJava
Какие бывают и как работают синхронизованные коллекции
Что означает volatile
Что означает synchronized
Какие проблемы могут быть в многопоточности в Java
Что такое Lock / ReentrantLock
Какие есть стратегии Backpressure
Чем отличаются hot и cold Observables
Чем volatile отличается от atomic
Что такое отложенные (Deferred) корутины в Kotlin
Что такое ленивые (LAZY) корутины в Kotlin
Что такое Kotlin Channels
Что такое Mutex, Monitor, Semaphore
Какой синтаксис запроса в SQL
Что такое VIEW (представление) в SQL
Что такое INDEX (индексы) в SQL
Как избежать конкуренции при доступе к записи в SQL
Какие существуют виды отношений в SQL
Как сделать соотношение Many-to-Many в SQL
Как в SQL объединить запрос к нескольким таблицам
Как использовать план запроса в SQL
Как использовать индексы в SQL
Что такое Saga Pattern
Что такое Rollback Pattern
В чем отличие между Rollback Pattern и Saga Pattern
Что такое Концепции потоковой передачи событий (Event Streaming)
Что такое Eventual Consistency (конечная согласованность)
Что такое SOLID
Как использовать подход Чистой архитектуры (Clean Architecture) в Spring
Какие параметры у RESTful сервиса
Какие существуют REST методы
Что такое Model, ModelAndView и ViewResolver
Что такое принципы Inversion of Control (IoC) и Dependency Injection (DI)
Что такое Domain-Driven Design (DDD)
Что такое CQRS (Command Query Responsibility Segregation)
Что такое Event Sourcing
Что такое Circuit Breaker (Переключатель цепи)
Что такое JSON-RPC (Remote Procedure Call)
Что такое Spring MVC
Какие могут быть слои в Spring
Как обычно структурируется Spring приложение
Что лучше, аннотации или XML в Spring
В чем разница между REST, RPC, GraphQL и SOAP
Какие части могут быть в Spring приложении
Чем Spring отличается от Java EE
Что такое аспектно-ориентированное программирование (AOP)
Как происходит обработка запроса и выдача ответа в Spring
Что такое Project Reactor
Что такое Mono и Flux
Что такое сервлет (Servlet)
Что такое Инфраструктура открытых ключей (Public Key Infrastructure, PKI)
Что такое CSRF (Cross-Site Request Forgery)
Что такое формат Prometheus
Что такое Структурированная конкуренция (Structured concurrency)
Что такое Принцип Happens-Before (событийное предшествование)
Чем WAR (Web Application Archive) отличается от JAR (Java Archive)
Какой жизненный цикл у бинов в Spring
Что такое Git Registry, GitHub Packages, GitHub Actions, Changelog, Release Notes
Какие основные протоколы обмена данными в Spring
Что такое Protobuf
Что такое Javadoc
Какие основные отличия Maven от Gradle
Из чего состоит pom.xml
Из чего состоит build.gradle
Что такое Supplier
В чем отличие record в Java и data class в Kotlin
Что такое Java JWT (Java JSON Web Token)
Как использовать Lombok в Java
Что такое Swagger / OpenAPI
Как настроить доступ через OpenVPN
Что такое Keycloak
Что такое Testcontainers
Чем отличаются Jetty, Netty и Tomcat
Что такое Netty
Что такое Nginx
Пример простого веб сервера\
Какие могут быть параметры в application.properties
Как использовать WebSocket в Spring
Как использовать GraphQL в Spring
Как использовать OAuth 2.0 в Spring
Как настроить шифрование в spring
Как в Spring настроить HTTPS
Что такое Spring Boot Actuator
Как настроить авторизацию при помощи Spring Security
Что такое Spring Integration
Что такое Spring Batch
Что такое AutoConfiguration в Spring
Как настроить разные профили сборки в Spring
Что такое Spring WebFlux
Что такое ApplicationContext в Spring
Что такое BeanFactory
Что такое Spring BOM
Как настроить безопасность в WebFlux
Как настроить валидацию данных в Spring
Как определять утечки памяти в Spring
Что такое RouterFunction и RequestPredicate
Как Spring приложение может отправлять и принимать данные с других API
Как в Spring сделать фоновую задачу по таймеру
Как в Spring импортировать данные из CSV
Какие основные аннотации в Spring
@Configuration
@Bean
@Component
@Service
@Repository
@Controller
@RestController
@RestControllerAdvice
@ResponseBody
@Aspect
@Before
@After
@Around
@Pointcut
@ModelAttribute
@MatrixVariable
@InitBinder
@CookieValue
@Autowired
@Transactional
@EnableTransactionManagement
@RequestPart
@Value
@RequestMapping
@GetMapping и @PostMapping
@RequestParam
@RequestBody
@SessionAttribute
@SessionAttributes
@ResponseStatus
@RequestHeader
@RequestAttribute
@ExceptionHandler
@CrossOrigin
@Qualifier
@Primary
@ImportResource
@ComponentScan
@Entity
@Table
@Id
@Column
@OneToMany, @ManyToOne, @OneToOne, @ManyToMany
@EntityScan
@Document в MongoDB
@Document в Elasticsearch
@PrimaryKeyColumn
@Unwrapped
@Unwrapped(prefix = "address_")
@QueryIndexed
@PreAuthorize
@DataMongoTest
@DynamicPropertySource
@BeforeEach
@Embeddable
@Embedded
@Secured
@Column в JPA
@PostConstruct
@Transient в JPA
@Transient в стандартной сериализации Java
@MappedCollection
@PayloadRoot
@Endpoint
@RequestPayload
@ResponsePayload
@XmlRootElement
@SpringBootApplication
Чем @Component отличается от @Service
Чем @Component отличается от @Bean
Что такое CRUD (Create, Read, Update, Delete)
Как подключаться к базам данных в Spring
Как использовать AWS / Amazon Web Services в Spring
Что такое Spring Data JPA
Что такое JPQL и Criteria API
Как использовать Redis в Spring
Какие есть уровни изоляции транзакций
Какие есть репозитории в Spring
Какие есть параметры у аннотации @Transactional
Как в Spring обрабатывать изменения в базе данных
Что такое Jenkins
Что такое Nexus
Что такое План запроса (Query Plan) для баз данных
Как использовать индексы в базе данных Spring приложения
Какие могут быть аномалии при работе с базой данных
Какие есть виды блокировки в базе данных
Что такое R2DBC (Reactive Relational Database Connectivity)
Что такое Flyway
Где в Spring приложении следует хранить приватные данные
Как в Spring можно использовать кеширование
Как настроить GitHub Actions Continuous Integration
Как могут взаимодействовать микросервисы
Как использовать Docker в Spring
Как использовать Docker Compose в Spring
Как использовать Kubernetes в Spring
Как использовать Elasticsearch в Spring
Как использовать RabbitMQ в Spring
Как использовать Kafka в Spring
Что такое Eureka Service
Как реализовать Spring Cloud Gateway
Как реализовать перенаправление при помощи Spring Cloud Gateway
Что такое Service Discovery
Что такое Dockerfile и Docker Compose
Какие есть инструменты для наблюдения за микросервисами
Что такое Trace ID и Span ID
Какие существуют основные облачные решения для Java разработки и их аналоги для обычной инфраструктуры
Какие существуют основные облачные решения от Amazon для Java разработки
Какие существуют основные облачные решения от Google для Java разработки
Какие существуют основные облачные решения от Microsoft для Java разработки
Как можно оптимизировать cloud решение с точки зрения затрат
Как работают servless решения