Sobes.tech

Какой оптимальный план выполнения для запроса получения сотрудника с максимальной зарплатой и его отдела?

Middle
PyrusPyrus
8

Расскажи о себе, своих интересных и значимых задачах, о чём-то сложном в карьере, чем гордишься.

Middle
OZONOZON
8

public bool BookTour(string userId, DateTime start, DateTime end, int hotelId, string roomType, string flightClass, int airCompanyId, int flightnumber) { try { //flightClass тоже не хотелось бы парсить enum var flightInfo = new FlightInfo(Enum.Parse<FlightClass>(flightClass), airCompanyId, flightnumber); var resultBookFlight = _airWaysService.Book(GetUser(userId), flightInfo); //roomType тоже не хотелось бы парсить enum var rentInfo = new RentInfo(start, end, hotelId, Enum.Parse<RoomType>(roomType)); //GetUserId в отдельная переменная var resultBookHotel = _hotelService.Book(GetUser(userId), rentInfo); //Exception уйдут в inner, не отловит Task.WhenAll(resultBookFlight, resultBookHotel); //Почему статикa reservationIdAir = resultBookFlight.Result; _reservationIdHotel = resultBookHotel.Result; } catch (BookFlightException) { _hotelService.CancelBook(_reservationIdAir); return false; } catch (BookHotelException) { _airWaysService.CancelBook(_reservationIdHotel); return false; } catch (Exception ex) { throw new ApplicationException(ex.Message); } finally { //поля 100% не инициализованы //Почему после exception мы пытаемся что-то сохранить // GetUser уже вынесли unitOfWork.Execute(async () => { await _tourRepository.Save(_reservationIdAir, _reservationIdHotel, GetUser(userId)); }).RunSynchronously(); //Interlock.Increment() _countBooked++; } return true; }

Middle
OZONOZON
8

Что будет выведено в консоль? ```csharp public class Program { static void Main() { var myClassObj = new MyClass(); var myStructObj = new MyStruct(); MethodA(myClassObj.Num); // MethodB(myStructObj); MethodC(myClassObj); MethodD(myClassObj); Console.WriteLine(myClassObj.Num); // ? Console.WriteLine(myStructObj.Num); // ? } private static void MethodA(int num) { num = num + 1; } private static void MethodB(MyStruct myStruct) { myStruct.Num += 1; } private static void MethodC(MyClass myClass) { myClass.Num += 1; } private static void MethodD(MyClass myClass) { myClass = new MyClass(); } } ```

Middle+
Core outstaff
7

Что такое объектно-ориентированное программирование?

Middle+
OZONOZON
7

Знаете ref struct?

Middle+
Gravilink
7

Тебе дали приложение, ты столкнулся с дедлоком в базе данных. Как будешь действовать?

Senior
.wrk
7

Каким ты видишь себя через пять лет?

Middle+
OZONOZON
7

Как в map происходит увеличение (rehash)?

Senior
.wrk
7

Какая сложность получения элемента массива по индексу?

Senior
Сбербанк
7

Как транзакции работают с версиями в MVCC?

Middle+
Gravilink
7

Расскажите про подходы к concurrency при одновременном изменении данных в БД двумя потоками (оптимистичный и пессимистичный).

Middle+
aiins
7

Что такое gRPC и чем он отличается от обычного HTTP?

Middle+
СБК ПАРУС
7

В чём особенность методов async void по сравнению с async Task?

Middle+
СБК ПАРУС
7

Что предложить разработчику для улучшения тестируемости?

Middle+
Gravilink
7

Что такое индексы в БД? Типы индексов (B-tree, Hash, Full-text). Кластерный vs некластерный индекс. Покрывающие индексы.

Middle+
Core outstaff
7

Можно ли обеспечить ACID с помощью Redis?

Senior
.wrk
7

В массиве A хранятся цены на N предметов. Есть K купонов, которые уменьшают цену предмета на X. Если применить t купонов на предмет с ценой a, то его итоговая стоимость будет max(a - t*X, 0) (то есть купоны не могут сделать цену предмета отрицательной. Необходимо вернуть минимальное количество денег, которое придется потратить, чтобы купить все предметы. A = 8, 3, 10, 5, 13 K = 4 X = 7 result=12 --- Вам дан массив a, состоящий из n положительных целых чисел. Существуют ли три различных индекса i, j, k таких, что сумма a[i]+a[j]+a[k] заканчивается цифрой m? Например, для m = 3 solve([20, 22, 19, 84]) = > true // 20 + 84 + 19 = 123 solve([1,2,3]) => false

Middle+
01.tech
7

С точки зрения отображения метрик — самописное или стандартное решение?

Middle+
Gravilink
7

Коллекция функций, цикл 0-9, добавляем лямбды захватывающие i, вызываем все. Что выведет?

Middle+
Gravilink
7
/168