Standart veya Araç Çözümü -Kayalı mı?
Yazılımın geliştirilmesinde, genellikle kutup tarafından bitirilen standart bir çözüm kullanma veya -house'da bir gelişme gerçekleştirme seçeneği karşısında bulunur. Ne tavsiye edilir?
Ön kredilerde parçalanan soru, “yapma veya satın alma” terimi ile iyi bilinir. Ve birçok yazılım geliştirme alanı için, bu soru çok fazla düşünmeden cevaplanabilir: Temel işletme web uygulamalarının geliştirilmesi ise, neredeyse hiç kimse işletim sisteminin geliştirilmesini dikkate almamalıdır.
Ancak soruyu neredeyse her gün karşılıyor musunuz: örneğin, bir UUID oluşturmak için kodunuzu yazmak mantıklı mı yoksa mevcut bir bileşeni kullanmanız daha tavsiye ediliyor mu? Muhasebe yazılımınızı geliştirmeniz tavsiye edilir mi yoksa burada var olan bir şeye güvenmeli misiniz? …?
Götz ve Golo
“Götz & Golo”, Götz Martinek ve Golo Roden'in ortak bir serisidir. Biri, yerli GMBH web'in diğer CTO'su Sodge It GmbH'nin CEO'sudur. İkisinin birleştirdiği şey, yazılım geliştirme için büyük tutkularıdır. Eylül 2019'dan bu yana, her ay bir konu üstlendiler, herkes bunun için diğer makaleyi önceden bilmeden bireysel perspektiflerini tanımlıyorlar. Götz'in ilişkili makalesi Sodge IT blogunda bulunabilir. Bu gönderinin sorusu: “Standart mı yoksa araba çözümü -?” “
Aslında, görüşler de bu sorularda önemli ölçüde değişmektedir: bazı şirketler ilgili görevin daha fazla bağımlılığa değmeyecek kadar basit olduğuna inanmakla birlikte, diğerleri, görünüşte kolay bir görevin uygulanmasının ve sürdürülmesinin bu nedenle zamana mal olacağını ve bu nedenle bitmiş bir çözümü tercih ettiğini iddia etmektedir.
Rafın bir üyesi nedir?
Soru yapılandırılmışsa, aslında düşünebileceğiniz ve paylaşılabileceğiniz bir dizi kriter vardır:
- Kalite: İdeal olarak, bileşen zaten diğer birçok geliştirici tarafından kullanılmıştır ve bu nedenle kanıtlanmıştır. Hataların zaten keşfedilmesi ve çözülmesi olasılığı, evdeki bir gelişme durumundan daha yüksektir. Ek olarak, kod sadece test edilmekle kalmaz, aynı zamanda test edilebilir ve belgelenebilir.
- Zaman: Kaliteye ek olarak, zaman da önemli bir faktördür: direğin bir bileşeni hemen mevcuttur ve biraz şansla, yalnız bir şey yapmak zorunda kalmadan zaman içinde bile güncellemeler alabilirsiniz.
- Alan: Neredeyse hiçbir sorun ilk bakışta göründüğü kadar küçük değildir. Zaten konsolide bir çözüm olması durumunda, nadir özel durumların zaten dikkate alınması ve temel sorunun çözümünün ötesine geçen ek pratik özelliklerin zaten dahil edilmesi olasılığı vardır.
- Difüzyon: En azından makul derecede yaygın bir bileşense, geliştiricilerin onları zaten bilmesi ve onunla deneyime sahip olma olasılığı vardır.
- Maliyet: Her ne kadar bir bileşen açık kaynak olmasa da, bir ücret karşılığında, maliyetler genellikle -evdeki bir gelişme için olanlardan daha düşüktür.
Evdeki bir gelişme için ne konuşuyor?
Tüm bu noktalar mevcut çözümlere güvenmek için güçlü bir şekilde konuşur, ancak konulara aykırıdır:
- Bağımsızlık: Tanıttığınız her bileşenle, kendinizi biraz daha dış faktörlere bağımlı hale getirirsiniz. Ya bileşen artık geliştirilmezse? Çözülmemiş bir hatayla karşılaşırsanız ne olur? Farzedelim …? Ancak, özerk gelişme ile bağımsız ve özgürsünüz.
- Bireysellik: Bazı gereksinimler o kadar özeldir ki, genel olarak çözülebilirler. Gerçek bir özel ve hassas çözüme ihtiyacınız varsa, muhtemelen bir bileşenden daha fazla bir gelişme ile gelişeceksiniz.
Bir rekabet avantajı sorunu
Aslında, nispeten basit bir tepki vardır: -evdeki bir gelişmenin bağımsızlığının ve bireyselliğinin avantajları, çözülecek sorunun gerekli olup olmadığını ve çözümü belirleyici bir rekabet avantajı sunuyorsa tam olarak aşmaktadır.
Çekirdek işletme tam olarak bir UUID jeneratörünün gelişimi değilse, direğin bir UUID bileşeni muhtemelen oldukça iyidir ve tasarruf edilen zaman ve maliyetler diğer ve daha önemli sorunları çözmek için harcanabilir.
Çekirdek işletme tam olarak muhasebe yazılımınız değilse, muhtemelen muhasebeniz için bir çözüm geliştirmeniz gerektiğinde kutuptan bir çözümle hedefinize daha hızlı ve ucuza ulaşacaksınız.
Bununla birlikte, şirket için bir gelişme yoluyla şirket için önemli bir rekabet avantajı elde etme fırsatınız varsa – bu yüzden evet, o zaman, piyasadan ve rakipten alakalı bir alabileceğiniz için çözümünüzü geliştirmelisiniz.
Böyle olmadığı her durumda, “sıkıcı” yol muhtemelen en verimlidir.
TL; DR: Belirli bir sorun için bireysel bir çözüm aramak ve geliştirmek genellikle sadece bu önemli bir rekabet avantajı anlamına gelirse kullanışlıdır. Sadece gerçek temel yeterlilik için erişilebilen her şey için, bitmiş bileşenlerdeki raftan inmeniz önerilir.
()
Ne yazık ki, bu bağlantı artık geçerli değil.
Boşa harcanan eşyalara olan bağlantılar, 7 günlük daha büyükse veya çok sık çağrılmışsa gerçekleşmez.
Bu makaleyi okumak için bir Haberler+ paketine ihtiyacınız var. Şimdi yükümlülük olmadan bir hafta deneyin – yükümlülük olmadan!