ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

子どもの携帯所持、福田首相「ろくなことがない」。。。

2008-04-18 18:26:34 | Weblog

ここのニュース
子どもの携帯所持、福田首相「ろくなことがない」
http://www.asahi.com/national/update/0417/TKY200804170259.html

によると(以下斜体は上記サイトより引用)


福田首相は17日、政府の教育再生懇談会で、子どもが携帯電話を持つことについて「ろくなことがない。悪い大人に利用されるだけだ。人間関係にもマイナスだし、教育上も良くない」と、持論を展開した。


おおお。。。キャリア涙目・・・
と一瞬思ったけど、逆に、キャリアから見たら・・
「うーん、こんなことを言っている、福田さんより、麻生さんを・・」
とか、思われたりして・・・

なにげに
福田内閣、不支持が5割超=支持27.6%に続落-時事世論調査
http://headlines.yahoo.co.jp/hl?a=20080418-00000129-jij-pol

だったりする(^^;)



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

情報処理試験ぐらいのお勉強のポイント 3.ソフト開発論

2008-04-18 15:37:00 | Weblog

 シリーズ化してる?、情報処理試験ぐらいのお勉強のポイント、今回はソフトの開発方法論です。

イントロダクションを書いて、その後、残りの話についてのポイントです。




 システム開発は、一般的に、以下のように流れます。

 要求分析:どんなシステムを作るかを決めます
       ・対象となる業務分析→機能要件
       ・システムの信頼性、負荷など、業務以外の備えるべき要件→非機能要件
 外部設計:まず、画面やDBなど、システムの外部(見てくれ)を設計します。
      フレームワークからきめていって、詳細設計に入れるレベルまで
      ブレークダウンします
 詳細設計:(内部設計)プログラムに落とし込むための設計をします
 プログラミング:プログラムを書きます
 テスト:テストをします。単体テスト→結合テスト→総合テストをします
 運用:運用テスト、操作マニュアルの作成と教育、運用になります
 評価:で、どんなかんじかを評価して、次の開発につなげます。

 このとき、設計と、その内容を確認するテストを

    要求分析          総合テスト
      外部設計      結合テスト
        詳細設計  単体テスト  
          プログラミング

 とならべると、V字型になるので、V字型モデルというのでした。
 そして、開発のとき、この流れが、要求仕様から総合テストまで、1回しか流れず、
後戻りしないのが、ウォーターフォール、何度も流れるのが、スパイラルといいます。
(インクリメントモデルというのは、全体をいくつかの部分に分け、部分部分を開発
 していくもの)

 アジャイル開発などでは、仕様変更を柔軟に取り入れるため、スパイラルモデルに
なります。しかし、スパイラルモデルは、ウォーターフローモデルの、
仕様が後戻りしないことによる、仕様の一貫性(データベースでやった一貫性)が保てる
という利点を否定してしまう(後戻りするので)わけですから、これに対して、
何らかの対策(それが連載している修正可能システムの話)を立てないと、開発が崩壊し、
デスマーチとなります。そのデスマーチにしないのが、プロジェクトマネージャーの腕です




 で、今は、開発のフェーズについて書きました
(ちなみに、この日本における標準は、SLCP-JCF(共通フレーム 2007)です)。

 で、問題は、フェースの中で、何をやるかです。

 そのやり方としては、
  構造化分析:DFDを作成する
  DOA:ER図を使ったり・・
  オブジェクト指向→UMLを使う*
  EA
 などがありますが、各社、フレームワークを使って、いろいろやってます
 (*UMLは図の描き方だけなので、実際には、RUPなどが、やり方に相当)




 ちなみに、これは、開発者の側から見た話ですが、管理するマネージャーから
見た話というのもあります。また、テストの話もあるのですが、それについては、
キーワードを並べて置きます。

【テスト】
・ホワイトボックステストとブラックボックステスト
・単体、結合、総合テスト
・同値テスト、境界値テスト
・SQLインジェクション
 →DBでエスケープすれば防げるとか、そーいう話は求められない
・クロスサイトスクリプティング
 →だから、innerHTMLを安易に使うなとか、そーいう話は求められない
・探針(たんしん:埋め込みバグがいくつかで、そのうちいくつ見つかった、
    全体は?というやつ)
・S字曲線(探針に対していうと、信頼度成長曲線って言う言い方がいいのかな?)
・スタブ(ダミーモジュール)とドライバ
・QC7つ道具、新QC7つ道具

【マネージメント】
・PMBOK
・ガントチャートとPERT図




ってところで、今回はここまで。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Ruby1.9、Windowsで-その5 クラス2

2008-04-18 13:22:30 | Ruby

  シリーズ「Ruby1.9、Windowsで」です。
 前回、クラスの書き方と、クラス変数、インスタンス変数についてやりました。
 こんなかんじで書きます。

class ZZ
def putz()
puts @z
end
end

 さてここで、@zのインスタンス変数を、Javaのように、宣言したい場合
(そうしないと、クラスの属性値を明示できず、保守性が下がるので)
は、どーしたらよいでしょうか?

 というのが、今回のお話です。




■Javaのように書くとエラーになる

まず、何も考えず、Javaのように
class ZZ
@z
 def putz()
  puts @z
 end
end

って書くと、
a=ZZ.new
a.z = 1

としたところでエラーになります。
こういうように、変数を書くのでは、いけないのです。




■じゃあ、とにかく、値を設定するには?

じゃあ、とりあえず、インスタンス変数に値を設定したり、
取得できたりするには?っていうと、こんな感じになります。

class ZZ
 def z
  @z
 end

 def z=(z)
  @z=z
 end
	
 def putz()
  puts @z
 end
end


まあ、これで、
a=ZZ.new
a.z = 1
はできるのですが、めんどっちいですし、これじゃあ、
Javaのように、変数を明示したことになりません!!
で、どうするか・・




■attr_accessorを使う

 で、この def zと def z=(z)をまとめてやってくれるのが、
 attr_accessorです。
 これで書くと、こんなかんじ。
class ZZ
 attr_accessor :z
 def putz()
  puts @z
 end
end  


おお、これで、Javaのように、クラス変数が明示されます。
ただし、クラス変数は@zのように、使用時に@がつくけど、
attr_accessor宣言では@がつきません




■2つ以上の変数を宣言するには・・・

以下のように、attr_accessorを2つならべてもいいし
class ZZZ   
 attr_accessor :z
 attr_accessor :zz
 def putz()
  puts @z
  puts @zz
 end
end  


以下のように、, で区切って、:x , :y
と書いてもいいみたいです。
class XY   
 attr_accessor :x , :y
 def putxy()
  puts @x
  puts @y
 end
end  





■初期化するには。。

Javaのように、その後に変数をいれると、エラーになります。
つまり、
attr_accessor :x=100
って書くと、エラーになります

少なくとも、以下のように、initializeの中に書けば
初期化されますが。。

class XX   
 attr_accessor :x
 def initialize
    @x = 100
 end
 def putx()
  puts @x
 end
end  


これで、やるのかなあ・・??




っていうところで、今回はおしまい。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Javaのswingで押されっぱなしのボタンをつくる

2008-04-18 11:36:06 | JavaとWeb

 ちょっとメモメモ
 Javaのswingで、JButtonだと、クリックされたら押された状態になるけど、すぐに元に戻る。

 一回クリックされたら、ずーっと押された状態になり、再度クリックすると、元に戻りたいようにする場合は、JToggleButtonを使う。使い方は、基本的に、JButtonと一緒。



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする