サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大谷翔平
kazyury.hatenadiary.jp
JavaFXでListViewやTableViewを使う際には、ObservableListにデータを追加して内部のデータと画面上の表示をバインドすることになるけど、自分自身が割りと混乱しがちなので一度メモとして書き下しておく。 今回のエントリでは、ListViewについて。次回はTableViewの予定。 ListView 基本的な使い方(文字列のListView) MWではGenerateConfirm/SelectMementoTypeで使用しているような、単純に文字列を描画するリスト(ListView)を使用する場合には単純にObservableListにデータを追加し、ObservableListをListViewにsetItems()すればOK(以下は関連箇所のみを抜粋)。 import javafx.collections.FXCollections; import java
実はMementoWeaver開発記の続き 先日のエントリ(MWの近況と小ネタ - No Bugs, No Life)でも少し触れたが、現存するメメントをMWで利用可能な形で移行する必要がある。 で、移行プログラムを作成する必要があるのだが、正規表現とかガシガシ使うことになるので、流石にJavaではなくRubyを使いたいなと。 一応、今のPCにもRuby1.9.3は入っているが、あまり活用できていないし、頭の中はまだRuby1.8系列のままだしと言うことで、思い切って(?)Ruby2.0を常用するためにセットアップする。 Ruby2.0の導入 Ruby1.8系列まではusaさんがRuby-mwwin32(ja)で配布していたmswin32版を使わせていただいていた。 Ruby1.9.3ではartonさんがActiveScriptRuby and Other packagesで配布されている
MementoWeaver開発記(11) 前回はJPAのEntityManagerを用いて単一のテーブルへのInsert(Persist)を実装したが、関連のある複数テーブルに跨る操作は未実装だった。 今回は関連のある複数テーブルの参照を実装する。 大まかな方針として、以下の段取りですすめる。 Derby上のテーブル間のリレーションを実装する。 Daliを用いてDerbyテーブルからEntity群をリバース生成する。 生成されたEntity群を用いて処理(具体的には、Material(親)とTaggedMaterial(子)に格納された情報を取得)する。 Derby上のテーブル間のリレーションを実装する まずは設計上のERを再確認。 リレーションは3本引かれているが、意味的には以下の2本。 素材[Material](1..1)----(0..m)タグ付素材[TaggedMaterial]
Vim環境整備の続き。プラグイン関係は続きものになってしまう予感。 とはいえ、プラグインの導入については、保守的なスタンスを取ることとし、具体的には、直近で使うプラグインから(必要に応じて)順に導入することとする。 直近ではMWの移行用プログラムをrubyで書く*1ので、ruby開発に必要なものから順次取り揃える。 neobundle 幾つかプラグインを入れることになるだろうと想定し、プラグイン管理のプラグインを最初に導入することとする。 最近のvim界隈ではpathogen, vundle, neobundle辺りがプラグイン管理の定番の様子。vimballは何処にいったんだ? 最新の世代はneobundleのようなので、neobundleを導入してみる。 neobundleの導入 手順は参考ページを参照。 Git Shellからgit cloneですんなり導入。とはいえ、最初はサンプル
MementoWeaver開発記 Vimの環境とRSpecを書き始めるための環境も少しずつだが整備できてきたので、そろそろ本腰を入れてRSpecを書き始めてみる。 RSpecに関する情報収集 RSpecについては殆ど何も知らない状況なので、まずは情報収集から始める。 URL 説明 備考 RSpec.info: home 本家 RDocとRelishAppへの入り口程度 RSpec RSpec-2全体の鳥瞰に向いたプレゼン Kerry Buckley Jan.2011 RSpec Core 2.13 - RSpec Core - RSpec - Relish RSpec-2の公式ドキュメント? RelishApp(RSpec-Core) Documentation for rspec-core (2.13.1) RDocだがREADMEがエントリポイントで判りやすい RDoc RSpec E
MementoWeaver開発記(4) (大幅に加筆・訂正) 前回でJavaFXの使い方の最初の一歩はなんとなくわかりそうな気がしてきたので、各種の設計ドキュメントを書いてみる。 その際に、いくつかのフリーなモデリングツールを試してみたので、選択の理由と評価(感想)をまとめておく。 ドキュメント種別と使用ツールの関連 現時点で作成するドキュメントとそのツールの関係は以下のとおり。 ドキュメント 使用ツール 備考 ユースケース図 astah* community Software Ideas Modelerから乗り換え ユースケース記述 LibreOffice 4(http://ja.libreoffice.org/) フリーのツールでユースケース記述までサポートはしてくれないのでWriterを使う コンポーネント図 astah* community 一般的に期待されるようなコンポーネント図
MementoWeaverもそろそろメメントの生成処理を実装する時期になったようなので、採用するテンプレートエンジンを選定する。 最低の条件としては、Java SEから使用可能であることのみ。 MWの前身であるHPCMSではApache Velocity(1.6.2)を使用していた。 特にVelocityに不満があるわけでもないが、結局のところ今回はスクラッチから作り直しているので、HPCMSのvelocityテンプレートもそのまま流用というわけにはいかず、一応比較してみることにする。 選択肢 簡単にググッてみたところ、メジャーなものには以下がありそう。 最低条件はJavaSEからの利用だが、他の評価軸としては以下を考慮したい。 コミュニティの活発度 対応するテンプレートの種別 導入に伴うハードルの高さ コミュニティの活発度(2013.3.20現在) 選択肢 公式ページ Version 最
前回はListViewについてだったので今回は予告どおりTableViewの基本的な使い方を簡単にまとめる。 あと、CellValueFactory,CellFactory辺りも。 TableView 基本的な使い方(文字列のTableView) MWではInstalledMaterialListなどで使用しているが、このようなTableを作成する場合。 TableViewにObservableListをsetItemして内部データ構造と画面上の行がをバインドする考え方は基本的にListViewと一緒なので基本的な構造としては以下のようになる。 ただし、TableViewの場合には1行のデータに複数の列があるので、tableRecordにaddするデータは何らかの構造を持ったオブジェクト(この例だったらTableRecordのインスタンス)となる。 @FXML private TableV
MementoWeaver開発記(6) PersistenceManagerの実装に入るにあたって、Java Persistence API(JPA)を使用することとする。理由はJavaの習作のようなものなので使えるものは手広く使いたいから*1。 以前の中野ー新川での仕事でもJPAを使っていたが、もうすっかり忘れてしまっているので、開発環境の構築から始めなければならないし、そもそもまだDBMSの設定もしていなかったのでまずはDerbyのセットアップから。 EclipseからのDerbyデータベースの作成 まずはEclipseでDatabase Developmentパースペクティブを開き、Database Connectionsの上で右クリックし、New。で新規接続の作成ウイザードが立ち上がる。Derbyを選択して次へ。 まだDerbyの接続用のドライバを定義していなかったので、最初は何も
このページを最初にブックマークしてみませんか?
『kazyury.hatenadiary.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く