Rehberler

CRUD Nedir? Oluştur, Oku, Güncelle, Sil Açıklamalı

CRUD, oluşturma, okuma, güncelleme ve silme anlamına gelir — bir uygulamanın saklanan veriyle yaptığı dört temel işlem. Yeni bir müşteri eklemek oluşturma, müşteri listesini görmek okuma, telefon numarasını değiştirmek güncelleme ve müşteriyi kaldırmak silmedir. Çoğu iş uygulaması — CRM'ler, rezervasyon sistemleri, envanter takip araçları, yönetim panelleri — büyük ölçüde kurallar ve iyi bir arayüz eklenmiş CRUD'dur.

AI ile geliştirirken neden önemli?

CRUD, belirsiz bir uygulama fikrini kesin bir isteğe dönüştüren terminolojidir. "Tedarikçilerimizi yönetmek için bir uygulama" AI'ı tahmine bırakır. "Tedarikçileri oluştur, listele, düzenle ve sil; şu alanlarla" ise hangi ekranların, veritabanı işlemlerinin ve sunucu rotalarının kurulacağını tam olarak söyler.

Ayrıca size bir test kontrol listesi de verir. Uygulamanızdaki her kayıt türü için dört soruyu sorabilirsiniz: bir tane ekleyebilir miyim, hepsini görebilir miyim, birini değiştirebilir miyim ve birini kaldırabilir miyim — ve her birini yalnızca doğru kişiler yapabilir mi? AI ile geliştirilmiş uygulamaların şaşırtıcı bir kısmı kayıt oluşturabilir ama düzenleyemez ya da herkes herhangi bir şeyi silebilir.

Günlük hayattan bir benzetme: bir tarif kartı kutusu

Mutfak rafında duran bir tarif kartları kutusunu düşünün.

  • Oluşturma: Yeni bir kart yazıp kutuya koyarsınız.
  • Okuma: Kutuyu karıştırır ya da yalnızca lazanya kartını çekersiniz.
  • Güncelleme: "200 gr peynir" yazısının üzerini çizip "250 gr" yazarsınız.
  • Silme: Bir kartı çıkarıp atarsınız.

Şimdi kurallar ekleyin: kartları yalnızca baş aşçı atabilir, her kartın bir başlığı olmalı ve kimse aynı adla iki kart koyamaz. Bu, doğrulama ve yetkilendirmeli bir CRUD uygulamasıdır — ki gerçek uygulamaların çoğu böyledir.

CRUD her katmanda nasıl görünür?

Her işlem ekranda, sunucuda ve veritabanında karşılık bulur. Bunları yan yana görmek, uygulamaların nasıl inşa edildiği konusunda çok şey açıklar.

İşlemEkrandaAPI isteği (REST)Veritabanında SQL
OluşturmaBir "Yeni" düğmesi ve bir formPOST /api/suppliersINSERT
OkumaArama ve filtreli bir liste; bir detay sayfasıGET /api/suppliers ve GET /api/suppliers/42SELECT
GüncellemeBir "Düzenle" formu ya da satır içi düzenlemePUT ya da PATCH /api/suppliers/42UPDATE
SilmeOnay içeren bir "Sil" düğmesiDELETE /api/suppliers/42DELETE (ya da satırı silinmiş olarak işaretlemek)

Ekran ön yüzdür, API isteği ön yüzün arka uçla konuşma biçimidir, SQL ise arka ucun veritabanıyla konuşma biçimidir. Bu kelimeler yeniyse, API nedir ve veritabanı nedir yazılarına bakın.

Çalışan bir örnek: bir ekipman ödünç takip uygulaması

Bir okulun medya bölümü öğrencilere kamera ve mikrofon ödünç veriyor ve sürekli takibini kaybediyor. Basit bir uygulama istiyorlar.

Kayıtlar. İki tür şey var: ekipman (ad, tür, seri numarası, durum) ve ödünçler (hangi ekipman, hangi öğrenci, çıkış tarihi, iade tarihi, iade edildi tarihi).

