Merhaba değerli r10 üyeleri.Bugün bir arkadaşımın bana gönderdiği bir meetup video sunu izledim; açıkçası benim de çok yaşamış olduğum özellikle ekiplerle çalışırken kodun sadece çalışsın yeter Mantığının ne kadar yanlış olduğunu.
Temiz kod tarımının nasıl olması gerektiğini anlatan güzel bir video yu sizinle paylaşmak istedim.
https://www.youtube.com/watch?v=7m88T8-96X4
Temiz Kod Tasarımı
11
●253
- 23-10-2020, 11:25:34Bu iş artık çığrından çıktığı için lint araçları var node tarafında husky ile lint den geçirilmemiş kodları github a bile atamıyorsun mesela tam bir otomasyon sağlayabiliyorsun proje üzerinde artık kullanmayan kalmadı gördüğüm kadarıyla.wemvise adlı üyeden alıntı: mesajı görüntüle
- 23-10-2020, 11:29:20Bir sürü araç var bu konuda her dil için, ama mesele kodun testten geçmesi değil kodun testten geçmiş olması onun temiz kod olduğu anlamına gelmiyorki , tam tersine çalışsın yeter oluyor.Shorty adlı üyeden alıntı: mesajı görüntüle
- 23-10-2020, 11:42:38Temiz kod olarak değerlendirirsek bu araçlar kaç tab bırakılacak, süslü yeni satırda mı olmalı gibi koda ilk bakıldığında yazılımcının ne yapılmak istediğini kolay anlayabileceği bir düzeltme yapıyor lint araçlarının asıl görevi de bu zaten ayrıca kodun bir standart içerisinde yazılmasını sağlıyor.wemvise adlı üyeden alıntı: mesajı görüntüle
Bilgisayara mantıksal bir iş yaptırmak istiyorsunuz ve iş yazılımcının mantığından daha daha ileride olamıyor her programcı iyi kod yazamaz ancak finale baktığınız da program istenileni yapıyordur son kullanıcı kodu kimin yazdığı veya ne kadar iyi yazıldığı ile ilgilenmez mesela https://github.com/chrislgarry/Apollo-11 şu proje de ne kadar temiz kod yazabiliriz mesela? asm gibi bir dilden bahsediyoruz tamamen logic işlemlerin döndüğü bir dil.
Temiz, iyi vb kod kavramı ticari hayatta pek kullandığınız şeyler değil ona zamanın olmuyor çünkü.
Ama yinede anlaşılabilir bir kod yazmak iyidir sizden sonra projenin başına geçicek adam kulağınızı az çınlatır
- 23-10-2020, 11:48:55Shorty adlı üyeden alıntı: mesajı görüntüle
cevabın için teşekkür ederim , öncelikle şu var birincisi lint gibi araçlar bizim daha okunabilir kod yazmamızı sağlıyor evet ama temiz kod yazmamızı sağlamıyor çünkü bu araçla olacak iş değil yazılımcının kendinde bitiyor, bir diğeri ise ticari hayatta hayatta kullanamıyoruz ! ama aslında şu var yazdığınız kod ne kadar temizse o kadar performanslı olacaktır ve o kadar geliştirilebilir olacaktır ve ortaya çıkan üründe bir o kadar iyi olacaktır biz bunu zamanımız olmuyor diyerek bir kenara iter bu kodu daha iyi nasıl yazarım diye uğraşmazsak maalesef ne yazdığımız kodlar ne yaptığımız projeler çok da iyi olmayacaktır , hepimiz aynı durumdayız ve maalesef aynı şekilde çalışıyoruz sürekli bir zaman sıkıntısı iş yetişecek vs vs peki ama yarım yamalak bir iş bitirip elli kere düzenleme yapmakmı daha maliyetli yoksa daha uzun süre çalışıp daha temiz iş yapmak mı ? - 23-10-2020, 12:04:00Patronlar bizim tek tuşla projeyi ayağa kaldırdığımızı düşünüyor ve verilen süre kısıtlı olduğu için en kısa yoldan projeyi sonlandırmayı istiyoruz bu şartlar da iyi kod yazmayı gözetemiyoruz çoğu zaman harici kütüphanelerle halledip o kütüphanenin performansına bel bağlamak zorunda kalıyoruz ama kimi patron geliyor işte bir rest api yazacağız, loadbalancer olarak şunu kullanacağız, web servisleri şurada çalışacak, veritabanı için mongodb istiyorum diyor bilinçli adam ve çalışmaktan da zevk alıyorsun adam senin ne kadar sürede bitireceğini bildiği için adama ona göre kod yazıp veriyorsun şöyle bir site istiyorum diyerek iş veren patronlar var mesela heh ona işte o istediği gibi bir şey veriyorsun bu senin kötü bir yazılımcı olduğunu göstermiyor adam sana kısa süre veriyor sende o sırada onu teslim etmen gerekiyor ve ediyorsunwemvise adlı üyeden alıntı: mesajı görüntüle
. Kısacası maliyeti patron belirliyor hani oturup adama ölü bir proje teslim etmiyoruz ancak ne kadar ekmek o kadar da köfte yani
- 23-10-2020, 12:08:09Shorty adlı üyeden alıntı: mesajı görüntüle
Muhakkakki öyle zaten benimde anlatmak istediğim aslında bunun önemini bilmeyen yazılımcı veya patron arkadaşların bunun öneminin farkına varması , bi adam hızlı iş yapıyorsa o adama iyi diyolar ama kimse yazdığı koda bakmıyor , tabi burda kastım basit projeler vs değil bunlar çok da önemli değil ama e-ticaret yazılım altyapısı yapıyosun ve bunlara önem vermiyosun sonra iş patlıyo millette gidip opencart kullanıyor sonuç bu, herkes kod yazıyor ama çok az kişi neyi neden yazdığını neden böyle yazması gerektiğini bilmiyor. - 23-10-2020, 12:19:39Yaklaşık 8 senelik bir iş tecrübem oldu kesintisiz proje müdürü olarak görev aldım ne kodlar yazılmak zorunda kalındı eski görev aldığım projelerin hala daha ayakta olması ve benim yazdığım kodların canlı olduğunu görmek benim için bir gurur kaynağı ancak farklı bir birimde yönetilen E-Ticaret projesi 6 yazılımcı yedi üstüne proje dikiş tutmadı sil baştan bir framework üzerinden gitmek zorunda kaldılar bu süre içerisinde bir çok kez frameworke geçmeleri konusunda uyarılar da bulunmuştum hatta bi ara gözümü karartım tek basıma bu işi üstlenebileceğimi bile söylemiştim o birimde bi abimiz vardı patron bir şey istiyor adam 10 dakikada çıkarıyor felan bi gün kodları git den çektim bi baktım rezilliğin ötesi adam 42 yaşındaydı resmen 2006 da kalmış kullandığı fonksiyonları felan görsen aman allahım biz diyoruz bu sunucunun loadlar neden 7 den aşağı inmiyor belli olmuştu kaynağıwemvise adlı üyeden alıntı: mesajı görüntüle

Söylenecek yazılacak çok şey var ne yapalım herkes memnun isyan da çoktan bitmiş sanırım piyasada