2013年3月26日火曜日

NetBeansでjarライブラリを作る方法

Eclipse以外の有力なjava開発環境「NetBeans」でjarライブラリを作る方法です。
自分用メモも兼ねて。

試した環境は
        OS: Windows7/ Mac OSx 10.8
  NetBeans 7.3


流れはざっくり以下の順番
        1. ライブラリクラスの作成
        2. ライブラリクラスのビルド
        3. ライブラリを使用するプロジェクトの作成
        4. ライブラリクラスをライブラリを使用するプロジェクトへ追加
        5. ライブラリを使用するプロジェクトの実装

”ライブラリ”がゲシュタルト崩壊しそう!


1. ライブラリクラスの作成
ライブラリになるクラスを作成します。
ここではTestLibという名前にします。

1-1 プロジェクトの作成
まずは、jarライブラリ用のプロジェクトを作成します

  • [ファイル]>[新規プロジェクト]を選択
  • "1. プロジェクトを選択" のステップでカテゴリ"JAVA"のプロジェクト"Javaクラス・ライブラリ"を選択
  • プロジェクト名をTestLibに変更して[終了]をクリック


1-2 ファイルの作成
ソースのパッケージとJavaファイルを作成します。

  • プロジェクトウィンドウの"TestLib"を右クリックして、[新規]>[Javaパッケージ]を選択して[次>]
  • パッケージ名に"test.lib"とパッケージ名を入力して[終了]をクリック
  • "test.lib"を右クリックして、[新規]>[Javaクラス]を選択
  • クラス名に"TestLib"と入力して[終了]をクリック


1-3 クラスの実装
ライブラリの中身を記述します。

  • "TestLib.java"をダブルクリックしてファイルの中身を表示
  • ファイル内へ実装



2. ライブラリクラスのビルド

  • メニューから、[実行]>[プロジェクト(TestLib)をビルド]を選択してビルド実行

ビルドが成功したら、エクスプローラなどでTestLib/distフォルダの中を見るとTestLib.jarができています。これが、目的のjarライブラリになります。



3. ライブラリ使用プロジェクトの作成
次にjarライブラリを使う側のプロジェクトを作成します。
作り方がわかる方は読み飛ばして構いません。

  • [ファイル]>[新規プロジェクト]を選択。
  • "1. プロジェクトを選択" のステップでカテゴリ"JAVA"のプロジェクト"Javaアプリケーション"を選択して[次>]をクリック
  • プロジェクト名をUseTestLibに変更して[終了]をクリック



4. ライブラリクラスをライブラリを使用するプロジェクトへ追加
2で生成されたTestLib.jarをUseTestLibプロジェクト内で使用できるようにします


  • プロジェクトウィンドウ内のUseTestLibを右クリックして[プロパティ]を選択
  • "カテゴリ">"ライブラリ"を選択
  • "コンパイル"のタブを選択し、[JAR/フォルダの追加]をクリック
  • ファイル選択ダイアログが開くので、TestLib.jarを選択して[開く]をクリック
  • [OK]を押してウィンドウを閉じる



5. ライブラリ使用プロジェクトの実装
ここまで来たら、あとは実装するのみ!

  • UserTestLib.javaでTestLibクラスをインポート(import test.lib.TestLib;)
  • main内で実装



おわりに
NetBeansを使ってjarライブラリを作って外部で利用する方法でした。
ここまで書いてスクリーンショット貼ればよかったかなぁと思ったり。。

プロジェクトの追加作業は一度だけで、jarライブラリ側の実装を変更しても追加側では特に気にする必要はありません。
ビルドするだけ!

余談ですが、一度jarライブラリを外部プロジェクトへ追加して、その後リファクタリング機能でjarライブラリの名前を変更すると、外部プロジェクト側でも追従して名前の変更を自動でやってくれるので大変便利です。


以上、たまには技術なネタでした。

2013年3月23日土曜日

ペンとメモ帳の相性

JetstreamというペンとRhodiaというメモ帳の話です。


数ヶ月前、メモ帳を常備したいなと急に思い立ち、

  • 毎日持ち歩ける手頃な大きさ
  • 頑丈な紙
  • 近所で手に入る

という条件で探した結果Rhodiaというメモ帳に行き当たりました。それ以来何冊か買い足して使っているのですが、ひとつ問題が…


