Angular ile SPA Geliştirme Süreci:
Başlangıç: Neden Angular?
Proje Kurulumuna Başlangıç:
```bash
npm install -g @angular/cli
```
Yukarıdaki komut ile Angular CLI'yi global olarak bilgisayarınıza kurduktan sonra, yeni bir Angular projesi oluşturmak için aşağıdaki komutu kullanabilirsiniz:
```bash
ng new spa-uygulama
```
Bu komut, size yeni bir Angular projesi kuracak ve gerekli dosyaları oluşturacaktır. Ardından projenin dizinine gidin:
```bash
cd spa-uygulama
```
Angular Projesinde Yapılacaklar:
SPA'larda sayfalar arası geçiş yaparken sayfa yenilenmez. Bunun yerine, içeriğin bir kısmı dinamik olarak güncellenir. Bunu sağlamak için Angular'da Angular Router kullanmamız gerekir. Projeye yönlendirme eklemek için şu komutu kullanarak gerekli dosyayı oluşturun:
```bash
ng generate module app-routing --flat --module=app
```
Bu komut, `app-routing.module.ts` dosyasını oluşturur ve bu dosyada tüm sayfa yönlendirmelerinizi yönetebilirsiniz.
# Bir Bileşen (Component) Oluşturmak:
```bash
ng generate component ana-sayfa
```
Bu komut, `ana-sayfa.component.ts`, `ana-sayfa.component.html`, ve `ana-sayfa.component.css` dosyalarını oluşturacaktır. Artık bu dosyalara tıkladığınızda, HTML, CSS ve TypeScript kodlarını rahatça yazabilirsiniz.
# Routing Yapılandırması:
```typescript
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { AnaSayfaComponent } from './ana-sayfa/ana-sayfa.component';
const routes: Routes = [
{ path: '', component: AnaSayfaComponent }
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
```
Bu kod, ana sayfa bileşeninizin rotasını tanımlar. Angular, uygulamanızda bir rota (path) ile eşleşen bileşeni yükler ve kullanıcıya gösterir.
# Uygulamayı Çalıştırma:
```bash
ng serve
```
Tarayıcınızda `http://localhost:4200` adresine giderek uygulamanızı görüntüleyebilirsiniz.
Angular ile SPA'ların Avantajları:
2. Kullanıcı Deneyimi: Modern web uygulamalarında kullanıcı deneyimi her şeydir. Angular, size hızlı ve interaktif kullanıcı arayüzleri oluşturma imkanı tanır.
3. SEO Dostu: Angular, sunucu tarafı render (SSR) kullanarak SEO dostu uygulamalar oluşturmanıza olanak tanır. Bu, arama motorlarının uygulamanızın içeriğini doğru şekilde indekslemesini sağlar.
4. Modüler Yapı: Angular, projelerinizi küçük parçalara ayırarak geliştirmeyi kolaylaştırır. Her bileşen bağımsız olarak geliştirilip test edilebilir.
Sonuç:
Başarılar dilerim! İyi kodlamalar!