CodeBlanks Logo Icon CodeBlanks

Proje tasarımı

E-ticaret uygulamasının yapısını tasarlarsın.

Proje: E-ticaret

Bu projede küçük bir e-ticaret uygulaması yapacağız. Üç ekran olacak: ürün listesi, ürün detayı ve sepet. Veriyi bir products dizisinde tutacağız; seçilen ürünü state ile, sepeti ise Context ile yöneteceğiz.

Her ders bir parça ekler ve önceki dersin kodu üzerine kurulur. Önce ürün verisini tanımlar, sonra listeyi, ardından detayı ve sepeti bağlarız. Son ders her şeyi birleştirir.

Ürün veri modeli

Her ürün bir nesne olarak tutulur: { id: '1', name: 'Kalem', price: 20 }. id benzersiz anahtar, name görünen ad, price fiyat. FlatList id'yi keyExtractor için kullanır.

Ürünleri bir diziye koy: const products = [...]. Bu dizi uygulamanın veri kaynağıdır; listeleme, detay ve sepet hep buradan okur.

Uygulama Ürün verisini tanımla

Bir products dizisi tanımla. İçinde en az iki ürün olsun; her ürünün id, name ve price alanları bulunsun.

Başlangıç kodu

App.js
import React from 'react';
import { Text, View } from 'react-native';

// Ürün verisini buraya tanımla

export default function App() {
  return (
    <View>
      <Text>Mağaza</Text>
    </View>
  );
}

Örnek çözüm

App.js
import React from 'react';
import { Text, View } from 'react-native';

const products = [
  { id: '1', name: 'Kalem', price: 20 },
  { id: '2', name: 'Defter', price: 35 },
];

export default function App() {
  return (
    <View>
      <Text>Mağaza</Text>
    </View>
  );
}

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Sepet state'i neden Context ile tutuluyor?

  • Her ekrandan erişilecek Doğru cevap
  • Yalnızca bir ekranda lazım
  • Style için gerekli
  • FlatList gerektirir

Açıklama: Sepete birden fazla ekrandan erişilir; Context bunu paylaştırır.

2 Fiyat alanını yaz

Soru
{ id: '1', name: 'Kalem', ____: 20 }
Cevap
{ id: '1', name: 'Kalem', price: 20 }

Açıklama: price alanı ürünün fiyatını tutar.

3 Bileşenleri eşleştir

Kavram Anlamı
products Veri dizisi
FlatList Liste çizen bileşen
Context Paylaşılan sepet
state Seçilen ürün

Orta seviye bölümündeki tüm dersler