2008年4月20日 (日)

[Program] ObjectDataSourceとビジネス層(続き)

実際に試してみた。 割とあっさりできた。 あの構図でいいということか。

| | コメント (0) | トラックバック (0)

2008年4月19日 (土)

[Program] ObjectDataSourceとビジネス層

えーと。ObjectDataSourceに接続するクラスは

  • デフォルトコンストラクタを持つ。

  • 型付きデータセットまたは型付きデータテーブルを返すメソッドを持つ。

  • DataObjectMethod属性により、メソッドの種類が示されている。

ということなので、適当に

public class BC
{
    public BC()
    {
        ....
    }
    <DataObjectMethod(DataObjectMethodType.Select)>
    public XXXDataSet.YYYDataTable GetDataAfterBusiness()
    {
        ....
        DoBusiness();
        ....
    }
    private void DoBusiness()
    {
        ...
    }
}

みたいなのを用意してやればよいということか。

つまり、

UI(GridViewなど) - ObjectDataSource - BC - DAC(テーブルアダプタ)

という構図になる?

| | コメント (0) | トラックバック (0)

2008年4月 5日 (土)

[Program] Visual Studio .NET 2003 と生産性

最近、Visual Studio .NET 2003を使ってWebアプリの開発をしている。 開発ツールとして、よくできていると思う。 生産性も高い。 この生産性の高さというのは、コードの自動生成によるところが大きい。 マウスでクリックしてプロパティ変更したり、コントロールをポトペタするだけで がしがしコードが自動生成される。

だが、DRY原則からくるコードの再利用による生産性向上とか品質向上という視点で見た場合には、 ちょっと物足りない。 例えば、複数ページのデザインを統一したいと思ったら、WebアプリならCSSを利用して cssファイル一箇所だけでスタイルを指定するのがDRY原則に則ったやり方だろう。

ところが、Visual Studio .NET 2003 は、cssファイルを自動生成するにも関わらず、 そのCSSファイルを *.aspファイルで読み込まない。 マウスでクリックしながら、プロパティで設定した背景色や文字の色は、 個々に*.aspファイルにコードして自動生成され、cssファイルに書き込まれることはない。

もちろん、cssファイルを読み込むようにすることはできるし、そうすればデザインの統一も可能だ。 ただ、その場合には、マウスでクリックしながらとかではなくエディタで自分で書くという感じになってしまう。

自動生成による生産性の高さという面では単純にすごいなと思ってしまうのであるが、 DRY原則の視点でVisual Studio .NET 2003を見た場合にはまだまだ弱いと思ってしまうのである。

このあたり、2005や2008だとどうなっているんだろうか。 あと、他のWeb開発ツールなんかはどうなんだろうか?

マウスでポトペタしながら作っているとコードが自動生成され、しかもそのコードが DRY原則に従っている開発ツールって難しい?

| | コメント (0) | トラックバック (0)

2008年3月22日 (土)

[Program] VS.NET 2005(ASP.NET)

基礎からのASP.NETを22章まで読んだ。 SqlDataSource と DataSet はどう使い分けるんだろうか? 難しい。

| | コメント (0) | トラックバック (0)

[Program] VS.NET 2003 (ASP.NET)

position:absolute をつけないようにする方法がちゃんとあることを知った。 プロパティで変更できるみたいだ。 が、出力してくれる*.aspファイルは相変わらず、人間に優しくない。

| | コメント (0) | トラックバック (0)

2008年3月15日 (土)

[Program] VS.NET 2003 (ASP.NET)

いろいろ考えた末、関係ある機能が2003で作られていたため、 今回作る機能も、2003のVB.NETで作っておいた方が後々いいんじゃないかと判断して Visual Studio .NET 2003 を使っている今日この頃である。

2003の出力してくれる、*.asp ファイルってどうしてああも人間には優しくないのであろうか。 Vimで編集しづらいことこの上ない。

ポトペタで画面が自由にデザインできるのはいいんだけど、 position:absolute 使いまくりなので、ときどき実際の画面でコントロールが重なったりしてやりにくいことがある。 デフォルトで、position:absolute がつかないようにする方法ってないのかな。

あと、今まで気づかなかったのだが、 自動生成されるcssファイルはデフォルトでは読み込まないようになっている。 これもどこかの設定で変更できるのだろうか。

次に作る機会があれば、C#の勉強も兼ねて、VS.NET 2005 C# でやってみよう。

| | コメント (0) | トラックバック (0)

2007年12月 2日 (日)

[Program] ActionScript 3.0

ActionScript 3.0なんてどうでもいいと考えていた。 ところが、無償でコンパイラが提供されているとか Tamarinというプロジェクトがあるというのを WEB+DB PRESS Vol.41で知ったので、ちょっとだけ気が変わった。

