Ruby

Software screenshot:
Ruby
Software ətraflı:
Version: 2.5.1 Yenil?nib
Tarixi Upload: 17 Aug 18
Geliştirici: Ruby team
Lisenziya: Pulsuz
Məşhurluq: 73

Rating: 3.7/5 (Total Votes: 3)

Ruby Ruby'də tətbiq yaratmaq istəyən developers üçün güclü proqramlaşdırma dilini təmin etmək üçün zəmanətdən hazırlanmış, çoxtərəfli, sərbəst şəkildə yayılmış, xüsusiyyət zəngin və açıq mənbəli skript satırı proqramıdır


Xüsusiyyətləri, xüsusiyyətləri çoxdur
Açar funksiyalar Ada və Eyfelin ilhamlanmış sadə sintaksisidir, əməliyyat sistemi müstəqil işləmə sistemi, səhvlərin idarə edilməsi üçün istisna işləmə qabiliyyəti, çoxsaylı operatorlar, təmiz və tam obyekt yönümlü dil, eləcə də bir sinifə üsullar əlavə etmək üçün dəstək. / p>

Bundan əlavə, Ruby yalnız bir devralma xüsusiyyətini, əsl bağlanmaları, sintaksisindəki blokları, əsl marka və süpürgə çöp toplayıcısını, C uzantıları, tamsayılar yazmağı dəstəkləyərək, uzadma kitabxanalarının dinamik şəkildə yüklənməsi üçün dəstək verir və bu, dəyişən bəyannamələrə ehtiyac var.


Ruby ilə başlayın

Ruby proqramlaşdırma dilinin bir GNU / Linux əməliyyat sisteminə qurulması çox asan bir işdir, çünki paket, əsas proqram dükanlarından birbaşa, bütün əsas dağıdmalara yüklənə bilər. Quraşdırmaq üçün quraşdırılmış Proqram Mərkəzi tətbiqini istifadə edin.

Alternativ olaraq, son versiya Softoware-da pulsuz olaraq paylanan mənbə paketindən istifadə edilə bilər. Sadəcə olaraq onu yükləyin və Home kataloqunuza saxlayaraq arxiv çıxarın və çıxarılan arxiv fayllarının bir terminal emulator tətbiqində (məsələn, cd /home/softoware/ruby-2.2.0) yerini gedin.

"& lsquo; / configure & rsquo; Layihəni konfiqurasiya etmək üçün əmr (müəyyən bir hardware arxitekturası üçün Ruby'i optimallaşdırmaq üçün mövcud olan variantları görmək üçün "& lsquo; / configure --help & rsquo; komutunu istifadə edə bilərsiniz). Daha sonra, & lsquo; & rsquo; onu tərtib etmək və "sudo install & rsquo;


GNU / Linux, Windows, Mac OS X, BeOS və OS / 2 üzərində dəstəklənir
Ruby, Mac OS X, BeOS, OS / 2 və Microsoft Windows daxil olmaqla, bütün GNU / Linux dağılımlarında və həmçinin UNIX kimi əməliyyat sistemində uğurla istifadə edilə bilən bir cross-platform proqramdır.

Bu sürümde yeni nə :

  • Dondurulmuş String Literal Pragma təqdim edilir. Ruby 2.1, "str" ​​ilə .freeze obyektin ayrılmasını azaltmaq üçün optimize edilmişdir. Ruby 2.3, qaynaq fayllarında bütün simli literalları dondurmaq üçün yeni bir sehrli comment və komanda xətti seçimi təqdim edir. Hata ayıklama üçün əlavə olaraq, obyektin "dondurulmuş String" dəyişdirilə bilməyəcəyini əldə edə bilərsiniz; səhv - bybug = frozen-string-literal command line seçimi.
  • C #, Groovy və Swift-də mövcud olan təhlükəsiz naviqasiya operatoru (yalnız tənbeh operator) &., obj & .foo kimi nil rəftarını asanlaşdırmaq üçün təqdim olunur. Array # dig və Hash # dig də əlavə edilir. Bu cəhd kimi davranır unutmayın!
  • Əməliyyat dəstəyi
  • Did_you_mean gem paylanmışdır. Did_you_mean gem, hata ayıklamasını asanlaşdırmaq üçün AdError və NoMethodError adaylarını göstərir.
  • RubyVM :: TəlimatSequence # to_binary və .load_from_binary eksperimental xüsusiyyət olaraq təqdim olunur. Bu xüsusiyyətlərlə, bir İSEK (bytecode) əvvəlcədən tərtib sistemi qura bilərik.
  • Ayrıca, bir çox performansın yaxşılaşdırılması, məsələn, metod giriş məlumatlarının strukturunu yenidən nəzərdən keçirmək, yeni məlumatların strukturunu təqdim etmək, Proc # zəngini optimallaşdırmaq, obyektin yerləşdirilməsi üçün maşın kodu səviyyəli tuning və üsul çağırış kodunu, Soket və I / O "istisna: & quot; yüksək performanslı blok olmayan I / O və s. üçün açar sözlər.

