JavaScript Yozuv Qoidalari (Style Guide)
Barcha JavaScript loyihalaringiz uchun har doim bir xil kodlash konvensiyalaridan foydalaning.
JavaScript kodlash konvensiyalari
Kodlash konvensiyalari — bu dasturlash uchun uslub ko'rsatmalari. Ular odatda quyidagilarni qamrab oladi:
- O'zgaruvchilar va funksiyalar uchun nomlash va e'lon qilish qoidalari
- Bo'shliq, indent va izohlardan foydalanish qoidalari
- Dasturlash amaliyotlari va tamoyillari
Kodlash konvensiyalari sifatni ta'minlaydi:
- Kod o'qilishini yaxshilaydi
- Kod texnik xizmat ko'rsatishini osonlashtiradi
O'zgaruvchi nomlari
Identifikator nomlari (o'zgaruvchilar va funksiyalar) uchun camelCase dan foydalaning. Barcha nomlar harf bilan boshlanadi.
firstName = "John";
lastName = "Doe";
price = 19.90;
tax = 0.20;
fullPrice = price + (price * tax);Operatorlar atrofida bo'shliqlar
Operatorlar ( = + - * / ) atrofiga va vergullardan keyin bo'shliq qo'ying:
let x = y + z;
const myArray = ["Volvo", "Saab", "Fiat"];Kod indentatsiyasi
Kod bloklari uchun har doim 2 ta bo'shliq ishlating:
function toCelsius(fahrenheit) {
return (5 / 9) * (fahrenheit - 32);
}Ogohlantirish
Indentatsiya uchun tablardan (tabulyatorlardan) foydalanmang. Turli muharrirlar tablarni turlicha izohlaydi.
Bayonot qoidalari
Oddiy bayonotlar uchun umumiy qoidalar:
- Oddiy bayonotni har doim nuqtali vergul bilan tugatang
const cars = ["Volvo", "Saab", "Fiat"];
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};Murakkab (qo'shma) bayonotlar uchun umumiy qoidalar:
- Ochuvchi qavsni birinchi qatorning oxiriga qo'ying
- Ochuvchi qavsdan oldin bitta bo'shliq ishlating
- Yopuvchi qavsni yangi qatorga, oldida bo'shliqsiz qo'ying
- Murakkab bayonotni nuqtali vergul bilan tugatmang
// Funksiyalar:
function toCelsius(fahrenheit) {
return (5 / 9) * (fahrenheit - 32);
}
// Sikllar:
for (let i = 0; i < 5; i++) {
x += i;
}
// Shartlar:
if (time < 20) {
greeting = "Good day";
} else {
greeting = "Good evening";
}Obyekt qoidalari
Obyekt ta'riflari uchun umumiy qoidalar:
- Ochuvchi qavsni obyekt nomi bilan bir qatorga qo'ying
- Har bir xususiyat va uning qiymati orasida ikki nuqta va bitta bo'shliq ishlating
- Satr qiymatlari atrofida qo'shtirnoq ishlating, raqamli qiymatlar atrofida emas
- Oxirgi xususiyat-qiymat juftligidan keyin vergul qo'shmang
- Yopuvchi qavsni yangi qatorga, oldida bo'shliqsiz qo'ying
- Obyekt ta'rifini har doim nuqtali vergul bilan tugatang
const person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};Qisqa obyektlar siqilgan holda, bitta qatorda yozilishi mumkin:
const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};Qator uzunligi < 80
O'qilish qulayligi uchun 80 belgidan uzun qatorlardan saqlaning. Bayonot bitta qatorga sig'masa, uni operator yoki verguldan keyin buzish eng yaxshi:
document.getElementById("demo").innerHTML =
"Hello Dolly.";Nomlash konvensiyalari
Barcha kodingiz uchun har doim bir xil nomlash konvensiyasidan foydalaning:
- O'zgaruvchi va funksiya nomlari camelCase da yoziladi
- Global o'zgaruvchilar KATTA HARF da yoziladi (ixtiyoriy, lekin keng tarqalgan)
- Konstantalar (masalan PI) KATTA HARF da yoziladi
Chiziqchalar (hyphens): HTML5 atributlari data- bilan boshlanishi mumkin. CSS xususiyat nomlarida chiziqchalar ishlatadi (font-size).
Ogohlantirish
Chiziqchalar ayirish urinishlari bilan aralashtirilishi mumkin. JavaScript nomlarida chiziqchalarga ruxsat berilmaydi.
Pastki chiziq: Ko'pgina dasturchilar pastki chiziqni afzal ko'radilar (date_of_birth).
PascalCase: PascalCase ko'pincha C dasturchilar tomonidan afzal ko'riladi.
camelCase: camelCase JavaScript-ning o'zi, jQuery va boshqa JavaScript kutubxonalari tomonidan ishlatiladi.
Ogohlantirish
Nomlarni $ belgisi bilan boshlamang. Bu sizni ko'pgina JavaScript kutubxona nomlari bilan to'qnashuvga olib keladi.
HTML-da JavaScript-ni yuklash
Tashqi skriptlarni yuklash uchun oddiy sintaksisdan foydalaning (type atributi kerak emas):
<script src="myscript.js"></script>Fayl kengaytmalari
- HTML fayllar .html kengaytmasiga ega bo'lishi kerak
- CSS fayllar .css kengaytmasiga ega bo'lishi kerak
- JavaScript fayllar .js kengaytmasiga ega bo'lishi kerak
Kichik harfli fayl nomlari
Ko'pgina veb-serverlar (Apache, Unix) fayl nomlari bo'yicha katta-kichik harfga sezgir. Muammolardan qochish uchun har doim kichik harfli fayl nomlaridan foydalaning.
Samaradorlik
Kodlash konvensiyalari kompyuterlar tomonidan ishlatilmaydi. Ko'pgina qoidalar dasturlar bajarilishiga kam ta'sir qiladi. Ishlab chiqish uchun o'qilish afzal ko'rilishi kerak. Kattaroq ishlab chiqarish skriptlari minimallashtirilishi kerak.
