2012年11月4日日曜日

eclipse_orionを試してみた。

eclipse orionが2012/10/29にver.1.0のリリースの発表がされたようです。
実際ダウンロードサイトを見るとビルドログは2012/10/19にver.1.0はビルドされていたようです。

eclipse orionってなによ?ってことで

  • Webブラウザで開発が行える統合開発プラットーフォーム
    • WebブラウザをIDEとして使える。
    • JavaScriptでエディタを実装。コード補完などもJavascriptで実装。
  • どこでもコーディングできる
    • ソースコード等はorion内で管理しているためorionにログインすればどこでもコーディング可能。
  • OrionはWebサービスとして動作しているIDE
    • jettyで動いています。
  • OSGiにて拡張が可能
  • デスクトップIDEの模造ではない。
  • orionhubってところで管理およびIDEが使えるが、ローカルにorionをダウンロードして使う事が可能。
  • orion上でフォルダ、ファイルの追加などもブラウザからも操作できる。
  • git との連携もできる。
  • 検索、リソース比較もできる。



軽い動作確認:
  • ローカルにorionを入れて動作させてみる。
    • Windows動作確認
      • orionをダウンロードし、展開、orion.exeを実行
      • localhost:8080にアクセスしても、レスポンスデータが空で戻ってくる。
      • 原因は不明だが調査している。。。。
    • Mac動作確認
      • orionをダウンロード、展開、orionを実行
      • localhost:8080にアクセスするとログイン画面が出てきた。
      • アカウント作成し、ログインするとnavigator画面が表示される。
      • HTMLエディタを使ってみたが、選択した場所からずれるという現象があったりするため、ちょっと不安定なイメージが。
      • Shellはhelpを打ってみると分かるが5種類のコマンドしかなく、いまいちな感じ。
        • cd , ls , edit , pwd, help だけ。
        • cdの移動はorionのフォルダのみ移動可能。

今回はこんな程度のまとめ、orionのプラグインを作成して、拡張してみる。
日本語資料がほとんどないので、英語よまないとなぁ。


2012年7月14日土曜日

Playframework勉強会#3まとめ

とりあえず、毎回playframework勉強会のスライドまとめを書いているので、今回も書いておこうかなあと思います。
(現在更新中です。)



時間発表者タイトル
14:30~14:50@ikeike443 Playアップデート
14:50~15:20@i2key さん
MediaTechnologyLabsの紹介
 Play2.0+JavaでAPIサーバを開発しているiPhoneアプリの紹介 
15:25~15:55@tototoshi さん Play20 + Scala について
16:00~16:30@kara_d さん
16:35~17:05@daiksy さん Play2.0 + Scala での開発事例



発表者タイトル
@garbegetown さん
@masahito さん
 ドキュメント翻訳について
 Play2.Xドキュメント翻訳について
@seratch さん plugin 開発の導入
@たけぞう さん Play1.2.X系+Scalaの話
@gakuzzzzさん Play20-auth の話か DDD on Play20 みたいな話
@puriketu99 さん おしべめしべシステムからplayをはじめよう




2012年6月3日日曜日

scala.sys.Processのシンタックスシュガーでコンパイルエラー

簡単な運用スクリプトをscala移行をおこなっていて、ちょっと悩み中。
scala.sys.Processを使っていて、下記のようなコードを書きました。
import scala.sys.process._
val result ="df -k"!!
println(result)

コンパイルしてみると、
> compile
[info] Compiling 1 Scala source to /Users/kazuhiro/work/scala/sbt_project/sample_project/target/scala-2.9.0-1/classes...
[error] /Users/kazuhiro/work/scala/sbt_project/sample_project/src/main/scala/Sample.scala:28: recursive value result needs type
[error]  println(result)
[error]          ^
[error] /Users/kazuhiro/work/scala/sbt_project/sample_project/src/main/scala/Sample.scala:28: type mismatch;
[error]  found   : Unit
[error]  required: scala.sys.process.ProcessLogger
[error]  println(result)
[error]         ^
[error] two errors found
[error] {file:/Users/kazuhiro/work/scala/sbt_project/sample_project/}default-fc0f5b/compile:compile: Compilation failed
[error] Total time: 2 s, completed 2012/06/02 11:22:44
次に以下のように!!の行に一行あけてみると。
import scala.sys.process._
val result ="df -k"!!

println(result)
コンパイルが問題なく通る。 シンタックスシュガーに改行が必要だとシンタックスシュガーにならんじゃないの? REPLで上記コードを入力した場合は、問題なく実行されるので、本来ならば問題はないんだろうなぁ。。 環境は
mac OS X 10.7.4
scala-2.9.0-1
追記:2012/06/05

とりあえず謎の空行の対策としては、セミコロンを入れればコンパイルエラーはなくなる事が判明。 うぅーん。なぞだ。

2012年2月20日月曜日

ソフトウェアテストの教科書読了

