とある初心者プログラマの軌跡

~プログラムの楽しさを感じよう!~

目次

Blog 利用状況

ニュース

書庫

リンク

抽象クラス

画面のUIは変わらないけど、使う機能事に実装が違う

(たとえて言うなら起動しています。。。画面でその先の呼び出しが面がちがう)

?

おぉこれは抽象クラスと抽象メソッドにはもってこいじゃないか!(←勝手に判断)

とういことで作って見た。

●VB

Public MustInherit Class 起動しています画面

'(デザイナではFormクラスを継承しています)

'抽象メソッド

Protected MustOverride Sub 呼び出し画面(ByVal Sender As Object, ByVal e As EventArgs)

End Class

●C#

Public?abstruct Class 起動しています画面

//(デザイナではFormクラスを継承しています)

//抽象メソッド

Protected?abstruct?void 呼び出し画面(Object Sender, EventArgs e)

End Class

#コピペではなく手書きなので若干変なところがあるかもです。

いよーし、継承するぜー!!

・・おや、デザイナでエラーがでてる。

「デザイナは起動しています画面をインスタンスできません」的なエラーでした

うむ、そりゃぁ抽象クラスだからインスタンスできないね(゜Д゜)

?

あんまりこういう実装はしないようですね、でも色々わかりました。

ちょっと手探り状態で作ってたりしたので面白かったです。

?

最後に昨日の続き

今日、「あんまり継承とか斬新なことはしないで手堅くやりたい」と言われました。

いままでと同じですね。わかります。

継承=オブジェクト指向とは言いませんが、同じ画面をなんこもつくるんですねって感じです。

そつなくこなして、時間みて勉強しよう。。。っと

回りに.NETFrameworkを知ってもらえるその日まで頑張ります( Д )゜ ゜

?

#ブログに四角い枠つくったり、ソースコードをカッチョ良く乗せる方法とかアドバイス頂けませんか?(滝汗)

投稿日時 : 2008年7月23日 22:37

コメントを追加

# re: 抽象クラス 2008/07/23 23:37 渋木宏明(ひどり)

継承を使って Windows Forms の Form や Control を拡張するのはあまり得策ではありません。

CLR は多重継承を許さないので、変に専門化してしまって使い回しの範囲が狭まってしまいます。

多態がやりたいならクラス継承ではなく、インタフェースを実装するようにした方がハマりにくいです。

共通の実装は別途、クラスやコンポーネントを作成して Form のメンバにしたり、拡張プロバイダすることを検討した方が吉です。

# re: 抽象クラス 2008/07/23 23:42 出水

コードならSyntaxHighlighterがかっこよいです
http://blogs.wankuma.com/hatsune/archive/2008/03/25/129602.aspx

ただ、テンプレートやジェネリックのhoge<int>がタグと誤認するんで
わんくまBlogはソースを載せるのにちょっと向いていない罠

# re: 抽象クラス 2008/07/24 0:00 渋木宏明(ひどり)

>同じ画面をなんこもつくる

手作りしないで、簡単な DSL を定義してそこから自動生成って手もありますね。

# re: 抽象クラス 2008/07/24 0:17 やじゅ

画面であるUI層は同じにして、
ビジネスロジック層のクラスを
機能ごとに切り替えるように
作ればいいかな。

層で分けて作成する

# re: 抽象クラス 2008/07/24 18:01 シャノン

インターフェイスとかDSLとか層分けとか斬新なことはしないでひたすら人海戦術で手堅くやりたいです。

# わんくまブログの CSS 2008/07/24 22:05 何となく Blog by Jitta

わんくまブログの CSS

# re: 抽象クラス 2008/07/24 22:58 オガシン

コメント頂いた皆様ありがとうございます

>>渋木宏明(ひどり) さん
連日ありがとうございます。
色々アドバイス頂いておりますので勉強させていただきます。

DSLと言う言葉も始めてみましたのでその変も調べてみます!


>>出水さん
ありがとうございます!
是非参考にさせていただきます!

>>やじゅさん
連日ありがとうございます、
色々やりたいことはあるんですがねぇ。。
いかんせん自分の知識がおいついて無い部分がありまして(汗

>>シャノンさん
人海戦術の方が難易度は低いのかもしれませんが
予算はけずられるわ、納期は短いわでてんやわんやです。
(みなさんおなじだとおもいますが)
今の段階でどれだけ高品質で、かつすばやく作れる方法を
考えているところです

>>じったさん
CSSって欄がありましたね(汗)
CSSもまだまだ初心者なので今度チャレンジしてみようとおもいますw

# re: 抽象クラス 2008/07/25 11:09 渋木宏明(ひどり)

>DSL

DSL(Design Specific Language) = 特定用途向けのオレオレ言語です。

# re: 抽象クラス 2008/07/29 0:57 オガシン

>>渋木宏明(ひどり) さん
ありがとうございます。
調べてみますね!

# ZvJEixZich 2011/12/27 19:05 http://www.spytown.com/

The Author is crazy..!

# jFODswShVvbDZAitYsW 2011/12/29 20:26 http://www.healthinter.org/health/page/protonix.ph

I decided to help and sent a post to the social bookmarks. I hope to raise it in popularity!!...

# UXHLeJlsaFaoFgDNTgQ 2012/01/07 8:45 http://www.luckyvitamin.com/m-1507-usp-labs

I subscribed to RSS, but for some reason, the messages are written in the form of some hieroglyph (How can it be corrected?!...

タイトル
名前
URL
コメント