> For the complete documentation index, see [llms.txt](https://uby-rn.gitbook.io/react-native/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://uby-rn.gitbook.io/react-native/ders-2.0/react-native-baslangic/state-nedir.md).

# State Nedir?

## State Nedir?

React Native'de, bileşenlerin iç durumunu yönetmek ve bu durumun değişmesine göre bileşenin yeniden render edilmesini sağlamak için kullanılan bir kavram olan "state", uygulamalarınızda dinamik ve etkileşimli içerik oluşturmanıza olanak tanır. Bu bölümde, React Native'de state kavramını daha detaylı olarak inceleyeceğiz.

### State Nedir?

State, bir bileşenin içindeki dinamik veriyi tutan ve güncellenen bir JavaScript nesnesidir. Bir bileşenin state'i, bileşenin iç durumunu temsil eder ve bileşenin görünümünü veya davranışını etkileyebilir. Örneğin, bir sayaç bileşeninin mevcut sayı değeri, bir formun giriş alanlarının içeriği veya bir açılır menünün açık veya kapalı olma durumu gibi şeyler state kullanılarak tutulabilir.

### State Nasıl Kullanılır?

State, bir bileşenin sınıf bileşeni olarak tanımlandığı durumlarda kullanılır. State, bileşenin `this.state` özelliği aracılığıyla erişilir ve `this.setState()` metoduyla güncellenir. İşte bir örnek:

```javascript
import React, { useState } from 'react';
import { Text, Button, View } from 'react-native';

const Counter = () => {
  // count state'i ve count state'ini güncellemek için setCount fonksiyonunu tanımla
  const [count, setCount] = useState(0);

  // count state'ini artırmak için bir fonksiyon tanımla
  const incrementCount = () => {
    setCount(count + 1);
  };

  return (
    <View>
      <Text>{count}</Text>
      <Button title="Artır" onPress={incrementCount} />
    </View>
  );
};

export default Counter;
```

Yukarıdaki örnekte, `Counter` adında bir sınıf bileşeni oluşturduk ve `count` adında bir state tanımladık. `incrementCount` fonksiyonu, `count` state'ini artırmak için `this.setState()` metodunu kullanarak state'i günceller.

### State'in Faydaları

State kullanmanın bazı faydaları şunlardır:

* **Dinamik içerik**: State, bileşenin içeriğinin zamanla değişmesini ve dinamik olarak güncellenmesini sağlar.
* **Bileşenler arası iletişim**: State, farklı bileşenler arasında veri alışverişi ve iletişimini kolaylaştırır.
* **Bileşen yapılandırması**: State, bileşenlerin yapılandırılmasını ve özelleştirilmesini sağlar, böylece bileşenlerinize farklı davranışlar ekleyebilirsiniz.

### Props ve State Arasındaki Farklar

Props ve state, React Native'de veri yönetimi için kullanılan iki ana kavramdır, ancak aralarında bazı farklar vardır:

* **Props**: Bileşenlere dışarıdan iletilen ve genellikle değişmeyen verilerdir.
* **State**: Bileşenin iç durumunu tutar ve bileşenin yeniden render edilmesine neden olabilecek değişken verilerdir.
