Home

STUDIO KINGDOM

清水Webフォーラムに参加してきました

といっても、一週間以上も前の話なんですが訳あってネットに繋がらなかったのでご容赦を。 清水Webフォーラム

セミナーの内容

セミナーの講師はこんな方々でした。

実は今回のセミナーはサンとリクルート共催のマッシュアップアワードの繋がりだったそうな。 サイトのトップにはケンタローさんの優勝作品「Chamap」が紹介されています。

セミナー後の懇談会

各講師の方にいろいろ聞いてみましたが、ケンタローさんのフリーに成りたての頃は数ヶ月無収入だったという話は結構衝撃でした。 その期間に地元アピールのポータルサイトなどを作り、それがきっかけで商工会議所からお声が掛かるようになったのだそうです。 実は一ヶ月ほど前に偶然にもある起業家さんに、お金になる仕事をとってくるにはどうしたら良いのでしょうか?と聞いてみたところ、 「お金云々より、まず自分が何を出来るかアピールできなきゃ本末転倒だよ~」みたいなお言葉をいただいており、正にその通りだなぁと実感。

セミナー後の飲み会

懇談会の後、講師陣と同志で近くの居酒屋に直行。さすがIT系というか何というか、料理が出てくればデジカメでパシャパシャ、 お酒が入ってしばらく経つとバッグからもぞもぞとノートPC&Eモバイルのセットが登場。 この辺で完全に装備を間違ったなぁと反省。次回同じようなセミナーがあったら、デジタル装備で行こう。

Yahoo UIに入門してみた

最近浅く広い、この手のエントリ多いです。Yahoo UIが何気に優秀という噂を聞きつけて、どうしても試してみたくなったので。
Ajaxのおさらいをしていて、ちょうどYahooUIの項目もあったのでサンプルプログラムを改良して、多少実践向けにして晒してみたくなったという事情もあります。
おさらいに使用した本はこちら。

10日でおぼえるAjax 入門教室
漆尾 貴義
翔泳社
売り上げランキング: 120488

この本、結構おススメ。IEでAjaxする方法を解説⇒次はFireFoxで⇒各ブラウザ毎に処理を振り分け⇒innterHTMLやCSSの説明⇒prototype.js登場といった感じで、Ajaxに必要なことを基礎から追って順に説明してくれるので分かりやすいです。
Yahoo UI Library リファレンスの[■Calendar]⇒[Calendar]も参考にしてます。
で、カスタマイズしたプログラムはこんな感じ。

image

  • カレンダー表示リンクを押すとカレンダーが表示。
  • 入力欄が空でリンクを押された場合は当月を表示、日付が入力されていたら対象月を表示。
  • カレンダー上で日付をクリックするとyyyy/mm/dd形式で入力欄に日付が入り、カレンダーが閉じる。
  • (入力欄の日付エラーチェックはしてません。アルファベットとか入れるとトンデモカレンダーが表示されます(>_<))

では、実際に作ってみましょう。まずはYahooUIをダウンロードしてきます。
http://developer.yahoo.com/yui/

image

使用するのはbuildフォルダ内のファイル群になります。作成するプログラムと同じフォルダ階層にbuildフォルダを移し、フォルダ名をyuiに変更してください。
肝心のプログラムは、下記の通り。


<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01//EN' 'http://www.w3.org/TR/html4/strict.dtd'>
<html>
<head><title>Yahoo UI カレンダー入力</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="yui/yahoo/yahoo.js"></script>
<script type="text/javascript" src="yui/dom/dom.js"></script>
<script type="text/javascript" src="yui/event/event.js"></script>
<script type="text/javascript" src="yui/calendar/calendar.js"></script>
<script type="text/javascript" src="prototype.js"></script>
<link type="text/css" rel="stylesheet" href="yui/calendar/assets/calendar.css">
<script type="text/javascript" language="javascript">
// <![CDATA[
function onloaded(){
Element.hide("cal1Container");
}

