Kotlin’e Geçmek için Proje yöneticinizi ikna etmek

Kotlin’i küçük kod temelli ve daha az ticari etkiye sahip bir projede tanıtmaya başlayın.

“Kotlin harika ve gerçekten kullanmak istiyorum. Fakat yönetimimi nasıl ikna edebilirim? ” Bu, bir konuşmadan sonra en sık sorulan soru. Bu yazıda, Kotlin’i nasıl tanıttığımızı ve başarı şansınızı artırabilecek argümanlar, stratejiler ve püf noktaları gösterdiğimi açıklarım. Parmaklarını senin için kenetledim!

  • Kotlin’in avantajlarını açıklayın
    • Artan verimlilik
    • Daha az hata
    • Motive edilmiş geliştiriciler
    • Başvuru sahipleri için artan çekicilik
  • Kotlin’i piyasaya sürmenin düşük riskle ortaya çıktığını netleştirin.
    • Java ekosistemi hakkında mevcut bilgilerin tekrar kullanılması
    • Kotlin karmaşık bir dil değil.
    • Kotlin’i öğrenmesi kolaydır – özellikle Java geliştiricileri için. Paradigma kayması yok.
    • Kademeli göç mümkündür. Kotlin ve Java’nın paralel kullanımı mümkün.
  • Kotlin ile ilgili geçerli rezervasyonları öğrenin. Onlar geldiğinde hazır olun. Ama dürüst ve dengeli ol.
    • Daha fazla gelişme JetBrains’e bağlıdır
    • Eclipse ve NetBeans’da zayıf destek
  • Kapıya bir ayak bas .
    • Kotlin’i küçük kod temelli ve daha az ticari etkiye sahip bir projede tanıtmaya başlayın.
    • Test paketi projeleri veya dahili araçlar iyi bir başlangıç ​​noktasıdır.
    • Yönetimin bu uzlaşmayı kabul etmesi daha muhtemeldir.
    • Uzun bir Kotlin kullanımı için tartışmak için toplanan deneyimi kullanın.

Spreadshirt’te Kotlin’in Hikayesi

Spreadshirt’te, 2 yıl önce Kotlin’i Ağustos 2016’da tanıtmaya başladık. Kotlin’i bir test projesinde kullanmaya başladık. Verimli bir koda dokunmadığımız ancak deneyimler kazanamadığımız için bu harika bir başlangıç ​​noktasıydı. Kotlin tarafından o kadar hevesliydik ki, kullanımını genişlettik. Daha sonra ilk hizmetimize tamamen Kotlin’de yazılmış olduk. Yavaş yavaş, diğer takımlar Kotlin’i benimsemeye başladı ve bunu yeni servislerde kullandı. Bugün itibariyle, Kotlin aşağıdaki kabullere sahiptir:

Spreadshirt'te Kotlin Uyarlaması (Mayıs 2018)
Spreadshirt’te Kotlin Uyarlaması (Mayıs 2018)

Ancak, Kotlin hizmetlerinin çoğu küçük veya orta boydadır veya dahili araçlardır. Java hala bizim ekmeğimizdir.

Benim için Spreadshirt’te Kotlin’in tanıtımını kolaylaştıran iki faktör var :

  • Mikro Hizmet Mimarisi : Platformumuz bağımsız bir şekilde konuşlandırılabilir birimlerden oluştuğundan, yeni bir projeye başladığınızda yeni teknolojiler ve dil kullanmak çok daha kolaydır.
  • Kendi Kendini Düzenleyen Ekipler : Teknoloji seçimi konusunda ekiplerimizin birçok özgürlüğü var. Tek başlarına karar verirler, ancak belirli bir teknolojinin bakım veya işletim açısından kötü olduğu ortaya çıkarsa sonuçları da taşımak zorunda kalırlar. Sadece birkaç kural var. Örneğin, genellikle JVM ekosistemine bağlıyız.

