Bir Java adamı için Python, herkesin bir kulüp kapıp kafanızı yönetmeye başlayabileceği anarşik bir oyun.
Python'lu bir adam için Java, bir başkasının evrenin nasıl geçtiğine dair azalan görüşüne sürekli olarak bağlandığınız bir Orwellian evrenidir.
Gerçek şu ki, bir dilde yapabileceğiniz her şey, diğer dilde yapabildiğiniz kadar temizdir. Ancak bahsettiğiniz gibi her iki toplumda da temiz ne anlama geldiğinde önemli bir fark vardır .
Java yolu:
Temiz bir sistem, ne anlama geldiğini yapan ve başka hiçbir şey yapmayan sistemdir, amaçlanan amacın doğasına aykırı uzantılara veya değişikliklere izin vermez ve bunları derleyici aracılığıyla mümkün olduğunca zorlamaya çalışır. Esneklik, katı yapılar içinde basit arayüzlerin dikkatli bir şekilde hazırlanmasıyla elde edilir. Java'da kum kutusu her zaman açık bir şekilde sınırlandırılmalı ve bunları derleyiciden hızlı geri bildirim ile karşılamalıdır. Java, nesne yapılarını statik olarak tanımlamak ve bunların örneklerinden dinamik etkileşimler oluşturmak için araçlar sağlar . Java ile çalışırken akıllıca ölü beyin çözümüne doğru temel yapı taşları oluşturmaya çalışıyorum. Sorunun üstesinden gelmek için bir çalışma teorisim olduğunda çoğunlukla aşağıdan yukarıya çalışırım.
Java, büyük ekipleri kapsayabilen ve sürüyü kontrol altında tutmak için araçlar ve araçlar sağlayan büyük yazılımlar üretme eğiliminde olacaktır. İşaretlenmezse, bu çok bağımsız ekiplerin bağımsız olarak daha belirsiz bir hedefe doğru çalışmasına yol açacaktır. Sonunda her takım kendi "raison d'être" haline gelir ve bir bütün olarak sistem ana projeyi saptırmak için seyreltilir. Bunlar, aşırı maliyet aşımlarına ve kötü performans gösteren ve bakımını yapan büyük yazılım sistemlerine yol açabilir.
Java'da bir şeyler yapmak için neredeyse hiçbir zaman küçük ve hızlı bir yol yoktur, ancak IDE ve araç, sadece birkaç tık uzakta ağrılı görevleri yapmak için vardır.
Python yolu:
Temiz, kısa ve kolay okunabilir anlamına gelir. İyi bir python sistemi, tam olarak kalbine ulaşmanıza izin vermek için tasarlanmıştır ve kodun amaçlanan kullanımını ve amacını anlayabileceğiniz şekilde en içteki sırları ortaya koyar. Aynı zamanda orijinal tasarımı genişleterek ve / veya kapsülleyerek kendi çözümünüzü tasarlamanıza izin verir, böylece tam olarak sizin yönünüze gider. Python, örneği eldeki ihtiyaçlara uyacak şekilde dinamik olarak değiştirebileceğiniz nesne şablonları oluşturmak için araçlar sağlar. Python problemi hemen ele almak ve daha sonra nihai çözüm olabildiğince basit ve okunabilir kalacak şekilde kodu mantıksal bir yapıya yaymak eğilimindedir. Python'da yukarıdan aşağıya çalışma ve artan karmaşıklıkları bir bölme ve fethetme yaklaşımıyla yönetme eğilimindeyim.
Python ekipleri ışık sistemleri üretme eğiliminde olacak ve çalışan bir çözüm sunmada çok hızlı olacaktır. Sistemin herhangi bir kısmında dönüşümlü olarak çalışan birbirine yakın bir grup olma eğilimindedirler. Birbirleriyle beslenirler, oldukça heyecan verici bir sinerji yaratırlar. Ancak bu, daha büyük sistemlere ölçeklenmesi zor olan ve genellikle bir çeşit cam tavana çarpan takımlar yaratır. Ekibe yeni üyeler eklemek yardımcı olacaktır, ancak bilginin ekstra üretkenliğin hissedilmesi için yeterince yayılması biraz zaman alacaktır. Ekip daha sonra bölünür ve tüm sisteme sürekli bakış ilk günlerin atmosferi gibi seyreltilir. Bu, bir zamanlar basit bir problem olana aşırı kıvrımlı bir kod getirebilir,
Python ile işleri yapmanın neredeyse her zaman hızlı ve kolay bir yolu vardır, ancak sistem belirli bir eşiğe ulaştığında karmaşıklığı kontrol altında tutmak daha zor olabilir.
Kısacası, her ikisinin de karanlık bir tarafı vardır ve her ikisinin de net bir gücü vardır. Bununla birlikte, her iki topluluk boyunca prodüksiyon yaparken, birinin gücünün diğerinin karanlık tarafına yol açtığını ve tam tersini göreceksiniz.
Bu nedenle ısıtılan tartışmalar en iyisidir.