Ruby

Software screenshot:
Ruby
Rincian Software:
Versi: 2.5.1 Diperbarui
Tanggal Upload: 17 Aug 18
Pengembang: Ruby team
Lisensi: Gratis
Popularitas: 161

Rating: 3.7/5 (Total Votes: 3)

Ruby adalah perangkat lunak baris perintah terbuka dan kaya sumber terbuka yang kaya fitur dan terbuka yang telah dirancang dari nol untuk menyediakan bahasa pemrograman yang kuat bagi pengembang yang ingin membuat aplikasi di Ruby .


Fitur, banyak fitur

Fitur utama termasuk sintaks sederhana yang terinspirasi oleh Ada dan Eiffel, sistem operasi threading independen, kemampuan penanganan pengecualian untuk menangani kesalahan, banyak operator, bahasa berorientasi objek murni dan lengkap, serta dukungan untuk menambahkan metode ke kelas. / p>

Selain itu, Ruby hanya memiliki fitur warisan tunggal, penutupan yang benar, blok dalam sintaksnya, pengumpul sampah mark-and-sweep yang sesungguhnya, dukungan untuk menulis ekstensi C, bilangan bulat, dukungan untuk memuat pustaka ekstensi secara dinamis, dan tidak perlu perlu deklarasi variabel.


Mulai dengan Ruby

Menginstal bahasa pemrograman Ruby pada sistem operasi GNU / Linux adalah tugas yang sangat mudah, karena paket ini tersedia untuk diunduh di semua distribusi utama, langsung dari repositori perangkat lunak utama mereka. Gunakan aplikasi Pusat Software bawaan untuk menginstalnya.

Sebagai alternatif, versi terbaru dapat diinstal menggunakan paket sumber, yang didistribusikan secara gratis di Softoware. Cukup unduh dan simpan di direktori Home, ekstrak arsip dan arahkan ke lokasi file arsip yang diekstrak dalam aplikasi emulator terminal (mis. Cd /home/softoware/ruby-2.2.0).

Jalankan & lsquo ;./ configure & rsquo; perintah untuk mengkonfigurasi proyek (Anda dapat menggunakan perintah & lsquo; ./ configure --help & rsquo; untuk melihat opsi yang tersedia untuk mengoptimalkan Ruby untuk arsitektur perangkat keras tertentu). Kemudian, jalankan & lsquo; make & rsquo; perintah untuk mengkompilasi dan & lsquo; sudo membuat pemasangan & rsquo; perintah untuk menginstalnya.


Didukung pada GNU / Linux, Windows, Mac OS X, BeOS dan OS / 2

Ruby adalah perangkat lunak lintas platform yang dapat digunakan dengan sukses pada semua distribusi GNU / Linux, serta pada sistem operasi seperti UNIX, termasuk Mac OS X, BeOS, OS / 2 dan Microsoft Windows. Ini kompatibel dengan platform komputer 32-bit dan 64-bit.

Apa yang baru dalam rilis ini:

  • Pragma Literal String Beku diperkenalkan. Dengan Ruby 2.1, & quot; str & quot; .freeze telah dioptimalkan untuk mengurangi alokasi objek. Ruby 2.3 memperkenalkan komentar ajaib baru dan opsi baris perintah untuk membekukan semua literal string dalam file sumber. Selain itu untuk debugging, Anda bisa mendapatkan tempat objek dibuat & quot; tidak dapat mengubah String & quot beku; error by --debug = opsi baris perintah frozen-string-literal.
  • Operator navigasi yang aman (disebut operator kesepian) &., yang sudah ada di C #, Groovy, dan Swift, diperkenalkan untuk memudahkan penanganan nihil sebagai obj & .foo. Array # dig dan Hash # dig juga ditambahkan. Perhatikan bahwa ini berperilaku seperti yang dicoba! Dukungan Aktif, yang khusus menangani hanya nihil.
  • Permata did_you_mean dipaketkan. Permata did_you_mean menampilkan kandidat di NameError dan NoMethodError untuk mempermudah proses debug.
  • RubyVM :: InstructionSequence # to_binary dan .load_from_binary diperkenalkan sebagai fitur eksperimental. Dengan fitur ini, kita dapat membuat sistem pra-kompilasi ISeq (bytecode).
  • Ini juga mencakup banyak peningkatan kinerja misalnya, mempertimbangkan kembali struktur data entri metode, memperkenalkan struktur data tabel baru, mengoptimalkan pengaktifan # Proc, penyetelan tingkat kode mesin untuk alokasi objek dan kode pemanggilan metode, struktur data variabel instans yang lebih cerdas, Socket dan I / O memungkinkan untuk menggunakan & quot; pengecualian: & quot; kata kunci untuk I / O non-blocking berperforma tinggi dan sebagainya.

