KoderKoder.ai
FiyatlandırmaKurumsalEğitimYatırımcılar için
Giriş YapBaşla

Ürün

FiyatlandırmaKurumsalYatırımcılar için

Kaynaklar

Bize UlaşınDestekEğitimBlog

Yasal

Gizlilik PolitikasıKullanım KoşullarıGüvenlikKabul Edilebilir Kullanım PolitikasıKötüye Kullanımı Bildir

Sosyal

LinkedInTwitter
Koder.ai
Dil

© 2026 Koder.ai. Tüm hakları saklıdır.

Ana Sayfa›Blog›Sohbet ile oluşturulan uygulamalar için yeniden düzenleme kontrol listesi: prototipten kod tabanına
26 Ara 2025·6 dk

Sohbet ile oluşturulan uygulamalar için yeniden düzenleme kontrol listesi: prototipten kod tabanına

Bu yeniden düzenleme kontrol listesini kullanarak sohbet prototipini daha net isimlendirme, klasör yapısı, durum yönetimi, API sınırları ve daha az tekrar ile sürdürülebilir bir kod tabanına dönüştürün.

Sohbet ile oluşturulan uygulamalar için yeniden düzenleme kontrol listesi: prototipten kod tabanına

Sohbet prototipleri neden çabuk karışır

Sohbet prototipi, ne istediğinizi düz metinle tarif edip aracın parçaları üretmesine izin vererek oluşturduğunuz uygulamanın versiyonudur. Koder.ai gibi platformlarla bu doğal gelir: bir ekran, bir form veya bir API çağrısı isteyin, birkaç dakika içinde çalışan bir şeyiniz olur.

Bunun bedeli, hızın genellikle “şimdi çalışıyor”u optimize etmesi, “sonradan değiştirmesi kolay”ı değil, olmasıdır. Her yeni istek genellikle bir bileşen daha, bir durum değişkeni daha veya küçük bir tweak ile kopyalanmış bir fonksiyon daha demektir. Birkaç tur sonra uygulama hala çalışır, ama küçük değişiklikler bile riskli hissetmeye başlar.

Prototip modu tanıdık bir kokudur:

  • Yeniden adlandırma veya dosya taşıma yapmazsınız çünkü bir şey kırılacak diye korkarsınız.
  • Basit bir UI değişikliği birkaç yerde düzenleme gerektirir.
  • Hata ayıklama, çok fazla işi aynı anda yapan devasa bileşenleri okumak anlamına gelir.
  • Aynı mantık iki ya da üç hafif farklı sürümde vardır.
  • Veri kuralları UI, API çağrıları ve rastgele yardımcılar arasında dağınıktır.

Hızlı, sohbet destekli değişiklikler sorumlulukları da bulanıklaştırır. Tek bir sayfa veri alabilir, doğrulayabilir, formatlayabilir, hataları işleyebilir ve UI'ı render edebilir. İsimlendirme tutarsızlaşır çünkü her yeni prompt farklı kelimeler seçer. Kopyala-yapıştır, ortak bir yardımcı tasarlamaktan daha hızlı olduğu için büyür.

“Sürdürülebilir” kusursuz mimari demek değildir. Tek başına çalışan bir geliştirici veya küçük bir ekip için genellikle şunları yapabilmek demektir: dosyaları hızlıca bulmak, her dosyanın bir ana işi olması, durumun net bir yeri olması (lokal, global, sunucu), UI ile backend arasında temiz bir sınır ve bir özelliği değiştirirken üç diğer şeyi kırmamak.

İyi bir yeniden düzenleme kontrol listesi bu dağınık, hızlı prototipi bir adımda güvenli bir şekilde bu günlük garantilere dönüştürür.

Yeniden düzenlemeden önce: davranışı koruyun ve hedef belirleyin

Hedef belirsiz olduğunda yeniden düzenlemeler kontrolden çıkar. Neden yaptığınızı açıkça seçin: daha hızlı özellik eklemek, hataları azaltmak veya yeni birinin projeyi bir öğleden sonra içinde anlamasını sağlamak. "Her şeyi temizle"ye çalışırsanız yeniden yazma yapmış olursunuz, yeniden düzenleme değil.

