ruby

転置(transpose)

業務でrailsのコードレビューをしているときに、rubyにtransposeメソッドがあるのを初めて知った。 pythonだとnumpyなどで利用できるが、rubyは組み込みライブラリで定義されている。 docs.ruby-lang.org typescriptはnpmライブラリがあった。 www.npmjs.com…

ruby のプライベートメソッドにアクセスする方法

その名の通りprivateなmethodなので、レシーバーから呼び出せないが、sendを使えば呼ぶことができる。 他にもinstance_evalを使っても呼ぶことができる。 通常のコードでは当然使ってはいけないが、テストなどで重宝する。 class C private def private_meth…

Rubyのメソッド数

Rubyのメソッド数を調べる方法について、以下のサイトでよくまとまっていたのでメモ。 Array含めすべてのクラスはClassクラスのインスタンスであることを踏まえて、methods、instance_methodsを考えると 一貫性が見えてくる。 Rubyのメソッドを数えましょう♫…

Rubyのメソッド探索

Rubyがメソッドを探索する流れについて、色々な本やWebサイトをあたってみた。 www.shoeisha.co.jp 最初に読んだのがこの本だったと思う。 第2章 クラス、オブジェクト、モジュール 項目6 Rubyが継承階層をどのように組み立てるかを頭に入れよう がメソッド…

本田さんのFizzBuzz

alfalfalfa.com 本田さんプログラミングの勉強しているってことは、FizzBuzz書いたりしているのかな、 でも本田さんならこんなFizzBuzz書いてるんじゃないかなと妄想

Ruby で順列を求める

A, B, C, D, Eの5人から4人を選んで一列に並べる場合の並び方はいくつ? いわゆる順列の問題。Rubyにはpermutationメソッドがあるので、これを使って 簡単に求められる。 https://ref.xaio.jp/ruby/classes/array/permutation # 5人から4人を選んで一列に並…

プログラムはこうして作られる

Web上を探せばテトリスのソースコードやチュートリアルはいくらでもあるのだけれど、 この本はプログラミング自体を全く知らない前提でアルゴリズムも1から作り出していく、という意欲的な内容。 全くのプログラミング初心者だけでなく、普段プログラミング…

グループ

こんなデータがあるとして、 [ { name: "筒香", bats: 5, hits: 3 }, { name: "ロペス", bats: 5, hits: 2 }, { name: "宮崎", bats: 5, hits: 4 }, { name: "筒香", bats: 4, hits: 2 }, { name: "ロペス", bats: 4, hits: 4 }, { name: "宮崎", bats: 4, h…

rails tutorial 1周した

転職してからrailsアプリのフロント作業がメインの仕事になった。 railsの知識はない前提で入社はしたものの、知らないままでは仕事の範囲が狭いままになってしまうので、良いと評判のrails tutorialをやっている。 1/23(月) rails tutorial 1週目終わり。…

route.rbのnamespaceとmoduleととscopeの違い

namespace URL、controller格納フォルダ共、指定のパスになる。 module controllerの格納フォルダだけ、指定パスになる。 scope URLだけ、指定のパスになる。 参考 qiita.com