Sonuç olarak, bugün Kotlin’in Spreadshirt’teki birçok ekipte yeni hizmetler için ilk tercih olduğunu iddia ediyorum.

Özet olarak hikayemiz buydu. Tecrübelerimize dayanarak, size Kotlin’in yönetimini veya mimarını ikna etme konusunda başarı şansınızı artırabilecek bazı öneriler, stratejiler ve püf noktaları vermeyi seviyorum.

Kotlin’in Avantajlarını Açıklayın

  • Artan verimlilik
    • Örneğin, veri sınıfları ve ifade desteği, kazan plakasını büyük ölçüde azaltır ve özlü kodlara yol açar.
    • Kotlin, birçok Java en iyi uygulaması ve tasarım deseni için yerleşik desteğe sahiptir .
  • Daha az hata
    • Örneğin, değişmezlik ve null kabiliyeti nedeniyle.
    • Objektif olarak ölçmek zor ama bunu kendi deneyimlerime dayanarak doğrulayabilirim.
  • Geliştiriciler için motivasyon . Mutlu geliştiriciler verimli ve istifa etmiyorlar.
  • Başvuru sahipleri için artan çekicilik. Modern diller yetenekli geliştiricileri cezbeder. Spreadshirt’te bizden açıkça Kotlin’i isteyen başvuranlar vardı .

Kotlin’i Tanıştırmanın Düşük Risklerle Geldiğini Netleştirin

  • Güçlü ve iyi bilinen Java ekosisteminin yeniden kullanımı . Biz sevgili JVM ekosistemde sopa ve edebilirsiniz bilgimizi yeniden Java kütüphaneleri, çerçeveler, araçlar oluşturmak, yapay havuzlarına, CI, CD, IDE, izler,, JRE, deney araçları, dağıtım, tedarik ve JIT derleyicisi hakkında. Bu büyük bir avantajdır ve hafife alınmamalıdır. Bu öğrenme eğrisini önemli ölçüde kısaltır ve sizi üretken kılar. Kotlin’i tanıtmak şirketin teknoloji yığınını bozmuyor.
  • Öğrenmesi kolay.
    • Özellikle Java geliştiricileri için.
    • Paradigma kayması yok. Java gibi, Kotlin de nesne yönelimli bir dildir. Sadece daha işlevsel özelliklere sahip.
    • Kotlin temellerini öğrenmek, Kotlin referansıyla bir veya iki gün içinde yapılabilir . Bu karmaşık bir dil değil – ve bu harika.
  • Java ile birlikte çalışabilirlik.
  • Kademeli göç mümkündür. Kotlin ve Java’yı bir proje içinde aynı anda kullanabilirsiniz.
  • IntelliJ IDEA ile mükemmel IDE desteği.

Kotlin Rezervasyonlarını Bilin

Her şeyden önce, yönetiminizi veya meslektaşlarınızı şüphe etmeyin, kötü düşmanlarınız olarak düşünmeyin. Genellikle projeyi ek karmaşıklıktan korumak isterler veya “bilinmeyen bir geleceği olan hiped bir dile” bağlı kalmak istemezler. Geçerli rezervasyonlarını ciddiye alın ve anlayışınızı ifade edin . Amaçlarını ve bakış açılarını anlamaya çalışın. Aksi takdirde, engelleyici bir duruşta kalacaktır. Riskler ve sonuçlar konusunda dürüst olun ve önerilerden taviz verin. Yani evet, bu da psikoloji ile ilgili.

Olduğu söyleniyor, en önemlilerinden başlayarak tipik bazı rezervasyonlardan geçelim.

Kotlin’in Belirsiz Geleceği

“Kotlin sadece bir sonraki sinirli JVM dili”

“Kotlin’in daha da gelişmesi JetBrains’e bağlı”

