数学勉強してサーバーを0から構築すれば良いのでは???
[これを言ってくるエンジニア、老害です。すぐに縁を切りましょう。 | 【テックジム】授業をしないプログラミング教室]( https://techgym.jp/colmn/mingra38/ )
Rubyの動かないコード (初級編) ブロックとクロージャの性質 - 主に言語とシステム開発に関して https://language-and-engineering.hatenablog.jp/entry/20101118/p1
ファイルを開く場合が分かりやすいけど,
File.open("hoge.txt", "w") do |f|
f.puts "hogehoge"
end
みたいにブロック(≒クロージャみたいなもん)を受け取るメソッドを使って,前後に何か処理をする,ってスタイルが多い気がする.
オブジェクトごとのデストラクタは確かにないかも知れない.
RubyでDirectXを使うライブラリのドキュメント見つけたけど、
リソースの解放について http://mirichi.github.io/dxruby-doc/tips/release_resources.html
こんな書き方されてるってことは、Rubyにはこまめに明示的にリソースを解放すべき処理を書く標準的な仕組みが用意されてないって事っぽいかも?><
これって無駄にハードウェアフットプリントが大きくそして狙いに反して(※1 )性能が悪いソフトウェアが書かれまくる原因のひとつにもなってるんでは?><
(※1 あまりにも富豪的に書かれ過ぎてGCによる遅延解放のメリットをも覆い隠して本末転倒になる(パフォーマンス低下する)んでは?>< って言いたい><)
ファイナライザはこれにあるっぽい><
module ObjectSpace (Ruby 3.0.0 リファレンスマニュアル) https://docs.ruby-lang.org/ja/latest/class/ObjectSpace.html
こまめに解放すべき処理(C# で言うとIDisposable.Dispose()、GC無い言語環境でいうとデストラクタに書く処理)ってどう書くんだろ?><;
https://docs.ruby-lang.org/ja/latest/doc/spec=2fcontrol.html#END
> END ブロックは一つの記述につき最初の一回のみ有効です。たとえば以下のようにループの中で実行しても複数の END ブロックが登録されるわけではありません。そのような目的には Kernel.#at_exit を使います。
ワイオミング州の歴史調べてたら日本の意味不明時代劇(?)が出てきた><;
必殺仕事人意外伝 主水、第七騎兵隊と闘う 大利根ウエスタン月夜 - Wikipedia https://ja.wikipedia.org/wiki/%E5%BF%85%E6%AE%BA%E4%BB%95%E4%BA%8B%E4%BA%BA%E6%84%8F%E5%A4%96%E4%BC%9D_%E4%B8%BB%E6%B0%B4%E3%80%81%E7%AC%AC%E4%B8%83%E9%A8%8E%E5%85%B5%E9%9A%8A%E3%81%A8%E9%97%98%E3%81%86_%E5%A4%A7%E5%88%A9%E6%A0%B9%E3%82%A6%E3%82%A8%E3%82%B9%E3%82%BF%E3%83%B3%E6%9C%88%E5%A4%9C