Apa yang baru di versi 2.5.0:

  • Pragma Literal String Beku diperkenalkan. Dengan Ruby 2.1, & quot; str & quot; .freeze telah dioptimalkan untuk mengurangi alokasi objek. Ruby 2.3 memperkenalkan komentar ajaib baru dan opsi baris perintah untuk membekukan semua literal string dalam file sumber. Selain itu untuk debugging, Anda bisa mendapatkan tempat objek dibuat & quot; tidak dapat mengubah String & quot beku; error by --debug = opsi baris perintah frozen-string-literal.
  • Operator navigasi yang aman (disebut operator kesepian) &., yang sudah ada di C #, Groovy, dan Swift, diperkenalkan untuk memudahkan penanganan nihil sebagai obj & .foo. Array # dig dan Hash # dig juga ditambahkan. Perhatikan bahwa ini berperilaku seperti yang dicoba! Dukungan Aktif, yang khusus menangani hanya nihil.
  • Permata did_you_mean dipaketkan. Permata did_you_mean menampilkan kandidat di NameError dan NoMethodError untuk mempermudah proses debug.
  • RubyVM :: InstructionSequence # to_binary dan .load_from_binary diperkenalkan sebagai fitur eksperimental. Dengan fitur ini, kita dapat membuat sistem pra-kompilasi ISeq (bytecode).
  • Ini juga mencakup banyak peningkatan kinerja misalnya, mempertimbangkan kembali struktur data entri metode, memperkenalkan struktur data tabel baru, mengoptimalkan pengaktifan # Proc, penyetelan tingkat kode mesin untuk alokasi objek dan kode pemanggilan metode, struktur data variabel instans yang lebih cerdas, Socket dan I / O memungkinkan untuk menggunakan & quot; pengecualian: & quot; kata kunci untuk I / O non-blocking berperforma tinggi dan sebagainya.

Apa yang baru di versi 2.4.2:

  • Pragma Literal String Beku diperkenalkan. Dengan Ruby 2.1, & quot; str & quot; .freeze telah dioptimalkan untuk mengurangi alokasi objek. Ruby 2.3 memperkenalkan komentar ajaib baru dan opsi baris perintah untuk membekukan semua literal string dalam file sumber. Selain itu untuk debugging, Anda bisa mendapatkan tempat objek dibuat & quot; tidak dapat mengubah String & quot beku; error by --debug = opsi baris perintah frozen-string-literal.
  • Operator navigasi yang aman (disebut operator kesepian) &., yang sudah ada di C #, Groovy, dan Swift, diperkenalkan untuk memudahkan penanganan nihil sebagai obj & .foo. Array # dig dan Hash # dig juga ditambahkan. Perhatikan bahwa ini berperilaku seperti yang dicoba! Dukungan Aktif, yang khusus menangani hanya nihil.
  • Permata did_you_mean dipaketkan. Permata did_you_mean menampilkan kandidat di NameError dan NoMethodError untuk mempermudah proses debug.
  • RubyVM :: InstructionSequence # to_binary dan .load_from_binary diperkenalkan sebagai fitur eksperimental. Dengan fitur ini, kita dapat membuat sistem pra-kompilasi ISeq (bytecode).
  • Ini juga mencakup banyak peningkatan kinerja misalnya, mempertimbangkan kembali struktur data entri metode, memperkenalkan struktur data tabel baru, mengoptimalkan pengaktifan # Proc, penyetelan tingkat kode mesin untuk alokasi objek dan kode pemanggilan metode, struktur data variabel instans yang lebih cerdas, Socket dan I / O memungkinkan untuk menggunakan & quot; pengecualian: & quot; kata kunci untuk I / O non-blocking berperforma tinggi dan sebagainya.