İyi bir nokta. JetBrains küçük bir şirket değildir ( 700 çalışanı ) ve sağlıklıdırlar ancak kesinlikle Oracle, Microsoft veya Google değildir. Bu geçerli ve ciddi bir argümandır. En azından şu itirazları kaldırabilirsin:

  • Kotlin açık kaynaklı lisans Apache 2 altında lisanslanmıştır . En azından teoride – tescilli değildir ve JetBrains olmadan geliştirilebilir.
  • Google, Android geliştirme için resmi bir dil haline getirerek Kotlin’e taahhütte bulunur ( Google I / O 2017’de duyurulur ). Örneğin, özel Kotlin API’leri geliştiriyorlar ( Android KTX gibi ).
  • Java ekosistemi Kotlin’i kucaklar.
    • İlkbahar 5, Kotlin desteğini tanıttı (özel Kotlin DSL’leri ve uzantı API’leri, geçersizlik desteği)
    • Gradle, Groovy’ye alternatif olarak Gradle derleme komut dosyaları yazmak için bir Kotlin DSL sunar .
    • JUnit5 ayrıca Kotlin’i de destekliyor. Resmi kullanım kılavuzunda Kotlin’i varsayılan test örneği yaşam döngüsünü değiştirmek için bir motivasyon olarak bile adlandırdılar .
  • Google Arama Trendleri, Kotlin’de sürekli bir ilgi artışı olduğunu açıkça göstermektedir .

● Kotlin ● Scala ● Harika ● Clojure

Google Arama Trendleri'nde Kotlin’e ilginin sürekli artması
Google Arama Trendleri’nde Kotlin’e ilginin sürekli artması

Sonuçta, Kotlin kesinlikle kalmak için burada.

Sabit IDE olarak IntelliJ IDEA

“Eclipse’e bağlı kalmak istiyorum.”

“IntelliJ IDEA’yı kullanmalıyız.”

Evet bu doğru. IntelliJ IDEA’yı kullanmak zorundasınız. Diğer IDE’lerde Kotlin desteği zayıf. Kotlin’i Eclipse veya NetBeans’ta kullanmak pek eğlenceli değil. Evet, JetBrains tarafından geliştirilen resmi bir Eclipse eklentisi var. Ama benim için, zar zor kullanılabilir. Dürüst olalım: JetBrains’in Eclipse’de kendi ticari ürünlerinin yanında tam teşekküllü bir Kotlin takımı sunması gerektiğini düşünebilirsiniz. Satış lisansları Kotlin’i geliştirmenin arkasındaki ana motivasyondur.

“En iyi” IDE hakkındaki tartışma, Java topluluğunda duygusal ve neredeyse dinidir. Her kampta zillerotlar ve düşkünler var. Eğer ekibiniz onaylanmış Eclipse kullanıcılarından oluşuyorsa, onları ikna etmek gerçekten zor olacaktır. Açıkçası, neredeyse imkansız olabileceğine inanıyorum. Ne yazık ki, bu Kotlin’i tanıtmak için ciddi bir gösteri durdurucu haline gelebilir. Spreadshirt’te bile bir takım Kotlin’i bu nedenle reddetti.

En azından, IntelliJ IDEA’nın topluluk sürümünün zaten Kotlin takımını içerdiğini unutmayın. Yani bir lisans satın almaya gerek yoktur. Bu arada: Uzun süre topluluk baskısını kullandım ve gayet iyi sonuç verdi! Neredeyse hiçbir şeyi kaçırdım.

Eğitim Gerekli

“Her geliştirici yeni bir programlama dili öğrenmek zorundadır.”

Evet, takım yapınıza bağlı olarak, bu doğru olabilir. Ancak bu argüman Kotlin’in avantajlarına işaret ederek kolayca yönetilebilir. Onları özetleyelim:

  • Kotlin’i öğrenmek kolaydır. Temel bilgileri öğrenmek bir veya iki gün sürer. Daha sonra, yaparak öğreniyor.
  • Java ekosistemi hakkında mevcut bilgilerin tekrar kullanılması.
  • Kotlin, Java’ya benzer.
  • Kotlin karmaşık bir dil değil.
  • Paradigma kayması yok.
  • Yeni bir dil öğrenmek , geliştiriciler için çok eğlenceli ve büyük bir motivasyon olabilir .

