ruby2.3.0の新 機能について - rabbit slide show · pdf filetwitterやgithubでは@znz....
TRANSCRIPT
![Page 1: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/1.jpg)
Ruby�2.3.0�の新機能についてKazuhiro�NISHIYAMA
第70回�Ruby関⻄�勉強会2016-01-09
![Page 2: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/2.jpg)
自⼰紹介
twitter�や�github�では�@znz
![Page 3: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/3.jpg)
Ruby�関連
Ruby�(CRuby)�のコミッター
Ruby�関係でいろいろるびま�(Rubyist�Magazine)�とか
http://magazine.rubyist.net/
るりま�(Ruby�リファレンスマニュアル)�とかhttp://docs.ruby-lang.org/ja/
Ruby�関連のイベントでの発表
![Page 4: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/4.jpg)
Ruby�2.3.0
2015-12-25�リリース
2.3�系列最初のリリース
![Page 5: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/5.jpg)
新機能を知るには?
www.ruby-lang.org�のリリースアナウンス
配布物の������ファイル
それらを元に紹介を書いているブログ記事
![Page 6: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/6.jpg)
Frozen�String�Literal�プラグマ�(1)
Ruby�2.1�から��������������が最適化
�������追加の�pull�request�が社会問題化
新しいマジックコメントとコマンドラインオプション追加
![Page 7: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/7.jpg)
Frozen�String�Literal�プラグマ�(2)
結果:�新しいマジックコメント追加の�pull�request�増加か(?)
要経過観察
![Page 8: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/8.jpg)
Frozen�String�Literal�プラグマ�(3)
���������������������������������������������������������������������������������������������
shebang�や�coding�マジックコメントがあれば、その後
![Page 9: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/9.jpg)
Frozen�String�Literal�プラグマ�(4)
��でも���でも良い
�����������������������������
�����������������������������
![Page 10: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/10.jpg)
Frozen�String�Literal�プラグマ�(5)
大⽂字でも良い
�����������������������������
しかし�typo�していると効かないのでしっかり動作確認しましょう
![Page 11: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/11.jpg)
Frozen�String�Literal�プラグマ�(6)
コマンドラインオプションでデフォルトの挙動変更
������������������������������������������
![Page 12: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/12.jpg)
Frozen�String�Literal�プラグマ�(7)
影響を受けなくする�(今までの挙動にする)�には
������������������������������
標準添付ライブラリには追加済み
![Page 13: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/13.jpg)
Frozen�String�Literal�プラグマ�(8)
���������������������������������������������������������������������������������������������������������������
![Page 14: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/14.jpg)
Frozen�String�Literal�プラグマ�(9)
����������������������������������������������������������������������������������������������������������������������������������������
ruby�--debug=frozen-string-literal�foo.rb�で実⾏すると⽂字列の⽣成場所がわかる�(ruby�-d�
foo.rb�でも有効になる)
![Page 15: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/15.jpg)
Frozen�String�Literal�プラグマ�(10)
個⼈的にはおすすめは
速度が必要なファイルだけ�
���������������������������
破壊的変更が必要なリテラルは�
����������で�mutable�にする
互換性が必要なら、引き続き�
������������
![Page 16: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/16.jpg)
���������,�����������(1)
�������は変更可能な�String�を返す
�������は�freeze�された�String�
を返す覚え⽅:�⽔は�0�度以下で凍るから
![Page 17: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/17.jpg)
���������,�����������(2)
演算⼦の優先順位に注意が必要
�����������������������������
��������������������������������������
������������������������������������
![Page 18: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/18.jpg)
���������,�����������(3)
�������������は最適化される
�������は最適化されない
個⼈的感想としては、広く使われるかどうかはよく分からない
![Page 19: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/19.jpg)
safe�navigation�
operator�(1)
セーフナビゲーション演算⼦
⽇本語の定訳は�(まだ)�ない
lonely�operator�(ぼっち演算⼦)�とも呼ばれている
![Page 20: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/20.jpg)
safe�navigation�
operator�(2)
C#,�Groovy,�Swift�などの����に似た機能
���は採用できなかったので���
開発版の途中までは����だった
Active�Support�の������に相当
![Page 21: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/21.jpg)
Active�Support
r52232�で修正されているように�
ActiveSupport�ではなく�Active�
Support�が正式名称
��������������������������������������������������������������
http://railsguides.jp/api̲documentation̲guidelines.html#%E8%AA%9E%E8%AA%BF
![Page 22: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/22.jpg)
safe�navigation�
operator�(3)
��������
���������������相当
![Page 23: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/23.jpg)
safe�navigation�
operator�(4)
���������������������
������が常に呼ばれる
���������������
������が呼ばれるかは�����が�����かどうかによる
![Page 24: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/24.jpg)
safe�navigation�
operator�(5)
��������������
属性の代⼊形式も使える
![Page 25: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/25.jpg)
safe�navigation�
operator�(6)
������������
����が�����でも�����が呼ばれる
#11816�に議論あり
![Page 26: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/26.jpg)
safe�navigation�
operator�(7)
�������������
����������������������������������に相当
![Page 27: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/27.jpg)
dig�(1)
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
��������������������������������������������
![Page 28: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/28.jpg)
dig�(2)
JSON�をパースした結果など用
���������,���������,�����������,���������������
![Page 29: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/29.jpg)
did̲you̲mean�gem�(1)
did̲you̲mean�gem�がバンドルされた
NameError�と�
NoMethodError�の発⽣時に修正候補表⽰
![Page 30: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/30.jpg)
did̲you̲mean�gem�(2)
������������������������������������������������������������������������������������������������������������������������������������������������
![Page 31: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/31.jpg)
did̲you̲mean�gem�(3)
無効にするには
���������������������������������������������������������������������������������������������������������������������������������������������
���������������������������������������������������������������������������������������������������������������������������������������������
![Page 32: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/32.jpg)
did̲you̲mean�gem�(4)
内部的にサポートが増えて速度的にもほぼ問題なくなっている
Feature�#10881�で�
������������������������が追加された
Feature�#11777�で�
��������������������������が追加されて������������を使わなくなった
![Page 33: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/33.jpg)
RubyVM::InstructionSequence�(1)
experimental�feature
RubyVM::InstructionSequence#to̲binary�と�.load̲from̲binary
コンパイル済みバイナリを読み書き
![Page 34: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/34.jpg)
RubyVM::InstructionSequence�(2)
使用例として�yomikomu�gem
https://github.com/ko1/yomikomu
詳細は�http://atdot.net/~ko1/diary/201512.html#d13
![Page 35: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/35.jpg)
さまざまなパフォーマンス改善�(1)
https://www.ruby-lang.org/ja/news/2015/12/25/ruby-2-3-0-released/�より
method�entry�データ構造の再検討
新しい�table�data�構造
����������最適化
![Page 36: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/36.jpg)
さまざまなパフォーマンス改善�(2)
オブジェクトアロケーションとメソッド呼び出しのコードにおけるマシンコードレベルでの最適化
よりスマートな�instance�
variable�データ構造
![Page 37: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/37.jpg)
さまざまなパフォーマンス改善�(3)
�����������における�
exception:�false�キーワード引数のサポート
![Page 38: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/38.jpg)
�����������に������������������キーワード引数
����������������/����������������
を発⽣する代わりに
��������������/��������������
を返す
![Page 39: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/39.jpg)
NEWS
ここまでが�www.ruby-lang.org�
で取り上げられていた新機能�(とその関連の話)
ここからは�NEWS�からその他の新機能を抜粋
![Page 40: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/40.jpg)
indented�here�
document�(1)
����の代わりに����
�����������������������������������������������������������������������������������
��������������������������������������������
![Page 41: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/41.jpg)
indented�here�
document�(2)
⼀番浅いインデントが削られる
������������������������������������������������������
![Page 42: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/42.jpg)
indented�here�
document�(3)
2.3.0�では����の場合にバグあり
�����������������������������������������������������
![Page 43: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/43.jpg)
�������������������
��������������(要素を返す)�のインデックスを返すバージョン
![Page 44: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/44.jpg)
��������������no�longer�
rescues�exceptions
���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
![Page 45: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/45.jpg)
new�Encoding::IBM037�
(alias�ebcdic-cp-us;�dummy)
EBCDIC�は「主にIBM系のメインフレームやオフィスコンピュータなどで使用されている」(Wikipedia�より)
ASCII�とは非互換なので�
dummy
![Page 46: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/46.jpg)
�������(1)
�����������������,������������������������
inverse�version�of������
![Page 47: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/47.jpg)
�������(2)
�����������������������������������������������������������������������������������
![Page 48: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/48.jpg)
�����������������������(1)
����������������������の仲間
![Page 49: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/49.jpg)
�����������������������(2)
����������������������������������������������������������������������������������������������������������������������������������������������������
�����������������������������������������������������������������������������������������������������������������������������������������������������������������
�����������������������������������������������������������������������������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������������
![Page 50: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/50.jpg)
�����������������
キーが存在しない時の挙動が�
�����������と同様の�
��������������
���������������������������������������������������������������
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
![Page 51: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/51.jpg)
�������,�������,��������,��������(1)
包含関係を調べられる
����������������������������������������������������������������������������
![Page 52: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/52.jpg)
�������,�������,��������,��������(2)
全順序ではないので����������は定義されていない
��������������������������������������������������������������
![Page 53: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/53.jpg)
������������
�����を�����などでそのまま使えるようになる
������������������������������������
�����������������������������������
![Page 54: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/54.jpg)
�������������������������
deprecated�だが互換性のために残している定数を参照した時に警告を表⽰する機能
�������������������������������������������������������������������������������������������������������������������������������������
![Page 55: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/55.jpg)
�����������������,������������������
正の数か負の数かを調べるメソッド
������������������������������������
![Page 56: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/56.jpg)
�����������
close�すると無限の�nil�を�push�したかのような動作をする
��������������������������������������������������������������������������������������������������������������������
���������������������������������������
![Page 57: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/57.jpg)
������/������
Unicode�のバージョンが�7.0.0�
から�8.0.0�に上がった
![Page 58: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/58.jpg)
�����������に����������キーワード引数
frozen-string-literal�を考慮すると
���������������������������������������������
となるのが
������������������������������������������������
とかける
![Page 59: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/59.jpg)
�����������,�������������
�������の名前の取得・設定を⾏うAPIが追加された
デバッグなどで識別したい時に便利
![Page 60: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/60.jpg)
��������での例外抑制
��������で�
�����������������������������が発⽣する代わりに自動でエスケープされるようになった
Feature�#11801�rb̲inspect�shouldn't�raise�error�even�if�calling�inspect�returns�non�
compatible�strings
![Page 61: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/61.jpg)
������済み����の����������の例外抑制
���������������������
と書いていたのが
�������
だけでよくなった
![Page 62: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/62.jpg)
���������������が�
deprecated
���������������が呼ばれた時に�
deprecated�だと警告が出るようになった
![Page 63: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/63.jpg)
��������
passive�mode�がデフォルトになった
��������������������������で設定可能
![Page 64: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/64.jpg)
���������
�����������������������のデフォルトが�����から����(秒)�に変わった
![Page 65: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/65.jpg)
�����������
net-telnet�gem�として外だしされた
https://github.com/ruby/net-telnet
bundled�gem�として配布には含まれる
![Page 66: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/66.jpg)
rake
rake�も�ruby�のレポジトリに直接含まれるのはやめて�bundled�
gem�になった
![Page 67: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/67.jpg)
�����
��������と���������が�
obsolete�になった
������を�2�以上に設定しようとすると��������������
![Page 68: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/68.jpg)
���������������⾼速化
���������������が�C�拡張で⾼速化された
https://github.com/ruby/ruby/pull/1164
最大約7倍
ワーストケースでも約3倍
![Page 69: Ruby2.3.0の新 機能について - Rabbit Slide Show · PDF filetwitterやgithubでは@znz. Ruby](https://reader033.vdocuments.site/reader033/viewer/2022051320/5abd1aac7f8b9a567c8e9305/html5/thumbnails/69.jpg)
まとめ
いろんな新機能が追加された
いろいろと⾼速化された
紹介しきれなかったものは�
NEWS�参照
https://github.com/ruby/ruby/blob/v2̲3̲0/NEWS