Apa yang baru di versi 2.4.1:

  • Pragma Literal String Beku diperkenalkan. Dengan Ruby 2.1, & quot; str & quot; .freeze telah dioptimalkan untuk mengurangi alokasi objek. Ruby 2.3 memperkenalkan komentar ajaib baru dan opsi baris perintah untuk membekukan semua literal string dalam file sumber. Selain itu untuk debugging, Anda bisa mendapatkan tempat objek dibuat & quot; tidak dapat mengubah String & quot beku; error by --debug = opsi baris perintah frozen-string-literal.
  • Operator navigasi yang aman (disebut operator kesepian) &., yang sudah ada di C #, Groovy, dan Swift, diperkenalkan untuk memudahkan penanganan nihil sebagai obj & .foo. Array # dig dan Hash # dig juga ditambahkan. Perhatikan bahwa ini berperilaku seperti yang dicoba! Dukungan Aktif, yang khusus menangani hanya nihil.
  • Permata did_you_mean dipaketkan. Permata did_you_mean menampilkan kandidat di NameError dan NoMethodError untuk mempermudah proses debug.
  • RubyVM :: InstructionSequence # to_binary dan .load_from_binary diperkenalkan sebagai fitur eksperimental. Dengan fitur ini, kita dapat membuat sistem pra-kompilasi ISeq (bytecode).
  • Ini juga mencakup banyak peningkatan kinerja misalnya, mempertimbangkan kembali struktur data entri metode, memperkenalkan struktur data tabel baru, mengoptimalkan pengaktifan # Proc, penyetelan tingkat kode mesin untuk alokasi objek dan kode pemanggilan metode, struktur data variabel instans yang lebih cerdas, Socket dan I / O memungkinkan untuk menggunakan & quot; pengecualian: & quot; kata kunci untuk I / O non-blocking berperforma tinggi dan sebagainya.

Apa yang baru di versi 2.4.0:

  • Pragma Literal String Beku diperkenalkan. Dengan Ruby 2.1, & quot; str & quot; .freeze telah dioptimalkan untuk mengurangi alokasi objek. Ruby 2.3 memperkenalkan komentar ajaib baru dan opsi baris perintah untuk membekukan semua literal string dalam file sumber. Selain itu untuk debugging, Anda bisa mendapatkan tempat objek dibuat & quot; tidak dapat mengubah String & quot beku; error by --debug = opsi baris perintah frozen-string-literal.
  • Operator navigasi yang aman (disebut operator kesepian) &., yang sudah ada di C #, Groovy, dan Swift, diperkenalkan untuk memudahkan penanganan nihil sebagai obj & .foo. Array # dig dan Hash # dig juga ditambahkan. Perhatikan bahwa ini berperilaku seperti yang dicoba! Dukungan Aktif, yang khusus menangani hanya nihil.
  • Permata did_you_mean dipaketkan. Permata did_you_mean menampilkan kandidat di NameError dan NoMethodError untuk mempermudah proses debug.
  • RubyVM :: InstructionSequence # to_binary dan .load_from_binary diperkenalkan sebagai fitur eksperimental. Dengan fitur ini, kita dapat membuat sistem pra-kompilasi ISeq (bytecode).
  • Ini juga mencakup banyak peningkatan kinerja misalnya, mempertimbangkan kembali struktur data entri metode, memperkenalkan struktur data tabel baru, mengoptimalkan pengaktifan # Proc, penyetelan tingkat kode mesin untuk alokasi objek dan kode pemanggilan metode, struktur data variabel instans yang lebih cerdas, Socket dan I / O memungkinkan untuk menggunakan & quot; pengecualian: & quot; kata kunci untuk I / O non-blocking berperforma tinggi dan sebagainya.

