Programlama Dilleri

JavaScript Temelleri

İlk Adımlar ve Temel Bilgiler

1. **Giriş**
– 1.1 Neden JavaScript?
– 1.2 JavaScript Nedir?

2. **Temel Sözdizimi ve Değişkenler**
– 2.1 Değişken Tanımlama
– 2.2 Veri Türleri
– 2.3 Operatörler

3. **Koşullu İfadeler ve Döngüler**
– 3.1 If-else Yapısı
– 3.2 Switch Case
– 3.3 For Döngüsü

4. **Fonksiyonlar ve Kapsam**
– 4.1 Fonksiyon Tanımlama
– 4.2 Parametreler ve Dönüş Değeri
– 4.3 Kapsam (Scope)

5. **Diziler ve Nesneler**
– 5.1 Diziler
– 5.2 Nesneler (Objects)

İlgili Makaleler

6. **DOM ve Olaylar**
– 6.1 DOM Nedir?
– 6.2 Olaylar (Events)

7. **Ajax ve Asenkron Programlama**
– 7.1 Ajax İle Veri Alışverişi
– 7.2 Asenkron Programlama

8. **Modern JavaScript ve ES6+**
– 8.1 Arrow Fonksiyonlar
– 8.2 Destructuring
– 8.3 Modül Sistemi

9. **Güvenlik ve Hata Ayıklama**
– 9.1 Güvenlik İlkeleri
– 9.2 Hata Ayıklama Stratejileri

10. **JavaScript Ekosistemi**
– 10.1 Node.js
– 10.2 npm Paket Yöneticisi

11. **Mobil Uygulama Geliştirme**
– 11.1 React Native
– 11.2 Apache Cordova

12. **İleri Düzey Konular**
– 12.1 Web Assembly
– 12.2 Progressive Web Apps (PWA)

13. **JavaScript Topluluğu ve Kaynaklar**
– 13.1 Forumlar ve Topluluklar
– 13.2 Öğrenme Kaynakları

14. **Gelecekte JavaScript**
– 14.1 ECMAScript Standartları
– 14.2 Yeni Teknolojik Gelişmeler

15. **Sonuç**
– 15.1 JavaScript’un Gücü
– 15.2 Neden Öğrenmeliyiz?

# JavaScript Temelleri: İlk Adımlar ve Temel Bilgiler

JavaScript, web geliştirme dünyasında vazgeçilmez bir rol oynayan, tarayıcı üzerinde çalışan bir programlama dilidir. Bu makalede, JavaScript temellerine dair önemli konuları ele alacağız.

## 1. Giriş

### 1.1 Neden JavaScript?

JavaScript, tarayıcı üzerinde kullanıcı etkileşimini yönetmek, sayfayı dinamikleştirmek ve veri iletişimini sağlamak için ideal bir dil olmasıyla öne çıkar.

### 1.2 JavaScript Nedir?

JavaScript, başlangıçta tarayıcılarda kullanılmak üzere tasarlanmış, hafif, nesne tabanlı bir programlama dilidir.

## 2. Temel Sözdizimi ve Değişkenler

### 2.1 Değişken Tanımlama

JavaScript’te değişkenler `var`, `let`, veya `const` anahtar kelimeleriyle tanımlanır.

### 2.2 Veri Türleri

JavaScript’te temel veri türleri şunlardır: string, number, boolean, object, array, ve null.

### 2.3 Operatörler

Matematiksel ve karşılaştırma operatörleri kullanılarak değişkenler arasında işlemler gerçekleştirilir.

## 3. Koşullu İfadeler ve Döngüler

### 3.1 If-else Yapısı

Koşullu ifadelerle belirli şartlara göre farklı kod blokları çalıştırılabilir.

### 3.2 Switch Case

Birden çok şartın kontrol edildiği durumlarda switch-case yapısı kullanılır.

### 3.3 For Döngüsü

Belirli bir şart sağlandığı sürece belirli bir kod bloğunu tekrarlamak için for döngüsü kullanılır.

## 4. Fonksiyonlar ve Kapsam

### 4.1 Fonksiyon Tanımlama

Fonksiyonlar, belirli bir görevi yerine getirmek için kullanılır ve tekrar kullanılabilirlik sağlar.

### 4.2 Parametreler ve Dönüş Değeri

Fonksiyonlar, parametre alabilir ve bir değer döndürebilir.

### 4.3 Kapsam (Scope)

Kapsam, değişkenlerin ve fonksiyonların erişilebilir olduğu alanı belirtir.

## 5. Diziler ve Nesneler

### 5.1 Diziler

Diziler, aynı değişken türündeki öğeleri içeren veri yapılarıdır ve sıklıkla liste olarak kullanılır.

### 5.2 Nesneler (Objects)

Nesneler, özellik (property) ve metotları içeren karmaşık veri yapılarıdır ve genellikle gerçek dünyadaki nesneleri temsil eder.

## 6. DOM ve Olaylar

### 6.1 DOM Nedir?

DOM (Document Object Model), HTML veya XML belgelerini programlar arası erişim için bir arayüz sağlayan bir yapıdır.

### 6.2 Olaylar (Events)

JavaScript, kullanıcı etkileşimine tepki olarak olayları işleyebilir, bu da sayfanın dinamikleşmesini sağlar.

## 7. Ajax ve Asenkron Programlama

### 7.1 Ajax İle Veri Alışverişi

Ajax, tarayıcı ve sunucu arasında veri alışverişi yapmak için kullanılan bir tekniktir, bu da sayfanın yeniden yüklenmeden güncellenmesini sağlar.

