Yazma ayarları yenilenemedi. Tekrar denemek için sayfayı yeniden yükleyin.
Klavyede 10 parmakla yazma dersi: JavaScript dilinde programlama
Doğruluk hesaplama kuralları değişti. Bu alıştırma baştan başlıyor.
Tamamlanan oturumunuzun kaydedildiği doğrulanamadı. Metni yeniden yazmadan kaydetmeyi tekrar deneyin.
Klavyede 10 parmakla yazma dersi: JavaScript dilinde programlama
Programlamada 10 parmak klavye önemlidir. JavaScript programlama dilinde kod yazmak için hızlı yazma tekniklerini kullanarak daha verimli olursunuz.
JavaScript dilinde programlama ve 10 parmak klavye
JavaScript, dünyada en çok kullanılan programlama dillerinden biridir - hem istemci tarafında hem de sunucu tarafında yaygın olarak kullanılır. Esnek, dinamik ve sürekli gelişen bir dildir. Ancak JavaScript ile kod yazmak kolay değildir. JavaScript blokları süslü parantezlerle, Python ise girintilerle ayırır. Statik tipli Java'nın aksine JavaScript dinamik tiplidir. Unutulmuş bir noktalı virgül, fazladan bir virgül ya da kapanmamış bir süslü parantez tüm programı durdurabilir. Her gün saatlerce klavye başında çalışan geliştiriciler için doğruluk çok önemlidir. 10 parmak klavye pratiğiyle klavyeye bakmadan kodu doğru yazmayı öğrenirsiniz. Böylece her tuşu aramak yerine, yazarken programın mantığına daha fazla odaklanabilirsiniz.
Dinamik tipler ve değişken tanımlamaları
JavaScript dinamik tipli bir dildir; yani değişkenler herhangi bir değeri saklayabilir ve çalıştırma sırasında tip değiştirebilir. Bu esneklik öğrenmeyi kolaylaştırır, ancak aynı zamanda hata kaynağıdır. Yeni değişkenler için genellikle let ve const kullanılır; ikisi de blok kapsamına sahiptir. let ile tanımlanan değişkene yeni bir değer atanabilir, const ile oluşturulan bağa ise yeniden atama yapılamaz. var hâlâ geçerlidir ve fonksiyon, betik veya modül kapsamına sahiptir. Küçük bir yazım hatası veya yanlış seçim zor bulunan hatalara neden olabilir. 10 parmak klavye pratiğinde const ve let ifadelerini doğru yazmayı çalışabilirsiniz. Hangi anahtar kelimenin kullanılacağı, değişkenin programdaki kullanımına bağlıdır.
// Değişecek değişkenlerde let kullan
let counter = 0;
counter++;
// Sabitler için const kullan
const PI = 3.14159;
// var modern kodda kaçınılmalı
var legacy = "eski stil";
Noktalı virgül ve otomatik ekleme
JavaScript'in en çok tartışılan özelliklerinden biri noktalı virgülün otomatik eklenmesidir. Çoğu ifade onsuz yazılabilir, ancak bu durum beklenmedik hatalara yol açabilir. Klasik bir örnek, return ifadesinin değerinin bir sonraki satıra yazılmasıdır - JavaScript bunu return; olarak yorumlar. Döndürülecek ifade return ile aynı satırda başlamalıdır; noktalı virgül eklemek bu sorunu çözmez. Bazı kodlama stilleri noktalı virgül ister, bazıları ise kullanmaz; projenizin kurallarını izleyin. 10 parmak klavye alışkanlığı sayesinde bu küçük ve tekrarlayan tuş kombinasyonu doğal bir refleks haline gelir.
// Tehlikeli: undefined döner
function bad() {
return
{
name: "Ahmet"
};
}
// Doğru: noktalı virgül dönüş değerini garanti eder
function good() {
return {
name: "Ahmet"
};
}
Nesneler ve JSON
JavaScript nesne tabanlı bir dildir. Nesne literal'ları süslü parantezler {}, iki nokta : ve virgüller , ile doğru şekilde yazılmalıdır. JavaScript nesne sözdizimini temel alan JSON ise daha katıdır: fazladan bir virgül tüm dosyayı geçersiz kılar. 10 parmak klavye pratiği ile bu sembollerin yazımı otomatikleşir, böylece veri yapısına odaklanabilirsiniz.
// Nesne literal'i
const user = {
id: 1,
name: "Ahmet",
active: true
};
Fonksiyonlar: bildirimler, ifadeler ve arrow functions
JavaScript'te fonksiyonlar farklı şekillerde tanımlanabilir: klasik bildirimler, anonim ifadeler veya arrow functions. Arrow functions => sembolünü kullanır ve bu sembol kolayca yanlış yazılabilir. Yeni başlayanlar genellikle parantezleri unuturlar veya oku yanlış yere koyarlar. 10 parmak klavye alışkanlığı sayesinde bu kalıp otomatikleşir. JavaScript ayrıca varsayılan parametreleri, rest parametreleri (...args) ve parametrelerin parçalanmasını (destructuring) da destekler. Bu, dili daha ifade gücü yüksek hale getirir, fakat aynı zamanda yazım doğruluğunu da zorunlu kılar.
// Klasik fonksiyon
function greet(name) {
return "Merhaba " + name;
}
// Arrow function
const greetArrow = (name) => "Merhaba " + name;
// Varsayılan ve rest parametreli fonksiyon
function log(message = "Info", ...args) {
console.log(message, args);
}
Kapanışlar (Closures) ve geri çağrılar (Callbacks)
JavaScript'in dikkat çekici özelliklerinden biri de closures'tır. Fonksiyonlar dış kapsamlarındaki değişkenleri "yakalar". Bu güçlü bir özelliktir, ancak özellikle döngülerde veya asenkron kodda hatalara neden olabilir. Callbacks yazarken çok sayıda süslü parantez ve parantez gerekir. 10 parmak klavye alışkanlığı bu tekrarlayan yapıların daha kolay ve hatasız yazılmasını sağlar.
// Bir değişkeni yakalayan closure
function makeCounter() {
let count = 0;
return function() {
count++;
return count;
};
}
const counter = makeCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Asenkron kod: callbacks, promises, async/await
JavaScript asenkron işlemleri destekler. Bu işlemler callbacks, promises ve async/await ile yönetilebilir. Her yaklaşımın kendi yazım zorlukları vardır: callbacks çok sayıda süslü parantez gerektirir, promises .then() zincirleri kullanır, async/await ise yeni anahtar kelimeler ekler. 10 parmak klavye pratiği sayesinde bu kalıpları hızlı ve doğru yazmak kolaylaşır.
// Promise örneği
fetch("/api/data")
.then(response => response.json())
.then(data => console.log(data))
.catch(err => console.error(err));
// async/await örneği
async function loadData() {
try {
const response = await fetch("/api/data");
const data = await response.json();
console.log(data);
} catch (err) {
console.error(err);
}
}
Stil ve kodlama kuralları
Python'da "pythonic" koddan söz edilirken, JavaScript'te tartışmalar genellikle Airbnb, StandardJS veya Google gibi stil rehberleri etrafında döner. Bunlar girintileme (iki veya dört boşluk), noktalı virgül kullanımı, adlandırma kuralları (değişkenler için camelCase, sınıflar için PascalCase) ve satır uzunluğu gibi konuları kapsar. ESLint ve Prettier gibi araçlar, yapılandırmalarına göre kodu denetleyebilir veya biçimlendirebilir. 10 parmak klavye pratiği sayesinde, arrow functions veya method chaining gibi tekrarlayan kalıpları yazarken bu standartlara uymak çok daha kolay hale gelir.
Yaygın sözdizimi hataları
JavaScript'te yaygın hatalar arasında template strings içinde backtick'in unutulması, tek ve çift tırnak işaretlerinin karıştırılması veya parantezlerin kapatılmaması bulunur. Interpolasyon kullanan template strings ${...} çok güçlüdür, ancak doğru sırayı gerektirir: backtick, dolar işareti ve süslü parantezler. 10 parmak klavye alışkanlığı bu dizilimin her seferinde doğru yazılmasını sağlar.
// Interpolasyon kullanan template string
const name = "Ahmet";
console.log(`Merhaba, ${name}!`);
Sınıflar ve nesne yönelimli programlama
ES6'dan önce JavaScript prototipler kullanıyordu. Bugün sınıf sözdizimi mevcut olsa da, arka planda prototipler hâlâ çalışmaktadır. constructor metodu bir örneği başlatır, ancak bu metodu kendiniz tanımlamak zorunda değilsiniz. Türetilmiş sınıfta özel bir kurucu tanımlandığında, üst sınıfın kurucusunu çağırmak için super kullanılır. Metotlar function anahtar kelimesi olmadan tanımlanır. this unutulması veya süslü parantezin yanlış yerleştirilmesi yaygın hatalardandır. 10 parmak klavye alışkanlığı bu tekrarlayan yapıları daha hızlı ve hatasız yazmayı kolaylaştırır. Java'da olduğu gibi, JavaScript'te de sınıf adları genellikle PascalCase ile yazılır ve tutarlılık gerekir.
class Animal {
constructor(name) {
this.name = name;
}
speak() {
console.log(`${this.name} bir ses çıkarıyor.`);
}
}
class Dog extends Animal {
speak() {
console.log(`${this.name} havlıyor.`);
}
}
Modüller ve import
Modern JavaScript, import ve export kullanan ES modüllerini kullanır. Bunlar genellikle uzun yollar ve süslü parantezler içerir. import { readFile, writeFile } from "fs"; gibi bir satırı hızlı ve doğru yazmak kolay değildir. 10 parmak klavye pratiği sayesinde parantezler ve tırnak işaretleri daha güvenle yazılabilir.
import { readFile, writeFile } from "fs";
import express from "express";
Özet
JavaScript dinamik, esnek ve ifade gücü yüksek bir dildir. Sözdizimi birçok sembolü bir araya getirir - süslü parantezler, köşeli parantezler, iki nokta, virgüller, noktalı virgüller, backtick - bu da doğru yazımı sürekli bir meydan okuma haline getirir. Java gibi JavaScript de büyük ve küçük harfleri ayırt eder; sözdiziminin gerektirdiği bir sembolün eksik olması programın çalışmasını engelleyebilir. Python gibi girintileme zorunluluğu yoktur, fakat topluluk tutarlı biçimlendirme bekler. 10 parmak klavye alışkanlığı geliştiricilerin bu beklentileri daha kolay karşılamasına yardımcı olur: daha az hata, tekrarlayan kalıpların (örneğin arrow functions ve imports) daha hızlı yazılması ve programın mantığına daha fazla odaklanma. Her gün JavaScript yazıyorsanız, 10 parmak klavye pratiği kodu doğru girmenizi kolaylaştırabilir. Programın doğru çalışması için mantığını anlamanız ve davranışını da kontrol etmeniz gerekir.