Apa yang baru di versi 2.3.3:

  • Pragma Literal String Beku diperkenalkan. Dengan Ruby 2.1, & quot; str & quot; .freeze telah dioptimalkan untuk mengurangi alokasi objek. Ruby 2.3 memperkenalkan komentar ajaib baru dan opsi baris perintah untuk membekukan semua literal string dalam file sumber. Selain itu untuk debugging, Anda bisa mendapatkan tempat objek dibuat & quot; tidak dapat mengubah String & quot beku; error by --debug = opsi baris perintah frozen-string-literal.
  • Operator navigasi yang aman (disebut operator kesepian) &., yang sudah ada di C #, Groovy, dan Swift, diperkenalkan untuk memudahkan penanganan nihil sebagai obj & .foo. Array # dig dan Hash # dig juga ditambahkan. Perhatikan bahwa ini berperilaku seperti yang dicoba! Dukungan Aktif, yang khusus menangani hanya nihil.
  • Permata did_you_mean dipaketkan. Permata did_you_mean menampilkan kandidat di NameError dan NoMethodError untuk mempermudah proses debug.
  • RubyVM :: InstructionSequence # to_binary dan .load_from_binary diperkenalkan sebagai fitur eksperimental. Dengan fitur ini, kita dapat membuat sistem pra-kompilasi ISeq (bytecode).
  • Ini juga mencakup banyak peningkatan kinerja misalnya, mempertimbangkan kembali struktur data entri metode, memperkenalkan struktur data tabel baru, mengoptimalkan pengaktifan # Proc, penyetelan tingkat kode mesin untuk alokasi objek dan kode pemanggilan metode, struktur data variabel instans yang lebih cerdas, Socket dan I / O memungkinkan untuk menggunakan & quot; pengecualian: & quot; kata kunci untuk I / O non-blocking berperforma tinggi dan sebagainya.

Apa yang baru di versi 2.3.1:

  • Pragma Literal String Beku diperkenalkan. Dengan Ruby 2.1, & quot; str & quot; .freeze telah dioptimalkan untuk mengurangi alokasi objek. Ruby 2.3 memperkenalkan komentar ajaib baru dan opsi baris perintah untuk membekukan semua literal string dalam file sumber. Selain itu untuk debugging, Anda bisa mendapatkan tempat objek dibuat & quot; tidak dapat mengubah String & quot beku; error by --debug = opsi baris perintah frozen-string-literal.
  • Operator navigasi yang aman (disebut operator kesepian) &., yang sudah ada di C #, Groovy, dan Swift, diperkenalkan untuk memudahkan penanganan nihil sebagai obj & .foo. Array # dig dan Hash # dig juga ditambahkan. Perhatikan bahwa ini berperilaku seperti yang dicoba! Dukungan Aktif, yang khusus menangani hanya nihil.
  • Permata did_you_mean dipaketkan. Permata did_you_mean menampilkan kandidat di NameError dan NoMethodError untuk mempermudah proses debug.
  • RubyVM :: InstructionSequence # to_binary dan .load_from_binary diperkenalkan sebagai fitur eksperimental. Dengan fitur ini, kita dapat membuat sistem pra-kompilasi ISeq (bytecode).
  • Ini juga mencakup banyak peningkatan kinerja misalnya, mempertimbangkan kembali struktur data entri metode, memperkenalkan struktur data tabel baru, mengoptimalkan pengaktifan # Proc, penyetelan tingkat kode mesin untuk alokasi objek dan kode pemanggilan metode, struktur data variabel instans yang lebih cerdas, Socket dan I / O memungkinkan untuk menggunakan & quot; pengecualian: & quot; kata kunci untuk I / O non-blocking berperforma tinggi dan sebagainya.

Apa yang baru di versi 2.3.0:

  • Pragma Literal String Beku diperkenalkan. Dengan Ruby 2.1, & quot; str & quot; .freeze telah dioptimalkan untuk mengurangi alokasi objek. Ruby 2.3 memperkenalkan komentar ajaib baru dan opsi baris perintah untuk membekukan semua literal string dalam file sumber. Selain itu untuk debugging, Anda bisa mendapatkan tempat objek dibuat & quot; tidak dapat mengubah String & quot beku; error by --debug = opsi baris perintah frozen-string-literal.
  • Operator navigasi yang aman (disebut operator kesepian) &., yang sudah ada di C #, Groovy, dan Swift, diperkenalkan untuk memudahkan penanganan nihil sebagai obj & .foo. Array # dig dan Hash # dig juga ditambahkan. Perhatikan bahwa ini berperilaku seperti yang dicoba! Dukungan Aktif, yang khusus menangani hanya nihil.
  • Permata did_you_mean dipaketkan. Permata did_you_mean menampilkan kandidat di NameError dan NoMethodError untuk mempermudah proses debug.
  • RubyVM :: InstructionSequence # to_binary dan .load_from_binary diperkenalkan sebagai fitur eksperimental. Dengan fitur ini, kita dapat membuat sistem pra-kompilasi ISeq (bytecode).
  • Ini juga mencakup banyak peningkatan kinerja misalnya, mempertimbangkan kembali struktur data entri metode, memperkenalkan struktur data tabel baru, mengoptimalkan pengaktifan # Proc, penyetelan tingkat kode mesin untuk alokasi objek dan kode pemanggilan metode, struktur data variabel instans yang lebih cerdas, Socket dan I / O memungkinkan untuk menggunakan & quot; pengecualian: & quot; kata kunci untuk I / O non-blocking berperforma tinggi dan sebagainya.

