タグ

ブックマーク / tyru.hatenablog.com (11)

  • TypeScript 入門 + Express 再入門した - Humanity

    モチベーション 以下の記事を見て作りたくなったからです(ありがとうございます)。 TypeScript 入門するのは 私的TypeScriptとの関わり方ガイドライン - 角待ちは対空 を見たから。 Express 再入門するのは Express入門 - ぺーぺーSEのブログ を見たから。 そして 2017年はNode.jsの達人になる!いま知っておきたいベストプラクティス10 - WPJ を見たから。 久しぶりに Express 再入門して express-generator が生成したコードの middleware ググりながらふんふん言ってる— tyru (@_tyru_) 2017年2月17日 つーか createServer() とか listen() とかないやんけと思ってたら module.exports = app; ってのがあるからこれかなぁ… node で module

    TypeScript 入門 + Express 再入門した - Humanity
  • Java の Web アプリで色んなコードを共通化したい - Humanity

    この記事は Java EE Advent Calendar 2016 5 日目の記事です。 昨日は lbtc_xxx さんの「JPA Builder パターン」 でした。 明日は glory_of さんです。 Java の Web アプリを書く時、共通化したいけどどうすればいいか、 どう書くのが推奨されているのかをまとめてみました。 Java をガッツリやるようになったのは最近なので、間違った事を言ってたら指摘して頂けると助かります。 共通のプロパティが色んなクラスで増えてきた (CDI の @Produces) JAX-RS の @Produces (javax.ws.rs.Produces) と混同しないようにしましょう。 基底クラス作って継承するとなると、基底クラスが fat になりがちで、テストする時に対象のメソッド以外にも色々セットアップしなきゃならなくなったりして面倒です。 他

    Java の Web アプリで色んなコードを共通化したい - Humanity
  • Spring でリクエストボディの JSON に対してバリデーションを行う - Humanity

    問題 Spring でリクエストボディの JSON に対して共通のバリデーション処理を行うに当たって、まずは問題がある。 @ControllerAdvice を使うと、コントローラーが実行される前にバリデーションなどの共通処理を行うことができるが、 @ControllerAdvice で実行できるメソッドに渡ってくるのはリクエストボディのストリームである。 これは元の HttpServletRequest#getInputStream() がそうだから。 それの何が問題なのかと言うと、一度ストリームを読んでしまうと、Stream は通常元に戻せない *1 ため、 @ControllerAdvice のメソッドでバリデーションするために読み込んでしまうとコントローラーが実行されるタイミングで EOF (Stream closed) となってしまいます。 実はこの問題は Spring に限りま

    Spring でリクエストボディの JSON に対してバリデーションを行う - Humanity
  • Java 8 でインスタンスを遅延して構築するいくつかの方法 - Humanity

    シングルトンを構築するには、enum を使うのがスレッドセーフだしお手軽です。 なぜなら enum の初期化は1つのスレッドから1度だけ行われると規定されているからです。 また、コンストラクタを private にしてもコンパイルエラーにはならず、何の問題もなく初期化できます。 @ApplicationScoped class EntityManagerProducer { @Produces public EntityManager getEntityManager() { return EntityManagerSingleton.INSTANCE.get(); } private static enum EntityManagerSingleton { INSTANCE; private EntityManager em; private EntityManagerSingleton

    Java 8 でインスタンスを遅延して構築するいくつかの方法 - Humanity
  • 最近の Java EE について調べてみた - Humanity

    私は仕事Java に関わってきましたが、実質仕事で関わってきたプロジェクトはまだ3~4年ぐらい、 そしてそのプロジェクトの中にはいくつかコードを書く仕事ではなく Excel 仕事がメインというプロジェクトもあり、 正直言うとあまり積極的に Java に関わろうとはしませんでした。 そんな自分が最近、自宅サーバを管理する時にちょっとした Web アプリ(というか Web GUI)がほしいと思って Java で作ろうと思って色々調べた程度のまとまらない文章なので、 以下の文章は沢山の間違いを含むと思います。よって識者の方のコメントをお待ちしています。 最近は(という程最近でもないけど)Java SE 環境でも Java EE の機能がある程度使えるようになってきた。 それを後押しした *1 のが、Spring Boot、 Dropwizard、 WildFly Swarm、Payara M

    最近の Java EE について調べてみた - Humanity
  • VimでGo言語 - Humanity

    https://mobile.twitter.com/tyru/status/618796747570044928 今はvim-go入れて:GoInstallBinariesすればまるっとプラグイン入るようだ。丸々入りすぎな気もするけど… / “Big Sky :: Vimを使ったGo言語開発手法”htn.to/Am4ybvP3 #vim #golang これだけでいい気がする。gocodeとかも入る。 自分でプラグイン厳選したい人は一つ一つ入れればいいと思います。 入るコマンドはhelpに書い…てあると思いきや無かった*1。なので何が入るか詳しくは以下を参照。 vim-go/go.vim at c458eeffe1bad2f0562639dd2f366f047058d6a8 · fatih/vim-go · GitHub ちなみにvim-goの実装で、gocodeやらがGOPATHにイン

    VimでGo言語 - Humanity
  • 「実践Vim 思考のスピードで編集しよう!」レビュー (1日目) - Humanity

    この記事はVim Advent Calendar 2012の276日目の記事です。 また「実践Vim」のレビュー記事の1日目でもあります。 全て読み切ってからレビュー書こうと思いましたが、 KoRoNさんにTwitterで 2回に分けても良いのよ? VACにしても良いのよ? MURAOKA Taro on Twitter: "@tyru 2回に分けても良いのよ? VACにしても良いのよ?" と仰せつかったので何回かに分けちゃいます。 (ちょうどVACも書く人がいなかったみたいで、ちょうどよかった) また書はKoRoNさんにプレゼントしてもらいました。重ね重ねありがとうございます。 「実践Vim」レビュワー選考結果発表 — KaoriYa 書 効率良い編集方法を模索しながらVimをある程度長く使っていれば、 大体Vimの効率の良い使い方が理解できてくると思いますが、 helpを読んだり、

    「実践Vim 思考のスピードで編集しよう!」レビュー (1日目) - Humanity
  • Vimの自作ビルドスクリプトを紹介します - Humanity

    ばよえ〜ん(訳:Vim Advent Calendar 2012への19回目の投稿です) この記事はVim Advent Calendar 2012の162日目の記事になります。 161日目は@deris0126さんでVimでgitのログをきれいに表示するでした。 タイトル通りVimの自作ビルドスクリプトの紹介をします。 Vim build script Vimのビルドの話 - Humanity でも以前紹介したのですが、上記の記事から複数スクリプトに分けたりけっこう更新してるのでもう一度説明します。 build デバッグ情報なしでビルドします。 build-debug デバッグ情報ありでビルドします。 Vimのソースコードをいじる人には便利です。 coreファイルから落ちた箇所を追っかけたりする場合は VimのソースコードをいじっていたらSEGVしてしまった時にgdbでトレースする方法

    Vimの自作ビルドスクリプトを紹介します - Humanity
  • Vimを常駐化してファイルの読み込みを爆速化する - Humanity

    ばよえ〜ん(訳:Vim Advent Calendar 2012への16回目の投稿です) この記事はVim Advent Calendar 2012の150日目の埋め合わせ記事になります。 149日目は@manga_osyoさんでneobundle.vimgithubC++ ライブラリを管理するでした。 履歴 FAQ Q3のコードを修正。(guioptionsを手動でいじる場合、FocusGainedイベント時に常にguioptionsがリセットされてしまう) id:thincaさんにコメント欄にてsingleton.vimをそっと差し出されたので追記。 序文 Vimはテキストエディタです。 ですから基的には自己主張せず、他のエディタのようにテキストを表示したり編集したり出来てほしいですよね。 例えば、GUIのエクスプローラにあるファイルを開く時、いちいちVimから:edit

    Vimを常駐化してファイルの読み込みを爆速化する - Humanity
  • UnicodeとUTF-8の違いは? - 自分的まとめ - Humanity

    UnicodeとUTF-8の違いは? - Humanityはあんなに反響があるとは思わなかった。 ブコメにコピペじゃなくてまとめを書いてくれれば良い資料になるのにと書いてあったので今度は自分の知識をまとめてみる。 と言っても自分もあのスレを見るまでUnicodeとUTF-8を混同してた一人なのでほとんどあのスレからの知識ですが...orz なので簡単なまとめ。引用を多分に含みます。間違ってたらつっこんでいただけるとうれしいです。 調べる際に弾さんのエントリがかなり参考になったので(今頃意味が分かってきた)関連リンクとして度々載せさせていただきます。 参考リンクじゃない理由は解説しているエントリだけじゃなくて既存のエンコーディングを拡張するといった高度なエントリも含まれているため。 UnicodeとUTF-8 まず一番重要なことは Unicodeは「符号化文字集合(Coded Charact

    UnicodeとUTF-8の違いは? - 自分的まとめ - Humanity
  • UnicodeとUTF-8の違いは? - Humanity

    という2chのスレがかなり勉強になったのでまとめ。 少しでも有用だと思ったものは載せてあるので結構長いです。 Unicodeのような文字集合(符号化文字集合?)やUTF-8のようなエンコーディング方式に限らず色んな文字コードにまつわる話があります。 たびたび話が繰り替えされますがそれは確認ということで。 (元スレ) 追記:簡単にまとめました。 1 :デフォルトの名無しさん:2007/04/30(月) 20:02:37 ビッグインディアンとかなんとかかんとか 3 :デフォルトの名無しさん:2007/04/30(月) 20:05:48 また、頭の悪そうなスレが・・・ >>1 それは魚とマグロの違いを訊ねるようなもんだ。 4 :デフォルトの名無しさん:2007/04/30(月) 20:06:49 魚と鮪というよりは、魚と刺身の違いのような気がする。 5 :デフォルトの名無しさん:2007/04/

    UnicodeとUTF-8の違いは? - Humanity
  • 1