今週のコーディング素振り(2018/3/25)

今週試し書きしたコードです。

typealiasを使う場面:
型にわかりやすい名前をつけたいとき
ジェネリックタイプにも名前をつけられる。
わかりやすいプログラミングには適切な概念に適切な名前を付けられることが重要なので、たぶん使い所がありそう。

gitlib2 (rugged) を使って git レポジトリを操作するサンプルを書いた。
コミットメッセージを表示した。
メモ: git cat-file -p a6d2afb2d9af72b17fcbc326f73c59595a2632e6 で、gitが格納してる オブジェクトの内容を見れる
練習として、 git のコマンドを実装していきたいんですよね。その準備です。

gitの配管コマンドと呼ばれる低レベルコマンドを使って、git add や git commit でやってる処理を実現してみました。
gitの設計は本当に美しいと感じます。

docker の勉強をしました。
nginxイメージがアップされた直後みたいでimageがビルドされてなかったらしく、docker run nginx が失敗して ファッ!? ってなりました。
そういうこともあるんですね。

拡張関数で書いてみた
fun <t, r=""> List.myMap2(cb: (T) -> R): List
fun <t, r=""> Iterable.myMap3(cb: (T) -> R): List
interface ListはCollectionを継承していて、CollectionはさらにIterableを継承している。 Iterableはiterator() のみを提供しているinterface。 Kotlin組み込みのmapメソッドも、Iterableへの拡張関数として定義されている。

コード

Kotlinの拡張関数の仕組みを使って、コレクションメソッドをいろいろ実装してみました。楽しい!今週は以上です。

関連記事

最近の記事 おすすめ記事
  1. 新人さん向けの品質についての読書会

  1. バーチャルオフィスにオンライン会社訪問

  2. Deep learning勉強筆記1-deep learningのdeepはどういう意味?

  3. 今週の書き捨てコード (2018/3/7)

カテゴリー

アーカイブ

検索


TOP
TOP