ブログバトラー



http://blogbattler.com/




JavaScript使


Ruby



id:amachang





javascript:var d=document.createElement('div');d.innerHTML='BlogBattler.';document.body.appendChild(d);var s=d.style;s.position="fixed";s.top="100px";s.left="100px";s.zIndex=1000;void(0);

オブジェクトとかクラスとか







C++使C++C++
憂鬱なプログラマのためのオブジェクト指向開発講座 (DDJ Selection)

憂鬱なプログラマのためのオブジェクト指向開発講座 (DDJ Selection)

リテラルの正体を暴く




11 + 5



 + 115
 + 






115
Fixnum
Fixnum



11
puts 11.class


Fixnum



<オブジェクト>.class

class
11Fixnum


"Hello"3.14
puts "Hello".class
puts 3.14.class


String
Float

StringFloat
StringFloat





puts 11.methods


methods
<オブジェクト>.methods


 +  /  class  methods 



ゆとり教育の正体は?



puts 11 / 3


3





11 / 3 

puts( 11.0 / 3 )

 




FixnumFloat
RubyNumeric
FixnumInteger / IntegerInteger
Float


レシーバ




オブジェクト.データ
オブジェクト.メソッド

.
.







10
puts '■10進整数\n'
puts 123.to_s(16)  # 16進表記
puts -123.to_s(8)  #  8進表記
puts 0d123.to_s(2) #  2進表記

puts '■16進整数'
puts 0xffff.to_s(16)

puts '■2進整数'
puts 0b1011.to_s(2)

puts '■8進整数'
puts 0377.to_s(8)
puts 0o377.to_s(8)

使to_s
to_Ruby
to_ssStrings


to_fto Float使Float

puts (11 / 3).to_f



3.0






puts (11.to_f / 3)
puts (11 / 3.to_f)
puts (11.to_f / 3.to_f)


使

クラスとメソッド

メソッド < オブジェクト < クラス






 





 method -  IT e-Words


 
 
 




 object -  IT e-Words


 ()()()
 







(一)

(二)

(三)

(四)




調
 class -  IT e-Words


 (super class)(base class)(subclass)(derived class)
 

orz



3




 





()()
 






 











2


データとメソッド













自動販売機プログラム























*1






























(一)

(二)











使










































まとめ

  • オブジェクトはデータ(属性)とメソッド(操作)を持ちます
  • クラスはオブジェクト(≒インスタンス)の定義モデルです
  • つまり、クラスはオブジェクトが持つべきデータとメソッドを定義します
  • 属性はオブジェクトの内部情報を表します
  • 操作はオブジェクトが持つ機能、処理、振る舞い、メッセージといったものを表します

*1:そういえば以前は自動販売機は『関数』として考えたのでした。しかし、実はあれはクラスとして考えるともっとしっくりくる、という事だったのです……

結婚式を挙げました










演算子・被演算子・式

算術演算


使




puts 1 + 2  # 足し算
puts 5 - 3  # 引き算
puts 9 * 9  # 掛け算
puts 18 / 6 # 割り算


3
2
81
3


*/
[+-*/]operator: 
使
operand: 



18 / 6
 

 / 186
/2
3
expression







Ruby  if while  

 ()  nil 
Ruby
 















Ruby
printputs






Ruby
 




式の評価


Ruby


使

256

256

256
256


0b100000000 + 0x100


22
210
1 × 2^(9 - 1) → 1 × 2^8 → 1 × 256 → 256

16
1 × 16^(3 - 1) → 1 × 16^2 → 1 × 256 → 256


+
256 + 256 → 512

0b100000000 + 0x100


0b100000000 + 0x100 * 0o400




演算子の優先順位



0b100000000 + 0x100
Ruby








(0b100000000 + 0x100) * 0o400

調


残された気になる点




puts 11 / 3

3.66666...

Ruby
3




.
.
.






 










感謝とおことわり