日々調べたことを書きます。JavaJavaのユーティリティ系ライブラリ冗長な記述を短くできる。Collectionが使いやすくなるImmutableMapは非常によく使う。GitHubgatsbyGatsbyJSJSの静的サイトジェネレータという紹介文を見たけれど、reactの上の薄いフレームワークみたいな印象guava使ってみた。2018年8月8日やったことVMのUbuntuのvimをセットアップしたvim8のターミナルモード、つかいやすい。neovimはターミナルモードのウィンドウから移動するのがだるかった。gatsbyGraphQLでクエリを投げてみた。developでwatchがちゃんとできてないっぽかったけど解決できなかった。考えたことJava.util.StreamのflatMap()はなんか微妙flatMapの引数はStreamを返す関数。List<List>)からリスト(List)を得るみたいなありがちな処理は以下のように書くことになる。注目してほしいのはこの部分。.collect(Collectors.toList());flatMapは、streamに対して関数を適用して、そこで得られたstreamをすべてくっつけて一つのstreamにします。ことは受け取ったstreamの中身はリストなので、それをstreamに変換してくっつけると、リストの中身を取り出すことになるわけですね。いやしかし私はflatMapの引数がstreamを返す関数というのがどうも気に入りません。streamへの変換を行わなければいけないくてそれを自動でやるのは難しいというところでしょうか。それで、どのように変換するかはプログラマに任せないといけないという事情だと思います。ならないのかなーと思いました。いうか、その問題を解決しているライブラリがありそうなので調べてみます。ファイルの重複行を削除するアルゴリズムってどうなってるんだろうメモリに全行読み込む系ハッシュテーブルを使えば、重複の検出は素早く済みそうメモリに全行読み込まない系ファイルをチャンクに分けて少しずつ見ていって、↑に書いたやつをメモリに書く代わりにファイルに書きながら進める一度ソートしてファイルに書く⇒次の行が同一か見るならいけそうじゃあどうやってメモリに全行読み込まずにソートするんだろう問題i18nのこと、そろそろちゃんと考えたいqiita.com記事のテーマ:i18n(ソフトウェアの国際化対応)は、単に文や時間(タイムゾーン)を差し替えれば済むような簡単なものじゃない。自分たちの文化にはない決まりにしたがって文ができていることがある。場合によっては、そのためのロジックを加えなければ対応できない。そのような対応が必要になるような文化を数多く持った国家で育つと、i18nに対応したプログラムを特に意識せずに書くことができるようになるのではないか。今の仕事では、英語のUIを持ったサービスを作っているけど、ユーザーの使用言語は3つある。そのうちi18n対応をすることになりそうな気がしている。興味深かった、というか、そのうちまたお世話になりそうこれからやることflatMapをもう少しきれいに書けるようなライブラリがないか調べる。gatsbyをAPIと連携させる今日は一時間20分くらいで書きました。part2月別アーカイブ参加グループプログラミングはてなブログをはじめよう!ytnk531さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。