忍者ブログ
淡々とお仕事のお勉強をするよ
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

やっぱり Java のパッケージ名って、所属する組織のドメイン名をひっくり返したもので決まるんだ…

7.7 Unique Package Names

You form a unique package name by first having (or belonging to an organization that has) an Internet domain name, such as sun.com. You then reverse this name, component by component, to obtain, in this example, com.sun, and use this as a prefix for your package names, using a convention developed within your organization to further administer package names.

よく見たらこの文書、Java 言語仕様第3版の原書だ。こういう時は太っ腹だなあ SUN。認定試験はお高いけど。
しかし、ドメインを持ってないし、職場で作ったものでもない場合はどうすればいいんだ。登録すれば jp.gr.java_conf で始まるパッケージ名を使わせてくれるサービスがあるようだけれど、もしかして jp じゃここだけ ?

Package BOF
jp.gr.java_conf - Google 検索

細かく調べるはずだったのに、以前 Java の道で見た以上の情報はなかった件。まあいいんだけども。

PR

クリップしたページが溜まってきたのでメモ。(参考 : 前回の記事)

導入の流れをまとめるとこんな感じ。

  1. 入手したバイナリを展開
  2. 環境変数 JAVA_HOME と PATH を設定
  3. mvn archetype:create で新しいプロジェクト
  4. 初回のプロジェクト作成で様々なものが自動的にダウンロードされてローカルリポジトリに入るが、それ以外に必要な場合は入手したバイナリを mvn install:install-file で手動インストールする

先日の JavaFX 記事のリンク先のどれかを読んでいて、あれ、Java のクラスにもプロパティがあって get / set がある ? とひっかかったので調べてみた。

Java 入門 | メンバー変数

データの保護とカプセル化という観点では、フィールド xxx に public を指定したい場合、フィールド自身は private 宣言しておき、他のクラスからのアクセスに備えて、フィールドアクセス用のメソッド getXxx(), setXxx() を public 宣言する方が望ましいとされます。このようなメソッドを、 getter/setter と呼び、合わせて accessor と呼びます。

Visual Basic と違って、既定の機能ではなかったみたい。

前回 GUI について調べたときには言及しなかったが、ニュースで目に付いては気になる JavaFX についても調べておく。名前から分かる通り Java の何かで、既存の機能を利用するスクリプト言語らしい。

環境

今のところ、Sun 主導のオープンソースプロジェクト OpenJFX が代表格。解凍してみるととてもシンプルな構成。ソースファイルの拡張子は通常 fx。
Eclipse のプラグインも用意されている。
http://download.java.net/general/openjfx/plugins/eclipse/site.xml
これを使う場合、別途 OpenJFX を導入する必要はない。
(via JavaFXによるGUIアプリケーションの作成:CodeZine)

JavaFX Mobile、デスクトップウィジェット向けの WidgetFXNetBeans 用プラグインもある。

コーディング感、Java との違い

【特集】体験! JavaFXの世界 - "Javaが放つRIAプラットフォーム"の魅力を徹底解説 (1) あらゆるデバイスで実行可能なリッチなアプリケーションUIを実現 | エンタープライズ | マイコミジャーナル
Life is beautiful: JavaFX Script 入門、とりあえず言語仕様に目を通してみた
Why Does JavaFX Get to Cheat? | Javalobby

  • Java の GUI は手続き的、JavaFX は宣言的
  • package・import については通常の Java と同じ
  • 識別子として通常使えない語を << >> で囲って使用できる
  • 型宣言は省略できるが動的ではない
  • function による関数記述、より柔軟な operation が使える
  • bind による紐付けで値の変化を自動評価
  • パネルが使いやすい

デモ・サンプルコード

Java との共存

Michael Heinrichs 氏の blog で、JavaFX と共用するための Java コードを書くために気をつけることについての記事が連載されている。いずれじっくり読みたい。

JUnit.org
公式サイト。
SourceForge.net: JUnit
ダウンロードはここから。
Java 2 SE 5.0 以降は Ver. 4.x、それ以前は 3.x。現時点での最新版は 4.4 と 3.8.2 みたい。
[ThinkIT] 第10回:JUnitの利用 (1/4)
Eclipse を使ったテストの例。ビルドパスに junit.jar を加えたり、テストケースを作ったりといった作業がわりと簡単に出来る。

オブジェクト間の関係を xml 形式の定義ファイルから読み込む。色々なメリットが生まれるらしい。

  1. コンポーネント化
    • トラブルの局所化
    • 小さな改良・改造がやりやすい
    • テストが簡単
    • 色々なフレームワークをくっつけられる
  2. AOP の実現。2 / 10 にリンクした記事でちょっと出てきたアレ。
  3. EJB よりビルド時間が短い

デメリットはファイルの肥大。あと、宣言的トランザクションの実現でも他を引き離しているらしい。

EJB の仕組みを知ろう読了。Bean オブジェクトのメソッドは EJB オブジェクト越しに呼び出し、その過程で様々な機能を実現する。これがコンテナの機能なんだろうか。

Java/コンテナ

変数には1つのオブジェクトやデータしか格納することはできないし、一度に操作できるオブジェクトやデータも一つである。

このためにオブジェクトやデータ全体に対して処理を行う場合には、そのための仕組みが必要である。

1つの方法はリレーショナルデータベースが用意している集合演算である。データの集合に対して関係演算(選択、射影)などを行うことでデータの集合に対する操作を行う。

もう一つの方法はコンテナを使用する方法である。

Vector もコンテナだったらしい。今は非推奨になってしまったけど。Stack も Vector のサブクラスだし、Hashtable も HashMap の使用が推薦されている。これは 97年の記事だからでもあるけど、EJB の仕様も曖昧らしい。コンテナの設計と実装は複雑ということか。

忍者ブログ [PR]


Designed by A.com
カレンダー
03 2024/04 05
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
フリーエリア
最新TB
バーコード
ブログ内検索
アクセス解析
プロフィール
HN:
tnmt
性別:
非公開
(image created by E-Mail Icon Generator)