ソフトウェア開発」カテゴリーアーカイブ

XAMLによる開発

日本のMicrosoftでWPFやSilverLight関連でいろいろな情報を出している
川西さんのブログが更新されていました。

川西 裕幸のブログ
新しいイテレーション型開発
http://blogs.msdn.com/hiroyuk/archive/2008/03/20/8326702.aspx

デザイナと開発者の役割分担。

実際、どこまでこの分担はちゃんとできているのだろうか。
かえるが務めている会社の開発現場にはデザイナという職種は存在しない。
みんな開発者状態になってしまっている。

デザイナがいるわけではないので、結局のところ開発者がコントロールとかも
決めたりなんだりの作業を行っているのが現状だ。

コントロールのデザインという意味においては、プロダクトの中である程度
統一されているべきなのであまり悩む必要はないのだが、
コントロールの配置だとか、色づかいだとか。
このあたりはどうしても弱くなってしまっているのを感じている。
自慢じゃないのだが、俺は絵心なんてものは持ち合わせてねぇーーーー!!

まぁ、川西さんが書いたホワイトペーパーにもある通り、
開発者としてXAMLが正しく理解できるように勉強しないといけないですね。

ちょっと川西さんの本、置いておきますね

XAMLプログラミング
http://www.amazon.co.jp/s/ref=nb_ss_gw?__mk_ja_JP=%83J%83%5E%83J%83i&url=search-alias%3Daps&field-keywords=XAML%83v%83%8D%83O%83%89%83%7E%83%93%83O

Oracle VM

ZDNetJapanのサイトにOracleのVMに関する記事が載っていました

Oracle VMの実力を試そう
http://builder.japan.zdnet.com/news/story/0,3800079086,20369653,00.htm

以前、時々参加させていただいていたOracleの無料セミナー
OracleTwirightでVMの話があって、行きたかったのですが気がついたのが遅く
すでに満席になってしまっていました。
OracleTwirightは夕方に行う無料セミナーなのでやっぱり人気なのはすぐに埋まってしまうなあぁ

Oracle Japan イベント・セミナー情報
http://www.oracle.co.jp/events/

で、早速読んでみたのですが。。。
うーむ。Oracleをアプリケーションサーバーとして使用している場合には
VMとしての使い道もあるのかもしれないけど、現在のところ私は
あくまでデータベースとしての用途でしか使っていない。
そうなると、基本的にはOracleユーザーを切り替えればいいだけの話
になりそうだなぁ~。

今回のOracleVMは、直接的にすぐに使用することはあまりないかもしれないけど
Xenのような仮想化技術はちょっと押さえておきたいところ。

VMWareやVirualPC、WindowsServer2008もVirtualization機能も含めて
これからはこういった仮想化技術。充実してきそう。
開発者としてはこれらの技術をうまく組み合わせて自分の作業を
快適にしていきたいですね!

SilverLight2 コントロールのスキン

SilverLight2のコントロールに関してちょっとネットを徘徊していたら
面白いページがあったので紹介

Silverlight 2 Control Skins
http://blogs.msdn.com/corrinab/archive/2008/03/11/silverlight-2-control-skins.aspx

コントロールに対してStyle指定を行うことで使えるようですね。
これはこれで面白いかも!

ver.1に比べるとようやくver.2になってコントロールの幅も増え、
少しずついわゆる「ストリーミング」以外の用途でも使える道が見えてきたようです。

ただ、いかにせんまだ少ない。
どのみち標準として用意されているコントロールはそのまま使うのは難しい場合が多いので
カスタマイズしていったりしないとつらいのかもしれないけど。
せめてツリービューくらいはほしいよね。

ま、物は試しってことでこのスキン、試してみようかな。
私は残念ながら絵心がないのでこういうものを作れる人は素直に”すごい!”って思う。
うーーん、うらやましいぞ

Silverlight Tutorial Part 3に潜む罠

