2009年11月10日火曜日

今日作成したサイト(野球シミュレーション)、ソースコードはそれぞれ

http://www.mkamimura.com/Chap5/baseball.aspx

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class Chap5_baseball : System.Web.UI.Page
{
    string DataFolderURL = "~/Chap5/Data/";
    string DataFolder;
    DataSet Team_1, Team_2;
    DataTable ScoreTable;

    protected void Page_Load(object sender, EventArgs e)
    {
        DataColumn column;
        DataRow row;

        DataFolder = Server.MapPath(DataFolderURL);

        //スコア掲示板用のテーブルを作る
        ScoreTable = new DataTable("スコアボード");

        //チーム名用のカラムを作る
        column = new DataColumn();
        column.DataType = System.Type.GetType("System.String");
        column.ColumnName = "チーム";
        column.Caption = "チーム";
        ScoreTable.Columns.Add(column);

        //イニング用のカラムを作る
        for (int i = 1; i <= 9; i++)
        {
            column = new DataColumn();
            column.DataType = System.Type.GetType("System.Int32");
            column.ColumnName = i.ToString();
            column.Caption = i.ToString();
            ScoreTable.Columns.Add(column);
        }

        //トータルスコア用のカラムを作る
        column = new DataColumn();
        column.DataType = System.Type.GetType("System.Int32");
        column.ColumnName = "計";
        column.Caption = "計";
        ScoreTable.Columns.Add(column);

        row = ScoreTable.NewRow();
        ScoreTable.Rows.Add(row);
        row = ScoreTable.NewRow();
        ScoreTable.Rows.Add(row);

        //スコアボードを表示
        ScoreBord.DataSource = ScoreTable;
        ScoreBord.DataBind();

        //チームを表す DataSet を作成する
        Team_1 = new DataSet();
        Team_2 = new DataSet();
    }

    protected void Start_Click(object sender, EventArgs e)
    {
        string record;

        Team_1.ReadXml(DataFolder + DropDownList1.SelectedValue + ".xml");
        Team_2.ReadXml(DataFolder + DropDownList2.SelectedValue + ".xml");

        SimBaseball simBaseball = new SimBaseball();
        simBaseball.PlayAll(Team_1, Team_2, ScoreTable, out record);

        ScoreBord.DataSource = ScoreTable;
        ScoreBord.DataBind();
        ResultLog.Text = record;
    }

    protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        Team_1.ReadXml(DataFolder + DropDownList1.SelectedValue + ".xml");
        Member_1.DataSource = Team_1.Tables["選手"];
        Member_1.DataBind();
    }
    protected void DropDownList2_SelectedIndexChanged(object sender, EventArgs e)
    {
        Team_2.ReadXml(DataFolder + DropDownList2.SelectedValue + ".xml");
        Member_2.DataSource = Team_2.Tables["選手"];
        Member_2.DataBind();
    }
}

です。毎日少しずつ自分で書くソースコードの量が増えていっています。

現在のところ毎日わくわく楽しくプログラミング学習に取り組むことができているので、現在のペースがちょうど私にはあっているのかもしれません。そして、少しずつ増えているということは自分自信も少しずつではありますが成長しているということだと思うので嬉しい限りです。

作成した野球シミュレーションはボタンを押すだけの簡単なものですが、何回もボタンを押してシミュレーションで遊んでしまったりしています。これも自分の手でソースコードを書いて作成したからこそ味わえる楽しみだと思います。実用的なことも大事ですが、自分自身でも楽しめるということもとても大事なことだと実感しました。

今のペースで楽しみながらプログラミング学習を続けていき、いつの間にか気がついたらもっと複雑なプログラムを書けるようになっていたらいいなあと思う今日この頃です。

0 コメント:

コメントを投稿