Öncelikle C # odaklı bir şirkette çalışmaya başladım. Java ve JRuby'yi seven birkaç kişi var ama programcıların çoğunluğu C # gibi. İşe alındım çünkü web uygulamaları geliştirme konusunda çok deneyimim vardı ve JRuby on Rails veya nodejs gibi yeni teknolojilere yaslandım.
Kısa bir süre içinde pek çok işin yapılmasına odaklanan bir web uygulaması inşa eden bir projeye yeni başladım. Yazılım lideri, raylar yerine mvc4 kullanacağımı belirledi. Tamam olabilir, mvc4'ü bilmeme dışında, C # bilmiyorum ve web uygulama sunucusu ve ön uç kullanıcı arayüzü oluşturmaktan sorumlu olan tek kişi benim.
Mvc4 kullanmak yerine zaten çok iyi bildiğim bir çerçeve (Raylar) kullanmak mantıklı olmaz mıydı? Kararın arkasındaki mantık, teknik liderin Jruby / rayları tanımıyor olması ve kodu tekrar kullanmanın bir yolu olmamasıydı.
Karşı argüman:
Koda katkıda bulunmayacak ve açıkçası
bu projede gerekli değil . Bu yüzden, JRuby / rayları bilmesi ya da bilmemesi farketmez.JRuby'nin kodu alabileceği ve tam tersi şekilde kullanabileceği çok sayıda java uygulamasına sahip olduğumuz için kodu yeniden kullanabiliriz. Aslında, yalnızca Java kütüphanesini JRuby on Rails uygulamasında çalıştırmak yerine, bir Java kütüphanesini C # 'ya dönüştürmek için bazı kaynaklar ayırdı. Çünkü Java ya da JRuby'yi sevmiyor.
Çok sayıda web uygulaması geliştirdim, ancak yabancı bir şey kullanmak bazı sıkıntılara neden oluyor ve alıştığım kadar kısa sürede harika bir uygulama oluşturamıyorum. Bu iyi olurdu; Yeni teknolojilerin öğrenilmesi bu alanda önemlidir. Sorun şu ki, bu proje için çok fazla şey yapmamız gerekiyor.
Bir geliştiricinin hangi noktada araçlarını seçmesine izin verilmelidir? Bu şirkete bağlı mı? Şirketim emiyor mu yoksa bu normal mi? Daha yeşil meralar var mı? Buna yanlış mı bakıyorum?