ScottさんのTutorial。週末は別のことを少しいじっていたのでTutorialは2までしか
やってなかったのですよ。
いよいよ、Web上のサービスとやり取りをするTutorial3やってみました。

Silverlight Tutorial Part 3: Using Networking to Retrieve Data and Populate a DataGrid
http://beta.weblogs.asp.net/scottgu/pages/silverlight-tutorial-part-3-using-networking-to-retrieve-data-and-populate-a-datagrid.aspx

いや~~~~~~~~~~~~~~~~~~~~~~

正直疲れた。

今更Tutorial通りになんかやらねぇー!って人もいるかもしれませんが、
同じ道を歩く人が少なくなるように。

まず、紹介されているコードでは期待された動きをしません。
というか、まずビルドが通りません。

まず、ソリューションにXml.Linqを追加します。もしかするとXmlも追加しないと?
f:id:krote:20080319024054j:image

こんな感じ
f:id:krote:20080319024053j:image

あとは

using System.Net;
using System.Xml;
using System.Xml.Linq;

をPage.xamlに追加。
DataGridにある「Data:DataGrid」の記述は「my:DataGrid」でも問題なく動作したけど、Tutorial通りにいくのであれば

xmlns:Data=”clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data”

をネームスペースの所に追加しなければいけない。

これで何とか動きました。

f:id:krote:20080319024611j:image

やったーーーー!!
なんか苦労した分感動

まぁ、何を隠そう一番手間取ったのは慣れないインテリセンス。
そしてそれによって追記されたカッコが邪魔でいつまでたっても
まともに動作しなかったことなんですが。。。。

だって今まで会社で使ってたのVisualStudio6なんだもん!
しょうがないじゃないかー!

ゴメンナサイ

うわ、明日起きれるかしら。。。。

IE6よさらば

お客さん先の環境で、IE6上でイマイチ原因のわからない障害が起きていた。環境としては

  • WindowsXP SP2
  • InternetExplorer6 SP2

であった。XPはいいとして、IE6か~。ってことで、とりあえず内容を確認して再現確認を取ろうとするも、社内環境では再現しない。客先でも以前からIE6を使っていて、最近発生し始めた障害のようで、単純にIE6が原因とは言えないんだけど。。。
環境が原因である可能性が高いのならば環境を変えてしまえばいいんじゃないか?と安直に考えて、お客さんに「IE7にしようよ!」って薦めるための材料を集めようと、IE6のサポート期限をうたっているページを探そうとしたら変なものを見つけた

IE6 NoMore
http://www.ie6nomore.com/

「IE6はもういらない」――Web企業が撲滅キャンペーン
http://www.itmedia.co.jp/news/articles/0908/06/news031.html

ITMediaの記事が8/6なのを見ると、実にタイムリーな内容だったみたいだ。
企業向けのWebアプリケーションを提供している企業にとって、OSをインストールしたときに自動的にインストールされているIEへの対応はかなり重要な項目。ただ、IEのバージョンへの対応は意外と面倒でそれにかかる開発コストというのは馬鹿にならない。それを考えると、思わずキャンペーンにもろ手を挙げて参加したくなるが、やはりそう簡単でもないだろう。
実際のところ企業の中ではいまだにWindows2000が現役で動き続けている。WindowsNTすら動き続けている。Windows2000ではIEは6までしか動作させることはできないし、WindowsXPもインストール当初はIEは6だ。
自社のシステム上、特に問題がない限りわざわざバージョンを上げる必要がないと考えている企業は多い。バージョンアップに伴う情報システム部門の費用もばかにならず、”そんな事をする暇があるなら別の仕事をしろ”って感じに今の御時勢はなってしまうのかもしれない。

バージョンを上げればセキュリティ的なリスクがすべて解消するというわけではもちろんないが、更新の止まったアプリケーションを動かし続けるリスクは企業であればちゃんと認識する必要はあると思う。
IE6撲滅キャンペーンも、開発者側のリスクに対して焦点を当てるのではなく、セキュリティ的なリスク等に対して焦点を当てて薦めていったほうが、頭の固い人にも少しは受け入れやすくなるんじゃないだろうか。。

ここまで書いて、そんな意識があるのであればすでにバージョンアップしているんだろうなぁと思った。
あ、問題解決してないや

Slides from Silverlight for Business Applications Webcast

SilverLightをビジネス用途で使用するのに
現状のできることや、なんなりをよくまとめてあった
WebCastがあったので紹介

irritatedVowel.com
http://community.irritatedvowel.com/blogs/pete_browns_blog/archive/2008/03/20/Slides-from-Silverlight-for-Business-Applications-Webcast.aspx

これを見ると、Hosting環境としてはIISだけじゃなくて
Apatchでもいけるのかな~
クライアント側にダウンロードして起動するものだから
たぶん行けるんだろうとは思っていたけど、確証がなかった。

今度やってみようかな

意外と難関!? Oracle Migration Workbench

AccessからOracleへのデータ移行

先輩から引き継いだAccessで作られたツールが、ちょっと性能的な限界を迎えたので社内のOracleサーバーにデータを移行しようと思った。調べてみるとOracleがAccessからのMigration用のツールを提供しているのでとても簡単

意外と簡単!? Oracle Migration WorkbenchによるMS-Access→Oracle移行
http://otndnld.oracle.co.jp/easy/access/shift_manual/index.html

だと思ったら、実はものすごくめんどくさかったのでメモ。

不思議なツール構成

AccessからOracleに移行するには上記の手順に従うと大きく2つのステップが必要となる。

  1. Accessの情報を吸い出す
  2. 吸い出した情報を使ってOracleへ移行

ツールとしては、Accessで作られたExporterと呼ばれるエクスポートツールと、MigrationWorkbenchと呼ばれるデータをインポートするためのツールを使うのだが…。なぜかExporterは表の情報をXMLファイルにエクスポートするのみ(正確にはデータをDATファイルに落とすこともできるのだが、是術した手順では使用しない。使いづらいのか?)。実際にデータを移行するのはMigrationWorkbenchがAccessに直接アクセスして移行しているようだ。表の情報を別に出力している理由が分からない。

なんとか情報を吸い出して、Migrationを実行しようとするが、ここでも注意が必要だ。
WorkbenchがサポートしているMigrationは、ユーザーやテーブルスペースが固定されてしまっている。スキーマ情報を出力したXMLファイルを修正することで変更をすることができるには出来るのだが、ユーザー名=テーブルスペース名という制限がついてしまう。
つまり、Migrationを実行するには専用の環境を用意する必要があるという事だ。

移行する時の注意点

Oracleと違ってAccessは結構なんでもありの世界になっている。テーブル設計がある程度の常識を持って作られていれば特に問題はないのかもしれないが、中途半端に”ユーザーに分かりやすく”を目指しているととても色々と出来てしまう。

  • 禁止文字の使用
    • Oracleではテーブル名やフィールド名に使う事が出来る文字列に制限がある。ところがAccessには制限が無い(もしくは緩い)ために、ここで齟齬が生じる。Workbenchではこれを自動変換して対応を使用とするのだが、これがどうもイマイチ中途半端のように見受けられる。
  • テーブルの長さが20まで
    • Oracleのテーブル名やフィールド名のサイズ長は30バイトのはずなのだが、Migrationツールで情報を吸い出すと20バイトまでしか取り扱ってくれずに切れてしまう。半角カナは2バイトとしてカウントされてしまうようだ。多くの場合は問題ないかもしれないが、フィールド名が「かえる用のフィールド1」「かえる用のフィールド2」なんてつけ方をすると途中で切れてしまって、フィールド名重複のエラーが出る

しかも、Office2007でやってみたらうまくいかなかった。うまくいかなかった原因がOfficeにあるのか設定にあるのか。このあたりは定かではないのだが、あれこれと制約や制限。出来ない事が多すぎて結局今回はOracleへの移行にWorkbenchを使用するのをあきらめ、自分で移行用のプログラムを書いてしまうことにした。