Ekipman için CRUD:

  • Oluşturma: Personel seri numarasıyla yeni bir kamera ekler. Kural: seri numaraları benzersiz olmalı.
  • Okuma: Tüm ekipmanların bir listesi, türe ve "şu an müsait" durumuna göre filtrelenebilir; bir öğenin ödünç geçmişini gösteren bir detay sayfası.
  • Güncelleme: Durumu "tamir gerekiyor" olarak değiştirme.
  • Silme: Genellikle gerçek bir silme değildir. 30 geçmiş ödüncü olan bir kamera silinirse, o ödünç kayıtları bağlantısını kaybeder. Bunun yerine "emekli" olarak işaretlenir; böylece müsait listesinden çıkar ama geçmişi korunur. Buna yumuşak silme (soft delete) denir.

Ödünçler için CRUD:

  • Oluşturma: Bir ekipmanı bir öğrenciye çıkarın. Kural: zaten ödünçte olan bir ekipman çıkarılamaz.
  • Okuma: "Süresi geçmiş ödünçler" — vade tarihi geçmiş ve iade tarihi olmayan bir liste.
  • Güncelleme: Ekipman geri geldiğinde iade tarihini kaydetme.
  • Silme: Yalnızca personel, yanlışlıkla girilen ödünçler için.

Yetkiler. Öğrenciler müsait olanları okuyabilir; yalnızca personel oluşturabilir, güncelleyebilir ya da silebilir. Bu kontroller yalnızca düğmeleri gizlemekle değil, sunucuda çalışır.

Uygulamanın tamamı bu kadar. İlginç kısımlar — çift ödünç vermenin önlenmesi, süresi geçmiş liste, her öğe için geçmiş — düz CRUD'un üzerindeki kurallar ve sorgulardır.

Temel terimler

  • Kayıt (satır): Tek bir öğe, örneğin bir tedarikçi ya da bir ödünç.
  • Varlık / kaynak (entity / resource): Bir kayıt türü, örneğin "tedarikçiler". Her biri genellikle kendi tablosuna ve kendi CRUD ekran setine sahiptir.
  • Doğrulama (validation): Girdi kontrolleri — zorunlu alanlar, geçerli e-posta, pozitif miktar. Bunu kolaylık için formda, güvenlik için sunucuda yapın.
  • Yumuşak silme (soft delete): Kayıtları kalıcı olarak kaldırmak yerine silinmiş ya da arşivlenmiş olarak işaretlemek; böylece geçmiş ve bağlantılar korunur.
  • Sayfalama (pagination): Uzun bir listeyi sayfa sayfa göstermek; uygulama hızlı kalır.
  • Denetim günlüğü (audit log): Kimin neyi, ne zaman oluşturduğunu, değiştirdiğini ya da sildiğini gösteren kayıt.
  • Yönetim paneli (admin panel): Personelin bir uygulamanın verilerini yönetmesi için CRUD ekranları takımı.

Yaygın hatalar ve yanlış anlamalar

  • Dört işlemden birini unutmak. Uygulamalar sıklıkla oluşturma ve okuma içerir ama düzenleme içermez; böylece her yazım hatası için silip yeniden girmek gerekir. Her varlık için dördünü de kontrol edin.
  • Silmelerin şeyleri bozması. Faturaları olan bir müşteriyi silmek, sahipsiz faturalara yol açabilir ya da geçmişi silebilir. Varlık başına karar verin: silmeyi engelleyin, yumuşak silin ya da ilişkili kayıtları da silin.
  • Yetkilerin yalnızca arayüzde olması. Sil düğmesini gizlemek, birinin DELETE isteği göndermesini engellemez. Sunucu kimin istediğini kontrol etmelidir.
  • Kimliğe göre güncellerken sahipliği kontrol etmemek. Kullanıcı A, URL'deki bir sayıyı değiştirerek /api/notes/42 notunu düzenleyebiliyorsa, kullanıcı B'nin notunu da düzenleyebilir. Her güncelleme ve silme, kaydın isteği yapana ait olduğunu doğrulamalıdır.
  • Silmede onay olmaması. Tek bir yanlış dokunuş veriyi yok etmemeli. Bir onay adımı ya da geri alma ekleyin.
  • "CRUD basit demek, yapmaya değmez demek." Birçok değerli ürün, genel bir araçtan daha iyi bir iş akışına uyan CRUD uygulamalarıdır.

