Daromadlar:
- AI soxta API, xavfsiz kod va mualliflik huquqi bilan himoyalangan kontent ishlab chiqarishi mumkinligini tan olish va tekshirish qobiliyati
- Manba kodining maxfiyligi, shaxsiy ma'lumotlar va korporativ siyosat doirasida sun'iy intellektdan foydalanishni boshqarish qobiliyati
- Litsenziyaga rioya qilish, xavfsizlik va axloq qoidalari bo'yicha yakuniy javobgarlik muhandisda qolishini tushunish.
Modul imtihoni
1. Kompyuter muhandisi sifatida, AI kodini yaratish vositasi bilan ishlaganda, quyidagilardan qaysi biri uchun yakuniy javobgarlik doimo insonda bo'lishi kerak?
- A) Ishlab chiqarishga kiritilgan kodning to'g'riligi, xavfsizligi va ko'rib chiqilishi va sinovdan o'tkazilishini yakuniy tasdiqlash ✔
- B) Funksiya uchun birinchi kod skeletini yaratish
- C) O'zgaruvchilar nomlari bo'yicha takliflar ro'yxatini ishlab chiqish
- D) Kodli izohlar uchun matn loyihasini tayyorlash
Tavsif: AI; U kod skeleti, test loyihasi va hujjatlar kabi vazifalarni tezlashtirishi mumkin. Shu bilan birga, ishlab chiqarilgan kodni to'g'ri, xavfsiz va talablarga muvofiqligini ta'minlash va ishlab chiqarishga kiritish uchun uni ko'rib chiqish, sinovdan o'tkazish va tasdiqlash muhandisning javobgarligi; Bu mustaqil tekshiruvsiz AIga topshirilishi mumkin emas.
2. AI siz uchun funktsiyani ishlab chiqdi va u baxtli yo'lda ishlayotganga o'xshaydi. Uni ishlab chiqarishga qo'yishdan oldin eng yaxshi qadam nima?
- A) Funktsiya ishlayotganga o'xshab, uni to'g'ridan-to'g'ri ishlab chiqarishga qo'ying
- B) Keng holatlarni o'z ichiga olgan kichik birlik testlarini yozish va o'tkazish orqali xatti-harakatni tekshiring ✔
- C) Funksiyaning qatorlar soniga qarab
- D) Funksiya nomini yanada tavsiflovchi qilish
Tushuntirish: Ishda ko'rinish to'g'ri bo'lishni anglatmaydi. Bo'sh kirish, nol, salbiy, juda katta qiymat va mos kelmaslik kabi chekka holatlarni qamrab oluvchi kichik birlik testlarini yozish va ishga tushirish funktsiyani jonli muhitga ko'chirmasdan haqiqiy harakatini tasdiqlaydi.
3. AI sizning tilingizda mavjud bo'lmagan "array.sortStable()" deb nomlangan usulni taklif qildi va uni aniq tushuntirib berdi. Birinchi bo'lib qanday to'g'ri harakat qilish kerak?
- A) Usuldan bevosita foydalanish, chunki AI ishonchli ko'rinadi
- B) Usulni o'zingiz aniqlang va uning nomidan aniq foydalaning
- C) Til/kutubxonaning rasmiy hujjatlaridan usulning mavjudligini tekshirish ✔
- D) Kompilyator ogohlantirishini yoping va davom eting
Izoh: Til modellari haqiqatda mavjud bo'lmagan kutubxona, paket yoki usul nomlarini (gallyutsinat) tashkil qilishi mumkin. Har bir taklif qilingan API til yoki kutubxonaning rasmiy va joriy hujjatlariga nisbatan so‘zma-so‘z tekshirilishi kerak; Agar u hujjatga kiritilmagan bo'lsa, uni ishlatmaslik kerak.
4. Siz kompaniyangizning maxfiy manba kodini va o‘rnatilgan API kalitini umumiy sun’iy intellekt vositasiga joylashtirmoqchisiz va yordam so‘rang. Qaysi yondashuv eng to'g'ri?
- A) Tezlik uchun kodni API kaliti kabi joylashtirish
- B) Faqat kompaniya nomini o'chirish va qolgan hamma narsani baham ko'rish kifoya
- C) Kodni almashish va keyin AIdan uni o'chirishni so'rash
- D) Sirlarni va yashirin mantiqni olib tashlash va muammoni vakillik misoliga qisqartirish yoki institutsional vositadan foydalanish ✔
Tavsif: Maxfiy manba kodi va hisob ma'lumotlari (API kaliti, parol, ulanish qatori); Bu kompaniya siri va xavfsizligi nuqtai nazaridan xavfli. Sirlarni va yashirin biznes mantiqini yo'q qilish va muammoni anonim/vakillik misoliga qisqartirish yoki korxona/ma'lumot almashish vositasidan foydalanish kerak.
5. AI u yozgan qidiruv funksiyasining murakkabligi O(n) ekanligini aytdi; lekin kodda ikkita ichki ko'chadan mavjud. To'g'ri muhandislik harakati nima?
- A) Kodni qo'lda tahlil qiling va murakkablikni o'zingiz chiqaring va agar kerak bo'lsa, uni o'lchang ✔
- B) O(n) ni qabul qiling va davom eting, chunki AI aytdi
- C) Tsikllar sonining ishlashga hech qanday aloqasi yo‘q deb faraz qilish
- D) Funktsiya nomini o'zgartirish kifoya
Tushuntirish: Vaqt murakkabligi (Big-O) kirish hajmi oshgani sayin operatsiyalar soni qanday ko'payishini ko'rsatadi. Ikki uyali halqa odatda O(n^2) ni bildiradi. AIning murakkabligi haqidagi da'vo kodni qo'lda tahlil qilish va agar kerak bo'lsa, kiritishlarni ko'paytirish bilan o'lchash orqali tekshirilishi kerak; Da'voga tayanish noto'g'ri ishlash taxminini keltirib chiqaradi.
6. Matnni birlashtirish orqali foydalanuvchi ma'lumotlarini bevosita SQL so'roviga kiritadigan AI tomonidan yaratilgan kod. Bu erda asosiy muammo va to'g'ri echim nima?
- A) Muammo yo‘q; matnni birlashtirish eng tezkor usuldir
- B) SQL in'ektsiyasi xavfi mavjud; Kirishni ajratuvchi parametrlangan so'rovdan (tayyorlangan bayonot) foydalanish kerak ✔
- C) So‘rovni bosh harfga o‘tkazish kifoya
- D) So‘rovni qisqaroq yozish muammoni hal qiladi
Tavsif: so'rov matniga foydalanuvchi kiritishini to'g'ridan-to'g'ri qo'shish SQL in'ektsiyasi zaifligini yaratadi; Tajovuzkor so'rovni kiritish bilan o'zgartirishi mumkin. To'g'ri yechim so'rov matnidan kiritilgan ma'lumotlarni ajratib turadigan parametrlangan so'rovdan (tayyorlangan bayonot) foydalanishdir. Bu AI kodidagi eng ko'p o'tkazib yuborilgan xavfsizlik xatolaridan biridir.
7. AI tomonidan ishlab chiqarilgan kod qismini ko'rib chiqishda vaqtingiz cheklangan. Qaysi masalalarga ustunlik berish yaxshiroq?
- A) Faqat chekinish va oraliq kabi detallarni formatlash
- B) Faqat o‘zgaruvchilar nomlarining uzunligi
- C) Mantiqiy to'g'rilik, zaifliklar va chekka holatlar harakati ✔
- D) Faqat fayl satrlarining umumiy soni
Tavsif: Kodni ko'rib chiqishda eng yuqori xavf; Bular mantiqiy xatolar, xavfsizlik zaifliklari va maxfiy ma'lumotlarning sizib chiqishi kabi jiddiy zarar keltiradigan muammolardir. Format va uslub muammolari avtomatik vositalar yordamida tuzatiladi; Insonning asosiy e'tiborini aniqlik, xavfsizlik va eng chekka ish xatti-harakatlariga qaratish kerak.
8. Siz AI xatoni hal qilishni xohlaysiz. Qaysi kirish AIga asosiy sababni topishga yordam beradi?
- A) Shunchaki "kod ishlamayapti, tuzating"
- B) Fayl nomini berish kifoya
- C) Xato matnisiz faqat kutilgan natijani aytish
- D) To'liq xato xabari, stek izi, tegishli kod va minimal takrorlash misolini taqdim eting ✔
Izoh: Samarali nosozliklarni tuzatish uchun AIga to'liq xato xabari, stek izi, tegishli kod parchasi va xatoni keltirib chiqaradigan eng kichik takrorlanadigan namunani berish kerak. "Ishlamaydi" degan noaniq bayonot AIni taxmin qilishga va umumiy tavsiyalar berishga majbur qiladi.
9. AI tomonidan ishlab chiqarilgan barcha birlik testlari birinchi ishga tushirishda o'tadi. Bunday vaziyatda qaysi xavfni e'tiborsiz qoldirmaslik kerak?
- A) Sinovlar kodning joriy holatini tasdiqlashi mumkin, lekin haqiqiy/kutilgan xatti-harakat emas ✔
- B) Kod mutlaqo xatosiz, chunki barcha testlar o'tdi
- C) Sinovlar soni ko'p bo'lsa sifat kafolatlanadi
- D) Sinovdan o‘tish qamrovning to‘liqligini isbotlaydi
Izoh: Sinovlar kodning mo'ljallangan xatti-harakatini emas, balki joriy (ehtimol xato) xatti-harakatlarini tasdiqlashi mumkin; yoki u hech qanday mazmunli tasdiqni o'z ichiga olmaydi va har doim uzatiladi. Sinovlar haqiqiy kutishni tekshirayotganini ko'rish uchun kodni ongli ravishda buzish va testning qizil rangga aylanishini tasdiqlash kerak.
10. AI sizga muammo uchun tayyor kod blokini yaratdi. Kod ochiq manbali loyihadan so'zma-so'z ko'chirilgan bo'lishi mumkin deb o'ylaysiz. Qaysi yondashuv to'g'ri?
- A) Litsenziyadan o'ylamasdan foydalanish, chunki kod ishlaydi
- B) Kod manbasini/litsenziyasini tekshirish, kerak bo'lganda qayta yozish va korporativ siyosatga rioya qilish ✔
- C) Faqat o'zgaruvchilar nomlarini o'zgartiring va muammoni hal qilingan deb hisoblang
- D) Litsenziyalash faqat yirik kompaniyalarga tegishli deb faraz qilish
Tavsif: AI o'quv ma'lumotlaridagi mualliflik huquqi/litsenziyalangan kodni so'zma-so'z takrorlashi mumkin. Tijorat mahsulotida litsenziyaning buzilishi jiddiy huquqiy xavflarni keltirib chiqaradi. Kodning manbasini va litsenziyasini tekshirish, agar kerak bo'lsa, uni o'z so'zlaringiz bilan qayta yozish va muassasaning litsenziyalash siyosatiga rioya qilish kerak.
11. AI sizning loyihangiz uchun darhol mikroservislar arxitekturasiga o'tishni taklif qildi. Ushbu taklifni baholashda eng to'g'ri muhandislik yondashuvi qanday?
- A) Darhol butun tizimni mikroservislarga ajrating, chunki AI taklif qiladi
- B) Mikroservis har doim eng yaxshi tanlovdir
- C) Taklifni haqiqiy ehtiyoj, yuk, jamoa tuzilishi va ortiqcha-minus balansiga qarab baholang ✔
- D) Faqat arxitekturaning mashhurligiga qarab qaror qabul qilish
Tushuntirish: Arxitektura qarorlari kontekstga bog'liq; Mikroservislar masshtab va jamoani ajratish kabi ehtiyojlarga qiymat qo'shadi, lekin operatsion murakkablik, taqsimlangan disk raskadrovka va xarajatlar kabi xarajatlar bilan birga keladi. Taklifni haqiqiy ehtiyoj, yuk, jamoa tuzilishi va ijobiy va salbiy tomonlari muvozanatiga qarab baholang; Umumiy tavsiyalarga ko'r-ko'rona rioya qilmaslik kerak.
12. AI kodingiz uchun soddalashtirilgan README va API hujjatlarini ishlab chiqdi; lekin ba'zi so'nggi nuqtalar va parametrlar kodda mos kelmaydi. To'g'ri xatti-harakatlar nima?
- A) Matn ravon bo‘lgani uchun hujjatni qanday bo‘lsa shunday nashr qilish
- B) Faqat sarlavhani tuzatib, qolganini shunday qoldiring
- C) Hujjatni o'qimasdan omborga qo'shish
- D) Har bir oxirgi nuqta va parametrni haqiqiy kod bilan solishtiring va mos kelmaydiganlarni tuzating ✔
Tavsif: Hujjatlar haqiqiy kodni aniq aks ettirishi kerak; Noto'g'ri hujjat uni o'qigan ishlab chiquvchilarni uni noto'g'ri ishlatishga undaydi. Har bir so'nggi nuqta, parametr va qaytish qiymati haqiqiy kod bilan tekshirilishi kerak va har qanday nomuvofiqliklar tuzatilishi kerak.
13. AIdan kod so'rashda eng yuqori sifatli chiqish uchun qaysi kiritish usuli to'g'ri keladi?
- A) Til/versiya, kiritish-chiqarish shartnomasi, cheklovlar va xatolik holatlarini aniq ta'minlash ✔
- B) Shunchaki "menga ish kodini yozing" deyish
- C) Kontekst keltirmasdan eng qisqa so‘rovni yozing
- D) Kodning qancha satri bo'lishini ko'rsatish kifoya
Tavsif: Kuchli tezkor; U ishlatiladigan til va versiyani, kiritish-chiqarish shartnomasini, ishlash va uslub cheklovlarini, xato shartlarini va "faqat so'ralgan doirada qolish" ko'rsatmalarini o'z ichiga oladi. Kontekstsiz "menga funktsiya yozing" so'rovi umumiy bo'lib, ko'pincha noto'g'ri kod ishlab chiqaradi.
14. AI sizning CI/CD (doimiy integratsiya/tartibga solish) quvur liniyasi uchun konfiguratsiyani yaratdi va unga ma'lumotlar bazasi parolini oddiy matn shaklida kiritdi. Qaysi tuzatish to'g'ri?
- A) Parolni oddiy matn sifatida qoldirish, chunki u ishlaydi
- B) Atrof-muhit o'zgaruvchisi yoki maxfiy boshqaruv vositasi orqali sirlarni ko'chirish, omborga ochiq matnni qo'ymaslik ✔
- C) Parolni faqat sharh satriga o'tkazing
- D) Fayl nomini o'zgartirish muammoni hal qiladi
Tushuntirish: Konfiguratsiya fayliga parollar va kalitlar kabi sirlarni oddiy matnda yozish versiya boshqaruvi va ruxsatsiz kirishning sizib chiqishi xavfini tug'diradi. Sirlar; U atrof-muhit o'zgaruvchilari yoki maxsus sirlar menejeri tomonidan saqlanishi kerak va hech qachon omborga oddiy matnda kirmasligi kerak.