タグ

ブックマーク / mike-neck.hatenadiary.com (4)

  • Gradle3.0で一部が激しく変更されるっぽい感じが漂う件 - mike-neckのブログ

    gradleは単なるタスク実行基盤ツールですが、僕が3~4年前に人から「gradleなんてクッソマイナーで型もないgroovy(偏見)のツールなんて誰が使うか」と言われてた頃から比べると、Androidでの採用もあり、かなり普及した感があります。 さて、そんなだいぶ馴染んできたgradleですが、gradle3.0のデザインドキュメントを読んでいると、Javaだけのプロジェクトならそれほど変わらないかもしれないのですが、nativeと一緒のプロジェクトにおいては激しく変更される(より親密になる)ような感じがあります。 Gradle2.4で新しい(というかバイナリービルドでは使われていた)機能のドキュメントにその変更について若干見え隠れしています。これは以前書いたエントリーを参照下さい。 mike-neck.hatenadiary.com 【補足】なお、この記事は5月に書いたものですが、すで

    Gradle3.0で一部が激しく変更されるっぽい感じが漂う件 - mike-neckのブログ
  • hspecを使ってcabalでテストしてみた - mike-neckのブログ

    Haskellのhspecについて、まあ、すでにやっている人はやっているだろうし、今更感が否めない記事です。僕のスキルの低さではなかなかレベルが高くて辛かったのでメモになっています。なお、記事のほぼ全部の部分については以下のエントリーを参考にしています。正直、この記事がなければ僕はまだhspecを実行できなかったと思う。 github.com 雑な紹介 hspecはRubyのRSpecにインスパイアーされて作られたHaskell用のテスティングフレームワークです。 cabalはHaskell用のビルドツールです。 プロジェクトの構造 プロジェクトの構造は次のような感じになります。(プロジェクトの名前はmy-project) my-project ┣ LICENSE ┣ Setup.hs ┣ cabal.config ┣ cabal.sandbox.config ┣ my-project.

    hspecを使ってcabalでテストしてみた - mike-neckのブログ
  • Java 8 Streamの挙動を調べたった - mike-neckのブログ

    表記の件について、JavaのListから作るStreamは操作中に変更をするとその後の挙動についてなんら結果を保証しないので、ListからStreamを作った場合は、変更をしないか、あるいは不可変なListに変換してから作るのが良いです。 と、書いておいてからなのですが、こんなツイート見かけました。 これは思わぬ結果 ステートフルな中間操作のsorted()かますと 最終的にListは空になるけどforEachで全て出力される。 なんでだろう? これで今日も眠れないw pic.twitter.com/864kLHyK8K— Yucchi (@Yucchi_jp) May 8, 2015 peekでListの要素を削除するというやってはいけないパターンです。 @Test public void intList() { List<Integer> list = IntStream.range(

    Java 8 Streamの挙動を調べたった - mike-neckのブログ
    gomi_ningen
    gomi_ningen 2015/05/09
    う〜んAPIの名前的に、そもそもpeekでlist::removeしちゃうという発想がでてこなかったのでこういうことが起きるとは意識しなかったな(´・_・`)... とはいえこういうことが起きるというのは知っておいたほうがよさげ。
  • 【書評】『Javaプログラマーなら習得しておきたいJava SE8実践プログラミング』 - mike-neckのブログ

    こんにちわ、みけです。 つい先日に二章の書評を書きましたが、『Javaプログラマーなら習得しておきたい Java SE 8 実践プログラミング』の全体の書評です。 前提 書評というのは書くのが難しいと思っています。というのも、書評を書く人のコンテキストと書評を読む人のコンテキストが全く異なるからです。ここでは、書評を書く僕がJavaに対してどういう位置にあるのかを読む人に把握してもらっておくために、僕自信のことを前提として書いておきます。 Javaを始めたのは2005年1月から Java7は2011年のリリースからずっとさわっている Java8は6月からさわっている Stream、Optional、Date and Time API、CompletableFutureなどはひと通りさわって活用している IntelliJ IDEAの自動補完により、ラムダの記述の仕方にも馴染んでいる Nash

    【書評】『Javaプログラマーなら習得しておきたいJava SE8実践プログラミング』 - mike-neckのブログ
  • 1