PHPのOOPとJavaコードを比較してみた
Java版とPHP版を比較してみると、コード記述にほとんど差がない。
むしろJavaの方が若干コード量が少ない気がする。
ショック!
Java版
http://www.objectclub.jp/technicaldoc/testing/stack_tdd.pdfより引用import java.util.EmptyStackException;
/**
* @author koji,hiranabe
*/
public class Stack {
private int[] value = new int[10];
private int size;
public boolean isEmpty() {
return size == 0;
}
public int top() {
emptyCheck();
return value[size - 1];
}
public void push(int value) {
this.value[size++] = value;
}
public int size() {
return size;
}
public void pop() {
emptyCheck();
--size;
}
private void emptyCheck() {
if (isEmpty())
throw new EmptyStackException();
}
}
PHP版
<?php
class Stack {
protected $value = array();
protected $size = 0;
public function isEmpty() {
return $this->size == 0;
}
public function top() {
$this->emptyCheck();
return $this->value[$this->size - 1];
}
public function push($x) {
$this->value[$this->size ++ ] = $x;
}
public function size() {
return $this->size;
}
public function pop() {
$this->emptyCheck();
$this->size--;
}
private function emptyCheck() {
if($this->isEmpty()){
throw new OutOfRangeException();
}
}
}
?>
Ligthweight Languageとは名ばかりの。。。PHPのOOPはもはやLLではないのか(涙
カテゴリ:
PHP