Kapsam etrafında sıkı bir sınır çizin. Bir özellik alanı seçin (kimlik doğrulama, ödeme, yönetici paneli) ve diğer her şeyi kapsam dışı kabul edin, çirkin görünse bile. Bu kısıtlama güvenli temizliği yeniden bir yeniden yazmaya dönüştürmekten alıkoyar.

Koda dokunmadan önce kırılmaması gereken kullanıcı akışlarını yazın. Somut tutun: "Oturum aç, panoya gel, bir kayıt oluştur, listede gör, çıkış yap." Sohbetle oluşturulan uygulamalar bu akışları genellikle birinin kafasında saklar. Her küçük değişiklikten sonra tekrar kontrol edebilmek için kağıda dökün.

Sonra tekrar tekrar çalıştırabileceğiniz küçük bir başarı kontrolü seti tanımlayın:

  • Uygulama derlenir ve anlamadığınız yeni uyarılar olmadan başlar.
  • Seçtiğiniz alandaki ana ekranlar doğru şekilde yüklenir ve render edilir.
  • Gerçek veri ile ana eylemler çalışır (kaydet, sil, ara, gönder).
  • Hatalar boş bir ekran yerine yardımcı bir mesaj gösterir.
  • Bir değişiklik sizi şaşırttığında geri alabileceğiniz bir yolunuz var.

Platformunuz snapshot ve rollback destekliyorsa (örneğin Koder.ai üzerinde geliştirirken), bu güvenlik ağı kullanın. Bu sizi daha küçük adımlara iter: bir dilimi yeniden düzenle, kontrolleri çalıştır, snapshot al ve devam et.

Gelecek değişikliği kolaylaştıran isimlendirme

Sohbet ile oluşturulan uygulamalarda isimler genellikle konuşmayı yansıtır, ürünü değil. Erken temizlemek yatırıma değer çünkü her gelecek değişiklik arama, tarama ve tahmin etme ile başlar. İyi isimler bu tahmin işini azaltır.

Tarihi anlatan her şeyi yeniden adlandırarak başlayın. temp.ts, final2.tsx veya newNewComponent gibi dosyalar uygulamanın gerçek şeklini saklar. Bunları kodun bugün ne yaptığını yansıtan adlarla değiştirin.

Basit bir isimlendirme kural seti seçin ve her yerde uygulayın. Örnek: React bileşenleri PascalCase, hook'lar useThing, yardımcılar net fiiller kullanır: formatPrice veya parseDate. Tutarlılık, spesifik stilden daha önemlidir.

Kontrollü bir geçiş için hızlı bir liste:

  • Bileşenler: kullanıcıya yönelik sorumluluğa göre adlandırın (InvoiceList, DataRenderer değil).
  • Fonksiyonlar: eyleme göre adlandırın (saveDraft, handleSubmit2 değil).
  • Booleanlar: is/has/can ile başlayın (isLoading, hasPaid).
  • Olay işleyiciler: prop'lar için onX, bileşen içinde handleX.
  • Dosyalar: ana export ile eşleşsin (InvoiceList.tsx InvoiceList ihraç eder).

Yeniden adlandırırken ölü kodu ve kullanılmayan prop'ları silin. Aksi halde gelecekte kafa karıştıran "belki lazım" parçalarını taşımış olursunuz. Sildikten sonra, kaldırdığınız şeyin herhangi bir bağımlılığı olup olmadığını doğrulamak için UI'da hızlı bir tur yapın.

Yalnızca niyet açık değilse yorum ekleyin. "Aramayı rate limitleri aşmamak için debounce ediyoruz" gibi bir not yardımcı olur. Kodu tekrarlayan yorumlar ise gereksizdir.

Snapshot ve rollback, yeniden adlandırma geçişlerini güvenle yapmayı kolaylaştırır: bir seferde yeniden adlandırıp yeniden düzenleyin, sonra bir import veya prop kaçırdıysanız hızlıca geri dönün.