Sürüm 2.5.0'da yeni :

  • Dondurulmuş String Literal Pragma təqdim edilir. Ruby 2.1, "str" ​​ilə .freeze obyektin ayrılmasını azaltmaq üçün optimize edilmişdir. Ruby 2.3, qaynaq fayllarında bütün simli literalları dondurmaq üçün yeni bir sehrli comment və komanda xətti seçimi təqdim edir. Hata ayıklama üçün əlavə olaraq, obyektin "dondurulmuş String" dəyişdirilə bilməyəcəyini əldə edə bilərsiniz; səhv - bybug = frozen-string-literal command line seçimi.
  • C #, Groovy və Swift-də mövcud olan təhlükəsiz naviqasiya operatoru (yalnız tənbeh operator) &., obj & .foo kimi nil rəftarını asanlaşdırmaq üçün təqdim olunur. Array # dig və Hash # dig də əlavə edilir. Bu cəhd kimi davranır unutmayın!
  • Əməliyyat dəstəyi
  • Did_you_mean gem paylanmışdır. Did_you_mean gem, hata ayıklamasını asanlaşdırmaq üçün AdError və NoMethodError adaylarını göstərir.
  • RubyVM :: TəlimatSequence # to_binary və .load_from_binary eksperimental xüsusiyyət olaraq təqdim olunur. Bu xüsusiyyətlərlə, bir İSEK (bytecode) əvvəlcədən tərtib sistemi qura bilərik.
  • Ayrıca, bir çox performansın yaxşılaşdırılması, məsələn, metod giriş məlumatlarının strukturunu yenidən nəzərdən keçirmək, yeni məlumatların strukturunu təqdim etmək, Proc # zəngini optimallaşdırmaq, obyektin yerləşdirilməsi üçün maşın kodu səviyyəli tuning və üsul çağırış kodunu, Soket və I / O "istisna: & quot; yüksək performanslı blok olmayan I / O və s. üçün açar sözlər.

2.4.2 versiyasında yeni :

  • Dondurulmuş String Literal Pragma təqdim edilir. Ruby 2.1, "str" ​​ilə .freeze obyektin ayrılmasını azaltmaq üçün optimize edilmişdir. Ruby 2.3, qaynaq fayllarında bütün simli literalları dondurmaq üçün yeni bir sehrli comment və komanda xətti seçimi təqdim edir. Hata ayıklama üçün əlavə olaraq, obyektin "dondurulmuş String" dəyişdirilə bilməyəcəyini əldə edə bilərsiniz; səhv - bybug = frozen-string-literal command line seçimi.
  • C #, Groovy və Swift-də mövcud olan təhlükəsiz naviqasiya operatoru (yalnız tənbeh operator) &., obj & .foo kimi nil rəftarını asanlaşdırmaq üçün təqdim olunur. Array # dig və Hash # dig də əlavə edilir. Bu cəhd kimi davranır unutmayın!
  • Əməliyyat dəstəyi
  • Did_you_mean gem paylanmışdır. Did_you_mean gem, hata ayıklamasını asanlaşdırmaq üçün AdError və NoMethodError adaylarını göstərir.
  • RubyVM :: TəlimatSequence # to_binary və .load_from_binary eksperimental xüsusiyyət olaraq təqdim olunur. Bu xüsusiyyətlərlə, bir İSEK (bytecode) əvvəlcədən tərtib sistemi qura bilərik.
  • Ayrıca, bir çox performansın yaxşılaşdırılması, məsələn, metod giriş məlumatlarının strukturunu yenidən nəzərdən keçirmək, yeni məlumatların strukturunu təqdim etmək, Proc # zəngini optimallaşdırmaq, obyektin yerləşdirilməsi üçün maşın kodu səviyyəli tuning və üsul çağırış kodunu, Soket və I / O "istisna: & quot; yüksək performanslı blok olmayan I / O və s. üçün açar sözlər.

