読者です 読者をやめる 読者になる 読者になる

M12i.

学術書・マンガ・アニメ・映画の消費活動とプログラミングについて

テンプレート・エンジンThymeleafのチュートリアルを読む(3)

前回に引き続きテンプレート・エンジンThymeleafのチュートリアルの訳出です。今回はイテレーション(繰り返し処理)について。原典は"Tutorial: Using Thymeleaf"の第6章です(2014/11/1 取得)。 * * * 6 イテレーション ホームページをつくるという話…

テンプレート・エンジンThymeleafのチュートリアルを読む(2)

前回に引き続きテンプレート・エンジンThymeleafのチュートリアルの訳出です。今回は属性値を設定・追加するための各種方法について。原典は"Tutorial: Using Thymeleaf"の第5章です(2014/11/1 取得)。 * * * 5 属性値を設定する この章では、マークア…

テンプレート・エンジンThymeleafのチュートリアルを読む(1)

・・・続いては、Spring Bootのリファレンスにも登場したテンプレート・エンジンThymeleaf(タイムリーフと読むのかな?)のチュートリアルです。今回読んでみたのは同ライブラリのチュートリアル "Tutorial: Using Thymeleaf"の第4章です(2014/10/29 取得…

『Spring Bootリファレンス・ガイド』より第4部「Spring Boot の重要機能」(2)

前回に引き続きSpring Bootのリファレンス・ガイドの第4章「Spring Boot の重要機能」("Part IV. Spring Boot features")から。今回はSpring MVC関連の話題とJDBC/JPAに関する箇所の訳出。原典は"Spring Boot Reference Guide"(1.1.8.RELEASE版。2014/10/…

『Spring Bootリファレンス・ガイド』より第4部「Spring Boot の重要機能」(1)

例によってあまり脈絡がないけれどSpring Bootについて興味があったのでリファレンス・ガイドを参照しています。先頭から読んでいくとらちが明かないので、いきなり第4章「Spring Boot の重要機能」("Part IV. Spring Boot features")から。これも例によっ…

Joshua Bloch『Effective Java 第2版』

EFFECTIVE JAVA 第2版 (The Java Series)作者: Joshua Bloch,柴田芳樹出版社/メーカー: 丸善出版発売日: 2014/03/11メディア: 単行本(ソフトカバー)この商品を含むブログ (5件) を見るJavaプログラミングに関する書籍の中ではもっとも有名な「古典」。Java…

正規表現エンジンをつくってみた

hiratara氏の連載記事を参考に(というか写経して)正規表現エンジンをつくってみた。どうも最近はPythonで書かれているものを見るとJava化したくなるらしい。記事の中で紹介されている実装をほぼそのままJavaに移し替えてから、+(プラス)による1回以上の…

PygmentsのRegexLexerをJavaで写経(?)してみた

このかんPythonの復習やらコードリーディングなんかを試みていて、その過程でもともとJavaであこれやってきた字句解析/構文解析についての関心も手伝って、構文強調ライブラリであるPygmentsのコードやリファレンスを目にする機会があった。そのリファレンス…

EclipsepediaのとおりにしてもJFaceはうごかない

引き続きSWT周辺をしらべていて今度はJFaceである。SWTは非常に基本的なUIコンポーネントを提供するものだけど、このSWTを基盤としてJFaceはよりリッチなUIコンポーネント──ようするにEclipseの画面を構成する部品を提供するものらしい。直近の関心は「Eclip…

Eclipse SWTのdisposeメソッドについて

例によってJava関連であれこれ調べる中で、Eclipseで使用されていGUIツールキットStandard Widget Toolkit(SWT)のdisposeメソッドが気になった。 SWT: Standard Widget ToolkitSwingとは異なり、SWTでは各種ウィジェットでプラットフォーム固有の機能を利…

SVNKitのSVNURLオブジェクトまわりがちょっと不思議

ちょっとしたツールを作成したくてSVNKitについて調べていたら、SVNURLオブジェクトで不思議なものを見つけた。そもそもの発端は SVNURL . parseURIDecoded (String) メソッドが“Deprecated”と指定されているのに、Javadocにはその代替APIについて何も記載が…

SVG編集のためのJavaライブラリをつくりかけている

SVG形式データを作成・編集するためのライブラリSvn-utilをJavaで書き始めた。 ▲サンプルプログラムで描画したSVG理由はもちろんSVG画像編集をJavaコードから行いたい事情があったから。当初、ApacheのBatikで大方のことはできると考えていたのだけれど、こ…

BufferedInputStreamの威力を実験してみる

ずいぶん以前の記事になるけれどJavaのパフォーマンス最適化に関する論文を読んでいたところ、BufferedInputStream(およびBufferedOutputStream)を使用することでI/Oのパフォーマンスが非常に良くなるという記述があったので実際に試してみた。使用してい…

シンプルなクエリ処理ライブラリを作ってみた

自作中のツールで使うことを意図してシンプルなクエリ処理ライブラリMinqueを作ってみた。比較演算子と論理演算子からなるクエリをパースして、任意の要素型のコレクションを対象に検索処理を実行できる。その他、クエリAPIの概要やクエリで使用できる構文な…

JP1/AJS2ユニット定義情報パーサ・ライブラリ

(2016/02/26追記 パーサ・ライブラリのリポジトリを移動しました。新しいリポジトリはこちらです。)日立ソリューションズのJP1/AJS2のユニット定義情報にJavaからアクセスしたい! という欲求に応えるため、パーサ・ライブラリUsertools.jp1ajs2.unitdefを…

Spring XMLでScalaビーン定義する方法、関数指向なビーン定義の方法、ほか

とくに直近どうこうしようというわけでもないのですが、Spring Scalaについて調べたので翻訳を載せておきます。 訳出したのはSpring ScalaのGitHubに掲載されていたWikiドキュメントです。 プロジェクトの製品同様Apache 2.0 ライセンスなのかなー、そういう…

JekyllをJavaに載せ替えてみた

ここ1周間ほどかけて,ブログちっくなコンテンツを静的ファイルとして生成する一種のCMS、JekyllをがんばってJava化してみました。……というほどにもものは出来上がっておらず、実際には動作確認すらまともに行っていないのですが。 Jekyllってなに? とりあ…

ミランダ・メソッドの災禍はいまも・・・

もう3年近く前になりますが、ProGuardについて調べる過程で、ミランダ・メソッド(Miranda Method)というものについて知る機会がありました。これは古いJVMに存在した継承チェーン上のクラス・メンバー検索機能に関するバグに対する「カウンター・バグ」の…

Doxygenで呼び出し関係図を含むドキュメントを生成する

保守対象のC#のソースコードを都度々々一から解析してAstahのコミュニティ・エディションでこつこつUML化するのにはいい加減飽きてきたので、既存リソースからドキュメント生成するツールを探していました。 結果、DoxygenというJavaやC#やその他いろいろに…

Jetty の ProxyServlet でプロキシサーバを実現する(HTTPS対応)

JettyでHTTPプロキシを実現する方法は、Web上で検索すれば日本語でもいくつかの記事がある様子。しかし中継するHTTP/HTTPSリクエストに何らかの操作を加える方法については日本語の記事が見つからなかった。今後のため、今回調べてわかった内容をメモしてお…

Apache Ant の DirectoryScannerの動作を見てみる

前回の投稿でも紹介したとおり、DirectoryScanner (org.apache.tools.ant. DirectoryScanner)はApache Antが提供しているAPIです。このAPIを使用することで、ワイルドカードを含むパターンを使用したファイル/ディレクトリの検索が可能になります。今回は…

Apache Ant の DirectoryScanner について

仕事で使うツールを作成する過程で、ワイルド・カードを含むファイル・パスをパースして、ファイルを取得する手段が必要になりました。あれこれ検索をしたものの、結局AntのAPIを使用する方法がいちばん簡単なようでした(あまりスマートな方法でないかもし…

TSVファイルのパースとTSVデータ操作のためのAPI

構想中のツールを開発するための土台として、TSVファイルのパースとTSVデータ操作のためのAPIを作ってみた。一応JUnitのテストケースも作っているけどかなり適当。 TsvUtilsオブジェクト TSVファイルのパースとTSVデータの新規作成を行うためのユーティリテ…

Reference counting、Mark and Sweep、そしてCopying

2年前になるけれど、Vala言語のGCメカニズムについての記事の翻訳転載をしたことがある。そのときに、記事のしょっぱなに「Valaは、ガベージコレクションのかわりに自動参照カウント方式を、メモリー管理の基礎としています」という断りがあり、おや? と思…

チェック例外は「悪夢」なのか?

私にとって、Java プログラミングで「その当時は名案だと思えた」一番の機能が、チェック例外と、例外に対する認識をブロードキャスト (および強制) できる機能です。けれども実際に使ってみると、コンテキストから切り離された不必要な例外処理 (および誤っ…

Martin Fowler『1つの言語』感想

エンタープライズ・ソフトウェア界の流行はここ10年の間ずっと、ソフトウェア開発努力のための1つの標準言語に集中することだった。 多くの開発組織が、すべての作業をJava(とかC#/VB)でこなそうとしている。これの理論的根拠は、開発者が1つより多くの言語…

ニール・フォード『Java.next: Java.next 言語』感想

“developerWorks: Java.next: Java.next 言語”は、GroovyにくらべてScalaやClojureのコードサンプルがまったく紹介されていないのは何故なのだろうか、納得いかない。・・・というのが正直なところではあるけど、次の指摘はもっともであると思う。 Scala …

MyBatis-Guiceではじめよう

なんといっても簡単にできそうなので、近々MyBatis・Guice・Derbyの組み合わせでコードを動かしてみようと思っています。 一応準備(?)として例によってMyBatis-Guiceの入門テキストを読んでみました。原典は、“MyBatis - MyBatis Guice | Getting started…

"Upgrade for Java SE 7 Programmer"試験をパスして・・・

徹底攻略 Upgrade to Java SE7 Programmer 問題集 [1Z0-805]対応 (ITプロ/ITエンジニアのための徹底攻略)作者: 志賀澄人,米山学,株式会社デンソー山田隆太,株式会社ソキウス・ジャパン出版社/メーカー: インプレスジャパン発売日: 2013/02/22メディア: 単行…

クラス RecursiveTask<V>

こういうコードブロックを見ると混乱してしまう自分は、並列分散処理にも関数型言語にも苦手意識を持つ。それにしてもこのコードブロック、『徹底攻略 Upgrade to Java SE7 Programmer 問題集[1Z0-805]対応』にそのまま転載されているんだけれど、これって…

SQLExceptionのサブクラスたち

"Upgrade to Java SE7 Programmer"試験の参考書を読んでいて説明不足感のあったSQLExceptionのサブクラスたちについて、Oracleの公開している“Java™ Platform, Standard Edition 7 API Specification”を読んでみた。以下、翻訳結果。 * * * SQLException …

『Sun SJC-P認定ガイド Java5/6編』を再読中

Sun SJC-P認定ガイド Java5/6編 310-055&310-065対応作者: キャシー・シエラ,バート・ベイツ,トップスタジオ出版社/メーカー: 日経BP社発売日: 2010/01/21メディア: 単行本(ソフトカバー)購入: 16人 クリック: 359回この商品を含むブログ (8件) を見る"Upg…

Derby初心者のための自習チュートリアル(抜粋)

Apache Derby公式サイトで公開されているチュートリアルについて、とくに組み込み用途に関係する部分を抜粋して翻訳してみました。Java言語初心者でも分かるように説明されているのはちょっとやりすぎのような気もしますが、ともあれ自作プログラムに組み込…

Apache Derbyを組み込みDBとして使う

Apache Derbyは、Javaで実装されたサーバ/クライアント型でも組み込み型でも使用できるデータベース。今回は公式のマニュアルを参考に、以下の処理を行うプログラムを作ってみた。 まあようするに何の役にも立たないお勉強用プログラム・・・。 データベースが…

Sun SJC-P認定ガイド Java5/6編 310-055&310-065対応

Sun SJC-P認定ガイド Java5/6編 310-055&310-065対応作者: キャシー・シエラ,バート・ベイツ,トップスタジオ出版社/メーカー: 日経BP社発売日: 2010/01/21メディア: 単行本(ソフトカバー)購入: 16人 クリック: 359回この商品を含むブログ (8件) を見る他の…

Spring Security 3.1 リファレンス - テクニカル・サマリ (2)

Spring Security 3.1 リファレンスマニュアルの“Technical Overview”のチャプターを訳出しています。今回は後半部分。前半部分はこちら。原典は、“6. Technical Overview”(Spring Security Reference Documentation)で、Ben Alex氏とLuke Taylor氏によるも…

Spring Security 3.1 リファレンス - テクニカル・サマリ (1)

先日、Spring Securityについての拙い翻訳を掲載したのに続いて、今回はその記事でも言及されていたリファレンスマニュアルの“Technical Overview”のチャプターを訳出してみます。いずれにしてもちょっと長いので、まずは前半のみ。(後半はこちら。)原典は…

Apache Commons CLI OptionBuilder.withType(Object) のなぞ

【NOTE】 この記事はApache Commons CLI のバージョン1.2について記述しています。2015年5月時点の最新版であるバージョン1.3ではライブラリが提供するインターフェースに大きな変更がありました。この点についてはこちらの記事で若干言及しています。先日か…

ルーク・テイラー「Google App EngineでSpring Securityを使う」

ちょーっと古い記事なのだけれど(実際今どきだったらOAuthとかだよね)、Spring Source社のブログ記事に“Spring Security in Google App Engine”というのがあって、気になってはいたけれどブックマークでとっておいてそのままになっていた。今回はその記事…

“流れるようなインターフェース”で時間や日付の操作

ずいぶん前にこちらの記事からリンクをたどって見つけていたJavaのプロジェクトのイントロページを訳出してみました。原典は、“Time and Money Code Library”です。もともとあまり分かりやすい英語でないのもあって(言い訳)、かなり翻訳精度低いと思います…

Apache Commons CLI 1.2 - Usage Scenarios

【NOTE】 この記事はApache Commons CLI のバージョン1.2について記述しています。2015年5月時点の最新版であるバージョン1.3ではライブラリが提供するインターフェースに大きな変更がありました。この点についてはこちらの記事で若干言及しています。先日の…

Apache Commons CLI 1.2を使ってみる

【NOTE】 この記事はApache Commons CLI のバージョン1.2について記述しています。2015年5月時点の最新版であるバージョン1.3ではライブラリが提供するインターフェースに大きな変更がありました。この点についてはこちらの記事で若干言及しています。Javaで…

Wampler, Dean『Functional Programming for Java Developers』

Functional Programming for Java Developers: Tools for Better Concurrency, Abstraction, and Agility作者: Dean Wampler出版社/メーカー: Oreilly & Associates Inc発売日: 2011/08/04メディア: ペーパーバック購入: 1人 クリック: 8回この商品を含むブ…

Apache POIによるWordファイルの編集

Microsoft Officeスイートの各種ファイルをJavaからプログラマブルに編集するライブラリとして、Apache POIがある。これは皆さんご存じのところ。 このライブラリを使用することで、Excelについていえば旧形式のファイル(xlt)も新形式のファイル(xltx)も…

JavaによるRTFファイルのパース

この間RTFファイルを読み取って処理するプログラムを書く必要があって、あれこれ調べる機会があった。このなかでたとえばLinuxにTomcatを導入するときに同時にインストールされるGCC付属のJREにクセがあって、ファイルの文字化けが発生する(OpenJDKやJava f…

Functional Programming for Java Developers

目下のところこの本が読んでみたくてしかたないです。でも英語だしな…Functional Programming for Java Developers: Tools for Better Concurrency, Abstraction, and Agility作者: Dean Wampler出版社/メーカー: Oreilly & Associates Inc発売日: 2011/08/0…

Spring3のアノテーションによるDIを試みる

例によってふと何かアプリケーションをつくりたくなって、であればこの間エンドユーザ側(?)に徹していたDIフレームワークについてもうすこし理解を深めてみよう、ということでSpring3を使ってみることにしました。この記事はそのときの依存性解決のメモ。…

すごい久しぶりに自分でクラスを書く

RubyやFunctional Jλvλのこととかをぼんやり考えていたら書きたくなってしまった。とくに使い道はない。 package com.m12i.java.range; import java.util.ArrayList; import java.util.List; /** * 始点と終点の2値により決定されるある範囲をあらわすクラス.<br>…

Rubyを再勉強中…

自分の記憶が確かならばJavaScriptの次に勉強したのがRubyだったはずです。何しろ国産(むしろmatz氏が国産)というので注目されていましたし、プログラミング言語界ではPerlとちかい範囲をターゲットとしていましたので、自然Web業界でも注目されます。なん…

リファクタリング本を読む

Java言語で学ぶリファクタリング入門作者: 結城浩出版社/メーカー: ソフトバンク クリエイティブ発売日: 2007/01/27メディア: 大型本購入: 12人 クリック: 189回この商品を含むブログ (109件) を見る学生時代のなにが良かったって、やはりぶ厚めの本を持って…