開発の最近のブログ記事

この辺を見ながらFlexでアプリを作るチュートリアルってる。

作って学ぶAIRウィジェットの基礎→応用
(2) Flex/AIRウィジェットのデザインをCSSでカッコよく
(3) Flex Builder 3でサクっとActionScriptコーディング!

言う通りにやっただけだけど、なんかRSSリーダーができた。

FB3_@it_tut.png

お、面白いですね、Flex。ちょっと興奮してきた。
これ使えば今読ミのブログパーツなんて、簡単じゃね?(かなり甘く考え中)
しかし、もう日曜の夜か。明日もコレやっていたいなぁ。

MacOSXのSubversionクライアント見つかったかもSCPluginを紹介しましたが、その後少しハマりました。

コマンドを実行(UpdateやCommit)しようとすると、

SCPlugin_svn_error.png

このようなエラーダイアログが出て、先に進めません。 この場合、SCPlugin自体は認証情報を覚えていないので、Subversion共通のクライアントサイドの設定~/.subversion/configでデフォルトではコメントアウトされているstore-auth-credsyesにし、パスワードをMacのキーチェインにキャッシュしてあげれば使えるようにはなります。

この設定をするとフォルダにアクセスできるユーザー全てがリポジトリに触れるようになってしまうので、それが気になる方にとってはダメなのですが…

ともかくstore-auth-creds=yesの設定をしてからSubversionコマンドを実行すると、

SCPlugin_keychain.png

このようにキーチェインにアクセスして良いかの確認ダイアログが表示されるので、「常に許可」か「許可」をクリックすれば使えるようになりました。

EclipseだとSubversionのためだけに起動するには重いですし、ターミナルでコマンドラインを実行するよりも断然使い勝手が良いのでしばらくこれで行こうと思います。

Subversionクライアント

TortoiseSVN的なものを探していたのだが意外とない。コマンドラインでもできなくはないのだけど、やはりなぁ。バージョン管理はGUIの方がミスが少ない気がする(マージは割とコマンドラインの方がやりやすかったりしますが)。
ひとつversionsというプロダクトを見つけたのだが、β版で、かつダウンロードはメールアドレスを登録して何かを購読しないといけないようだ。すかさずサブスクライブってみたのだけど何もおこらない。おそらく忘れた頃にメールが来るのだろう。

せっかなのでCarbonEmacsを使いたかったのだが、良いSubversionクライアントが見つかるまでは、Eclipseでも使っていようか。
このMacBookでJavaをやる気はないのでAptana Studioを入れよう。なんだか少し負けた気がするけど。

そうそう、最近出たファッショナブルなRails本

(※今読ミ・ブログパーツテスト中)

では、NetBeansのRails開発環境を使っているみたいだ。Eclipseの方が慣れているし、以前少しだけ触った感じだとイマイチ好きになれなかったので今はスルー。開発環境を探している訳ではなくてSubversionクライアントを探しているだけなんだし(汗)

Emacs(Meadowだけど)のcolor-themeは色のセットを切り替えるのが非常にラクチンで気に入っています。
標準で大量に色テーマが用意されているので簡単に気分転換ができて嬉しい。

今はJonadabian Slateというテーマを使っているのですが、emacs-railsで文法エラー時、ピンクの背景に薄い文字色で非常に見えづらかった。

確認しながら変える方法を見つけたので晒しておきます。

まず
M-x color-theme-select
そして、使っているテーマの行にカーソルを移動して“f”。

これでそのテーマのカラーセットが別バッファに表示されるので、右側の色合いを見ながら変更すべき行を探します。
私が変えたかったのは「flymake-errline」だったので、カーソルがその行にある状態で「ENTER」を押します。
Customize Faceというバッファが開きます。
customize_color-theme.jpg 背景色を変えたいので、Background のチェックボックスにカーソルを合わせて「ENTER」を押すと、現在の設定がその行の右に表示されます。

カーソルを右の色名の上に移動して「ENTER」を押すと、ミニバッファに入力を求められるので、変更したい色名を入力します。

今は、見辛いピンクの背景を変えたかったので「dark red」を指定しました。色名の入力はコンプリーションも効くので、「dark」まで入力して「TAB」などとすると、別バッファに候補がたくさん出てきて便利です。

気に入った設定が見つかったら、C-x C-sで保存すると適用されます。C-x kでカラーセットの一覧に戻ると、カーソルの行が設定通りに変わっているはずです。

なんとなく、他にもっと良い方法がある気もしますが、今のところ文法エラーの行の表示を見やすくしたかっただけなので満足しています。


@Reqを入力し、Ctrl+Spaceを押せと書いてある。何も起こらない。
って分ってて言ってるんですが、私はEmacsキーバインドに設定してあるので、Alt+/です。Emacs使いの層はあまり読まない系統の本ではあるのでいいんですが。
(48P辺り)