2.4.1 versiyasında yeni :

  • Dondurulmuş String Literal Pragma təqdim edilir. Ruby 2.1, "str" ​​ilə .freeze obyektin ayrılmasını azaltmaq üçün optimize edilmişdir. Ruby 2.3, qaynaq fayllarında bütün simli literalları dondurmaq üçün yeni bir sehrli comment və komanda xətti seçimi təqdim edir. Hata ayıklama üçün əlavə olaraq, obyektin "dondurulmuş String" dəyişdirilə bilməyəcəyini əldə edə bilərsiniz; səhv - bybug = frozen-string-literal command line seçimi.
  • C #, Groovy və Swift-də mövcud olan təhlükəsiz naviqasiya operatoru (yalnız tənbeh operator) &., obj & .foo kimi nil rəftarını asanlaşdırmaq üçün təqdim olunur. Array # dig və Hash # dig də əlavə edilir. Bu cəhd kimi davranır unutmayın!
  • Əməliyyat dəstəyi
  • Did_you_mean gem paylanmışdır. Did_you_mean gem, hata ayıklamasını asanlaşdırmaq üçün AdError və NoMethodError adaylarını göstərir.
  • RubyVM :: TəlimatSequence # to_binary və .load_from_binary eksperimental xüsusiyyət olaraq təqdim olunur. Bu xüsusiyyətlərlə, bir İSEK (bytecode) əvvəlcədən tərtib sistemi qura bilərik.
  • Ayrıca, bir çox performansın yaxşılaşdırılması, məsələn, metod giriş məlumatlarının strukturunu yenidən nəzərdən keçirmək, yeni məlumatların strukturunu təqdim etmək, Proc # zəngini optimallaşdırmaq, obyektin yerləşdirilməsi üçün maşın kodu səviyyəli tuning və üsul çağırış kodunu, Soket və I / O "istisna: & quot; yüksək performanslı blok olmayan I / O və s. üçün açar sözlər.

2.4.0 versiyasında yeni :

  • Dondurulmuş String Literal Pragma təqdim edilir. Ruby 2.1, "str" ​​ilə .freeze obyektin ayrılmasını azaltmaq üçün optimize edilmişdir. Ruby 2.3, qaynaq fayllarında bütün simli literalları dondurmaq üçün yeni bir sehrli comment və komanda xətti seçimi təqdim edir. Hata ayıklama üçün əlavə olaraq, obyektin "dondurulmuş String" dəyişdirilə bilməyəcəyini əldə edə bilərsiniz; səhv - bybug = frozen-string-literal command line seçimi.
  • C #, Groovy və Swift-də mövcud olan təhlükəsiz naviqasiya operatoru (yalnız tənbeh operator) &., obj & .foo kimi nil rəftarını asanlaşdırmaq üçün təqdim olunur. Array # dig və Hash # dig də əlavə edilir. Bu cəhd kimi davranır unutmayın!
  • Əməliyyat dəstəyi
  • Did_you_mean gem paylanmışdır. Did_you_mean gem, hata ayıklamasını asanlaşdırmaq üçün AdError və NoMethodError adaylarını göstərir.
  • RubyVM :: TəlimatSequence # to_binary və .load_from_binary eksperimental xüsusiyyət olaraq təqdim olunur. Bu xüsusiyyətlərlə, bir İSEK (bytecode) əvvəlcədən tərtib sistemi qura bilərik.
  • Ayrıca, bir çox performansın yaxşılaşdırılması, məsələn, metod giriş məlumatlarının strukturunu yenidən nəzərdən keçirmək, yeni məlumatların strukturunu təqdim etmək, Proc # zəngini optimallaşdırmaq, obyektin yerləşdirilməsi üçün maşın kodu səviyyəli tuning və üsul çağırış kodunu, Soket və I / O "istisna: & quot; yüksək performanslı blok olmayan I / O və s. üçün açar sözlər.

