Lock ішінде async/await қолдануға бола ма? Неге?
C#
Неліктен async void жаман тәжірибе деп саналады?
Жүгіру уақыты асинхронды операция аяқталғанын және жұмысын жалғастыру керектігін қалай түсінеді?
Консольда не қандай нәтиже шығады? ```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(); } } ```
Құрылым дегеніміз не? Бұл мән немесе сілтеме түрі ме? Жады қайда бөлінеді? Құрылымдарды тиімді пайдалану шекаралары қандай?
Дерекқордағы индекстер дегеніміз не? Индекстердің түрлері (B-дерево, Hash, Full-text). Кластерленген және кластерленбеген индекстер. Қамтитын индекстер.
Негізгі (SOH) қоспағанда, қандай қоқыстарды білесіз? Үлкен объекттік қоқыс және бекітілген объекттік қоқыс туралы айтыңыз.
Тұрақты хештеу дегеніміз не? Виртуалды бөлшектер/шелек?
Async/await тапсырмасы: async/await қалай жұмыс істейді? Ол неге айналады? Task пен ValueTask арасындағы айырмашылық неде?
Виртуалды әдістері бар тапсырмада не шығарылады? Қай әдістің тікелей саны көп және неге?
GC жұмыс режимдері туралы айтыңыз: серверлік және десктоптық. Қайсысын қашан пайдалану керек?
GC ұрпақтар концепциясының мәні неде (0, 1, 2)? Біз не оптимизациялаймыз?
GC тамырлары дегеніміз не? Олар қандай түрлерге бөлінеді?
ConfigureAwait(false) деген не? Ол не үшін пайдаланылады? Синхрондау контексті деген не?
ref, in, out параметрлерінің модификаторлары және олардың айырмашылықтары туралы айтыңыз. readonly ref және ref readonly деген не?
Барлық типтегі датчиктердің көрсеткіштері бойынша әр бөлмеге және әр күнге арналған агрегатталған ақпаратты шығаратын сұрау жазу керек. Деректер құрылымы: Өріс Түрі Сипаттама date timestamp Өлшеу күні room_id int Бөлме идентификаторы sensor_type int Датчик түрі (1 - температура, 2 - ылғалдылық, 3 - қысым) value int Дат from sensor Мысал CREATE TABLE t_sensor_data ( date TIMESTAMP, room_id INT, sensor_type INT, value INT ); INSERT INTO t_sensor_data (date, room_id, sensor_type, value) VALUES ('2023-01-01', 1, 1, 25), ('2023-01-01', 1, 2, 15), ('2023-01-01', 2, 1, 27), ('2023-01-01', 2, 2, 12), ('2023-01-01', 2, 3, 940), ('2023-01-01', 1, 1, 27), ('2023-01-01', 1, 2, 45), ('2023-01-01', 1, 3, 950), ('2023-01-01', 2, 1, 25), ('2023-01-01', 2, 2, 30), ('2023-01-01', 2, 3, 940); SELECT * FROM t_sensor_data;
Сізге әріптесіңіздің Code Review-іне тапсырма түсті Кодта қандай мәселелерді көресіз? ```csharp namespace SomeProject.Data { public class UserRepository { public Task SaveUser(User user, Dictionary<int,string> shards) { var shardIdx = user.Id % 3; var shardAddress = shards[shardIdx]; using(var shardService = new ShardService(shardAddress)) { return shardService.SaveUserAsync(user); } } } } ```
Мәтіндік тапсырма: не шығады? == операторы жолдар үшін қалай жүктелген? Жол интернирлеу пулі деген не?
Жады стекке және қоқысқа қалай бөлінеді. Барлық мән түрлері әрқашан стекке орналастырыла ма?
LINQ тапсырмасы: не шығады? query айнымалысының типі қандай? IEnumerable мен IQueryable арасындағы айырмашылық неде?