Kapıya Ayak Girin: Küçük Başlayın ve Kendi Deneyiminizi Toplayın

Web, Kotlin’in sunduğu sınırsız avantajlar listesiyle doludur – tıpkı yukarıdaki gibi. Neredeyse kurtuluş vaadi gibi geliyor. Büyük olasılıkla, üçüncü kişilerin bu iddiaları yönetiminizi veya mimarınızı ikna etmez. Başarının anahtarı Kotlin ile kendi deneyiminizi toplamaktır. Bu deneyim sayesinde daha güvenilirsiniz ve daha iyi bir şekilde tartışabilirsiniz:

“Hey yönetim, Kotlin’i denedik ve somut avantajlar yaşadık . Veri levhasını veri sınıfları ve ifadelerle önemli ölçüde azaltabiliriz. Bunun yanında, değişmezlik ve sıfır güvenlik nedeniyle hataları ortaya çıkarmanın daha olası olmadığını da düşünüyoruz. Ve nihayet, çok eğlenceliydi! Yarın işe gitmek için sabırsızlanıyorum! ”

Somut deneyimler ikna edicidir. Peki Kotlin’i ilk başta kullanmamıza izin verilmezse, bu deneyimi nasıl elde edebilirsiniz? Somut bir iş avantajı olmadan varolan bir hizmeti basitçe yeniden yazmak, satmak imkansız olacaktır. Bir uzlaşma teklif ediyorum . Bazı seçenekler:

  • Bir test projesinde Kotlin’i kullanmaya başlayın . Yani herhangi bir üretken koda dokunmuyorsunuz. Kotlin kodunun iş üzerinde doğrudan bir etkisi olmayacak. Bu nedenle etki nispeten küçüktür ve kod tabanı ve karmaşıklığı yönetilebilir boyuttadır. Spreadshirt’te bu yaklaşımı takip ettik ve oldukça iyi sonuç verdi.
  • İç aletler de iyi bir adaydır.
  • Aynı projede Kotlin’i Java ile paralel olarak kullanın. Kotlin’i sadece yeni özellikler için kullanıyor ve mevcut Java kodunu dokunmadan bırakıyorsun. Kotlin, Java ile birlikte iyi çalıştığı için bu mümkün. Ancak, bu projenin tüm geliştiricilerini Kotlin’i öğrenmeye ve IntelliJ IDEA’yı kullanmaya zorlayacağınızı unutmayın. Ayrıca, aynı projede genel olarak projenin karmaşıklığını arttırdığı için birden fazla dil kullanma konusunda da geçerli çekinceler vardır. Bu yüzden bu yaklaşımın satışının zor olabileceğini iddia ediyorum.

Buna bir “deneme” de . Bu aynı zamanda kabulü de iyileştirebilir. Dolayısıyla yönetim hala bu kararın her zaman geri çevrilebilir olduğunu düşünüyor. Aslında, gerçek bu. Ama en azından kapıya bir ayak bas . Kullanmaya başladıktan sonra Kotlin kullanımını uzatmak çok daha kolay.

Comments

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

GIPHY App Key not set. Please check settings

Yükleniyor…

0

Ne düşünüyorsun?

532 Points
Upvote Downvote
MongoDB'nin dinamik şeması güçlüdür, ancak daha fazla hataya yol açabilir. Güvenliği sağlamak için, şemanın uygulama katmanında açık ve zorunlu kılınması aşağıdakilerle daha da önemlidir:

Kotlin ve MongoDB, Mükemmel Bir Eşleşme

Dize Biçimi Belirticileri | Swift