Sürüm 2.3.3'de yeni :

  • Dondurulmuş String Literal Pragma təqdim edilir. Ruby 2.1, "str" ​​ilə .freeze obyektin ayrılmasını azaltmaq üçün optimize edilmişdir. Ruby 2.3, qaynaq fayllarında bütün simli literalları dondurmaq üçün yeni bir sehrli comment və komanda xətti seçimi təqdim edir. Hata ayıklama üçün əlavə olaraq, obyektin "dondurulmuş String" dəyişdirilə bilməyəcəyini əldə edə bilərsiniz; səhv - bybug = frozen-string-literal command line seçimi.
  • C #, Groovy və Swift-də mövcud olan təhlükəsiz naviqasiya operatoru (yalnız tənbeh operator) &., obj & .foo kimi nil rəftarını asanlaşdırmaq üçün təqdim olunur. Array # dig və Hash # dig də əlavə edilir. Bu cəhd kimi davranır unutmayın!
  • Əməliyyat dəstəyi
  • Did_you_mean gem paylanmışdır. Did_you_mean gem, hata ayıklamasını asanlaşdırmaq üçün AdError və NoMethodError adaylarını göstərir.
  • RubyVM :: TəlimatSequence # to_binary və .load_from_binary eksperimental xüsusiyyət olaraq təqdim olunur. Bu xüsusiyyətlərlə, bir İSEK (bytecode) əvvəlcədən tərtib sistemi qura bilərik.
  • Ayrıca, bir çox performansın yaxşılaşdırılması, məsələn, metod giriş məlumatlarının strukturunu yenidən nəzərdən keçirmək, yeni məlumatların strukturunu təqdim etmək, Proc # zəngini optimallaşdırmaq, obyektin yerləşdirilməsi üçün maşın kodu səviyyəli tuning və üsul çağırış kodunu, Soket və I / O "istisna: & quot; yüksək performanslı blok olmayan I / O və s. üçün açar sözlər.

Sürüm 2.3.1'de yeni :

  • Dondurulmuş String Literal Pragma təqdim edilir. Ruby 2.1, "str" ​​ilə .freeze obyektin ayrılmasını azaltmaq üçün optimize edilmişdir. Ruby 2.3, qaynaq fayllarında bütün simli literalları dondurmaq üçün yeni bir sehrli comment və komanda xətti seçimi təqdim edir. Hata ayıklama üçün əlavə olaraq, obyektin "dondurulmuş String" dəyişdirilə bilməyəcəyini əldə edə bilərsiniz; səhv - bybug = frozen-string-literal command line seçimi.
  • C #, Groovy və Swift-də mövcud olan təhlükəsiz naviqasiya operatoru (yalnız tənbeh operator) &., obj & .foo kimi nil rəftarını asanlaşdırmaq üçün təqdim olunur. Array # dig və Hash # dig də əlavə edilir. Bu cəhd kimi davranır unutmayın!
  • Əməliyyat dəstəyi
  • Did_you_mean gem paylanmışdır. Did_you_mean gem, hata ayıklamasını asanlaşdırmaq üçün AdError və NoMethodError adaylarını göstərir.
  • RubyVM :: TəlimatSequence # to_binary və .load_from_binary eksperimental xüsusiyyət olaraq təqdim olunur. Bu xüsusiyyətlərlə, bir İSEK (bytecode) əvvəlcədən tərtib sistemi qura bilərik.
  • Ayrıca, bir çox performansın yaxşılaşdırılması, məsələn, metod giriş məlumatlarının strukturunu yenidən nəzərdən keçirmək, yeni məlumatların strukturunu təqdim etmək, Proc # zəngini optimallaşdırmaq, obyektin yerləşdirilməsi üçün maşın kodu səviyyəli tuning və üsul çağırış kodunu, Soket və I / O "istisna: & quot; yüksək performanslı blok olmayan I / O və s. üçün açar sözlər.

