2016年12月14日のブックマーク (1件)

  • Kotlin拡張関数は怖くない、その実態を紐解く。 - MA Blog

    Kotlin未経験Javaエンジニアに拡張関数を説明すると「怖い」と言われることがあります。 おそらく、クラスを継承する事なく拡張できることが黒魔術的に見えるがゆえの感想なのではないでしょうか。 稿では拡張関数の実態を知ることで、拡張関数をもっと身近に感じてもらいたいと思います。 拡張関数とはなにか 拡張関数はクラスを継承せずに機能を追加するための機能です。 下記のようにfun Type.functionName(...)とすることでそのTypeに新たに関数を追加する事ができます。 fun String.println() { println(this) } 拡張関数は通常の関数と同じように呼び出すことが可能です。 "Hello World".println() // out: Hello World 拡張関数はどのように実現されているのか StringExtension.ktファイルに

    Kotlin拡張関数は怖くない、その実態を紐解く。 - MA Blog
    shiraji
    shiraji 2016/12/14
    privateの拡張関数を拡張専用クラスで書いたときの影響に関して。これ読んでやっぱりprivateなら使うクラス内で定義せなねと。アクセッサーメソッドできちゃう。