エラーメッセージを日本語化するためにリソースファイルlabel.propertiesを作るとありますが、国際化のためにはlabel_ja.propertiesなのではないかと思い、そうしてもちゃんと動いた。
(57P辺り)

ぐは!<input />タグが表示されない!と10分くらいハマったが、ラベルに付けるidを id="userNameLabel" とせず、<input />と同じにしていたからだった。本にもちゃんと「label.propertiesのキー+Labelにする」と書いてあるし、そもそもidが重複してはいけないのはHTML的初歩だった。
(58P辺り)

画面遷移をするのに、遷移先のクラスを返すインターフェースは、使ったことがないので違和感があるなぁ。nullを返すと遷移しないというのも含めて。
(66P辺り)

id="goNextPagen" にするとPageクラスのメソッドは呼ばれずにnextPage.htmlに遷移。その際、バリデーションは行われる。
(67P辺り)

id="jumpNextPage" にすると単にnextPage.htmlに移動するだけ。バリデーションも行われない。
(68P辺り)

initialize()メソッド説明ではイマイチ良くわからないがGETで飛んできたら呼ばれるという事かしら?対してprerender()は常に呼ばれる。
(73P辺り)

HTMLエスケープ処理が簡単に行えるteeda/extensionについて。
(77P辺り)

選択リストの選ばれた値を覚える規約について。
しかしサンプルがgenericで書かれていないのでEclipseの警告がウザ。その割にautoboxingは普通に使われていたりするサンプル。
(83P辺り)

複数選択リストの選ばれた値を覚える規約について。前節と殆ど同じ。
サンプルの警告を取るのが面倒になってきた(負)
(87P辺り)


さてと飽きてきた。実際簡単すぎるんだな。やっぱりこの内容で2400円はちょっと高いんじゃないかなぁと思われます。
簡単なのは、確かにTeedaの設計思想が簡単開発を目指しているので、目的通りであって何も非難される謂れはないとも言えるのかもしれません。
しかしこの内容ならタイトルに「サルでも」とか「図解」とか付けといてくれた方がありがたいなぁ。間違っても買わないから。内容を確認しなかった自分が悪いんですが。

こいつは本当の初心者向けの本です。
今読ミ(imayomi)を作り始めるときに、開発環境の候補としては

  • Ruby on Rails
  • Seasar2 (Teeda + S2Dao)
  • Perl + なにかフレームワーク
を検討しました。(PHP はその当時仕事で使っていたし、あんまり好きじゃないので一番無難だけどスルー)

最初はほとんど Seasar2 で始めるつもりになってたんですが、過去のエントリーを見直してみると開発を始めた去年のGWに入ってから急にRuby on Railsに決まってます。私の技量不足もあるのですが、Seasar2ってなんか思い通りに行かないことが多かったのです。一応Javaが一番得意な言語なんですが(汗) Javaというより、開発環境がまだこなれてなかった気がします。

先月末にSeasarひが やすをさんが自身で解説本「Seasar2によるスーパーアジャイルなWeb開発」を出されたので、これを機に、再開するかとAmazonで買ったのが昨日届きました。 思っていた(Oreillyみたいなの(?)希望)のとかなり違っていて、失敗したなと思ったのですが、逆にすぐに終わりそうだと思い直し、読み進めながらやってみることにした。

最初の概要は雑誌 WEB+DB でも何度か読んだことあるので知っているしざっと斜め読み。
(26Pまで)

