Questions about Micronaut Foundation sponsorship? Please complete this form, and we’ll follow up with you shortly.
はじめに Java使いをScalaに引き込むサンプル集 | mwSoft のGroovy版を書いてみました。 記事中に登場するサンプルコードや文章など多くの部分を引用させていただいております。 (動作確認: Groovy Version: 1.7.7 JVM: 1.6.0_22) 前書き Groovyという言語をご存知ですか? Javaと同じくコンパイルされるとclassファイルになり、実行時はJVM上で動作し、またスクリプトとしても記述可能なオブジェクト指向スクリプト言語です。 Groovyは後発の言語ということもあって、Javaを書いている時に感じる冗長さに対する様々な解が用意されています。 本記事では、GroovyとJavaのコードを比較しながら、JavaユーザがGroovyに移った際に得られるメリットを提示していきます。 尚、序盤のサンプルコードはJavaユーザに伝わりやすいように
タイトルはまぁあれですが、Groovyって結構ワンライナーで出来ちゃうことが多いよねということで、みんなで97個(+αそれ以上)の一覧を作っちゃいませんか?という企画です。 以前jggugで行われていたg100ponみたいな感じでできたらいいなと思ったので、Google Docsのスプレッドシートで共有してありますので、こんなのあるよ!というのがあったらみなさんでどんどん追加して行っちゃって下さい。よろしくお願いします。 97 Things Groovy can runs by one liner http://bit.ly/97_Things_Groovy_can_runs_by_one_liner ※Twitterでつぶやく際はハッシュタグ (#groovy97oneliner) でお願いします。 ※ちなみに、順番はあとで並べ替える可能性があります。 参考リンク プログラマが知るべ
はじめに id:fitsさんが、こちらにてCSVを処理されているのを拝見しまして、GroovyでCSVを処理する場合、そういえばGroovyCSVがあったなぁと思い出したので使ってみたよという記事です。 こんな感じ サンプルは元記事と同じです。 @Grabが使えるので楽チンですね。 parseCSV.groovy // see. http://xlson.com/ // https://github.com/xlson/groovycsv @Grab('com.xlson.groovycsv:groovycsv:0.2') import com.xlson.groovycsv.CsvParser def csv = new File('test.csv').text def data = new CsvParser().parse(csv, separator: ',', quoteCha
バグ修正はプログラマの仕事の一つですが、このうちのかなりの時間は問題を再現することに費やされます。 症状からバグの全容が推察できる時もあるのですが、多くの場合には、手元で問題を再現し、更なるデータを集めることによって始めてバグが理解されるからです。しかし、環境に依存する問題などは再現が難しい場合もあります。どうしたらよいでしょうか。 ロギングというのがよく行われる解決・予防策ですが、「デバッガを走らせて変数xの値を教えてくれればいいのに!」と思った事があるのは私だけではないと思います。ロギングと異なり、デバッガは予めプログラムに障害発生を予期するコードを埋め込んでおく必要はありません。また、呼び出し元のローカル変数をアクセスしたり、任意の式を評価したり、あるいは変数の値を変更することもできてしまいます。当たり前ですが、障害分析ツールとしてはデバッガはずっと強力だからです。 ではなぜユーザー
Java、Groovy、HTML、CSSで 身の回りのちょっとした雑務を楽にするものをいろいろ作ってみます。 struts-config.xmlの内容のうち、特にaction-mappingsについてはチェックする機会が多い。もうちょっと見やすくならないかな、ということで、htmlに変換してみた。(xslt使うのが本来のやり方なのかもしれないけれども、そこはGroovy中毒患者。) import groovy.xml.MarkupBuilder import org.custommonkey.xmlunit.* final xmlSlurper = new XmlSlurper() def config = xmlSlurper.parseText(new File(args[0]).text.replaceFirst(/<!DOCTYPE(?ms)[^>]+>/, "")) def ac
AribaWeb is the Open Source component-based web application development framework for creating rich, AJAX-enabled applications with the absolute minimum of code (and no hand-coded Javascript).In AribaWeb, you program with a simple, declarative, server-side programming model, and AribaWeb automatically provides AJAX behavior.
Hudsonの分散ビルドの実装の肝になっているのは、クロージャをリモートJVMで実行するという仕組み。クラスファイルとかリソースとかも必要に応じてリモートJVMにコピーするので、リモート側にあらかじめプログラムを配備しておく必要がないのがよい点です。 さて、常々Javaのクロージャ(もどき)の文法は冗長だと思っていたので、これにGroovyを組み合わせたらいいんじゃない?、という事で、実験して見たところ意外にうまくいきました。 def pid() { // PIDを取得する。要はどのJVMで動いているかをわかりやすくするだけ return new File("/proc/self").canonicalPath } i=0 (0..<4).each { i++; remote { println "1st from ${pid()} (${i})" remote { println "2n
追加したユーザーは T.Yamamoto です。最後に編集したユーザーは T.Yamamotoで、その日時は 2009-02-10 18:25:42 です。 日本Grails/Groovyユーザーグループ Wikiページです。 日本Grails/Groovyユーザーグループのメインサイトは、http://www.jggug.org/です。このサイトは、Groovy/Grails/Griffon/Gant等、Groovyに関する情報共有Wikiです。そして、このWikiは、Grailsで実装され、ソースコードも公開されています。ソースコードはこちら、http://code.google.com/p/gcrnagoya/ Powered by
This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.
仕事でちょっとしたアンケートを集計しなきゃいけなくなった。 結果のレポートをHTMLで出力しといたら気が利くかな〜と考えてて、そんな時こそGroovyのMarkupBuilderだろ!って思ったので早速テスト。 (動作確認: Groovy Version: 1.7.2 JVM: 1.6.0_20) import groovy.xml.MarkupBuilder def writer = new File('/groovy_htmlbuilder_test.html').newPrintWriter('UTF-8') def html = new MarkupBuilder(writer) html.doubleQuotes = true // 属性は ' じゃなくて " で。 html.html { head { meta('http-equiv': 'Content-Type', con
See related links to what you are looking for.
Java、Groovy、HTML、CSSで 身の回りのちょっとした雑務を楽にするものをいろいろ作ってみます。 作業予定表から週単位で作業量を積み上げる どう書く?orgをといてみた。 かなりスパゲッティになってしまっている。 独力で解こうとしたが弱いおつむがヒートしそうなので、fumokmmさんの解答を参考に。 import static java.util.Calendar.* def initTasks = [ [start:"2009/1/10", days:21, mark:"#"], [start:"2009/1/15", days: 6, mark:"@"], [start:"2009/1/10", days: 8, mark:"*"], [start:"2009/1/16", days: 1, mark:"="], [start:"2009/1/16", days: 3, m
http://codenarc.sourceforge.net/ Groovy版のcheckstyleみたいな静的解析ツール。
忘れそうなのでメモ。出典はGroovy イン・アクション(P130,131) Booleanテストで使われるルールの順番 実行時の真 判定される基準 Boolean 値がtrue Matcher マッチする Collection コレクションが空ではない Map マップが空ではない String, GString 文字列が空ではない Number, Character 値がゼロではない 上記以外 参照がnullではない テストの例 // Boolean値は自明 assert true assert !false // Matcherはマッチすること assert ('a' =~ /./) assert !('a' =~ /b/) // コレクションは空ではないこと assert [1] assert ![] // マップは空ではないこと assert ['a':1] assert ![:]
改行を含むとGroovyの正規表現がうまく動かない - プログラマ的京都生活 によると、複数行になったとたんにGroovyの正規表現がうまく動かなくなる模様。 ということで実際に試してみました。 (動作確認 Groovy Version: 1.5.7 JVM: 1.6.0_10) 実際に試してみた def text1 = 'a=b' assert text1 ==~ /a=.*/ def text2 = '''a=b hello c=d''' assert !(text2 ==~ /a=.*/) うむ、確かにtext2の場合、falseが返ってくるようだ。 Javaの正規表現 Groovyってことは要するにJavaなので、Javaの正規表現についてちょっとあたってみた。 定義済みの文字クラス . 任意の文字 (行末記号とマッチする場合もある) Pattern (Java Platform
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く