### 7.2 Asenkron Programlama

Asenkron programlama, belirli işlemlerin paralel olarak gerçekleştirilmesine izin verir, bu da performansı artırabilir.

## 8. Modern JavaScript ve ES6+

### 8.1 Arrow Fonksiyonlar

ES6 ile gelen arrow fonksiyonlar, daha kısa ve okunabilir fonksiyon tanımlamalarını mümkün kılar.

### 8.2 Destructuring

Destructuring, nesneleri veya dizileri parçalayarak değişkenlere atama yapmayı sağlar.

### 8.3 Modül Sistemi

ES6 ile gelen modül sistemi, kodu modüllere bölmeyi ve başka dosyalarda kullanmayı kolaylaştırır.

## 9. Güvenlik ve Hata Ayıklama

### 9.1 Güvenlik İlkeleri

JavaScript’te güvenlik, tarayıcıda çalışan kodun kötü amaçlı kullanımını engellemeye odaklanır.

### 9.2 Hata Ayıklama Stratejileri

Hata ayıklama, geliştirme sürecinde hataları bulmak ve düzeltmek için önemlidir. Tarayıcı geliştirici araçları bu konuda yardımcı olabilir.

## 10. JavaScript Ekosistemi

### 10.1 Node.js

Node.js, JavaScript’in sunucu tarafında çalışmasını sağlayan bir platformdur.

### 10.2 npm Paket Yöneticisi

npm, JavaScript projelerinde bağımlılıkları yöneten bir paket yöneticisidir.

## 11. Mobil Uygulama Geliştirme

### 11.1 React Native

React Native, JavaScript kullanarak iOS ve Android uygulamaları geliştirmeyi sağlayan bir çerçevedir.

### 11.2 Apache Cordova

Apache Cordova, JavaScript ve HTML5 kullanarak çeşitli platformlarda mobil uygulama geliştirmeyi sağlar.

## 12. İleri Düzey Konular

### 12.1 Web Assembly

Web Assembly, tarayıcıda yüksek performanslı uygulamaların çalışmasını sağlayan bir teknolojidir.

### 12.2 Progressive Web Apps (PWA)

PWA’lar, web uygulamalarını geliştirmek için kullanılan modern bir yaklaşımdır.

## 13. JavaScript Topluluğu ve Kaynaklar

### 13.1 Forumlar ve Topluluklar

JavaScript geliştiricileri için birçok forum ve topluluk bulunmaktadır.

### 13.2 Öğrenme Kaynakları

Çevrimiçi kurslar, kitaplar ve interaktif platformlar, JavaScript öğrenmeye yönelik zengin kaynaklardır.

## 14. Gelecekte JavaScript

### 14.1 ECMAScript Standartları

ECMAScript standartları, JavaScript’in gelecekteki gelişimini belirleyen temel kuralları içerir.

### 14.2 Yeni Teknolojik Gelişmeler

Teknolojik yenilikler, JavaScript’in sürekli evrimini destekler.

## 15. Sonuç

### 15.1 JavaScript’un Gücü

JavaScript, modern web geliştirmenin vazgeçilmez bir parçasıdır ve sürekli gelişen bir dil olarak önemini korur.

### 15.2 Neden Öğrenmeliyiz?

JavaScript öğrenmek, web geliştirme becerilerinizi artırmanın yanı sıra genel programlama anlayışınızı da güçlendirir.

işte eğitim amaçlı basit JavaScript örnekleri:

1. Değişkenler ve Temel Operatörler:

javascript
// Değişken tanımlama
var sayi1 = 5;
var sayi2 = 10;

// Toplama işlemi
var toplam = sayi1 + sayi2;
console.log("Toplam:", toplam);

// Çıkarma işlemi
var fark = sayi2 - sayi1;
console.log("Fark:", fark);

// Çarpma işlemi
var carpim = sayi1 * sayi2;
console.log("Çarpım:", carpim);

// Bölme işlemi
var bolum = sayi2 / sayi1;
console.log("Bölüm:", bolum);

2. Koşullu İfadeler:

var not = 75;

if (not >= 50) {
console.log("Geçtiniz!");
} else {
console.log("Kaldınız.");
}

3. Döngüler:

// For döngüsü
for (var i = 1; i <= 5; i++) {
console.log("Sayı:", i);
}

// While döngüsü
var j = 0;
while (j < 3) {
console.log("Döngü: ", j);
j++;
}

4. Fonksiyonlar:

// Toplama fonksiyonu
function topla(sayi1, sayi2) {
return sayi1 + sayi2;
}

var sonuc = topla(3, 7);
console.log("Toplam:", sonuc);

5. Diziler:

// Dizi tanımlama
var renkler = ["Kırmızı", "Mavi", "Yeşil"];

// Diziye eleman ekleme
renkler.push("Sarı");

// Dizi elemanlarına erişim
console.log("Renkler:", renkler);
console.log("İlk Renk:", renkler[0]);

6. DOM İşlemleri:

htm
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>JavaScript Örnekleri</title>
</head>
<body>

<h1 id="baslik">Merhaba, Dünya!</h1>

<script>
// DOM üzerindeki bir elementi değiştirme
var baslikElementi = document.getElementById("baslik");
baslikElementi.innerHTML = "JavaScript İle Değiştirildi!";
</script>

</body>
</html>

Bu örnekler, temel JavaScript kavramlarına aşina olmanıza yardımcı olabilir. Daha karmaşık konuları anlamak için bu temel bilgileri kullanarak ilerleyebilirsiniz.