Rhodiaの紙面には方眼線が書かれていて、これがなかなか主張の強い線なのです。
普段愛用している0.5mmのペンで書くと方眼線に負けてしまう!というのがちょっと困りごと。
ということで、少し太めのペンを用意してどれがいいかと検討してみました。




ペンは全て三菱鉛筆のJetstream。どんな紙でもストレスなく書ける良いペンです。
で、方眼線上に描いてみた結果、やっぱり太いほうが見やすい。
当たり前ですが…。


ということで、Rhodiaに書くときは1.0mmのペンを使うことに。
馬鹿馬鹿しいですが、なんとなく気になっていたのでやってみた!という話でした。



2013年3月12日火曜日

シンプルという価値

自宅の無線LANルーターをApple社のAirMac Expressに変えてみたところ、「ほとんど設定がいらず簡単に使えた」という驚きがありました。

以前使っていたものは設定用のソフトをパソコンに入れる必要があり、またマニュアルにも10ステップくらいの設定手順が細かく書かれているなど、パソコンが苦手な人にはハードルが高いだろうな、と感じる一品でした。

今回のAirMac は、モデムと接続して、電源入れて、名前(SSIDですが、それを意識せず)とパスワードを決める、
という手順。初めて触る機器でしたが5分くらいで設定終了です。
しかもパソコンは一切使わずiPadから設定が行えました。

さて、ここで無線LANルーターを買って一般ユーザーがやりたいことは何か考えてみましょう。


当然ですが、無線でネットワークにパソコンなどを繋げる事です。
これが最小であり必須の要求。
裏を返せば、SSIDがどうとかネットワークグループやipアドレスとか、そんな事はどうでも良くって、「いいから早くインターネットに繋がってくれよ」というのがユーザーの欲求なのではないでしょうか?


閑話休題
機器にしろサービスにしろシンプルである事に価値が生まれることもある、と感じます。
モノが溢れかえっている現代において、ユーザーは自分に合ったものだけを周りに置くことが可能であり、たとえ一箇所で色々できてもユーザーのお気にりになれないモノは黙殺されることでしょう。
そんな中で作る側にとって、「最小であり必須のユーザー欲求にだけ応えることに特化したモノを作る」というのも選択肢のひとつなんじゃないかなと思います。







2013年3月10日日曜日

ガジェットをたくさん持ち歩く方へ

スマートフォン、ノートPC、タブレット、電源アダプター、USBケーブル、モバイルルーター、手帳…
働く方が日々持ち歩く”モノ”は意外と多く整理が大変ではないでしょうか?

そんな持ち物の多いビジネスマンの小物を、綺麗に一枚の板にまとめてくれる「GRID-IT!」のご紹介です。



板の表面に縦横数本のゴムバンドが張られており、そこへ小物を挟んで収納することができるアイテムです。

たったこれだけの事なのですが、いままで鞄のなかでかさばっていたモノを板の上で整理できることで、鞄の膨らみが軽減したり取り出しが簡単になり、鞄を変えた時にも移し忘れもなくなりとても便利です。

ガジェットや文房具など持ち歩く小物が多く、整理に悩んでいる方へお勧めしたい一品です。





2013年3月6日水曜日

[技術書紹介] 独習Java サーバーサイド編




Javaでのサーバーサイドプログラミングを手っ取り早く勉強できる本ないかなぁ…、と探していたらピッタリな本を見つけたので早速購入しました。

今のところ、ざっくり全体に目を通しJSPとサーブレットの辺りに手をつけていますが、全体的に読みやすく分かり易い文章、豊富なサンプルコード、詳しい解説でなかなか良い技術書だと感じました。
Javaの基本的な書き方を始めいくつか前提知識が必要ですが、そういった事が出てくる部分もあまりぶっきらぼうにならず、丁寧な解説になっていて好感が持てます。

また、演習が多く「手を動かしながら考える」ことがしやすいため、この一冊でかなりのレベルアップができると思います。

500ページ超えの一見登り難い山のように見えますが、中身は学ぶ者を拒まない良書だと思います。
Javaを使ったweb開発のお供にぜひ。






2013年3月4日月曜日

NetBeans and Tomcat

NetBeans 7.3が2013年2月の半ば頃にリリースされていた事に気づかず、最近ようやくアップデートしました。
という訳で、あまり関係ありませんがApache Tomcatのwebアプリケーションマネージャのログイン方法について。。。

