[Program] 日付の入力項目
日付の入力項目をデータベースに保存する場合、Date型 とか Datetime型 みたいないわゆる日付型でスキーマを定義しておくのと varchar(8) (YYYYMMDDを想定) とか varchar(10) (YYYY/MM/DD、YYYY/M/D などを想定) で定義しておくのとどちらが一般的なんだろう。
私は日付が入力される(べき項目)であれば、日付型を採用しているのだけどな。
日付の入力項目をデータベースに保存する場合、Date型 とか Datetime型 みたいないわゆる日付型でスキーマを定義しておくのと varchar(8) (YYYYMMDDを想定) とか varchar(10) (YYYY/MM/DD、YYYY/M/D などを想定) で定義しておくのとどちらが一般的なんだろう。
私は日付が入力される(べき項目)であれば、日付型を採用しているのだけどな。
今更、インストールしてみた。
Ruby trunkのコンパイル。
nmake -f enc.mk RUBY=".\miniruby.exe -I../../../../svn/ruby/trunk/lib "
MINIRUBY=".\miniruby.exe -I../../../../svn/ruby/trunk/lib " -l encs compiling bigdecimal makefile(242) : fatal error U1038: 内部エラー : レクサー Stop. NMAKE : fatal error U1077: '.\miniruby.exe' : リターン コード '0x1' Stop.
うーん。ruby_1_9_1 ブランチをコンパイル。特にエラーもなくコンパイルできた。 VC++ 2008 のインストールそのものが失敗している訳ではないみたいだ。
| 固定リンク | コメント (0) | トラックバック (0)
諸事情により、私は古いIDEを使うことがあります。 これはそんな私の戯言なのですが...
VS.Net 2003 で、ASP.NETのコードをいじったりしているのですが、 ASP.NETによって出力されるページを内容(HTML)と見てくれ(CSS)に分離しようとすると結構面倒です。 というかそういうことをサポートするつもりがないように感じられます。
VS.Net 2003を使って背景色とか指定すると最終的に生成されるページは HTMLの中のタグのstyle要素で背景色が指定されたものになります。 (自動生成される、aspxファイルからして、style要素で背景色が指定されている。)
結局HTMLとCSSに分離しようと思ったら、VS.Net 2003では、背景色は指定しないで、cssclass属性だけ指定しておいて、 CSSファイルを直接エディタで編集していくやり方になってしまいます。 ある程度までならこれで可能なのですが、DataGridに関しては手を出せないでいます。 DataGridは、最終的に、HTMLの table になります。 table だと当然、罫線のスタイルとか色とかヘッダの背景色とか、 そういうのをまとめてCSSで指定してしまいたいところなのです。 ですが、DataGrid で cssclass属性をどこでどう指定してあげればよいのか、さっぱりわからない状態です。
で、VS.Net 2003を使えば使うほど、HTMLとCSSの分離とかには向かないツールだなとつくづく感じてしまう訳です。
2005は、2003ほど使ってないのですが、この辺はやっぱり駄目っぽい感じがしてます。 2008とか2010だと改善されているのでしょうか? あと、Rails の IDE だとこの辺どんな感じなんでしょうね。
| 固定リンク | コメント (0) | トラックバック (0)
実際に試してみた。 割とあっさりできた。 あの構図でいいということか。
| 固定リンク | コメント (0) | トラックバック (0)
えーと。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)
最近、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)
基礎からのASP.NETを22章まで読んだ。 SqlDataSource と DataSet はどう使い分けるんだろうか? 難しい。
| 固定リンク | コメント (0) | トラックバック (0)
position:absolute をつけないようにする方法がちゃんとあることを知った。 プロパティで変更できるみたいだ。 が、出力してくれる*.aspファイルは相変わらず、人間に優しくない。
| 固定リンク | コメント (0) | トラックバック (0)
いろいろ考えた末、関係ある機能が2003で作られていたため、 今回作る機能も、2003のVB.NETで作っておいた方が後々いいんじゃないかと判断して Visual Studio .NET 2003 を使っている今日この頃である。
2003の出力してくれる、*.asp ファイルってどうしてああも人間には優しくないのであろうか。 Vimで編集しづらいことこの上ない。
ポトペタで画面が自由にデザインできるのはいいんだけど、 position:absolute 使いまくりなので、ときどき実際の画面でコントロールが重なったりしてやりにくいことがある。 デフォルトで、position:absolute がつかないようにする方法ってないのかな。
あと、今まで気づかなかったのだが、 自動生成されるcssファイルはデフォルトでは読み込まないようになっている。 これもどこかの設定で変更できるのだろうか。
次に作る機会があれば、C#の勉強も兼ねて、VS.NET 2005 C# でやってみよう。
| 固定リンク | コメント (0) | トラックバック (0)
ActionScript 3.0なんてどうでもいいと考えていた。 ところが、無償でコンパイラが提供されているとか Tamarinというプロジェクトがあるというのを WEB+DB PRESS Vol.41で知ったので、ちょっとだけ気が変わった。
久々にソフトウェア関係(技術情報関係)の雑誌を読んだのだが、 最近の動向を把握するためにも、定期的に講読した方がいいかなとちょっと反省。
| 固定リンク | コメント (0) | トラックバック (0)
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)
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)
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)
昨日はASPプログラマな1日だった。 1日の最後に測定してみたら、大体1時間当たり40行ぐらいのコード生産量だった。
| 固定リンク | コメント (0) | トラックバック (0)
ちょこっと眺めていたんだけど、if文とかは、小文字なのか? If とか、Whileとかそういう書き方をしているサンプルが見当たらない...。 ということは、VBScriptやVBのようなSyntaxは捨てようという意図があるということなんだろうか。
| 固定リンク | コメント (0) | トラックバック (0)
ここ2、3日私はASPプログラマだった。 何がいらつくと言って If の後は、End If で、Forの後ろは、Nextで、Whileの後ろは、Wendで Subは、End Sub で、Functionは、End Functionで.... こんなにいっぱいあっては覚えられない。
で、IDEで有力なものが無いかと思って、Googleで検索してみたんだけど、 これはというものが見つからない。 テキストエディタで編集とか言っている人も多いし。 なにかいいツールは無いものか。
Vim に ASPモードで自動補完してくれたりすると一番嬉しいんだけど。
| 固定リンク | コメント (0) | トラックバック (0)
最近のコメント