Saya yakin pertanyaan ini telah ditanyakan berkali-kali. Namun, saya ingin bertanya lagi dengan maksud apa masa depan bahasa-bahasa ini.
Saya pertama kali diperkenalkan dengan Groovy dan sangat menyukainya. Saya merasa sintaksnya lebih sederhana dan lebih dekat ke Jawa dan saya bisa dengan cepat belajar Grails .
Lalu ada Scala , dan bingkai web bekerja Angkat . Saya masih belajar Scala dan saya menemukan sintaksisnya sangat sulit.
Namun, saya masih bertanya-tanya seperti apa masa depan Groovy. Ketika penulis Groovy mengatakan dia tidak akan pernah menciptakan groovy jika dia tahu tentang Scala, maka itu membuat saya bertanya-tanya apakah ada masa depan sama sekali. Tentu saja Groovy telah datang jauh dan Grails digunakan hari ini oleh banyak perusahaan besar.
Jika seseorang melihat Grails vs Lift hari ini, maka Grails akan menjadi pemenang. Semakin banyak perusahaan yang menggunakannya. Tetapi mengingat semua yang telah saya katakan sejauh ini, saya tertarik untuk mengetahui apakah seseorang harus berinvestasi di Groovy? Apakah Groovy akan pergi dan Scala pilihan yang lebih baik? Jika CEO BMW mengatakan dia mengendarai Mercedes maka orang akan bertanya-tanya mengapa kita semua tidak mengendarai Mercedes juga, kan?
(Saya mengerti jika pertanyaan ini benar-benar luas dan mungkin ditutup. Saya berharap untuk membuatnya menjadi Wiki terbuka untuk orang lain.)
Jawaban:
Saya tidak berpikir Groovy akan menghilang, itu adalah entitas mandiri sekarang. Kerangka kerja Grails dibangun berdasarkan bahasa Groovy, yang merupakan alasan bagus untuk tetap hidup. Groovy mendapat aplikasi pembunuhnya.
Saya tidak mengatakan Grails adalah satu-satunya proyek Groovy yang vital, Gradle juga cukup bagus. GORM sangat berguna. Gant adalah perbaikan yang bagus dibandingkan Semut.
Tidak menyebutkan bahwa Groovy / Grails sekarang di bawah payung SpringSource dan mereka berkomitmen untuk keduanya.
Coba tebak apa yang dipilih James Gosling?
sumber
Serta komentar @The Legend of 1982:
Groovy akan terus bertahan karena ini adalah alternatif dinamis untuk Java dengan sintaks yang cukup dekat dengan Java untuk memungkinkan banyak pengembang untuk beralih (atau setidaknya mencoba-coba di dalamnya).
Grails secara konstan berada dalam kerangka 2 teratas kapan pun Matt Raible membuat bagan / analisis perbandingan kerangka kerja web bahasa JVM yang masif. Mungkin analisisnya paling lengkap di luar sana.
GPars adalah lib concurrency baru / API yang membawa Groovy sangat meningkatkan kemampuan Scala di sana.
Masalah dengan kecepatan akan meningkat seiring waktu karena Groovy mengetahui cara menggunakan invokedynamic dan trik kompiler lainnya.
sumber
Groovy adalah bahasa yang sangat bagus dan dianggap remeh (bahkan oleh pembuatnya sendiri, seperti yang telah Anda sebutkan). Bagi saya, perannya dalam ekosistem Jawa seperti peran Lua dalam ekosistem dunia C / C ++. Ya, itu tidak secepat itu, namun demikian.
Saya akan sangat sedih jika asyik akan mati, tetapi peta jalan ini benar-benar memberitahu kita bahwa itu tidak terlalu buruk.
Sebenarnya, Groovy adalah bahasa yang sangat bagus, rapi, ekspresif. Adapun Scala, saya percaya bahwa Groovy dan Scala hanya di ceruk yang berbeda.
sumber
Bukan untuk mengetuk keunggulan umum Groovy atau bahkan Ruby, tetapi, lebih dari 90% lalu lintas web ke situs yang ditulis dalam PHP atau kerangka Java.
Saya tidak tahu dari mana Anda mendapatkan "Grails digunakan oleh banyak perusahaan besar" ini seperti mengatakan "semua kekayaan 500 perusahaan menggunakan Python" yang sebenarnya benar, tetapi, mereka tidak menggunakan python untuk bisnis apa pun yang kritis.
Mereka benar untuk tidak menggunakan Grails, Rails dll. Mereka bagus untuk situs-situs kecil yang rapi, tetapi, mereka tidak berskala dengan baik. Sebagian besar bisnis besar memiliki sistem yang saling terkoneksi secara rumit, dan tantangan utama ketika membangun aplikasi web berkisar pada bagaimana menghubungkan ke semua sistem lain yang menyediakan atau menggunakan data Anda - pengkodean dengan konvensi tidak berfungsi di ruang ini.
Groovy, pesaing utama bahasa sebenarnya adalah JPython yang beroperasi di ruang sames (Scripting pada JVM) dan digunakan untuk hal-hal yang sama (Tes otomatis, pembuatan otomatis, dll.).
sumber
Kinerja Groovy 2.0 menempatkan Groovy sekarang menjadi liga yang sangat dekat dengan Jawa, lihat http://java.dzone.com/articles/groovy-20-performance-compared Patokan dalam artikel ini sangat sangat kasar, tapi saya bekerja sekarang pada tolok ukur baru untuk Groovy 2.1 berdasarkan pada yang oleh Robert Hundt (https://days2011.scala-lang.org/sites/days2011/files/ws3-1-Hundt.pdf) dibuat untuk membandingkan kinerja Google Go dengan bahasa lain. Saya perlu 2-3 minggu sampai saya selesai menulis artikel, tetapi pengukurannya terlihat sangat baik sejauh ini. Groovy2.1 dengan @CompileStatic dan JDK7 memiliki kinerja yang hampir sama dengan Java dengan JDK6 (!).
Saya pikir Groovy akan lebih bersaing dengan Kotlin dan mungkin Ceylon daripada dengan Scala. Scala lebih merupakan bahasa penelitian akademis (meskipun sangat menarik) dan tidak terlalu banyak bahasa untuk menyelesaikan pekerjaan seperti Groovy dan Kotlin. Jika Anda hanya kehilangan mixin, metode ekstensi, penutupan sebenarnya, dan hal-hal lain di Jawa, ini adalah langkah besar yang harus Anda lakukan untuk mendapatkan ini. Sintaks Groovy sangat dekat dengan Jawa yang dianggap sebagai nilai jual nyata dibandingkan dengan Kotlin.
sumber