Kako se prosleđuje slice u funkciju u programskom jeziku?
Golang
func fn() { str := "" for i := 0; i < 100000; i++ { str += fmt.Sprintf("%d", i) } fmt.Println(str) }
Ispričaj mi o obrascima dizajna. Šta je double-checked locking (dvostruka provera zaključavanja) i zašto se koristi?
Објасни зашто и која (у вези са излазом кода)
Da li je moguća situacija Neponovljivog čitanja pri korišćenju nivoa izolacije Read Committed?
Што ќе се прикаже на секој печат? func fn(a []int) { a[2] = 5 a = append(a, 6) fmt.Println(a) // a = append(a, 7) a[0] = 5 fmt.Println(a) // } func main() { a := make([]int, 0, 5) for i := 0; i < 4; i++ { a = append(a, i) } fn(a[:3]) fmt.Println(a) // }
Ispričaj mi kako radi Redis, šta je to?
Ispričaj mi kako funkcioniše planer gorutina u Go (GMP).
Na 7. liniji donesena je odluka da će unutrašnji niz biti prepunjen i biće kreiran novi. Zašto si tako odlučio?
Да ли су се дешавале грешке / проблеми на послу?
Ispričaj, šta je map u Go i kako ga ti shvatiš?
Šta će se desiti sa Token Bucket limiterom u scenariju: 1 zahtev na početku sekunde, 99 na kraju, a zatim još 100 u sledećoj sekundi?
Ispričaj o korišćenju događaja (pristup vođen događajima) na tvom primeru
// Šta je loše u ovom kodu? Kako ga poboljšati? func fn() { str := "" for i := 0; i < 100000; i++ { str += fmt.Sprintf("%d", i) } fmt.Println(str) }
Koje zadatke voliš? Šta tražiš za sebe?
Дизајнирајте ограничивач брзине за спољни API са лимитом од 100 захтева по секунди/минуту
Ko je arhitektura projekta — ti kao vođa funkcija, zajedno sa timom, ili kao vođa tima?
Da li koristiš Golang?
Што ќе се прикаже на секој печат? func fn(a []int) { a[2] = 5 a = append(a, 6) fmt.Println(a) // a = append(a, 7) a[0] = 5 fmt.Println(a) // } func main() { a := make([]int, 0, 5) for i := 0; i < 4; i++ { a = append(a, i) } fn(a[:3]) fmt.Println(a) // }
Kako su rešavani?