新しい本なのに推奨開発環境がちょっと古くないかなぁ?特にEclipseのダウンロードURLなんて、もうリンク切れしてますよ(´Д`)

わざわざ探してまで古いのを入れたくないので Eclipse3.3 にしてみたがCore だけだと apache xerces が無くて Seasar plugin がインストール出来ない。それだけ入れる方法を探すのが面倒だったのでデカイけどJ2EE版を取ってきたら入った。
(28P辺り)

これでサクサク行けるかと思いきや、言うとおりに新規プロジェクトを作ろうとするも「Chura Project」というのが見つからない。プラグインを入れ忘れたかとupdates/3.3のアップデートも入れてみるが出てこない。

Churaの代わりにDoltengというのが出てくるので、最近はそっちなのかなぁ~と選んでみたらそれっぽい。それっぽいが結構ダイアログが違う。

Project Typeに「Super Agile(Teeda + S2Dao)」ってのが選べないので、Persistenceに「S2Dao」、Presentationに「Teeda (Page only)」を選んでみる。

本にはないServer Managementという選択があり、「Sysdeo Tomcat Plugin」、「WTP (Servlet 2.4)」、「WTP (Servlet 2.5)」が選べる。本ではSysdeoで解説されているので、こっちが安全なのかなと思わないでもなかったが、ここまで数ページ進んだだけで全く指示通りに出来ていないので、もう趣味で良いだろうと「WTP (Servlet 2.4)」を選んでしまう私(爆)。せっかくJ2EE版を入れたのでWTPを使いたいじゃないですか!
(31P辺り)

そんなでもちゃんとプロジェクトは作成され、Tomcat起動。Hello Worldキター(汗)
(34Pまで 2章おしまい)

ページクラスを作るも、メソッドの戻り値の Class 型宣言に generic 警告が表示されてウザー。あまりお勧めできないがプロジェクト設定で警告をOFFに(汗)

Seasar2の売り中の売り、Hot Deployを試すべくPageクラスを変更しては、ブラウザで再表示をするが、タイミングが微妙…。早すぎるとDeploy前だったり、サーバーエラーになったりする。なにか設定が間違っているのだろうか。もっとサクサクできるかな?
(39P辺り)

とりあえずココまで。さて、続くのか?
今までAPIドキュメントはRadRailsから見ていたのですが、エディターをEmacsに変えて(というか戻して)からは、ググって済ましていました。

もちろんローカルでgem_serverを上げるっていうのもあるんですが、RDocのHTML形式って…使えなくないでしょうか?探したいクラスやメソッドを探せる仕組みになっていないような。
いや多分、私が便利な使い方を知らないだけなんでしょうが、知りたいメソッドのAPIドキュメントにどうしてもたどり着けません(汗)

なのでググって済ませてたのですが、先ほどとあるメソッドのリファレンスを探していたらNoobkitというサイトが見つかりました。

基本的に内容はRDocなのですが、

  • 検索がある (検索がないとメソッド名でたどり着けませんよね?)
  • 階層を辿りやすい (おぉ、Flashだ)
  • メインのペインが広くて読みやすい (標準の4ペイン表示は強烈に見づらいですよね?)
  • スタイルも綺麗で見やすい (まぁ、これは好きずきかも)
という訳でHTML化RDocのダメなところをうまく回避しています。

Railsの1.2.3と2.0.2の両方対応しているのも好印象。他にRuby本体やRMagickなど主要なライブラリのAPIにも対応している。かなり便利そうなので暫く使ってみます。
meadow.jpgやはりEclipseは止めてEmacsに移行(というか久しぶりに戻る)事にした。

とはいっても現状、開発環境はWindowsXPなので、Rails On Emacs に紹介されている全ての機能は期待しないことにして、まずはエディタとしてのみ期待。

Emacs 22.0以上が必要ということで Meadowのダウンロードページ よりMeadow 3.00 (KIKU) -- 開発版を初めて入れてみた。

Meadow2 と比べると起動がめちゃくちゃ遅くなっているなぁ。これはEclipseよりも遅いくらいかもしれない…起動してからの操作感はMeadow2よりは重いが、Eclipseよりはまだかなり軽い感じだ。

ちゃんと動いているように思えるのだが、Meadowでどこまでできるかもう少し時間をかけて調べる必要があるかも。

うむ。Emacs(Meadow)は、やはりなんだか体に馴染む。

imayomiのソースチラリ(かなりダサイとけど)


imayomi(今読ミ)に今後追加したい大きめの機能としては、

  • カレンダー表示
  • シリーズ機能
  • 携帯端末連携
  • 読んだ履歴の別の表示方法(まだ漠然としてる)
他、アレコレあるので、いろいろ考え始めると、うずうずしてくるのであります。

先日、ついカッとなって、このブログに「はてなスター」を設置 ― といっても単にMTHatenaStar作ったを設置させていただいただけなんですけど。ほんとうにありがたいです。あっという間にできました ― したら、imayomi(今読ミ)にも付けたくて仕方なくなった。実はhachimituさんのモックデザインにはかなり初期から付いてたのだ。

ブログではないので、簡単にはいかないかと思っていたが、はてなスターをブログに貼り付けるをざっと読んだところ、HTML構造とスタイル指定をちょっといじれば(もしくはJavaScriptを書けば、そのまま強引にでも)imayomi(今読ミ)の本へのパーマリンクはできそうな気がしてきた。

なかなか、まとまった開発時間が取れず、予定している追加機能はもう少し先になりそうなので、今週末にでも「はてなスター」付けにチャレンジしてみようかと思いつつ、今日は寝るのである。
imayomi(今読ミ)でメンバー毎のRSSを配信できるようにしました。
RSSは初期から、すぐにやりたかった機能でした。

やることは分っているのだけど、ガリガリ書くのが面倒だなと思っていたところ、
Railsレシピ(随分前に買ったのにimayomi(今読ミ)に登録忘れてた)に作り方が載っていまして、その通りにやるとものの1時間で出来てしまいました。Ruby on Railsの真価かも(笑)

いまだ全然、利用されていないシステムですが、少しずつ機能追加もしていきますので利用ください。

このアーカイブについて

このページには、過去に書かれたブログ記事のうち開発カテゴリに属しているものが含まれています。

前のカテゴリは自己研鑽です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。