2012年11月27日火曜日

開発環境

『初めてのC# 第2版』(Jesse Liberty+Brian MacDonald著、日向俊二訳、オライリー・ジャパン、2006年、ISBN978-487311-294-7)の 第8章(配列)10.9(練習問題)問題10-1を解いてみる。

その他参考書籍

問題10-1.

コード

using System;

class Dog
{
    private int weight;
    private string name;
    public int Weight
    {
        get;
        set;
    }
    public string Name
    {
        get;
        set;
    }
    public Dog(int weight, string name)
    {
        this.weight = weight;
        this.name = name;
    }
    public override string ToString()
    {
        return "Name:" + name + " Weight:" + weight;
    }
}

class Tester
{
    public void Run()
    {
        Dog milo = new Dog(26, "Milo");
        Dog frisky = new Dog(10, "Frisky");
        Dog laika = new Dog(50, "Laika");
        Dog[] dogs = { milo, frisky, laika };
        foreach (Dog dog in dogs)
        {
            Console.WriteLine(dog);
        }
    }
    static void Main()
    {
        Tester t = new Tester();
        t.Run();
    }
}

入出力結果(Console Window)

Name:Milo Weight:26
Name:Frisky Weight:10
Name:Laika Weight:50
続行するには何かキーを押してください . . .

ちなみにJavaScriptの場合。

コード(TextWrangler)

var result = "";
var Dog = function(weight, name){
  var weight = weight;
  var name = name;
  this.get_weight = function(){
    return weight;
  };
  this.set_weight = function(value){
    weight = value;
  };
  this.get_name = function(){
    return name;
  };
  this.set_name = function(value){
    name = value;
  };
  this.toString = function(){
    return "Name:" + name + " Weight:" + weight;
  };
};
var milo = new Dog(26, "Milo");
var frisky = new Dog(10, "Frisky");
var laika = new Dog(50, "Laika");
var dogs = [milo, frisky, laika];
for(var i = 0; i < dogs.length; i++){
  result += dogs[i].toString() + "\n";
}
$('#pre0').text(result);



pythonの場合。

sample.py

コード(TextWrangler)

#!/usr/bin/env python3.3
# -*- coding: utf-8 -*-

class Dog:
    # pythonではprivateは作れない
    # 先頭に下線を付けておく
    def __init__(self, weight, name):
        self._weight = weight
        self._name = name
    
    # プロパティっぽいものを名前を動詞にして定義
    def get_weight(self):
        return self._weight
    
    def set_weight(self, weight):
        self._weight = weight
    
    def get_name(self):
        return self._name
    
    def set_name(self, name):
        self._name = name
    
    def __str__(self):
        return "Name:{0} Weight:{1}".format(self._name, self._weight)

milo = Dog(26, "Milo")
frisky = Dog(10, "Frisky")
laika= Dog(50, "Laika")
dogs = [milo, frisky, laika]
for dog in dogs:
    print(dog)

入出力結果(Terminal)

$ ./sample.py
Name:Milo Weight:26
Name:Frisky Weight:10
Name:Laika Weight:50
$

0 コメント:

コメントを投稿