Groovy 2.5.0で追加されたgroovy.transform.AutoFinalを試してみた

最新のGroovy 2.5.0から、groovy.transform.AutoFinalというAST変換が追加されていたらしい。 Immutable (groovy 2.4.2 API) ついさっきPaul King氏のツイートを目にして初めて知った。 I agree with you. In Groovy, we added @AutoFinal to add them impli…

Gaiden Filters/Extensions活用のススメ

はじめに 久しぶりのブログ記事です。 この記事は、G* Advent Calendarの13日目として書いています。 昨日はきょんさんによるGroovyのAST変換事情で、明日もきょんさんの予定です。 G* Advent Calendar 2017 - Qiita Gaidenとは? 数年前にGaidenというドキ…

JavaOne 2017 全レポートへのリンクまとめ

JavaOne 2017 レポートのリンクをまとめておきます。 nobeans.hatenablog.com nobeans.hatenablog.com nobeans.hatenablog.com nobeans.hatenablog.com nobeans.hatenablog.com nobeans.hatenablog.com nobeans.hatenablog.com

JavaOne 2017 レポート 10/6 Day-6 帰国日&総括

さて、帰国日。 JavaOne 2017レポートも今回で完結です。 観光ウォーキング 今回の往復空路は羽田発着JAL便。 出発は16:05 SFO発なので、飛行機の時間まで結構時間があります。 ホテルのチェックアウトリミットは12:00ですが、ギリギリまで引きこもってるの…

JavaOne 2017 レポート 10/5 Day-5 千秋楽はMariottホテルで

いよいよ正真正銘JavaOne最終日です。 会場もMoscone WestからMariottホテルに場所を移して、なんとなくもう終わるんだよ感が漂ってきます。 今年は最終日のランチチケットがついてなかったので、参加者同士で「コスト削減でランチ配給もないのか!」などと…

JavaOne 2017 レポート 10/4 Day-4 Moscone会場最終日

翌日の最終日(Day-5)はMariottホテルの会議室がセッション会場となるので、Moscone Westに通うのはこの日が最後です。 そろそろ終わりもみえてきて、並行して会場撤収なども始まるので、この辺りからだんだん寂しい雰囲気が漂い始めます。 Polyglot Adventur…

JavaOne 2017 レポート 10/3 Day-3 技術セッション+謎のキーノート

さて、もう10日は経っていますが、粛々と3日目のレポートです。 Refactoring Design Patterns the Functional Way (in Scala) ちょっと最初の15分ほど遅刻してしまいました。 GoFのデザインパターンをいくつかピックアップして、関数型言語として良い書き方…

JavaOne 2017 レポート 10/2 Day-2 キーノート&技術セッション

さて、Day-2からがいよいよ本番です。 これ以降、技術的セッションとか真面目に掘り下げると色々破綻するので(理解できてないとか時間が足りないとか)、ざっくり駆け足のレポートでお茶を濁していきます。 なお、当日の見聞きした(気がしている)そのままであ…

JavaOne 2017 レポート 10/1 Day-1 Community Day

JavaOneの初日はCommunity Dayということで、コミュニティ主催だったり、どちらかというと技術よりもコミュニティ活動自体にフォーカスしたセッションの多い日です。 この日にトークを控えていたスピーカの方には大変心苦しいですが、個人的には耳慣らし&気…

JavaOne 2017 レポート 9/30 Day-0 サンフランシスコへ

1年以上放置してたはてなブログ、久しぶりの投稿です。 2010年、2011年から長い充電期間を経て、6年ぶり3回目のJavaOneに参加してきました。 一応、今回も会社の出張です。ありがたやありがたや。 以前はHilton、Nikko、Parc 55あたりの会議室でやっていたの…

WindowsのコマンドプロンプトでGrails 3開発する(エンコーディング地獄編)

どうも、ひさしぶりにはてダで書きます。 昨今、ソースコードはUTF-8で書くのがデファクトだと思うんですが、WindowsでのJavaはデフォルトエンコーディングが相変わらずwindows-31jなので、何をするにも明示的にエンコードを指定しないといけません。 あと、…

JJUG CCC 2015 SpringでGroovyについて話してきた

2015/4/11のJJUG CCC 2015 Springで、Groovyについてお話ししてきました。 CFPに応募するかしばらく迷ってたんですが、ネタが思いつかなかったので先送りしていたら、〆切最終日辺りにさくらばさんや複数の人から「初心者向けでいいんですよ、むしろいいんで…

GrailsでシンプルなRESTサーバを素早く立ち上げる

はじめに これはWeb API Advent Calendar 2014、10日目のエントリです。 Grailsでは某RESTful DAO的なものがサクッと実装できますよ、というお話です。 だから何だ、とか、○○のFWでもできるぞこの野郎、といった苦情はご遠慮ください。 実装する とりあえず…

Java8のInvokeDynamic実装一新によるGroovyのindyモードの性能改善効果が凄すぎた件

本日、Java Day Tokyo 2014に来ています。 で、ついさっきのセッションで「JDK8ではInvokeDynamic(以下、indy)の実装を一新したのですごく速くなったよ」という話を聞いたので、Groovyのindyモードで試してみました。 Groovyは2.0(現在は2.3)でindy対応され…

Gradleで特定のJarをtestRuntimeで使いたいけどWarからは除外したい

Twitterで@ruimoさんがつぶやかれていたので色々試してみた結果をまとめておきます。 (試行錯誤で徐々に追記しています。) 経緯 @ruimo 単にdependenciesで対象ライブラリをtestRuntimeの方に追加する、ではだめですか?— Yasuharu Nakano (@nobeans) 2014, …

Groovy2.3.0-beta-1と噂のTraitを試してみた