前々からそうなのだが、Oracleはあまりにもユーザーインターフェースがずさんなように感じる。パッチをあてるにしろインストールにしろ、あまりにもひどい場合が多い。
DBの性能がいいことに胡坐をかいてしまっているのではないだろうかと思ってしまう。何とかしてほしいものだ

JINS PCのその後

JINS PCを利用し始めてから2ヶ月が経ちました。

JINS PCを試してみています
http://d.hatena.ne.jp/krote/20120305/1330896902

だいぶ慣れては来ましたが、まだ気にならないという訳ではない状態です。
ちょっと疲れが溜まってくると、メガネをかけている事が疲れを倍増させているような感じがして
メガネをかけるのをやめてしまったりもします。

元々、ドライアイ等に悩んでいた訳ではない私。
つけないならつけないで問題は無いのでそのまま過ごしてしまったりもします。

いいのか悪いのか。
どうも、これが目にいいという事を実感出来ないのはメガネをかけるモチベーション(?)に欠けます。
本来は疲れている時にこそ目をいたわる意味でかけるべきなのでは?とも思うんですけどね。

何とも、何とも。

Silverlight検定

Silverlight検定なるものを「Programmable Life」さんが作成していたので挑戦してみた

Silverlight 基礎知識検定 (Programmable Life)
http://d.hatena.ne.jp/coma2n/20080623/1214229546

Silverlight 基礎知識検定
http://kentei.cc/k/11346

結果は何とか合格でしたが、簡易Webサーバーの○○っていうのは知りませんでした。。。まだまだ勉強不足ですね

あー。。。最近プログラムできてないなぁ。。。。
管理・マネジメント関連の仕事ばっかりです。いや、それはそれで面白いのですが。。。

それにしてもこの「けんてーごっこ」って仕組みは面白いですね。簡単そうだし、ちょっとしたクイズだとかに使えそう。もう少し画面サイズが大きいといいのだけど、大きければ大きいだけ背景だとか気を使わないといけないことが多くなるからまぁいいのかな。何か遊んでみようかな?

Macで戸惑っていること

使い始めてまだ3日ほどしかたっていない+使っているのは一日2時間ほどなので、やはりまだまだ慣れません。

とりあえず、現時点で「うーん」って思っていることを備忘録代わりに書いてみることにします。

ショートカットキーの違い

Windowsでは主に編集操作を行うときにはCtrlキーを利用しています。
コピー時にはCtrl+cであったり、ペースト時にはCtrl+vですね。
Macではこれらの操作にはCtrlキーではなくCommandキーを使うことになるようです。
また、ブラウザ等で最新情報に更新するときにはWindowsではF5キーを利用することが多いのですが、Macでは「Command+r」を使うようです。

また、完全に習慣として染み付いてしまっているのが漢字と英数の切り替えです。ホームポジションに近い位置にあるにもかかわらず、習慣としてApple純正のキーボードには存在しない「半角/カナ」キーを押そうとして「1」が押されてしまいます。。。。

こればっかりは覚えていくしかないのでしょうが、慣れないうちはちょっと面倒ですね。
ふむぅ

ペイント

ブログに利用する画像を、これまではペイントを利用して加工していました。GIMPとか立ち上があるの遅いし。
ただ、Macでこの役割を担っているのがなんなのかがよくわかっていません。
そもそも最初からはインストールされていなくて、GIMPなり何なりをダウンロードしてこないといけないのかな~?

これに関しては、それほどの緊急性がないことからまだ細かくは調べていない。
いいのないかな

そもそも触りきっていないので、これからも戸惑うことは数多く出てくるだろう。
実際のところの戸惑いはここに書き尽くせるものではない。戸惑いというか、なんというか。

やっぱり「知らない」ってことは大変だね。
週末に少しでも経験値をつめるようにしていきたいものです