Size gerçek bir dünya örneği verelim.
Yaklaşık 15 yıl önce, C ile yazılmış büyük bir sistemin Unix'ten Windows'a taşınması üzerine çalıştım, yaklaşık 3 milyon satır kod vardı. Size bir ölçek fikrini vermek için, unix sistemlerimizden bazılarını (RS6000) derlemek 24 saatten fazla sürdü, pencereler sistemi yaklaşık 4 saatte derleyebildi.
(Ayrıca kendi tercüme ettiğimiz dilde 2 milyon kod satırı vardı, ancak bu dili dosya işleme için tasarlanmadığı için yapı sistemlerinde kullanmamayı kararlaştırdık. .)
Derleme sistemi bir kabuk betiği ve dosya karışımı halinde yazıldığı zaman, bunlar pencerelere taşınabilir değildi - bu yüzden kendi derleme sistemimizi yazmaya karar verdik.
C kullanabilirdik, ancak python kullanmaya karar verdik, bunun birkaç nedeni vardı. (Ayrıca, kaynak kod kontrol sistemimizi python'da aynı anda yeniden yazdık, bu derleme sistemiyle çok iç içe geçti, böylece denetlenen modüllerin nesne dosyaları geliştiriciler tarafından paylaşılabilir.)
Kodumuzun çoğu dosyaların isimlendirilmesi kurallarına dayanan birkaç basit kuralla (tüm platformlar için sadece birkaç bin satır python, Windows, VMS ve 6 Unix sürümü) oluşturulabilir.
RegEx, farklı platformlardaki C sistemleri arasında çok standart değildi, Python, RegEx'te inşa etti.
Birkaç modül özel yapım adımları gerektiriyordu, Python sınıf dosyalarının dinamik olarak yüklenmesine izin verdi. Özel bir sınıfın, python dosyasının klasörde sihirli bir adı olan bir modül (lib) oluşturmak için kullanılmasına izin verdik. Bu python kullanmak için katil neden oldu.
Java'yı düşündük, ancak bu noktada tüm platformlarda gönderilmiyordu.
(Kaynak kodu kontrol sistemimizin kullanıcı arayüzü, tüm platformda taşınabilir bir web tarayıcısı kullanmıştır. İnternet bağlantımız olmadan 6 ay önceydi. Tarayıcıyı X25 üzerinden indirmek zorunda kaldık!)