Groovy2.3.0-beta-1がリリースされましたね。 目玉としてはやはりtraitでしょう。 今までのMetaClassによるメソッドの動的探索パスをいじる系の機能で似たようなことはできましたが、何かと限界(複数スレッドにおける動作の保証とかかなり泥臭い感じだったり…

Grails/Gradleの「さっきのテストレポート」をAlfredに表示してもらう

はじめに この記事は、G*(Groovy, Grails ..) Advent Calendar 2013の15日目として書かれたものです。 14日目は @grimroseさんでした。 最近某自作GrailsアプリにてGrails上でVert.xを利用してWebSocketのプッシュを実装したりしてたので、今回はその話を書…

GroovyServとGradle Daemonとの違い

10/23 9:50 訂正&追記: GradleがデフォルトでDaemon起動すると書いてた件 (thanks to きょんくん) 元記事: http://dev.classmethod.jp/server-side/gradle/gradle-first-contact/ 経緯的な id:daisuke-mが昼過ぎに技術を語るいつものシリーズにGradleを追加…

標準バンドルのVisualVMのウィンドウが空っぽになってしまったらキャッシュを削除すべし

経緯的な 9月にTwitterにぼやいた件のその後。 7u40のretina対応のおかげでjvisualvmもくっきりきれいになってるなー— Yasuharu Nakano (@nobeans) 2013, 9月 12 と思って、7u25と比較したりしてたら、メインウィンドウに何も表示されなくなってしまった...—…

本家Grailsユーザガイドを開くと自動的に日本語翻訳にリダイレクトするChrome拡張

Grailsユーザガイド日本語翻訳版とブックマークレットの紹介 - 豆無日記で、紹介したブックマークレットを毎回実行するのがダルすぎるので、Chrome拡張にしてみました。 以下のURLからChrome拡張をインストールしてください。 https://github.com/nobeans/ch…

Grailsユーザガイド日本語翻訳版とブックマークレットの紹介

有志によるGrailsユーザガイドの日本語翻訳作業がずっと行われていたのですが、実は8月の頭にちょうど一区切り良い感じになりました。 そろそろリリースされそうなGrails 2.3向けに追記された部分などまだちょっと英語部分も残っていますが、基本機能につい…

iPhotoライブラリをDropboxで管理するときに気をつけるべきたったひとつのこと

iPhoto Libraryの中にあるOriginal、Data、Modifiedというエイリアスを削除してから共有しましょう。 なんで? Dropboxはエイリアス経由のパスであっても気にせずに物理的にサーバ上にファイルを格納するので、画像が多重にアップロードされてしまい、サーバ…

Gradle1.6の新機能mustRunAfterでタスク間の実行順序が制御可能になった #gradle

Gradleではタスク間の依存関係の指定ができます。 build.gradle: task a << { println "A" } task b(dependsOn: "a") << { println "B" } task c(dependsOn:"a") << { println "C" } task d(dependsOn: ["b", "c"]) << { println "D" } 実行結果: $ gradle d…

コペンハーゲンのGR8Conf EU 2013でGroovyServとImproxプラグインを紹介してきた

5/22-24にデンマークはコペンハーゲンで開催されたGR8Conf EU 2013というGroovy系のカンファレンスで、GroovyServとImproxプラグインを紹介してきました。 http://gr8conf.eu/index 右の写真はコペンハーゲンの定番がっかり観光スポットの「人魚の像」ですね…

GrailsからMirageを使うサンプルがあったので試してみた

Mirageという2-way SQLが利用できる素敵なO/RマッパをGrailsで使ってみたというブログがあったので、サンプルコードを落として試してみました。 developmentモードでMySQL使うようになってたので、H2に変更してrun-appして試してみました。 確かにMirageでDB…

GrailsのGORMにおける各種関連とmappingによる名前変更のサンプル

Grailsのドキュメントを翻訳する上で、英文読んでも何を言ってるか分からないので、サンプル書いて試してみた記録です。 ↓ここに反映される予定。 http://jenkins.xmldo.jp/job/grails-doc/lastSuccessfulBuild/artifact/build/docs/ja/guide/GORM.html#tabl…

GExcelAPI 0.3 リリースしました #gexcelapi

GExcelAPI 0.3をリリースしました。 https://github.com/nobeans/gexcelapi Change Log、といえるかどうか 変更点としては、以下の2点。 POI3.9化 Java7対応 (thanks to @yamap_55) これだけ? はい、これだけです。 でも、Java7対応重要です。ですよね? オ…

IntelliJ IDEAの細かすぎてわかりづらいGroovyサポート:メソッドシグネチャのホバー表示

メソッドコール部分をホバーするとAPIドキュメントを表示してくれるのはIDEとして普通のことだけど、 Groovyのような言語ではメソッドシグネチャで型を明示指定してないことが良くあります。 そういう場合でも、呼出先で使われるプロパティやメソッドなどを…

Groovy基礎勉強会でGrailsのリクエスト制御をライブコードリーディングしてきました #GroovyBase

全編インテリジェイアイデアを使ったライブだったので、資料成分はほとんどありません。資料で共有する価値が若干でもありそうなのは、1ページだけだったので画像だけ貼っておきますね。ポイントとしては、 インテリジェイアイデア、マジ便利 新規購入はイケ…

書籍『SQLアンチパターン』 #sqlap

献本御礼。 本書のレビューに参加できて大変光栄であります。SQLアンチパターン作者: Bill Karwin,和田卓人(監訳),和田省二(監訳),児島修出版社/メーカー: オライリージャパン発売日: 2013/01/26メディア: 大型本 クリック: 365回この商品を含むブログ (4件)…