2014/09/14 このエントリーをはてなブックマークに追加 はてなブックマーク - 「Kotlin Advent Calendar 2012 (全部俺)」を全部俺が読んだ話

「Kotlin Advent Calendar 2012 (全部俺)」を全部俺が読んだ話



JetBrains社サイトより引用



勢いで関西Kotlin勉強会に参加する事になった私(勉強会3日前)。



参加申請してから焦り始める。
Java知ってれば雰囲気でいけるやろ!と思いつつもさすがに手ブラで行くのはまずいかと思い始める。


「ベンキョーカイにはマサカリというものがあり、新参者が行くと身体をズタズタにされる」





そんな偏見があり(ホントは全然そんな事ない)、勉強せねばと奮起。
完全に勉強会参加を決めてからKotlinを覚え始めました。







  前提


☆僕のスペック
JavaEEとかサーバーサイド三年ぐらい経験。
Groovy知らない。Scala知らない。VBAはなぜか知ってる(悲しい)。



  学習期間


2日

  やったこと


たろうさん(@ngsw_taro)の書いたKotlin Advent Calendar 2012 (全部俺)を全部俺が読む + 初歩レベルのコーディング



つまり25エントリーを一気読みした。

あとJetbrains社の提供しているWebDemoでコードをコトコト書いた。
(Web Demoめちゃ便利。コンパイル、実行、コードアシスト全部やってくれる。)





  • たまに分からんけど、Kotlin読めるようになった!
  • Kotlin書けるようになった!(はじめコンパイルエラーでまくった)
  • Kotlin書いた後、Java書いたらすごいめんどくさく感じた(つまりKotlin楽だし便利だわ)
  • たろうさんおかしい。25日で濃密すぎる。レベル高い。でも分かりやすい。
  • 家に積まれたままのEffective Javaちゃんと読もっと。。。



  • 僕みたいなしょぼしょぼプログラマーでも2日間でここまでいけるから、
    Kotlinは分かりやすい!Javaよりカジュアルで、某言語よりチャラくない!(※個人の感想です)





    全体的にnext Javaって感じで書かれている。



    Java知っている人はJava基準に読んでいけるから、吸収率すごいと思う。
    「Java知ってる前提って何よ、言語はそれぞれスタンドアローンが良いよ」
    的な気持ちも分からないでもないけど、
    JVM言語の宿命なのかなと思う。
    ただ、Java知らずにKotlinから覚えても全然イケる。


      一気読みした所感


  • Kotlinはヌルポのない世界が広がってそう(なる確率相当低い。糞プログラマーでもかなり安全)
  • ボイラープレート的なやつ全然ない!
  • 拡張関数便利、でもこれ実質finalクラスないってことになるんじゃ
  • オーバーロード出来るのかな?->メソッドは出来た。コンストラクタは無理だった。※検証済み
  • 関数は{}か=で表現出来るから便利!

  • こういうこと。下のコードは同じ。
    // 足し算
    fun add ( val  a: Int, val b : Int) : Int  {
       return  a + b 
    }
    // 足し算
    fun add ( val  a: Int, val b : Int) : Int = a + b 
  • 「!」とか「!!」とかdata、object、in、outとかはなんかスッと入ってこなかった。けど覚えたら超楽そう。







  •   勉強会ドリブン良いよ



    個人的な話だが、勉強会に参加したかった。刺激が欲しかった。カッとなってやった。
    勉強会に参加が決まった時点で短期で集中するしかなくなった。
    勉強会ドリブン吸収率高いので皆さんおすすめ。

    あと、そんな感じでも勉強会参加出来るので、初心者勉強会とかもなかなかビビったり、
    億劫になったりしている人は遠慮せず行くべき。



      Kotlin冗談抜きで良いよ



    「へぇ、Kotlinって可愛い名前だな。ジャッバスクリップト的な感じかな」と思ってた僕が馬鹿でした。すみません。


    Javaの代わりに全然使える。JetBrains社も産業利用出来るって言ってるけどホントそう。
    SIでも使えると思う。学習コストがーーーって言う人に限ってJavaもちゃんと書けないんだろ!!!

    ただ、問題点として、下記2つ。
  • 未実装部分が多く、まだ安定板ではない?こと
  • 下位互換があまり無く変更が多い。

  • これらはある程度したら地盤が固まってくるだろうと思うけどね。


    現実的な線として、Androidのプロジェクトで利用するのがあるかなぁと思った。



    ということで、僕の悪あがきについては以上。
    勉強会については別エントリを急いで書きます。





    0 件のコメント:

    コメントを投稿