Büyüdükçe ağrı vermeyen klasör yapısı

Sohbetle oluşturulmuş prototipler genellikle "en hızlı oluşturduğun dosya" olarak başlar. Buradaki hedef mükemmeliyet değil; öngörülebilirliktir: herkesin yeni bir özellik ekleyeceği, bir hatayı düzelteceği veya bir ekranı ayarlayacağı yerde dosyayı açmadan bilebilmesidir.

Bir organizasyon kuralı seçin ve ona bağlı kalın

Kod gruplamak için bir birincil yol seçin ve tutarlı olun. Birçok ekip değişikliklerin genellikle özellik şeklinde olduğunu gördüğü için özellik-öncelikli yapı ile iyi işler.

Özellik gruplaması olsa bile, her özellik içinde sorumlulukları ayırın: UI (components/screens), durum (stores/hooks) ve veri erişimi (API çağrıları). Bu, "tek büyük dosya"nın yeni bir klasörde yeniden ortaya çıkmasını engeller.

Pratik bir başlangıç yapısı

Bir React web uygulaması için okunması kolay basit bir yapı şöyle görünebilir:

src/
  app/            # app shell, routes, layout
  features/       # grouped by feature
    auth/
      ui/
      state/
      api/
    projects/
      ui/
      state/
      api/
  shared/
    ui/           # buttons, modals, form controls
    lib/          # small helpers (date, format, validators)
    api/          # API client setup, interceptors
    types/        # shared types/models
  assets/

Bunu bir labirente dönüştürmemesi için birkaç kural:

  • Klasörleri sığ tutun. Bir bileşeni bulmak için dört seviye derinlik gerekiyorsa, yapı fazla karmaşıktır.
  • shared kodunu zayıf tutun. Bir şey sadece bir özellik tarafından kullanılıyorsa, o özellik içinde tutun.
  • api klasörünün bir anlamı olsun: sunucu ile konuşmak. İş kurallarını istek dosyalarına karıştırmayın.
  • Sabitler ve tipler için bir ev belirleyin. Özellik-özeli olanları özelliğin içinde bırakın, gerçekten paylaşılanları shared/types içine koyun.
  • Klasörleri isimlendirirken isimler isim (auth, projects), dosyaları ise ne olduklarına göre (ProjectList, useProjects, projectsApi) adlandırın.

Eğer Koder.ai üzerinde erken kodu dışa aktardıysanız, böyle öngörülebilir bir yapıya taşınmak güçlü bir sonraki adımdır. Bu, her yeni ekran için net bir iniş yeri sağlar ve yeniden yazmayı zorunlu kılmaz.

Durum yönetimi: ne nerede yaşar diye karar verin

İhtiyacınıza uygun bir plan seçin
Proje büyüdüğünde free'den pro, business veya enterprise planına geçin.
Şimdi Yükselt

Hızlı sohbetle oluşturulan uygulamalar genellikle birkaç yerde çoğaltılmış durum nedeniyle "çalışır" görünür, ama henüz temizlenmemiştir. Yeniden düzenlemenin hedefi basittir: her durum parçası için bir açık sahibi ve okunup güncellenmesinin öngörülebilir bir yolu.

İlk olarak sahip olduğunuz durum türlerini adlandırın:

  • UI durumu (modal, sekmeler, seçili satır, tema)
  • Sunucu verisi (listeler, detay kayıtları, izinler)
  • Form durumu (inputlar, doğrulama hataları, dirty flag'ler)
  • Türetilmiş durum (sayım, filtrelenmiş görünümler, hesaplanmış toplamlar)
  • Oturum durumu (mevcut kullanıcı, özellik bayrakları)

Sonra her kovayı nereye koyacağınıza karar verin. UI durumu genellikle onu gerektiren bileşene en yakın kalır. Form durumu form ile kalır. Sunucu verisi birden fazla yerel durumda çoğaltılmamalıdır. Bunun yerine temiz bir şekilde yenilenecek ve geçersiz kılınacak tek bir sunucu-önbellek katmanında veya tek bir paylaşılan store'da tutulmalıdır.

İki gerçeklik kaynağına dikkat edin. Yaygın bir React prototip tuzağı items'ı global bir store'da tutup aynı zamanda bir bileşende de tutmak ve sonra bunları eşitlemeye çalışmaktır. Bir sahip seçin. Filtrelenmiş bir görünüm gerekiyorsa filtre girdilerini saklayın, filtrelenmiş sonucu saklamayın.

Veri akışını görünür kılmak için birkaç önemli değeri seçin ve yazın:

  • Kim sahibi
  • Kim okuyor
  • Kim güncelleyebilir
  • Güncelleme ne tetikler

Bir durum deseni seçin ve tutarlı bir şekilde uygulayın. Mükemmelliğe ihtiyacınız yok. Takım çapında durumun nerede yaşadığı ve güncellemelerin nasıl yapıldığı konusunda bir beklenti olmalı.

API sınırları: net bir çizgi çizin

Sohbetle oluşturulan prototipler genellikle UI'nın "şu an için işe yarayan her şeyle" konuşmasına izin verir: ham veritabanı alanları, iç ID'ler veya ekranlara göre farklı şekiller döndüren endpoint'ler. Bu hız size sonradan pahalıya mal olur çünkü her ekran fazladan iş yapar ve değişiklikler riskli hale gelir.

Temiz bir sınır demek, ön yüzün sadece küçük, stabil bir işlem setini bilmesi ve bu işlemlerin öngörülebilir veri döndürmesi demektir. Pratik bir hareket, UI'nın çağrı yapabileceği tek yer olan küçük bir API istemci katmanı yaratmaktır.

UI'nın bilmemesi gerekenler

Bir ekran tablo isimlerini, join kurallarını veya hangi ID'lerin içsel olduğunu bilmesi gerekiyorsa sınır sızıyor demektir. UI veritabanı detaylarına (ör. PostgreSQL primary key veya created_by_user_id) bağımlı olmamalıdır. taskId, title, status ve dueDate gibi ürün-seviyeli şekiller döndürün ve veritabanı ayrıntılarını sunucuda tutun.

Sınırın sızdığını gösteren işaretler:

  • Bileşenler doğrudan URL, query string veya header inşa ediyor.
  • Ekranlar birkaç farklı response şeklini "neredeyse aynı" nesneye eşliyor.
  • Hatalar her sayfada farklı şekilde ele alınıyor.
  • UI kodu veritabanına özel alanları kontrol ediyor (ör. deleted_at).
  • Backend değişiklikleri birçok ekranı kırıyor.

Sınırı sıkıcı ve tutarlı kılın

Burası için kontrol listesi zihniyeti: daha az giriş noktası, daha az shape, daha az sürpriz. İstek ve yanıt şekillerini normalize edin ki her ekran daha az eşleme yapsın.

Okunması kolay basit bir şablon:

  • Her domain (auth, tasks, billing) için bir API modülü
  • Sunucuyu çağırmadan önce temel giriş kontrolü (zorunlu alanlar, basit formatlar)
  • UI'ya döndürülecek tek tutarlı hata şekli (message, code, retryable)
  • İş kuralları UI dışında yaşar (bileşenlerin içinde gömülü olmasın)

Koder.ai üzerinde geliştiriyorsanız, üretilen endpoint'leri bir başlangıç noktası olarak görün, sonra stabil bir istemci arayüzü kilitleyin. Böylece backend'i sonra ayarlamak tüm bileşenleri yeniden yazmanızı gerektirmez.

Yinelenen mantığı kaldırırken çöplük yaratmamak

Tek bir uçtan uca akış üzerinde çalışın
Basit bir görev veya faturalama dilimi oluşturun, sonra kendi kontrol listenizle yeniden düzenleyin.
Projeye Başla

Yinelenme sohbetle oluşturulmuş prototiplerde normaldir. Bir özellik istediniz, çalıştı; sonra benzer bir şey istediniz ve kopyala-yapıştır en hızlı yol oldu. Hedef "tekrar sıfır" değil; "değiştirmek için belli tek bir yer" olmalıdır.

Tekrarlanan ve kural değiştiğinde sessizce bozulacak blokları arayın: input doğrulama, tarih ve para formatlama, API response haritalama, izin kontrolleri. Benzer hata mesajları, regex'ler veya tekrar eden if role === ... blokları genelde en büyük kazanımları bulur.

Açık bir adla tanımlanabilecek en küçük parçayı çıkarın. Tam bir "validation module" oluşturmadan önce isValidPhone()'ı ayırın. Küçük yardımcılar adlandırması daha kolay, test etmesi daha kolay ve çöplüğe dönüşme olasılığı daha azdır.

Alakasız yardımcıları toplayan jenerik bir utils klasöründen kaçının. Kodu yaptığı işleve ve nerede kullanıldığına göre adlandırın: formatMoney, mapUserDtoToUser veya canEditInvoice gibi. En çok kullanan özelliğe yakın tutun ve gerçekten iki yerden fazlaca kullanılıyorsa paylaşılan koda taşıyın.

Tekrarlara yönelik pratik mini kontrol listesi:

  • Tekrarlanan bir bloğu seçin ve en iyi versiyonu belirleyin.
  • Açık bir adın arkasına çıkarın.
  • Kopyaları helper çağrısıyla değiştirin ("neredeyse aynı" dallardan kaçının).
  • Küçük bir kontrol ekleyin: küçük bir test, birkaç gerçek girdi veya temel bir runtime assertion.
  • Eski kopyaları hemen silin ki sürüklenmesinler.

Koder.ai'de hızlı inşa ettiyseniz, aynı mapping veya izin mantığını ekranlar ve endpoint'ler arasında tekrar eden şekilde bulmak yaygındır. Bir kez konsolide edin ve gelecekteki değişiklikler tek bir yere düşer.

Basit bir örnek: sohbetle oluşturulmuş bir uygulamayı gerçek bir projeye dönüştürmek

Koder.ai kullanarak e-posta ile girişli küçük bir görev listesi uygulaması oluşturduğunuzu varsayın. Çalışıyor, ama kod tek bir uzun düşünce gibi: UI listeyi render ediyor, butonlar fetch çağrısı yapıyor, yanıtlar inline formatlanıyor ve hata işleme ekranlar arasında farklı.

Birkaç hızlı iterasyondan sonra prototipler genellikle şöyle olur:

  • Bileşenler doğrudan API çağrısı yapar, her biri biraz farklı şekilde.
  • Tarih ve durum formatlama birden fazla dosyaya kopyalanmıştır.
  • Dosyalar ilk oluşturuldukları yere dağılmıştır, bu yüzden aramak gerekir.
  • İsimler sohbet prompt'larına göre, uygulamanın bugün anlamına göre değil.

İyi bir başlangıç, "görevleri" temiz bir özellik haline getirmek gibi dar bir hedeftir.

İlk olarak bir API istemcisi çıkarın. Sunucu ile nasıl konuşulacağını bilen tek bir yer oluşturun (auth header, JSON parsing, tutarlı hatalar). Sonra ekranları tasksApi.list() ve tasksApi.create() çağıracak şekilde güncelleyin, ad-hoc fetch'ler yerine.

Sonra birkaç şeyi yeniden adlandırıp taşımayı yapın ki yapı düşüncenize uysun. TaskThing'i TaskItem olarak yeniden adlandırın, giriş ekranlarını auth alanına taşıyın ve görevle ilgili UI ile mantığı birlikte gruplayın.

Son olarak, kopyalanmış formatlamayı bir eve verin. Göreve özgü formatlamayı tasks özelliğinin yanına koyun (rastgele bir shared dosyada değil) ve küçük tutun.

Geri dönüşü, etiketler gibi yeni bir özellik eklediğinizde belli olur. Artık etiket mantığını üç ekrana yaymak yerine görev modelini güncellersiniz, bir API metodu eklersiniz ve görev bileşenlerini zaten doğru yerde düzenlemiş olursunuz.

Güvenli kalan adım adım yeniden düzenleme sırası

Planlama modunda tasarla
Sonraki kod jenerasyonundan önce isimlendirme, klasörler ve sınırları haritalayın.
Önce Planla

Güvenli yeniden düzenleme büyük yeniden yazmalar değil, bir küçük yolun çalışır halde kalması ve etrafını düzene sokmaktır. Bir ekranla başlayıp veritabanına veya dış servise kadar uzanan bir dilim seçin. "Görev oluştur" veya "ödeme" gibi bir dilim, "tüm frontend'i temizle"den daha iyidir.

Yapıya dokunmadan önce 3–5 başarı kontrolü yazın ki dakikalar içinde yeniden çalıştırabilesiniz. Örneğin: "Oturum açabiliyorum, bir öğe ekleyebiliyorum, yeniliyorum ve öğe hala orada." Koder.ai üzerinde geliştirdiyseniz önce snapshot alın ki bir şey bozulursa hızlıca geri dönebilesiniz.

Genelde sakin kalan bir yeniden düzenleme sırası:

  1. Bir uçtan uca dilimi seçin ve bugün çalıştığını doğrulayın. Davranışı dondurun. Bariz hataları düzeltin ama yeniden tasarım yapmayın.
  2. Anlamı netleştirmek için yeniden adlandırın, sonra dosyaları yeni yapıya taşıyın. Değişiklikleri küçük tutun ki geri alabilin.
  3. API sınırını çıkarın, sonra iş kurallarını UI'dan dışarı itin. UI createInvoice() veya fetchProfile() gibi basit fonksiyonları çağırmalı, butonların içinde kural toplamayın.
  4. Tekrarı kaldırın ve durumu basitleştirin. İki ekran aynı verinin ayrı sürümlerini tutuyorsa bir kaynak seçin.
  5. Temizleyin, başarı kontrollerinizi tekrar çalıştırın ve durun (scope'u genişletmeyin).

Her dilimden sonra durmak amaçtır. Bu şekilde steady ilerleme, daha az sürpriz ve her geçişte daha kolay değişen bir kod tabanı elde edersiniz.

Yaygın yeniden düzenleme hataları ve tuzakları

En büyük tuzak, aktif olarak sizi rahatsız eden şeyi düzeltmeden önce mükemmel bir mimari tasarlamaya çalışmaktır. Sohbetle oluşturulmuş bir uygulama gıcırdadığında acı genellikle spesifiktir: kafa karıştıran bir isim, dağınık bir klasör, bir durum hatası veya her yerde sızan bir API çağrısı. Önce bunları düzeltin ve desenlerin ortaya çıkmasına izin verin.

Diğer yaygın hata, tüm uygulamayı tek seferde yeniden düzenlemektir. Daha hızlı hissettirse de incelemeleri zorlaştırır ve hataların izole edilmesini güçleştirir. Her yeniden düzenlemeyi geri alabilecek küçük bir yama gibi ele alın.

Yaygın tuzaklar:

  • Aynı anda büyük çaplı çapraz-değişiklikler yapmak (klasörler, isimlendirme, durum, API) böylece neyin kırdığını söyleyemezsiniz.
  • Soyutlamaları çok erken eklemek ("ServiceFactory" veya "BaseStore") iki gerçek kullanım durumu olmadan.
  • Yinelenen mantığı "şimdilik" diye ikinci bir dosyada tutup sonra silmeyi unutmak.
  • Hızlı olduğu için sunucu kurallarını UI içine karıştırmak (izin doğrulamasını React bileşeninde yapmak gibi).
  • Paylaşılan yardımcı klasörü bir çöplüğe dönüştürmek ve güvenilmez hale getirmek.

Gerçekçi bir örnek fiyat hesaplamasıdır. Aynı mantık checkout ekranında, sipariş özeti widget'ında ve backend endpoint'inde varsa, sadece UI'ı değiştirseniz bile backend farklı bir toplam üretebilir. Kuralı tek bir yerde (çoğunlukla sunucu) tutun ve UI API'nın döndürdüğünü göster.

SSS

Sohbet ile oluşturulmuş bir prototipi ne zaman yeniden düzenlemeliyim?

Değişiklikler küçükken bile küçük değişiklikler riskli hissedildiğinde başlayın: dosya adlarını yeniden adlandırmaktan kaçınıyorsanız, UI değişiklikleri birden fazla yerde düzenleme gerektiriyorsa ve aynı mantığı hafif farklılıklarla kopyaladığınızı sık sık görüyorsanız.

İyi bir tetikleyici, kodu anlamaya harcadığınız zamanın yeni özelliği göndermekten daha fazla olmasıdır.

Her şeyi kırmadan yeniden düzenlemeye başlamak için en güvenli yol nedir?

Önce bir net amaç seçin (örneğin: “görevler alanında daha hızlı özellik ekleyebilmek” veya “ödeme sürecinde hataları azaltmak”). Sonra bir özellik alanı etrafında sıkı bir kapsam sınırı belirleyin.

Her küçük değişiklikten sonra yeniden çalıştıracağınız 3–5 kullanıcı akışı yazın (oturum aç, kayıt oluştur, yenile, sil, çıkış yap gibi).

Dağınık bir kod tabanında önce neyi yeniden adlandırmalıyım?

Varsayılan: Her gün okuduğunuz şeylerle başlayın—dosyalar, bileşenler, fonksiyonlar ve önemli değişkenler.

Hızlıça yardımcı olacak pratik kurallar:

  • Bileşenler: kullanıcı sorumluluğuna göre adlandırın (InvoiceList)
  • Fonksiyonlar: eyleme göre adlandırın (saveDraft)
  • Booleanlar: is/has/can ile başlayın (isLoading)
  • İşleyiciler: prop'lar için onX, bileşen içinde handleX

İlerlerken ölü kodu silin ki “belki lazım olur” parçalarını taşımayın.

Sohbet tarafından üretilmiş React uygulamaları için hangi klasör yapısı iyi çalışır?

Bir kural seçin ve ona bağlı kalın. Yaygın bir varsayılan, özellik-öncelikli yapıdır: “auth” veya “projects” için her şeyi birlikte tutmak.

Her özellik içinde net bir ayrım tutun:

  • ui/ ekranlar/bileşenler için
  • state/ store'lar/hooks için
  • api/ sunucu çağrıları için

Klasörleri sığ tutun ve özellik-özel kodu shared/ içine erken taşımayın.

Aynı veri birden fazla yerde olduğunda durumu nasıl temizlerim?

Her bir durum türü için bir net sahibi kullanın:

  • UI durumu (modal, sekme, seçili satır, tema) bileşene yakın tutulur
  • Form durumu form ile kalır
  • Sunucu verisi bir önbellek/store katmanında tutulmalı, birden fazla bileşende kopyalanmamalı

İki kaynaklı doğruluk tuzağından kaçının. Filtrelenmiş bir görünüm gerekiyorsa, filtre girdilerini saklayın, hem girdileri hem filtrelenmiş sonucu saklamayın.

Frontend ile backend arasında nasıl temiz bir API sınırı çizerim?

Küçük, stabil bir API istemci katmanı oluşturun ve UI'nın sunucuya çağrı yapmak için sadece orayı kullanmasını sağlayın.

UI'nın bilmemesi gerekenler: tablo isimleri, join kuralları veya içsel ID'ler gibi veritabanı detayları. Ürün seviyesinde bir yapıya dönün (taskId, title, status, dueDate) ve veritabanı ayrıntılarını sunucuda bırakın.

Hataların her sayfada farklı şekilde ele alınması, bileşenlerin URL/başlık kurması veya birkaç farklı response shape'ini tek bir nesneye uyarlamaya çalışmak sınırın sızdığının işaretleridir.

Yardımcı çöplüğü oluşturmadan yinelenen mantığı nasıl kaldırırım?

Tekrarlama prototiplerde normaldir. Ama hedef “sıfır tekrar” değil, “değiştirileceği belli tek yer” olmalıdır.

Önce sessizce bozulacak kuralları arayın: doğrulama, tarih/para formatlama, response mapping, izin kontrolleri. En küçük parçayı ayrı fonksiyon haline getirin (ör. isValidPhone()), kopyaları değiştirin ve eski kopyaları hemen silin.

Genel bir utils çantası yaratmaktan kaçının—yardımcıları işine ve konumuna göre adlandırın ve en çok kullanan özellikte tutun.

Değişiklikleri güvenli tutmak için hangi sırayla yeniden düzenlemeliyim?

Bir dilim seçin: bir ekranla başlayıp veritabanına veya dış servise kadar uzanan uçtan uca bir parça. “Görev oluştur” veya “checkout” gibi bir parça, “tüm frontend’i temizle”den daha güvenlidir.

Örnek sakin sıra:

  1. Bir dilimi seçin ve bugün çalıştığını doğrulayın. Davranışı dondurun.
  2. Yeniden adlandırma ve dosya taşıma ile yapılandırmayı düzene koyun.
  3. API sınırını çıkarın ve iş kurallarını UI'dan uzaklaştırın.
  4. Tekrarları kaldırın ve durumu sadeleştirin.
  5. Temizleyin, kontrolleri yeniden çalıştırın ve durun.
Sohbet ile oluşturulmuş uygulamalarda en sık yapılan yeniden düzenleme hataları nelerdir?

En büyük tuzak, sorunlu olanı düzeltmeden mükemmel bir mimari tasarlamaya çalışmaktır. Cızırtı genellikle belirgindir: kafa karıştıran bir isim, dağınık bir klasör, durum hatası veya her yerde sızan bir API çağrısı. Önce bunları düzeltin ve desenlerin doğal olarak ortaya çıkmasına izin verin.

Diğer tuzaklar:

  • Uygulamayı baştan aşağı tek seferde değiştirmek
  • İki gerçek kullanım durumu olmadan soyutlamalar eklemek
  • “Şimdilik” diye kopyaları bırakıp unutmak
  • Sunucu kurallarını hızla UI içinde karıştırmak

Fiyat hesaplama gibi bir kuralın UI, özet widget ve backend’de farklı olması gerçek dünya hatalarına yol açar. Kuralı tek bir yerde (çoğunlukla sunucu) tutun ve UI sadece API'nın döndürdüğünü göstersin.

Koder.ai'deki snapshot ve rollback özelliklerini yeniden düzenleme sırasında nasıl kullanmalıyım?

Snapshot/rollback özelliklerini bir iş akışı aracı olarak kullanın:

  • Her yeniden düzenleme diliminden önce snapshot alın
  • Bir küçük değişiklik yapın, başarı kontrollerinizi çalıştırın
  • Dilim stabil olduğunda yeniden snapshot alın

Koder.ai kullanıyorsanız, source code export ile birlikte bunları kullanarak dosya yeniden düzenlemelerini ve API sınırlarını güvenle değiştirmeniz mümkün olur.

İçindekiler
Sohbet prototipleri neden çabuk karışırYeniden düzenlemeden önce: davranışı koruyun ve hedef belirleyinGelecek değişikliği kolaylaştıran isimlendirmeBüyüdükçe ağrı vermeyen klasör yapısıDurum yönetimi: ne nerede yaşar diye karar verinAPI sınırları: net bir çizgi çizinYinelenen mantığı kaldırırken çöplük yaratmamakBasit bir örnek: sohbetle oluşturulmuş bir uygulamayı gerçek bir projeye dönüştürmekGüvenli kalan adım adım yeniden düzenleme sırasıYaygın yeniden düzenleme hataları ve tuzaklarıSSS
Paylaş