AI oluşturucunuzdan ne istemelisiniz?

Bu kalıbı her varlık için, birer birer kullanın:

Tedarikçiler özelliğini liste, oluşturma, düzenleme ve silme ile oluştur. Alanlar: ad (zorunlu), iletişim e-postası (geçerli e-posta), telefon, kategori (şunlardan biri: gıda, ambalaj, temizlik), notlar. Ada göre arama ve kategoriye göre filtreli liste, sayfa başına 20. Silmeden önce onay iste; tedarikçinin siparişi varsa silmek yerine arşivle. Yalnızca giriş yapmış personel oluşturabilir, düzenleyebilir ya da arşivleyebilir — bunu sunucuda zorla.

Sonra dört işlemin hepsini, yetkili bir kullanıcı olarak ve erişimi olmaması gereken biri olarak test edin. Bir varlık çalıştığında bir sonrakini ekleyin. Dahili araç nasıl oluşturulur yazısı, CRUD ekranlarının nasıl tam bir yönetim uygulamasına dönüştüğünü gösterir; Postgres nedir ise bu uygulamaların çoğunun üzerinde çalıştığı veritabanını açıklar.

Mythex'te CRUD uygulamaları

CRUD uygulamaları, AI uygulama oluşturucularının en iyi yaptığı şeylerden biridir ve Mythex da bir istisna değildir. Sohbette varlığı ve alanlarını isteyin; Mythex projeye bir Postgres veritabanı ekler, tabloyu oluşturur ve canlı önizlemede liste, form ve detay ekranlarını kurar. Ardından akışı kontrol etmek için /test komutunu çalıştırabilirsiniz. Dokümantasyonda başlangıç istemiyle birlikte bir CRUD uygulama tarifi bulunur; başlamak için dahili araç oluşturucu ve gösterge paneli şablonları iyi yerlerdir.

Sorular

CRUD neyin kısaltmasıdır?

CRUD; create (oluşturma), read (okuma), update (güncelleme) ve delete (silme) anlamına gelir: yeni bir kayıt eklemek, kayıtları görüntülemek, bir kaydı değiştirmek ve birini kaldırmak. Veri saklayan neredeyse her uygulama bu dört işlemden oluşur.

CRUD uygulaması nedir?

CRUD uygulaması, ana işi formlar, listeler ve detay sayfaları aracılığıyla kayıtları yönetmek olan bir uygulamadır; örneğin bir CRM, envanter takip aracı, rezervasyon yönetim paneli ya da iş ilanı sitesinin arka ofis yönetimi. Çoğu dahili araç ve yönetim paneli bir CRUD uygulamasıdır.

CRUD, REST API'lerle nasıl ilişkilidir?

Tipik bir REST API'de oluşturma POST isteğiyle, okuma GET isteğiyle, güncelleme PUT ya da PATCH isteğiyle ve silme DELETE isteğiyle yapılır. Arka uç, buna karşılık gelen veritabanı işlemini çalıştırır: INSERT, SELECT, UPDATE ya da DELETE.

CRUD uygulaması değer yaratmak için çok basit mi?

Hayır. Kullanışlı birçok iş yazılımı, üzerine iyi kurallar, yetkiler ve raporlar eklenmiş CRUD'dur. Değer, verileri iyi modellemekte ve iş akışına uygun olmakta yatar; alışılmadık bir teknolojide değil.

Mythex · Pricing · Yapay zekayla her şeyi yapın · Web sitesi ve uygulama şablonları · Mythex karşılaştırmaları · Yapay zekayla uygulama geliştirme sözlüğü · Yapay zekayla uygulama geliştirme için ücretsiz araçlar · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)