先月に出版された本ですが、バルテスというテストをメインとする会社の人が著者らしいです。

読んだ感想は

  • テスト設計、実施、モニタリングというテストフェース全体を網羅する内容を明解に記述
  • テスト技法についても結構なページを割いて説明をしていたため分かりやすい内容
    • 新人とかに読ませるとよいのかなと思います。
  • テストケースの内容が組み込み系にマッチング
  • テストケースを少なく効率的にテストする思想があった。
  • テスト設計書は重要!!!
    • 追跡性、関連性(関連ドキュメントやドキュメントIDなど必須)
    • テストの定義を記載
      • なにを目的とするテストなのかを記述
      • レビューする人が分かるレベルに記述。
        • 後々なんでこんなテストしたの?ってわからなくならないようにする。
    • テスト項目対象外も記載。
      • これもなんでテストやってないの?ってなってしまうので。


個人的にはすごい読みやすい本だと思いました。
ってかテストの本を読んだの初めてかもしれない。。。。。。ほかのテストの本を読んでみて、比較してみます。
今までこんなテストを実施する立場にはあまりいなかったので。



まぁ、この本を読んだのは、現在プロジェクトで既にあるコードから設計書作成して、
再テストを行うという泥臭い仕事をしているんですが、

  • ドキュメントフォーマットが揃っていない。
  • テストプロセス、テスト実施方法が決まっていない。
    • テスト項目洗い出し方法等もまとまっていない。
という結構やばい状況だったので、それを脱出すべく本から知識を拝借しようと思い読みました。



2012年1月13日金曜日

Java API for JSON Processingについて

JSR 353: JavaTM API for JSON Processingをさくっと 読んでみました。
JSR353ではJSONのデータを扱うAPIの仕様について明記しています。今年に入って正式に標準化が決まったようです。
APIが入れられるパッケージはjavax.jsonとのことです。

この仕様のゴールは以下のAPIが開発されることです。
  • Produce and consume JSON text in a streaming fashion(similar to StAX API for XML)
  • Build a Java object model for JSON text using API classes(similar to DOM API for XML)
以下のことは仕様のゴールには含まれない。
  • Binding of JSON text to Java objects and vice versa.


既存のJSONデータを扱うパッケージは以下のようなものがあります。

Jacksonは以下のような簡単にPOJOで扱える仕組みです。

ObjectMapper mapper = new ObjectMapper(); // can reuse, share globally
User user = mapper.readValue(new File("user.json"), User.class);
public class User {
    public enum Gender { MALE, FEMALE };

    public static class Name {
      private String _first, _last;

      public String getFirst() { return _first; }
      public String getLast() { return _last; }

      public void setFirst(String s) { _first = s; }
      public void setLast(String s) { _last = s; }
    }

    private Gender _gender;
    private Name _name;
    private boolean _isVerified;
    private byte[] _userImage;

    public Name getName() { return _name; }
    public boolean isVerified() { return _isVerified; }
    public Gender getGender() { return _gender; }
    public byte[] getUserImage() { return _userImage; }

    public void setName(Name n) { _name = n; }
    public void setVerified(boolean b) { _isVerified = b; }
    public void setGender(Gender g) { _gender = g; }
    public void setUserImage(byte[] b) { _userImage = b; }
}
{
  "name" : { "first" : "Joe", "last" : "Sixpack" },
  "gender" : "MALE",
  "verified" : false,
  "userImage" : "Rm9vYmFyIQ=="
}

2012年1月2日月曜日

Sphinxへ移行

Wikiを使っていたが、やはり最近Sphinxへの移行を考え始めました。
理由は以下の点です。


  • ローカルでの作業が多いこと
    • viでがりがり記述が可能であるため、楽。
  • html以外でのドキュメントでも変換が可能であること。
    • PDF変換可能ということはプレゼン資料も作成可能


導入方法は以下手順。



今後Sphinxの使い方をまとめていく予定です。
まとめるというよりは自分の使いやすいようにリンクなどを張っていけば、今後役に立つ人はいると思うので。。。。

2011年12月22日木曜日

形式手法について勉強したいなぁ。

形式手法は前々から知っていて、興味は持っていました。
勉強しようと思うが、どのように業務にいかせるかな?っておもって手を出していなかったのですが、@ITMONOistでISO26262の開発手法が掲載されていました。
形式手法は組み込みでも使われているので、今やっている業務に適用できるかな?って思ったので、勉強してみようと思っています。

Alloy, Z , VDMなどはあるけど、Alloyが本があって読みやすいかな?とは思うので、
買ってみようと思います。


一応形式的手法とは

計算機科学における数学を基盤としたSW,HWのシステムの仕様記述、開発、検証の技術。
開発行程でエラーが入り込まないことを保証する。
要求仕様レベル、機能仕様レベルでは特に効果的であるが、実装レベルでも形式主義開発は可能。