JavaScript'te kapanış nasıl çalışır? Çözümünüzdeki index değişkeni ve run fonksiyonunun örneğiyle açıklayın.
Frontend
Recursion ile çözümünüzde Promise.all'un tüm isteklerin tamamlanmasını nasıl beklediğini açıklayın. Mevcut uygulama neden eksik bir sonuç dönebilir?
Цифриум'daki projeyle ilgili daha fazla bilgi verin: hangi modüllerden sorumluydular, özellik nasıl yapılandırılmıştı — uç noktalar, modeller, iş mantığı, abonelikler nerede bulunuyordu?
Bir projede FSD (Feature-Sliced Design) kullandınız mı? FSD kullanırken Effector'da örnekler ve olay aboneliklerini nasıl yazdınız?
Mimari seçimlerini nasıl anlıyorsunuz? Farklı yaklaşımlar arasındaki artıları ve eksileri nasıl ayırt ediyorsunuz?
Array.from nasıl çalışır? Hangi argümanları alır?
Derleme optimizasyonu: neydi? Paket boyutunu optimize etmek için başka hangi yaklaşımları biliyorsunuz?
/** * Bir geri çağırma fonksiyonunu verilerle çalıştıracak ve Response[] dizisi döndürecek fonksiyonu uygulayın. * Çözüm, tüm istekleri paralel olarak çalıştırmalı * ancak aynı anda en fazla [limit] istek çalıştırılabilir. * Amaç toplam yürütme süresini en aza indirmektir. */ type Props<RequestData, Response> = { callback: (args: RequestData) => Promise<Response>; data: Array<RequestData>; limit: number; }; export async function runWithLimit<RequestData, Response>({ callback, data, limit, }: Props<RequestData, Response>): Promise<Response[]> { // ÇÖZÜM BAŞLANGICI BURADA if (limit < 1 || data.length === 0) { return Promise.resolve([]); } if (limit >= data.length) { return Promise.all(data.map(callback)); } const result: Response[] = new Array(data.length); let index = 0; const run = async () => { if (index >= data.length) return; const elem = data[index]; try { result[index] = await callback(elem); } catch (err) { result[index] = (err) as Response; // hata yönetimi yapılmalı } index++; run(); }; const startPack = Array.from({ length: limit }, run); await Promise.all(startPack); return result; }
Code splitting nedir ve nasıl çalışır?
Kendiniz ve iş deneyiminiz hakkında bana bilgi verin