Backend собеседования
465 subscribers
104 photos
104 links
Подготовка к собеседованиям на позицию Backend-разработчик

Еще больше разобранных вопросов для подготовки на сайте https://frontview-it.ru

Все IT вакансии - @frontview_all_vacancies
Download Telegram
List, Set и Map — это интерфейсы коллекций в Java, каждый из которых имеет свои особенности.

😎 List — это упорядоченная коллекция, которая допускает дублирование элементов. Элементы в List имеют индексы, что позволяет обращаться к ним по порядковому номеру.

😎 Set — это коллекция, которая не допускает дублирования элементов. Порядок элементов в Set не гарантируется, и доступ к ним осуществляется через итерацию.

😎 Map — это коллекция пар "ключ-значение", где каждый ключ уникален. Map не является частью иерархии Collection, но часто используется для хранения ассоциативных массивов.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
🖇 Класс — это шаблон для создания объектов, который объединяет данные и методы для работы с этими данными. Классы позволяют организовать код, делая его более читаемым и поддерживаемым.


class Car {
// Свойства класса
public $color;
public $model;

// Конструктор класса
public function __construct($color, $model) {
$this->color = $color;
$this->model = $model;
}

// Метод класса
public function displayInfo() {
return "Машина: $this->color $this->model";
}
}

// Создание объекта класса Car
$myCar = new Car("красный", "Lexus");
echo $myCar->displayInfo(); // Выводит: Машина: красный Lexus


Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥1
Оператор new в Go используется для выделения памяти и инициализации указателя на тип. Он возвращает указатель на нулевое значение указанного типа. В отличие от make, который используется для инициализации срезов, карт и каналов, new подходит для всех типов данных.


type Person struct {
Name string
Age int
}

p := new(Person)
// p - указатель на структуру Person с нулевыми значениями полей


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

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍51
Интерфейс в C# — это контракт, который определяет набор методов и свойств, которые класс должен реализовать, без предоставления их реализации. Он используется для обеспечения полиморфизма и позволяет различным классам реализовывать одинаковый набор функциональностей.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1
▶️ == и is используются для сравнения, но имеют разные цели.

🟡 Оператор == проверяет равенство значений. Он используется для сравнения содержимого объектов.

a = [1, 2, 3]
b = [1, 2, 3]

print(a == b) # True, так как значения списков одинаковы


🟠 Оператор is проверяет идентичность объектов, то есть, указывают ли переменные на один и тот же объект в памяти.

print(a is b)  # False, так как это разные объекты в памяти


🟢 Использование is подходит для проверки, ссылаются ли переменные на один и тот же объект, например, при проверке на None.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍111
Микросервисная архитектура — это подход к разработке программного обеспечения, при котором приложение разбивается на набор мелких, независимых сервисов, каждый из которых выполняет свою уникальную функцию и взаимодействует с другими через четко определенные API. Основные принципы включают в себя независимость развертывания, устойчивость к сбоям, гибкость в выборе технологий и упрощение масштабирования.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10👨‍💻1
Стандартная библиотека Go включает в себя множество пакетов, обеспечивающих широкий спектр функциональности. Основные из них:

▶️ fmt: форматированный ввод-вывод.
▶️ net/http: создание HTTP-клиентов и серверов.
▶️ os: взаимодействие с операционной системой.
▶️ io: основные интерфейсы ввода-вывода.
▶️ strconv: преобразование строк и чисел.
▶️ time: работа с датой и временем.
▶️ sync: примитивы синхронизации.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52
❗️Лямбда-выражение — это краткая форма записи анонимного класса с одним методом, которая позволяет передавать поведение как параметр. Они были введены в Java 8 и значительно упрощают работу с функциональными интерфейсами.

Синтаксис лямбда-выражения: (параметры) -> {тело}.

// Создание списка строк
List<String> names = Arrays.asList("Anna", "Boris", "Charlie");

// Сортировка списка с использованием лямбда-выражения
Collections.sort(names, (a, b) -> a.compareTo(b));

// Вывод отсортированного списка
names.forEach(name -> System.out.println(name));


Лямбда-выражения делают код более лаконичным и читаемым, особенно при работе с коллекциями и потоками.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥2
😊 В Java переменные объявляются с указанием типа данных, за которым следует имя переменной. Это позволяет компилятору знать, какой тип данных будет храниться в переменной.


int number; // Объявление целочисленной переменной
number = 10; // Инициализация переменной значением 10

String text = "Hello, World!"; // Объявление и инициализация строковой переменной

double pi = 3.14159; // Объявление и инициализация переменной с плавающей точкой


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

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍91
Тег в Git — это указатель на определённый коммит, который обычно используется для обозначения релизов или важных версий проекта. Создать тег можно с помощью команды git tag <имя_тега>, а затем отправить его в удалённый репозиторий с помощью git push origin <имя_тега>.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7💯1
int используется для хранения целых чисел. Он занимает обычно 4 байта памяти и не поддерживает дробные значения.

