2017-01-01から1年間の記事一覧

Avoriaz で filters や methods の中身を差し替える

前回の続編。用途があるか不明ですが、こんな感じでできそうという話。 kntmr.hatenablog.com filters を差し替える 例えば、こういうコンポーネントがあって、期待する値が出力されるかテストするパターン。ここでは、グローバルフィルターが設定されている…

Avoriaz と Sinon.JS で methods のメソッドが呼ばれたことをテストする

このあたりを調べたときのメモ。 avoriaz@6.3.0 sinon@4.0.0 例えば、こういうコンポーネントがあって、ボタンクリック時のイベントハンドラを methods のメソッドにバインドしているものとする。 <template> <div> <button @click="onClick">Submit</button> </div> </template> <script> export default { name: 'AvoriazTest', method</script>…

コンポーネントの props で required を付けるときは default を定義した方がよさそう

小ネタですみませんが、Vue.js #4 Advent Calendar 2017 の15日目が空いてたので書きます。最近、Vue.js を実案件で使い始めました。Vue.js 歴は浅いです。 タイトルの通りなんですが、誤りや本来はこうあるべきというのがあればご指摘いただけますと幸いで…

Spring Fest 2017 に行ってきた #jsug

簡単に所感をまとめます。 springfest2017.springframework.jp What's New in Spring 会場に到着したらすでに翻訳機がなくなってたのでスライドから雰囲気だけ感じ取る。内容は Spring 5 と Spring Boot 2.0 について。Spring MVC ではこう書いていたコード…

JJUG CCC 2017 Fall に行ってきた #jjug_ccc

簡単に所感をまとめます。セッション資料はどこかで公開されるはず。 www.java-users.jp Selenide or Geb? あなたはそのときどちらを使う? Selenide Java製WebDriverラッパー DSLによるjQueryライクなセレクタ IDEの補完を活用できる Ajaxなどの非同期処理…

Vue.js でウィジェットっぽいもの (仮) その2

前回の続き Vue.js でウィジェットっぽいものを作ってみる (仮) - kntmr-blog 続編として今回は以下をやってみようかと。 Webpack で出力するファイルをまとめる ウィジェットにパラメータを渡せるようにする 任意のタグ/キーワードで表示できるようにする W…

Vue.js でウィジェットっぽいものを作ってみる (仮)

Qiita Widget : Qiitaの投稿を表示できるブログパーツ こんな感じのウィジェットっぽいものを、Vue.js と Veux の学習を兼ねて作ってみようかと。今回は Qiita の Vue.js タグを表示するもの。 github.com 以下、備忘録。 vue-cli vue-cli の Webpack テンプ…

今さらながら Selenide を試してみる

今さらながら使ってみたけどいい感じ / Selenide: concise UI tests in Java https://t.co/IDTaRXqICV— kntmr (@knt_mr) 2017年10月5日 簡易なテストページを作って試してみました。 サンプルコード 以下、備忘録。 各ブラウザの WebDriver をダウンロードし…

JJUGナイトセミナー「メッセージングミドルウェア特集」に行ってきた #jjug

先日、JJUGナイトセミナー「メッセージングミドルウェア特集」に行ってきました。簡単に所感をまとめます。 jjug.doorkeeper.jp メモから抜粋。(資料が公開されたら貼っておきます) 実運用して分かった Rabbit MQ の良いところ・気をつけること オープンソー…

JSUG勉強会 2017年その7 〜 俺たちのマイクロサービス に行ってきた #jsug

JSUG勉強会 2017年その7 に行ってきました。簡単に所感をまとめます。 jsug.doorkeeper.jp 今回のテーマはマイクロサービスです。メモから抜粋します。 無理をしないマイクロサービス マイクロサービスアーキテクチャは手段 組織や体制に合うやり方でこれま…

java.lang.IllegalArgumentException: Comparison method violates its general contract!

自作の Comparator でリストをソートしたら初めて見るエラーメッセージが。 java.lang.IllegalArgumentException: Comparison method violates its general contract! 再現コード ※Java 1.8.0_92 です。 なかなか再現できずいろいろ試した結果、以下のように…

Spring で Bean Validation のエラーメッセージに任意のフィールド名を埋め込む

Bean Validation のエラーメッセージに任意のフィールド名を埋め込む方法を調べたときのメモ。タイトルには Bean Validation と書いていますが、正確には Spring が提供する機能によってエラーメッセージに任意のフィールド名を埋め込みます。 サンプルコー…

Bootstrap と Vue.js で簡単なモックアップを作る

以前、Bootstrap ベースのモックアップについて書きました。 Bootstrap を利用して簡単なモックアップを作る - kntmr-blog で、今回は Bootstrap + Vue.js 版のモックアップを作ってみました。モックアップとしての内容は Bootstrap 版と同じです。Vue.js と…

Oracle 認定資格デジタルバッジ

8月から Oracle 認定資格を保有していることを証明する電子証明書『デジタルバッジ』の提供が開始されたようです。保有資格をオンラインで公開できるものらしい。 education.oracle.com というわけで、Oracle Certified Java Programmer のデジタルバッジを…

サービスイン or 切り戻し

先日、お客様の新規システムのリリースがあり、開発担当のリリース支援として現地で待機していたときのこと。 ちなみに、新旧システム間のデータ移行が想定通りに進まず、最終的には切り戻しとなりました。データ移行はお客様側の作業。「切り戻し」とは、新…

Haskell を使ってみる 9 (高階関数1)

前回の続き Haskell を使ってみる 8 (再帰) - kntmr-blog 引数に取ったり返り値として返せる関数を高階関数と呼ぶ。 カリー化関数 Haskell のすべての関数は引数を1つだけ取る。複数の引数を受け取るような関数はカリー化されている。関数を本来より少ない引…

LINE Messaging API と Google Apps Script で LINE BOT を作ってみる

LINE Messaging API と Google Apps Script で LINE BOT を作ってみるメモ。今回は、LINEのグループに送信したメッセージをメールで転送するBOT。 アカウント作成 / BOT設定 ※事前にLINEアカウントを作成すること 「LINE Business Center > サービス」の Mes…

Haskell を使ってみる 8 (再帰)

前回の続き Haskell を使ってみる 7 (ガード) - kntmr-blog 再帰 関数を再帰的に定義する場合は問題を同じ種類のより小さな問題に分解する。再帰を使わずに定義できる問題を基底部と呼ぶ。再帰を実装する場合は基底部から考える。 maximum' :: (Ord a) => [a…

テスト駆動開発モドキ実践

TDD

過去のブログを掘り起こしたらこんなエントリを見つけました。 単体テスト(ユニットテスト/UT)で考えること - kntmr-blog どうすれば、メンテし易く保守性の高いソースコードが書けるか、というようなことを考えていた頃のエントリだと思われます。所謂、『…

JSUG勉強会 2017年その4 ~ Springを使ったバッチアプリケーション特集 に行ってきた

JSUG勉強会 2017年その4 に行ってきました。簡単に所感をまとめます。 jsug.doorkeeper.jp 今回のテーマは Spring を使ったバッチアプリケーション特集です。 バッチは地味だが役に立つ 20170525 jsug バッチは地味だが役に立つ from Yuichi Hasegawa …

フレームワークや開発ツールを取り入れることの意義とは

ここ数年、JavaScript フレームワークの盛り上がりを感じます。いろいろと適用事例を聞く機会が増えてきました。 が、最近、JavaScript フレームワークを用いた SPA をやめて、サーバーサイドレンダリングに戻したという話をいくつか聞きました。 なんとなく…

Eclipse の Team Synchronizing パースペクティブが開かない

Eclipse でプロジェクトのメニューから Team > Synchronize with Repository とすると、今まで Team Synchronizing パースペクティブが開いていたが、新しい開発環境を構築したら、ふとした拍子にパースペクティブが開かなくなってしまった。そんなときのメ…

GitHubとクラスメソッドの勉強会に行ってきた #github_method

GitHubとクラスメソッドの勉強会に行ってきました。簡単に所感をまとめます。 classmethod.connpass.com 今回のテーマは「GitHub x AWS の最新 DevOps 事情」です。 DevOps はインフラ自動化やリリース自動化など、ひとによって捉え方は違う 価値を無駄なく…

正規表現メモ

CODEPREP で正規表現を学びつつ、練習問題の3パターンをメモる。 codeprep.jp 電話番号にマッチさせる 電話番号は3ブロックの数字の並びで構成される 各ブロックの桁数は 3桁、3桁 or 4桁、4桁 各ブロックは - または ( or ) で区切られる 先頭のブロックの…

Cookpad Tech Kitchen #7 に行ってきた #cookpad_tech_kitchen

Cookpad Tech Kitchen #7 に行ってきました。簡単に所感をまとめます。 cookpad.connpass.com 今回のテーマは『理想の開発現場の「ふつう」のお話』です。資料はこちら。 開発者もテストエンジニアも品質を向上するという共通の目的を持つ テストの現場の理…

Haskell を使ってみる 7 (ガード)

前回の続き Haskell を使ってみる 6 (パターンマッチ) - kntmr-blog ガード ガードは引数の値が満たす性質で処理を分岐させるときに使う。パイプ文字 (|) と条件式と関数本体を組み合わせて記述する。(パターンは引数の構造で条件を分岐させるもの) -- 階乗…

Haskell を使ってみる 6 (パターンマッチ)

前回の続き Haskell を使ってみる 5 (型) - kntmr-blog パターンマッチ パターンマッチは、データ型が従うべきパターンを指定してそのパターンに従ってデータを分解するために使う。 -- パターンマッチと再帰で n の階乗を求める関数 factorial :: Int -> In…

Oracle Certified Java Programmer, Gold SE 8 認定資格

1Z0-809-JPN - Java SE 8 Programmer II を受験しました。 結果: 合格 / 正解率 72% (合格ライン: 65%) という訳で『Oracle Certified Java Programmer, Gold SE 8 認定資格』を取得しました。 「中上級者向け資格」とあるので、Java の開発案件を数年程度や…

JSUG勉強会 2017年その3 ~ ドメイン駆動設計 powered by Spring に行ってきた

JSUG勉強会 2017年その3 に行ってきました。簡単に所感をまとめます。 jsug.doorkeeper.jp 今回のテーマはドメイン駆動設計と Spring です。資料はこちら。 ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring from 増田 亨 www.slideshare.n…

java.util.function パッケージのインタフェースサマリー (用途別)

公式ドキュメントにインタフェースのサマリーが記載されているが、アルファベット順でイマイチ読み辛いので用途別に並べる。 java.util.function (Java Platform SE 8) Supplier インタフェース インタフェース 説明 抽象メソッド Supplier<T> 結果のサプライヤ</t>…