2020-08-01から1ヶ月間の記事一覧
前置き クラス変数についてまとめます。 その2は、クラス変数をメソッド内で生成した場合の挙動について。 クラス変数のメソッド内生成 その1でも書きましたが、クラス変数はメソッド外だけでなく、クラスメソッドやインスタンスメソッド内でも生成するこ…
前置き クラス変数について、まとめてみます。個人的には、インスタンス変数、クラスインスタンス変数より注意が必要な感じがしています。 その1は、基本的なこと。 クラス変数 クラス変数は、そのクラス、およびそのクラスから継承されたクラスで共有され…
前置き C# や JAVA でのメソッドの protected 指定は、「そのクラスと継承したクラスからアクセス可能」という意味ですが、Ruby の場合はちょっと挙動が異なるみたいなので、まとめてみました。 protected なクラスメソッド、protected なインスタンスメソッ…
前置き Ruby のクラスメソッドについてまとめます。 その3は、クラスメソッドの public, protected, private について 書き方 クラス定義内で、デフォルトでクラスメソッドを定義すると、public のクラスメソッドとなります。 ただ、インスタンスメソッドと…
Ruby 関連を調べていて知った、伊藤淳一さん(Ruby のチェリー本の著者の方です)のはてなブログを読んでいたら、JavaScript の本についての紹介記事がありました。 blog.jnito.com その中で、「JavaScript Primer 迷わないための入門書」という本が、Web上…
前置き Ruby のクラスメソッドについてです。その2は、クラスメソッドと特異クラスについて。 クラスメソッド その1で、クラスメソッドの定義方法は、self.[メソッド名] で定義する、と書きましたが、これは、インスタンスオブジェクトに特異メソッドを定…
前置き Ruby のクラスメソッドについてまとめます。 インスタンスメソッドと同じく、その1は、基本的なことを整理します。 書き方 インスタンスメソッドの定義と同じように、クラス定義内で、def の後にメソッド名を書きますが、メソッド名の前にself.をつ…
前置き Ruby の「クラスインスタンス変数」についてまとめます。 クラスインスタンス変数とは 書き方 クラス定義内で、文字列の頭に「@」をつけて表します。インスタンスメソッド内で生成する「インスタンス変数」と同じ書き方なので注意が必要です。 生成 …
前置き Ruby のインスタンスメソッドについてまとめます。 その3は、特異メソッドについて。 特異メソッドとは インスタンスは、クラスで定義された内容で生成されますが、「特異メソッド」は生成されたインスタンス自身に、新たに定義するインスタンスメソ…
前置き Ruby のインスタンスメソッドについてまとめます。 その2は、public, protected, private について 書き方 クラス定義内で、デフォルトでインスタンスメソッドを定義すると、public のインスタンスメソッドとなります。 インスタンスメソッドの定義…
前置き Ruby のインスタンスメソッドについてまとめます。 その1は、基本的なこと。 書き方 クラス定義内で、def の後にメソッド名を書き、機能の記述をendではさむことで定義できます。 インスタンスメソッドのサンプル 以下、サンプルのクラスです。 clas…
前置き Ruby の「インスタンス変数」についてまとめます。 インスタンス変数とは 書き方 クラス定義内で、文字列の頭に「@」をつけて表します。「クラスインスタンス変数」と同じ書き方なので注意が必要です。 生成 インスタンス変数は、インスタンスメソッ…
前置き O'Reilly の「プログラミング言語 Ruby」「メタプログラミング Ruby」を一通り読みました。 が、読んでると「なるほどー」と思って理解したつもりになっても、少しややこしいソースを見たりするとすぐにわからなくなる、、、「Classクラスが云々」「…