int number = 42; // Целое число


float предназначен для чисел с плавающей точкой, позволяя хранить дробные значения. Он также занимает 4 байта, но может представлять числа с десятичной частью.

float decimal = 3.14f; // Число с плавающей точкой


✔️ Основное различие в том, что int подходит для целых чисел, тогда как float используется для чисел с дробной частью.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
Для добавления данных в таблицу используется оператор INSERT INTO, который позволяет вставить одну или несколько строк данных. Необходимо указать название таблицы, столбцы, в которые будут добавлены данные, и сами значения, которые должны быть вставлены.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍71
🖇 Делегат в C# — это тип, который представляет ссылки на методы с определённой сигнатурой. Делегаты позволяют инкапсулировать метод в объекте, что делает их похожими на указатели на функции в C++, но с безопасностью типов.

Делегаты используются для реализации событий и обратных вызовов. Они могут ссылаться на методы как статические, так и экземплярные.


// Объявление делегата, который принимает два целых числа и возвращает целое число
public delegate int Operation(int x, int y);

// Метод, соответствующий делегату
public static int Add(int a, int b) => a + b;

// Использование делегата
Operation op = Add;
int result = op(3, 4); // Вызов метода через делегат


✔️ Делегаты обеспечивают гибкость и расширяемость кода, позволяя передавать методы как параметры.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍51
Composer — это менеджер зависимостей для PHP, который упрощает управление библиотеками и пакетами в проектах, автоматически загружая и обновляя их в соответствии с указанными требованиями. Он позволяет легко интегрировать сторонние библиотеки и поддерживать их актуальность.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍61
▶️ Удаление дубликатов из списка можно осуществить с помощью преобразования списка во множество, так как множество хранит только уникальные элементы. После этого множество можно снова преобразовать в список, чтобы сохранить исходный тип данных.


# Исходный список с дубликатами
numbers = [1, 2, 2, 3, 4, 4, 5]

# Преобразование в множество и обратно в список
unique_numbers = list(set(numbers))


❗️ Этот метод прост и эффективен, но не сохраняет порядок элементов в списке.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥2
Аутентификация — это процесс проверки подлинности пользователя или системы, который подтверждает, что предоставленные учетные данные соответствуют зарегистрированным данным. Этот процесс является ключевым элементом безопасности, обеспечивая доступ только авторизованным пользователям.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥1
🟠 Функция main() в пакете main в языке Go играет ключевую роль, так как она является точкой входа для выполнения программы. Когда программа запускается, Go ищет пакет main и вызывает функцию main(). Без этой функции программа не будет компилироваться.


package main

import "fmt"

// Функция main() является точкой входа программы
func main() {
fmt.Println("Hello, World!")
}


🟠 Пакет main и функция main() обязательны для создания исполняемого файла. Все остальные функции и пакеты вызываются из main(), что делает её центральной частью программы.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2
ArrayList в Java — это динамический массив, который позволяет хранить элементы в упорядоченном списке и автоматически изменяет свой размер при добавлении или удалении элементов. Он обеспечивает быстрый доступ к элементам по индексу, но может быть менее эффективен при частых вставках или удалениях в середине списка по сравнению с другими коллекциями, такими как LinkedList.

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥3
📝 Индексация в Git — это процесс добавления изменений в промежуточную область, называемую индексом или стадией, перед фиксацией в репозиторий. Она позволяет подготовить и просмотреть изменения, которые будут включены в следующий коммит, обеспечивая контроль над тем, какие изменения сохраняются в истории проекта.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2
🟠 Цикл for в C++ используется для повторения блока кода определенное количество раз. Он состоит из трех частей: инициализация, условие и итерация.


#include <iostream>

int main() {
// Инициализация: int i = 0
// Условие: i < 5
// Итерация: i++
for (int i = 0; i < 5; i++) {
std::cout << "Итерация: " << i << std::endl; // Вывод текущей итерации
}
return 0;


Инициализация выполняется один раз в начале. Условие проверяется перед каждой итерацией. Итерация выполняется после каждого прохода цикла. Если условие ложно, цикл завершает выполнение.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82
❗️Связь "один ко многим" в SQL реализуется с помощью внешнего ключа. В таблице "многие" создается столбец, который ссылается на первичный ключ таблицы "один".


CREATE TABLE Authors (
AuthorID INT PRIMARY KEY, -- Первичный ключ таблицы авторов
Name VARCHAR(100)
);

CREATE TABLE Books (
BookID INT PRIMARY KEY, -- Первичный ключ таблицы книг
Title VARCHAR(100),
AuthorID INT, -- Внешний ключ, ссылающийся на таблицу Authors
FOREIGN KEY (AuthorID) REFERENCES Authors(AuthorID)
);


В данном примере один автор может иметь много книг.

Ставь 👍, если было полезно!
Больше ответов на сайте 👈

✈️ Backend собеседования
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥2