Arkadaşlar merhaba herkese,
!! Bu konu daha önce açılmış fakat benim sorum biraz farklı olduğu için yeni konu açma gereği duydum.
Öncelikle resource bir controller ile ekleme ve düzenleme yapmaktayım. fakat ekleme ve düzenleme yaptığım blade şablonları aynı. yani aynı form üzerinden işlem yapmaktayım. bir şekilde empty kontrolleri ile bu işlemi yapıyorum. fakat doğruluğu ve mantıklı olup olmadığı ile ilgili şüphelerim var. blade şablonunu hem ekle hem de düzenle için ayrı ayrı yapınca tüm form tekrarlanıyor ve bunu kendi gözümde kod tekrarı gibi algılıyorum, yani mantıksız geliyor. dolayısıyla ekle ve düzenle işlemlerini aynı form üzerinden sürdürüyorum. mevcut hali ile devam mı etmeliyim yoksa bu şablonları ayırsam daha mı sağlıklı olur ? Artıları ve eksileri ile anlatabilirseniz benim için çok daha açıklayıcı olmuş olur. Şimdiden herkese teşekkürler ve iyi forumlar.
Ekleme ve Düzenleme
Her ne kadar kod tekrarı gibi gelse de, aynı formau hem ekle hem de düzenlede kullanmak SOLID ilkelerinden S (Single responsibility)'ye aykırıdır.
Ortak olan kısımları partials içine alabilirsiniz.
- Düzenlendi
Ben her iki formu da ayrı ayrı yapıyordum. Şablon içerisinde belli başlı yerler ortak elbette. Böyle yapmamın sebebi benim gözümde basitlik ve standartlığın kod tekrarını engellemeden üstün olması. Bana göre kod tekrarı olmasın diye proje karmaşıklaşıyor ve güncellemesi zor hale geliyorsa yanlış yapılıyor demektir.
Bazen bazı formlarda özel işlemler yapmam gerekiyor, bazen öyle işlemler oluyor ki edit formu ile create formu bambaşka yerlerer kayıyor, o yüzden nested kullanamıyorum, ayırmak zorunda kalıyorum. Bu sefer de iki farklı yapı ortaya çıkmış oluyor, bazı formlar ortak bazıları ayrı... Bunu çözmek için de şablon özelliklerini kullanmaya çalıştığımda rahatsız edici seviyede karmaşıklaşıyor. Roket mühendisliği değil ki altı üstü form. Şöyle bir bakıyorum extends, if, section, push, include... karmaşık iç içe bir yapı oluşmuş. Neden? Hani olur da form değişirse iki dosyayı güncellemeyeyim diye. Ne kadar değişiyor? 1-2 senede bir elin parmaklarını geçmiyor...
Zamanında bu tür sorunlarla baş edebilmek için https://symfony.com/doc/current/forms.html gibi benzer bir yapı oluşturmaya çalışmıştım ama sonunda basitlik anlayışıma ters düştüğünü düşünüp vazgeçmiştim. Şimdi de zaten Vue, React, Mobil... kullanımıyla birlikte uygulamaları API mantığıyla yazdığımız için Blade kullanmıyorum...
mgsmus Bu durumda blade in eksikliğini hissediyormusunuz. Bu konudaki düşünceniz nedir. Bende projeye başlarken çok arada kaldım fronted ve backend i vue ile kodlayıp laraveli api olarak kullanıp işlem yapmak istedim ama sonradan vazgeçtim. Son dönemlerde yazılan bir çok proje modern fronted çözümleri ile yazılıp bir api ile etkileşim içinde kalıyor gördüğüm kadarı ile.
jettem Blade'in ve frontend ile uğraşmanın eksikliğini hissediyorum. Projenin kontrolü sanki sizin elinizde değilmiş hissi veriyor (frontend ekibi ayrı). Ayrıca Blade kullandığınızda bazı şeyleri şablon içerisinde çözebiliyordunuz ama API mantığı ile çalıştığınızda bu olmadığı için uygulama geliştirirken yaklaşım şekliniz de değişmeye başlıyor, olayı Response'dan önce bitirmeniz gerekiyor.