Apa yang baru di versi 2.2.3:

  • Rilis ini termasuk perbaikan keamanan untuk domain RubyGems kerentanan verifikasi nama. CVE-2015-3900 Meminta kerentanan pembajakan di RubyGems 2.4.6 dan sebelumnya

Apa yang baru di versi 2.2.2:

  • Rilis ini termasuk perbaikan keamanan untuk ekstensi OpenSSL kerentanan verifikasi nama host.

Apa yang baru di versi 2.2.0:

  • VM (cache metode)
  • RGenGC (Lihat presentasi RubyKaigi ko1 dan presentasi RubyConf 2013)
  • perbaikan # 8481 # 8571
  • perubahan sintaks:
  • Desimal / Kompleks Literal # 8430
  • nilai pengembalian def # 3753
  • Bignum:
  • gunakan GMP # 8796
  • String # scrub # 8414
  • Socket.getifaddrs # 8368
  • RDoc 4.1.0 dan RubyGems 2.2.0
  • & quot; literal & quot; .freeze sekarang dioptimalkan # 9042
  • tambahkan Exception # cause # 8257
  • memperbarui pustaka seperti BigDecimal, JSON, NKF, Rake, RubyGems, dan RDoc
  • buang kutukan # 8584

Apa yang baru di versi 2.0.0-p0:

  • Fitur inti bahasa:
  • Argumen kata kunci, yang memberikan fleksibilitas untuk desain API
  • Modul # menambahkan, yang merupakan cara baru untuk memperluas kelas
  • % literal i, yang membuat larik simbol dengan mudah
  • __ dir__, yang mengembalikan dirname dari file yang sedang dieksekusi
  • Enkode default UTF-8, yang membuat banyak komentar ajaib menjadi tidak ada
  • Pustaka bawaan:
  • Enumerable # lazy dan Enumerator :: Malas, untuk aliran malas (mungkin tidak terbatas)
  • Ukuran enumerator # dan ukuran Range #, untuk evaluasi ukuran malas
  • #to_h, yang merupakan konvensi baru untuk konversi ke Hash
  • Onigmo, yang merupakan mesin regexp baru (garpu Oniguruma)
  • Asynchronous exception handling API
  • Dukungan debug:
  • Dukungan DTrace, yang memungkinkan diagnosis run-time dalam produksi
  • TracePoint, yang merupakan API penelusuran yang ditingkatkan
  • Peningkatan kinerja:
  • Pengoptimalan GC oleh penandaan bitmap
  • Kernel # membutuhkan pengoptimalan yang membuat Rails memulai dengan sangat cepat
  • Pengoptimalan VM seperti pengiriman metode
  • Pengoptimalan pengoperasian float

Apa yang baru di versi 1.9.3-p392:

  • Rilis ini mencakup perbaikan keamanan tentang bundel JSON dan REXML:
  • Penolakan Layanan dan Penciptaan Kerentanan Objek Tidak Aman dalam JSON (CVE-2013-0269)
  • Ekspansi entitas Kerentanan DoS di REXML (bom XML)
  • Dan beberapa perbaikan bug kecil juga disertakan.

Apa yang baru di versi 1.9.3-p385:

  • Rilis ini mencakup perbaikan keamanan tentang paket RDoc.

Apa yang baru di versi 1.9.3-p384:

  • Rilis ini mencakup perbaikan keamanan tentang paket RDoc.

Apa yang baru di versi 1.9.3-p286:

  • $ SAFE lolos dari kerentanan tentang Exception # to_s / NameError # to_s (CVE-2012-4464, CVE-2012-4466)
  • Pembuatan file yang tidak disengaja disebabkan oleh memasukkan karakter NUL ilegal
  • banyak perbaikan bug lainnya.

Software yang serupa

Polygen
Polygen

3 Jun 15

Avian
Avian

20 Feb 15

Excelsior JET
Excelsior JET

17 Feb 15

Komentar untuk Ruby

Komentar tidak ditemukan
Tambahkan komentar
Aktifkan gambar!