Apakah Groovy akan pergi? [Tutup]

30

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.)

Amir Raminfar
sumber
1
Jika seseorang melihat Grails vs Lift hari ini, maka Grails akan menjadi pemenang. Kata siapa?
Mahmoud Hossam
Saya hanya melakukannya berdasarkan popularitas. Grails memiliki pengikut x1000 dan Lift hanya memiliki x200ish di stackoverflow.
Amir Raminfar
Mungkin angkat lebih mudah? punya dokumentasi yang lebih baik? atau mungkin Grails sudah ada lebih lama dari lift?
Mahmoud Hossam
3
Akan lebih adil untuk membandingkan Grails dengan Scala + Play Framework. Play Framework juga dapat digunakan dengan Java dan terinspirasi oleh Ruby on Rails.
Jonas
3
"Jika seseorang melihat Grails vs Lift hari ini, maka Grails akan menjadi pemenang yang jelas" , Anda mengatakan 2 tahun yang lalu, tetapi Mainkan! 2 telah dengan mudah menggantikan Lift sebagai kerangka web berbasis Scala terkemuka, dan berada di depan Grails (IMHO).
Vorg van Geir

Jawaban:

23

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.

Jika CEO BMW mengatakan dia mengendarai Mercedes maka orang akan bertanya-tanya mengapa kita semua tidak mengendarai Mercedes juga, kan?

Coba tebak apa yang dipilih James Gosling?

Chiron
sumber
Gradle bukan lagi sumber terbuka! _!
Semut
1
Yang benar-benar penting adalah bahasa inti dan itu adalah perpustakaan inti. Anda tidak dapat membuat sesuatu yang lebih baik daripada Groovy. Bahasa intinya mudah dan dinamis, cepat, dan perpustakaan java seperti apache dll lebih baik daripada di bahasa lain. Ini adalah bahasa terbaik di sekitar dan karena itu tidak hilang. Plugins and Grails bukan yang penting - dunia bahasa dinamis seperti PHP sudah tahu apa yang penting (seperti yang saya katakan). Dan ada kucing jantan dan JBoss. Sekarang pergi dan periksa Ruby, ini lelucon! Ini lebih buruk dari .net! Sekarang pergi dan periksa Python dan cari tahu bagaimana menangani kesalahan dalam kode jaringan.
Andrew Smith
Anda benar .. Gradle menjadi lebih populer yang menggunakan skrip Groovy ..
The Coder
6

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.

Martijn Verburg
sumber
"Grails secara konstan berada dalam kerangka 2 teratas" tetapi backend berbasis PHP tidak dianggap sebagai "kerangka kerja", bahkan itulah yang masih digunakan oleh sebagian besar bisnis.
Vorg van Geir
3

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.

shabunc
sumber
3

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.).

James Anderson
sumber
1
Melihat sekeliling, tidak ada yang saya kenal menggunakan Groovy hari ini dan tidak ada daftar pekerjaan Groovy yang diiklankan di daerah saya. Jadi, pasti tidak terlihat bagus untuk itu. Saya yakin ini sedang digunakan, tapi itu bukan teknologi arus utama di sini.
Brian Knoblauch
1
@Brian Groovy masih merupakan satu-satunya pilihan yang layak jika Anda perlu menggunakan Grails. (Memang diakui Grails semakin digantikan oleh pendatang baru yang lebih bersih seperti Play! 2.)
Vorg van Geir
@James Jangan lupa Eclipse sebagai pembunuh-Groovy untuk skrip JVM, pengujian & pembuatan otomatis, dll.
Vorg van Geir
Saya sudah menjalankan melintasi toko lokal menggunakan Groovy sekarang! Namun, saya masih belum bertemu dengan siapa pun yang menggunakan Grails.
Brian Knoblauch
2

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.

OlliP
sumber
4
Saya mohon untuk tidak setuju tentang Scala menjadi akademis. Ini sebenarnya sangat produktif dan bermanfaat, dan saat ini digunakan di banyak lembaga keuangan, di Linkedin, Twitter, dan sebagainya. Saya benar-benar mencoba baik Scala dan Groovy di sini di mana saya bekerja, dan saya tidak akan pernah memilih Groovy untuk proyek di atas ambang kompleksitas yang ringan.
Andrea
1
Baru minggu lalu ada bug serius dalam mode yang dikompilasi secara statis dengan Groovy 2.1 . Anda bisa mendapatkan kecepatan dengan bug (yaitu Groovy statis) atau Anda bisa mendapatkan keandalan tetapi slooooooow (yaitu Groovy yang dikompilasi secara dinamis), tetapi Anda tidak bisa mendapatkan kecepatan DAN keandalan. Bahasa pemrograman efek-kuantum tidak berguna bagi siapa pun.
Vorg van Geir
1
Groovy adalah bahasa yang diletakkan di atas Jawa (yaitu menambahkan beberapa fitur ke Jawa). Sistem yang cukup rumit telah dibangun dengan Java. Jadi saya tidak berpikir Anda perlu bahasa yang sangat canggih untuk menulis aplikasi yang kompleks. Saya telah menambahkan beberapa bug kompiler Groovy ke basis bug Groovy dan saya percaya bahwa Scala memiliki kompiler kualitas yang lebih baik. Tapi saya tidak berpikir Anda perlu Scala karena aplikasi ini sangat menuntut. Solusinya adalah dalam desain dan dalam keahlian domain masalah, tidak banyak dalam bahasa.
OlliP