function showCal(arg){
var cal1;

var ary_arg;
var json_arg;
var json_pagedate;
var json_selected;

var tmp_dt;
var tmp_dt_year;
var tmp_dt_month;
var tmp_dt_date;

//YAHOO.widget.Calendarオブジェクトに渡すjson引数値
//josn引数設定例 { pagedate:"2/2007",selected:"2/10/2007-2/15/2007"}
if(arg){
ary_arg = arg.split("/");	//[0]=年 [1]=月 [2]=日
json_pagedate = ary_arg[1] + "/" + ary_arg[0];
json_selected = ary_arg[1] + "/" + ary_arg[2] + "/" + ary_arg[0];
json_arg = '{ pagedate:"' + json_pagedate + '",selected:"' + json_selected + '"}';
}

//カレンダー描画
if(arg){
cal1 = new YAHOO.widget.Calendar("cal1","cal1Container", eval("("+json_arg+")"));
} else {
cal1 = new YAHOO.widget.Calendar("cal1","cal1Container");
}

cal1.selectEvent.subscribe(function(type,args) {
//alert(cal1.getSelectedDates()[0]);
tmp_dt = cal1.getSelectedDates()[0];
tmp_dt_year = tmp_dt.getFullYear();
tmp_dt_month = tmp_dt.getMonth() + 1;
tmp_dt_date = tmp_dt.getDate();
document.form1.set_dt.value = tmp_dt_year + "/" + tmp_dt_month + "/" + tmp_dt_date;
Element.hide("cal1Container");
});
cal1.render();
Element.show("cal1Container");
}
// ]]>
</script>
</head>
<body onload="onloaded()">
<form name="form1">
<input id="set_dt" type="text" value="" size="12" />
<a href="javascript:void(0)" onclick="showCal(document.form1.set_dt.value)">カレンダー表示</a>
<div id="cal1Container"></div>
</form>
</body>
</html>

変数がやたら多くて美しくないですなぁ、即興で作ったのでご勘弁を。
バグ等あったら教えてください。

NetBeansでMercurialを試してみた

ポストSubversionといわれているMercurialを試してみました。また、NetBeansが標準でMercurialをサポートしているようなのでNetBeansもついでに導入してみました。それぞれの特徴は下記のとおり。

Mercurial

ようはSubversionのようなバージョン管理ツールなんですが、大きな違いは従来のバージョン管理ツールとは違ってプロジェクト間で共有するリポジトリを事前に用意しなくて良いという点です。共有リポジトリを用意しないでローカルのみでバージョン管理することが可能で、また、後ほど構築した共有リポジトリにまとめてコミットしてしまうといったことが出来るようです。ローカルで個人的にバージョン管理、サーバ等の共通スペースでチーム間でのバージョン管理が出来るということですね。

NetBeans

Eclipseと同じような統合開発環境(IDE)です。Eclipseと比較すると、よりGUI的で動作が速いように感じます。個人的にはEclipseが細かいカスタマイズが可能な自作PCだとすると、NetBeansは安定したメーカ製のPCという印象を持ってます。またEclipseのようにJavaだけでなくPHPやRuby(Rails)、C等のメジャーな言語もサポートされています。

Mercurialのインストール

MercurialにもSubversionのようにWindowsクラインであるTortoiseHgがあるので、そちらをインストールしてみました。
ちなみにMercurialの意味は水銀で、水銀の元素記号がHgとなっています。

※TortoiseHgは現在のバージョンでは日本語環境に問題があるようです。NetBeans上で使う分には問題無いと思いますが、念のためTortoiseHg以外のインストーラのリンクを貼り付けておきます。
Mercurialの利用>インストール

それではまず、TortoiseHgをダウンロードしてきます。
http://tortoisehg.sourceforge.net/

image

image

image

ダウンロードしたexeファイルをダブルクリックして、インストールを行います。

NetBeansをインストール

下記サイトからNetBeansをダウンロードします。使用言語によって任意のツールを選択することが可能です。また、後から[ツール]->[プラグイン]で機能追加することもできます。
http://www.netbeans.org/downloads/?pagelang=ja

image

ダウンロードしたexeファイルをダブルクリックして、インストールを行います。インストールが完了したらNetBeansを起動して動作確認を行ってください。

image

NetBeans上でMercurialの基本動作を確認

まずはプロジェクトを初期化します。ナビゲーションからプロジェクトを選択し、[バージョン管理]->[プロジェクトを初期化]を選択してください。

image

プロジェクトフォルダにMercurialの管理ファイルが作成されます。Subversionは各フォルダに隠しファイルが生成されますが、Mercurialはプロジェクトフォルダ直下にのみ作成されるようです。これは良いですなぁ。

image

とりあえず、初回コミットを試してみます。コミットするフォルダを右クリックして[Mercurial]->[コミット]を選択。

image

コミットをクリックしたら下記ウインドウが表示されました。空欄には自分の名前とメルアドを記入すれば良いと思うんですが、Name Contextの欄がどういうことなのか分からない。Global to ~がサーバ等の共有リポジトリへのコミットでLocal to ~がローカルへのコミットってことでしょうか。

image

コミットした後、適当なファイルを編集して差分確認を行ってみました。

image

ちゃんとローカルとリポジトリで比較されてますね。時間があれば、サーバにMercurialをインストールしてそちらへのコミットも試してみたいと思います。

image

Home

検索
フィード
メタ

Return to page top