Sürüm 2.3.0'da yeni :

  • Dondurulmuş String Literal Pragma təqdim edilir. Ruby 2.1, "str" ​​ilə .freeze obyektin ayrılmasını azaltmaq üçün optimize edilmişdir. Ruby 2.3, qaynaq fayllarında bütün simli literalları dondurmaq üçün yeni bir sehrli comment və komanda xətti seçimi təqdim edir. Hata ayıklama üçün əlavə olaraq, obyektin "dondurulmuş String" dəyişdirilə bilməyəcəyini əldə edə bilərsiniz; səhv - bybug = frozen-string-literal command line seçimi.
  • C #, Groovy və Swift-də mövcud olan təhlükəsiz naviqasiya operatoru (yalnız tənbeh operator) &., obj & .foo kimi nil rəftarını asanlaşdırmaq üçün təqdim olunur. Array # dig və Hash # dig də əlavə edilir. Bu cəhd kimi davranır unutmayın!
  • Əməliyyat dəstəyi
  • Did_you_mean gem paylanmışdır. Did_you_mean gem, hata ayıklamasını asanlaşdırmaq üçün AdError və NoMethodError adaylarını göstərir.
  • RubyVM :: TəlimatSequence # to_binary və .load_from_binary eksperimental xüsusiyyət olaraq təqdim olunur. Bu xüsusiyyətlərlə, bir İSEK (bytecode) əvvəlcədən tərtib sistemi qura bilərik.
  • Ayrıca, bir çox performansın yaxşılaşdırılması, məsələn, metod giriş məlumatlarının strukturunu yenidən nəzərdən keçirmək, yeni məlumatların strukturunu təqdim etmək, Proc # zəngini optimallaşdırmaq, obyektin yerləşdirilməsi üçün maşın kodu səviyyəli tuning və üsul çağırış kodunu, Soket və I / O "istisna: & quot; yüksək performanslı blok olmayan I / O və s. üçün açar sözlər.

  • adı doğrulama zəifliyi. CVE-2015-3900 RubyGems 2.4.6 və əvvəlki həssaslıq zolağını qaçırmağı tələb et.


  • Yeni versiyası 2.2.2'de:

    • Bu azadlıq, bir OpenSSL uzantısının hostname doğrulama təhlükəsizliyi.

    Sürüm 2.2.0'da yeni :

    • VM (üsul cache)
    • RGenGC (ko1'in RubyKayqi təqdimatı və RubyConf 2013 təqdimatı)
    • düzəlişlər # 8481 # 8571
    • sözdizim dəyişiklikləri:
    • Decimal / Kompleks Qeyd # 8430
    • def'nin dönüş dəyəri # 3753
    • Bignum:
    • GMP # 8796 istifadə edin
    • String # scrub # 8414
    • Socket.getifaddrs # 8368
    • RDoc 4.1.0 və RubyGems 2.2.0
    • "literal" .freeze indi # 9042
    • optimallaşdırılıb
    • İstisna # səbəb # 8257 əlavə edin
    • BigDecimal, JSON, NKF, Rake, RubyGems və RDoc kimi kitabxanaları yeniləyin
    • küfrləri aradan qaldırmaq # 8584

    Sürüm 2.0.0-p0'da yeni :

    • Dil əsas xüsusiyyətləri:
    • API dizaynına esneklik verən əsas arqumentlər
    • Bir sinif uzatmaq üçün yeni bir yoldur olan modul # prepend,
    • Bir literal% i, asanlıqla bir sıra simvol yaradır
    • __ dir__, faylın dirnəmini hazırda yerinə yetirən
    • UTF-8 standart kodlaması, çoxlu sehrli şərhləri əlçatmaz edir
    • Daxili kitabxanalar:
    • Enumerable # tənbəl və Enumerator :: Lazy, (ehtimal ki, sonsuz) tənbəl axın üçün
    • Enumerator # ölçüsü və Range # ölçüsü, tənbəl ölçülü qiymətləndirmə üçün
    • #to_h, Hash'a dönüşüm üçün yeni bir konvensiyadır
    • Onigmo, yeni regexp mühərriki olan (Oniguruma çəngəl)
    • Asynchronous istisna işləmə API
    • Debug dəstəyi:
    • İstehsalatda run-time diaqnozunu təmin edən DTrace dəstəyi
    • TracePoint, təkmilləşdirilmiş izləmə APIı olan
    • Performans təkmilləşdirilməsi:
    • Bitmap işarəsi ilə GC optimallaşdırılması
    • Kernel #, Rails başlanmasını çox sürətli edən
    • optimallaşdırma tələb edir
    • Yöntem göndərmə kimi VM optimallaşdırılması
    • Float əməliyyat optimallaşdırılması

    1.9.3-p392 versiyasında yeni :

    • Bu sürüm, paketli JSON və REXML haqqında təhlükəsizlik düzeltmelerini ehtiva edir:
    • Xidmətdə imtina və təhlükəsiz obyektlərin yaradılması JSON-da (CVE-2013-0269) zəiflik
    • REXML (XML bombası) Entity genişləndirilməsi DoS zəiflik
    • Və bəzi kiçik bugfixes də daxil edilir.

    • Bu versiya, paketli 1.9.3-p385 versiyasında yeni RDoc.

    • Bu versiya, paketli 1.9.3-p384 versiyasında yeni RDoc.

    1.9.3-p286 versiyasında :

    • $ SAFE istisna # to_s haqqında zəifliyindən qaçan / NameError # to_s (CVE-2012-4464, CVE-2012-4466)
    • İstənməyən fayl yaratma, qeyri-qanuni bir NUL karakterinin daxil edilməsinə səbəb oldu
    • digər bir çox hata düzeltmesi.

Oxşar proqram

bpython
bpython

14 Apr 15

wempy
wempy

20 Feb 15

Retro
Retro

20 Feb 15

Xojo
Xojo

20 Feb 15

Şərh Ruby

Şərhlər tapılmadı
Şərh əlavə
Images yandırın!