Sebagian besar bahasa pemrograman memiliki beberapa keputusan desain yang memengaruhi penggunaan dan penerapannya.
Sebagai contoh:
- Python fokus pada pemeliharaan / keterbacaan kode dan memiliki lekukan menjadi bagian dari bahasa itu sendiri.
- Niat Java adalah untuk menjadi lintas platform OOP 'lebih mudah' dan 'lebih ramah' daripada C ++
- Objective-C dibangun sebagai pembungkus OO di sekitar C yang tidak mengetahui masa depan C ++ saat itu
- Erlang dirancang untuk sistem yang sangat toleran dan bersamaan
- PHP dirancang untuk menangani pembuatan halaman web secara dinamis
- CoffeeScript dirancang untuk mengekspos bagian -bagian yang baik dari Javascript dan menambahkan gula sintaksis OOP dan menyembunyikan nuansa (global dll.) Dari JS 'di belakang layar' dll.
Setiap bahasa pemrograman mencoba untuk mengeksploitasi dan memanfaatkan ceruk IMHO tertentu. Di atas adalah perspektif saya tentang apa saja prinsip-prinsip dasar dari bahasa pemrograman dan yang mengatur evolusi mereka dan kemampuan adopsi secara luas. Tentu saja, ada banyak lagi, tetapi daftar ini hanya dimaksudkan sebagai contoh
Namun, saya telah berjuang untuk memahami prinsip-prinsip dasar yang mendasari Ruby dan popularitasnya yang semakin meningkat. Apa prinsip dasar Ruby yang membuatnya populer hari ini? Atau jenius seseorang yang merancang kerangka Rails? Jika yang terakhir itu Ruby membuat perancangan Rails lebih baik / lebih mudah / lebih cepat? Dalam arti apa?
Alasan yang paling sering dikutip sesuai penciptanya adalah '... ingin bersenang-senang mengetik bahasa pemrograman' - Saya tidak melihat itu sebagai alasan untuk menciptakan bahasa pemrograman baru sama sekali! Pemrograman benar-benar menyenangkan IMHO terlepas dari bahasa (masing-masing bahasa memiliki beberapa bagian yang buruk, tetapi salah satu bisa mengelilinginya atau hidup dengannya).
Jadi, niche apa yang (atau tidak) dieksploitasi Ruby yang tidak dieksploitasi oleh bahasa saat ini? Apa 'titik kuat' (USP) dari Ruby yang telah menyebabkan adopsi yang meluas? Apa yang dilakukan Ruby yang belum pernah dilakukan sebelumnya (atau sangat sulit)?
Saya bukan programmer Ruby, tetapi hanya Ruby noob dan karenanya kebingungan.
Penafian : Ini BUKAN perang api dan saya tidak mencari jenis jawaban bahasa Ruby vs Pemrograman. Saya mencari keputusan desain yang menjadi dasar Ruby yang menyebabkan adopsi luas. Ceruk apa yang dipuaskan Ruby untuk menjadi populer atau yang murni dikaitkan dengan Rails?
Ini tidak langsung menjawab pertanyaan judul, tetapi membahas beberapa poin yang diangkat (yaitu mengapa Ruby dibuat)
Kutipan dari Yukihiro 'Matz' Matsumoto, pencipta Ruby, yang dapat membantu menjelaskan apa yang mengilhami penciptaannya:
Jadi pada dasarnya, Matz menginginkan bahasa yang sangat berorientasi objek yang dirancang untuk kebahagiaan programmer.
sumber
+
di1+1
adalah metode.Ruby (togehter with rails) membuat konvensi lebih dari konfigurasi populer.
Cara lama (non ruby on rails) adalah
Dengan konvensi konfigurasi , pekerjaan dasar untuk ini dilakukan secara otomatis:
contras: Anda harus mempelajari semua cenvention sehingga belajar ruby on rails pada lari pertama lebih sulit.
pro: setelah Anda mengetahui konvensi itu, cukup mudah untuk memahami kode ruby lain di kereta pengembang karena setiap orang dipaksa untuk mengikuti konvensi yang sama.
sementara itu konvensi tentang konfigurasi telah masuk ke dalam banyak sistem ramah lingkungan pengkodean
sumber
Pertama, Ruby adalah "bahasa saat ini". Mungkin maksud Anda "Bahasa yang populer saat Ruby dibuat pada 1995."
Saya suka Ruby karena alasan yang sama saya suka Perl:
Ini kuat dan ekspresif. Saya dapat menulis tentang satu baris kode Ruby alih-alih lima baris Java atau C ++. Tidak ada pengulangan yang tidak bisa diperhitungkan dengan kerepotan minimal.
Ini dinamis. Metode dan properti dapat dibuat pada saat run-time, jadi saya dapat membungkus objek di sekitar hal-hal yang didefinisikan secara eksternal, seperti tabel database, tanpa menduplikasi definisi hal-hal itu, dan tanpa membangun kembali aplikasi.
Ada buku yang bagus tentang bahasa ( Ruby Pemrograman ) yang bisa dibaca dan komprehensif.
Ada satu repositori untuk paket domain publik, dan antarmuka baris perintah yang nyaman ke repositori.
Tapi saya lebih suka Ruby daripada Perl karena lebih mudah dibaca.
Ada banyak halaman yang membandingkan Ruby dengan Python. Saya menyukai keduanya. Saya lebih suka Ruby, tetapi saya memiliki pengalaman terbatas dengan Python.
sumber