久々にソフトウェア関係(技術情報関係)の雑誌を読んだのだが、 最近の動向を把握するためにも、定期的に講読した方がいいかなとちょっと反省。

| | コメント (0) | トラックバック (0)

2007年11月10日 (土)

[Program] ASP vs ASP.NET

2週間ぐらい前は、にわかASPプログラマだったのだが、ここ1週間は、似非ASP.NETプログラマだった。 ASPでちょっとしたWebアプリを作っていたときは、 気分よく、さくさく開発できた気がする。 ところが、この一週間は今一つ、さくさく進んだような気がしない。

中身は違うけど、両者ともちょっとしたアプリケーションなので 難易度に大して差があるようには思えない。 では、何が違うのだろうか。

1つ大きく違うのは、開発環境の違い。 ASPのときは、Vimを使っていたので、コードの編集そのものがさくさくできた。 一方、ASP.NETのときは、Visual Studioをそのまま使用しているので、 コード・スニペットがあるとは言え、ちょっとさくさく感に欠ける感じがあった。

画面の作成もASPのときは、要件としては、凝った画面を要求されていなかったので、 単純にコードでHTMLを書き出すだけで、マウスを使うことなく さくさくと進めることができた。

一方、ASPのときは、マウスでポトペタとやる分、妙な微調整が必要だったりして 意外にいらいらさせられた。

動作テストもASPのときは、ちょっと書いては、ちょっと確認というのが気楽にできたが、 ASP.NETは、ちょっと書いた後の確認のコンパイルと実行にやや時間がかかり さくさく感が足りなかった。

ちょっとしたWebアプリケーションの場合は、IDEを使い込なせない私には、 ASPの方が向いているのかも知れない。

| | コメント (0) | トラックバック (0)

2007年11月 3日 (土)

[Program] .NETでSSL証明書の内容の取得

SslStreamオブジェクトを作るには、 Socketオブジェクトを作って、NetworkStreamオブジェクトを作ってやれば良い? つまり、イメージとしては、こんな感じか?

Socket sock = new Socket(...);
NetworkStream nstm = new NetworkStream(sock);
SslStream sslstm = new SslStream(nstm);

SSL証明書の内容を取得するには、SslStreamのRemoteCertificateプロパティかLocalCertificateプロパティを使えばよい?

でもって、SslStreamのない .NET 1.1だとどうすればいい??? もしかしたら、このSecurity Libraryが参考になるか?

ちょっと話がずれるが...。

Rubyでの実装は Google 経由の情報収集の時間も含めて、短時間でできた。 それに比べて、.NETで実装しようとすると(Google経由の情報収集に時間がかかってしまい)今だに実装できていないというのはどうしてだろう? 基本的に私の情報収集能力に問題があるのか? それとも.NETのライブラリが膨大すぎるせいなのか、.NETに不慣れなせいなのか? Googleに頼るのがいけないのか。

| | コメント (0) | トラックバック (0)

2007年10月28日 (日)

[Program] JavaScript の setDate

setDateってgetDateとの対比から何となくその月の有効な日を指定しないと駄目なような感じがするのだが、 ちゃんと計算してくれる。 なので、今日から何日後とか何日前とかを求めるには、 getDate() で取得した日に日数を足し引きした結果を setDate() で戻してやれば良い。

次は、SpiderMonkey(JavaScript-C 1.6 2006-11-19)の例。

// 今日から300日後を求める。
var dt = new Date();
var day = dt.getDate();
day += 300;
dt.setDate(day);
print(dt);

| | コメント (0) | トラックバック (0)

2007年10月20日 (土)

[Program] ASPプログラマな1日

昨日はASPプログラマな1日だった。 1日の最後に測定してみたら、大体1時間当たり40行ぐらいのコード生産量だった。

| | コメント (0) | トラックバック (0)

2007年10月13日 (土)

[Program] Windows PowerShell

ちょこっと眺めていたんだけど、if文とかは、小文字なのか? If とか、Whileとかそういう書き方をしているサンプルが見当たらない...。 ということは、VBScriptやVBのようなSyntaxは捨てようという意図があるということなんだろうか。

| | コメント (0) | トラックバック (0)

[Program] ASPとIDE

ここ2、3日私はASPプログラマだった。 何がいらつくと言って If の後は、End If で、Forの後ろは、Nextで、Whileの後ろは、Wendで Subは、End Sub で、Functionは、End Functionで.... こんなにいっぱいあっては覚えられない。

で、IDEで有力なものが無いかと思って、Googleで検索してみたんだけど、 これはというものが見つからない。 テキストエディタで編集とか言っている人も多いし。 なにかいいツールは無いものか。

Vim に ASPモードで自動補完してくれたりすると一番嬉しいんだけど。

| | コメント (0) | トラックバック (0)