C#
public bool BookTour(string userId, DateTime start, DateTime end, int hotelId, string roomType, string flightClass, int airCompanyId, int flightnumber) { try { //flightClass də enum kimi analiz etmək istəməzdim var flightInfo = new FlightInfo(Enum.Parse<FlightClass>(flightClass), airCompanyId, flightnumber); var resultBookFlight = _airWaysService.Book(GetUser(userId), flightInfo); //roomType də enum kimi analiz etmək istəməzdim var rentInfo = new RentInfo(start, end, hotelId, Enum.Parse<RoomType>(roomType)); //GetUserId ayrı dəyişəndə var resultBookHotel = _hotelService.Book(GetUser(userId), rentInfo); //İstisnalar içəriyə gedəcək, tutulmayacaq Task.WhenAll(resultBookFlight, resultBookHotel); //Niyə static 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 { //sahələr 100% başlanmayıb //Niyə istisnadan sonra nəsə saxlamağa çalışırıq //GetUser artıq çıxarılıb unitOfWork.Execute(async () => { await _tourRepository.Save(_reservationIdAir, _reservationIdHotel, GetUser(userId)); }).RunSynchronously(); //Interlock.Increment() _countBooked++; } return true; }
Həmkarınızdan kod baxışı üçün tapşırıq aldınız Koddakı hansı problemləri görürsünüz?
IEnumerable və IQueryable nədir, fərqi nədir?
Cavab vaxtını 0,5 ms-dən 0,2 ms-ə endirmək mümkün oldu?
Bu SQL sorğusunu maksimum sürətləndirmək necə mümkündür?
ConcurrentCollection (Eyni vaxtda işləyən kolleksiyalar) istifadə təcrübənizi bölüşə bilərsinizmi?
N massivində A N müsbət ədədlərdən ibarət olan, i, j, k müxtəlif indekslər üçün, A[i] + A[j] + A[k] cəmində M rəqəmi ilə bitən üç fərqli indeks mövcuddurmu?
B ağacı indeksi haqqında danışın: necə şifrələnir, nədir, necə işləyir, niyə axtarışı sürətləndirir?
IEnumerable metodunda SingleOrDefault və FirstOrDefault arasındakı fərq nədir?
.NET-də dəyər və referans tipləri arasındakı əsas fərqlər nədir?
Axın nədir? Siz onu necə başa düşürsünüz?
Bir dəyişəni iş parçacığı/tapşırıq ilə əlaqələndirmək mümkündürmü ki, hər tapşırıq öz dəyərini saxlasın? ThreadLocal və AsyncLocal nədir?
Init metodunda çoxlu iş parçacığı ilə bağlı başqa hansı problem var?
İş təcrübənizdə ən əhəmiyyətli uğur və ya uğursuzluq haqqında danışın.
Niyə Prometheus/Grafana nəzərə alınmayıb?
Təcrübəniz haqqında qısa danışın.
C# dilində hansı məlumat strukturları (konteynerlər) bilirsiniz? Hangi vəziyyətdə hansı istifadə edilməlidir?
Əməliyyat növləri / izolasiya səviyyələri?
GC kökləri nədir? Hansıları var?
IEnumerable və IQueryable arasındakı fərq nədir?