以下、Mac OSX 10.8  mountain lion上での操作になります。



NetBeansに同梱されているTomcatをそのまま使用した場合、

 http://localhost:8080/manager/html 

へアクセスするとgui操作を許可するユーザーが登録されていないため、403エラーになってしまいます。

普通にNetBeansから起動&停止をしている分には特に不都合は無いのですが、サーバを動かしたまま特定のアプリケーションの再ロードをする時などはTomcatのマネージャを使うのが手っ取り早いです。

ということで、アプリケーションマネージャにログインする方法。
Tomcatの中にあるtomcat-users.xmlを編集します。
パスはここんな感じ↓
 /Applications/NetBeans/apache-tomcat-7.0.37/conf/tomcat-users.xml  

このファイルの下の方に、NetBeeansが作ったユーザーが記載されていると思います。
その下辺りに新しいユーザーを加えます。

 <user password="hoge" roles="manager-gui" username="hoge"/>  


これで、hogeさんにmanager-guiにアクセスする許可が与えられました。
(もちろんユーザー名とパスワードは任意で入れてください)

ファイルを保存したら、サーバを再起動。ターミナルから
 $  /Applications/NetBeans/apache-tomcat-7.0.37/bin/catalina.sh stop 
 $  /Applications/NetBeans/apache-tomcat-7.0.37/bin/catalina.sh start 

ここまでできたら、再度http://localhost:8080/manager/htmlへアクセスし、新しく設定したユーザー名とパスワードを入力することでアプリケーションマネージャへログインできます。
めでたしめでたし。






2013年3月3日日曜日

作業用メガネ

PCで作業する時にJINS PCというメガネを使っています。
一年くらい使い続けていますが、なかなか調子が良いので今更ながら感想を書いてみます。





使いはじめは慣れない...
僕は普段、メガネを使わない人なのでJINS PCを手に入れたばかりの頃は、”メガネをかける” という行為自体に慣れませんでした。
一ヶ月くらいは我慢していたでしょうか。すっかり今は気になりませんが…。
また、メガネをかけない人にもメガネをかけさせるというこの製品の力はすごいと思います。


確かに目の疲れが軽減される
JINS PCをかけてディスプレイを見た瞬間と、長時間作業をした後に実感します。
特に仕事中は8時間以上PCとにらめっこしていることもあるので、夕方頃になると目が痛くなってきますが、JNINS PCを使っている日は若干楽な感じです。
”若干”というところがポイントで、劇的な変化はありません。
でも、そういった小さな積み重ねが数年後の体に影響してくるんだろうな、と思っています。

結局、自宅用と職場用に二つも購入してしまい、だいぶお気に入りな製品です。
メガネに慣れていないと、メガネをかけるという行為自体に疲れてしまう可能性ありますが、買って損はないなぁと思った製品でした。




技術書の読み方

Software Design 2013年2月号に、
「忙しいITエンジニアのための、超効率的勉強法」
という特集があり、なかなか興味深い内容だったのでご紹介。

若手エンジニアを鍛えるストーリーの中に「技術書の読み方とは?」という部分があり、これを僕もすぐ実践してみたところ効果が実感できました。

内容を要約すると
 1. はじめに「読む目的」を明確にする
 2. 目次でどこに何が書いてあるのか見極め、目的を達成するために重要そうな項を書き出す
 4. 書き出した重要な項を読む、分からないキーワードはメモして後で調べる
 5. 読み終わったら、A4のノート1ページにまとめる
 6. さらに必要な項目をじっくり読んで深堀りする。

1〜5は概要を掴むための方法です。また5番までを一時間程度に収まるようにすること、だそうです。

自分でこの方法を試してみたのですが、読む目的をはっきりさせて、まず先にこの方法で全体把握をすることで、新しい技術を理解するスピードが早くなったと感じました。
特に6番の深堀りをする段階で、今自分が勉強しようとしている知識が全体の中でどんな位置にあるのか、何を達成するための知識なのか、という事が見えやすくなります。

なんでもかんでもこの方法で技術書を読めば良いという訳ではないと思いますが、短期間で実践的な知識を身に付ける必要のあるエンジニアにはこういった読書スキルも大切だと思いご紹介させていただきました。