C# exercises (f) Summary

C# 演習前期のまとめ

C#プログラムは「入れ子構造」をしている

csharp_struct

ボタンクリックでメッセージボックス に表示完成したコード

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace test1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        // ボタンクリックでメッセージボックスに表示
        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Hello world");
        }
    }
}
*注意:( ” “) ; は全角(漢字)にしてはいけません。全角(漢字)の文章を入れた場合、かならず半角に戻して入力しましょう。

 

●using

usingキーワードは,プログラムの処理の流れには直接関係ありません。その代わり,プログラム全体にわたってどのライブラリを利用するかを明確にする役割があります。

前回触れたように,C#では基盤にある「 .NET Framework」のライブラリを利用してアプリケーションを作ります。.NET Frameworkでは,ライブラリの各機能を処理内容ごとにツリー状のグループに分類して管理します。ちょうど,パソコンでファイルを管理するときに目的別のフォルダを用意して分類・整理しておくのと似た状態を想像すればいいでしょう。フォルダに相当するグループを .NET Frameworkのライブラリでは「名前空間」と呼びます。

●名前空間(namespace)

usingの次に出てくるnamespaceは,それに続くブロックが所属する名前空間を指定するキーワードです。usingのところで,標準ライブラリがSystem以下の名前空間に属していることを説明しましたが,自分で作るプログラムも必ずどこかの名前空間に所属させます。

●class

classは,C#プログラムを構成する最小単位である「クラス」を定義するキーワードです。必ずnamespaceのブロック内に書かれます。C#プログラムの大部分はこのようなクラス定義の集まりです。

●メソッド(method)

メソッドはクラス内で実行される具体的な処理を一つにまとめて名前を付けたものです。メソッドはクラス定義ブロックの中にいくつでも作れます。メソッドの中でほかのメソッドを呼び出したり,ほかのクラスを利用するといったことも可能です。ただ,Mainという名前のメソッドには特別な役割があります。プログラムを起動したときには自動的にMainメソッドが実行されるのです。

●//(コメント)

この構文だけはほかとは異質で,実はC#プログラムに不可欠な要素ではありません。//と書かれた個所から改行までの部分はプログラムの処理の流れからは一切無視されます。つまり,この//以降を削除してしまってもプログラムは全く同じように動作します。

この一見ムダな行は,プログラム内に動作などをメモしておくプログラマ向けの注釈文です。プログラム内での処理という点では全くムダですが,実際のプログラミングでは読みやすい注釈を記述することがプログラミングの重要なテクニックです。例えば,思った通りにプログラムが動かずにミスを探す場合などは,わかりやすいコメントがついているかどうかでミス発見までの作業の効率が大きく変わってきます。あるいは他人の作ったプログラムや過去に自分が作ったプログラムを見る場合,処理だけが書かれているのと,適切なコメントがあるのとでは理解のしやすさが大きく違います。

期末レポート:

A4 2枚以上、eメールで提出する。

  • 提出先:h.chen@ueno.daiichi-koudai.ac.jp
  • タイトル:C#期末レポート (学籍番号)
  • 提出する期限:2016/7/29
  1. C#プログラミング関連名詞の意味を説明する
    1. イベントドリブン
    2. ツールボックス
    3. コントロール
    4. イベント
    5. メソッド
    6. プロパティ
  2. Webプログラミング関連名詞の意味を説明する
    1. API
    2. REST
    3. JSON
    4. Open Data
  3. 学内Proxyを通して、Webデータ取得する方法を説明する
    1. 画面デザイン
    2. プログラム
  4. オープンデータを利用したWebアプリの作成
    1.  オープンデータの好みのどれかを選択
      1.   – 郵便番号検索
      2.   – 天気予報検索
      3.   – その他  「LinkData.org」から探す
    2. オープンデータをブラウザで確認
      1. ブラウザ画面
    3. C#を使って、オープンデータWebアプリの作成
      1. 画面デザイン
      2. プログラム

参考:

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *

CAPTCHA


Related Post

C# exercises (6) Graphics and PaintC# exercises (6) Graphics and Paint

Graphicsオブジェクト ウインドウの内部を表示したり描き直したりする必要が生ずると、Formに「Paint」というイベントが発生し、Paintプロパティに設定されているメソッドが呼び出されるようになっています。 このPaintイベント用のメソッドは、これまでのクリック時のイベント用メソッドなどとは微妙に違いがあります。これは以下のように定義されます。 private void メソッド名 (object sender, PaintEventArgs e) {     ……ここに描画処理を書く…… } 第1引数に、イベントが発生したオブジェクトが渡されるのは同じですが、第2引数に渡されるのはSystem.Windows.Formsパッケージの「PaintEventArgs」というクラスのインスタンスです。これは、描画のためのイベント情報を管理するもので、描画に必要なオブジェクトなどもこの中にまとめられているのです。 中でも重要なのが「Graphics」というオブジェクトです。これはSystem.Drawingパッケージに用意されているクラスで、これはGDI+(Graphics Device Interfaceというグラフィック描画のための機能の強化版)を利用して画面にさまざまな描画を行うための機能を提供します。 Paintイベント フォームのプロパティをイベントに切り替えて、Paintイベントを探し、メソッド名Form1Paintを入力 […]

C# exercises (c) Web3 HttpClientC# exercises (c) Web3 HttpClient

Visual Studio community 2015 アカウントについて (学内専用) WebBrowser (基本) Form(自動操作) HttpClient ←今週 REST & JSON いままで、WebBrowser コントロールを利用して、 Webサイトを表示と操作プログラムを作りました。 今回は直接 http 通信に HttpClient クラスを使用 するプログラムを作ります。 HTTPとは […]

C# exercises (9) Puzzle Game3C# exercises (9) Puzzle Game3

Visual Studio community 2015 アカウントについて (学内専用) パズルゲームUIの改進 改進点: ピースを順番でセットするではなく、あらかじめランダムにセットして、マウス移動できるようにする ピースをあらかじめランダムにセット initialData の改造 // 変数関係の初期化処理 private void initialData() { flg = new […]