
VBAでのクラスモジュールの位置づけを解説します。
外部モジュールを使ってクラスモジュールをインスタンス化(実体化)する方法を解説します。
新しいクラスモジュールを挿入し、氏名・体重・身長・生年月日を保持するクラスを作ります。
クラス(オブジェクト)の特徴の1つである「たくさん作れる」を解説します。
インスタンスのプロパティ、プロシージャのスコープと寿命が尽きるタイミングを解説します。
インスタンの寿命が尽きるの挙動と、クラスモジュール開発中のVBEおすすめ設定を解説します。
カートの金額、割引率を保持し、割引額と支払金額を返すクラスを作ります。
オブジェクト指向三大要素の一つ「カプセル化」とそれを実装するためのアクセサ(Propertyプロシージャ)を解説します。
メンバ変数(クラス内のモジュールレベル変数)をPrivateにし、アクセサを使ってアクセスする方法を解説します。
読取り専用プロパティを実装する方法を解説します。
併せてここまでの復習・演習問題に挑戦してみましょう。
Publicで定義したメンバ変数をアクセサを使ってアクセスするように改良します。
クラス外部にEnum定義・公開し、その情報を元に内部処理を変える方法を解説します。
コンストラクタ・デストラクタの機能と使い方を解説します。
コンストラクタ・デストラクタを実装し、挙動を確認します。
Endステートメント実行時のデストラクタの挙動を確認します。
併せて「変数宣言と同時にNew」が推奨されない理由を解説します。
プログラミングになれてくると日本語の変数やメソッドが煩わしくなってきます。が、英語の命名はなかなか難しい。
そんなときに使えるツールを紹介します。
クラスはどんな道具か? どのような意図で作られたのか?
オブジェクト指向の三大要素、生まれた経緯を解説します。
背景知識を持っておくと、どのように使えばよいのか? の助けになります。
クラスを設計するときの考え方
業務システムは常に変化する
シンプルに保つようにする
シンプルにする方法
を解説します。
クラスを設計、整理するときのベストプラクティスの一つにMVCモデルがあります。
どのような者か解説します。
ラバーダックをインストールし、画面を設定。
ラバーダックの機能を使うときの手順と注意点を解説します。
ラバーダックを使うときのおすすめ設定とコード管理画面、参照設定ダイアログの使い方を解説します。
コード品質管理画面の見方と、どのように修正すればよいか? の例を解説します。
自動インデント機能の使い方を解説します。
変数、プロシージャ、クラスがどこから参照されているかのリストを表示する方法を解説します。
変数・プロシージャ・モジュール名を安全にリネームする機能の使い方を解説します。
Ctrl+Hで一つ一つ確認しながら置換、と言う危険行為とはサヨナラです。
引数の削除、引数の順番並べ替え機能。
呼び出し側、呼び出される側(プロシージャ)を同時に修正します。
バグとはおさらばです。
以下の記号のペアが自動入力されます。
"
'
(
[
{
使い方に癖があります。
併せて文字列自動改行機能の使い方を解説します。
VBE画面でTODOリストを管理できるようになります。
他にもバグやメモも管理できます。
面倒なPropertyプロシージャ実装をマウスを数回クリックするだけでできるようになります。
読取り専用プロパティも設定できます。
標準モジュールを挿入するときに目にする「クラスモジュール」ってなにもの?
そう感じたことのある感度の高いあなたのためのコースです。
クラスモジュールを使えるようになると
自分でRange型、Worksheet型のようなオブジェクトを開発できます
プログラムを整理整頓してわかりやすい状態を維持できます
プログラムの開発・メンテナンスが楽になり、工数が減ります
規模の大きなシステム開発に最適です
コードを書くのがもっと楽しくなります(最重要)
クラスモジュールのコーディングスタイルは、標準モジュールだけのコーディングスタイルとはちょっと違います。
慣れないうちは戸惑うかもしれませんが、一度身に付けば以前のスタイルに戻れません。
それほど強力な機能が備わっています。
一例を挙げると
インスタンス生成
カプセル化
コンストラクタ・デストラクタ
インターフェイス(ポリモーフィズム)
どれも強力な機能ですが、クラス特有の機能を覚えただけでは実務で使えるようになりません。
英単語を知っていても文章を書けるわけではない、と同じです。
このコースではクラス特有の機能の解説から実務への応用までカバーします。
私が様々な書籍や他のプログラミング言語から学び、実務に応用する過程で身につけたエッセンスをお伝えいたします。
お伝えしたいのはこれだけではありません。
VBE(開発画面)の機能を何段階も向上させる「ラバーダック」というVBEアドインをぜひ使っていただきたいのです。
ラバーダックはとても強力です。
クラスモジュールでシステム開発していると必然的にモジュールが増えます。
ところがVBEにはフォルダがありません。目的のモジュールやプロシージャを探すにも時間がかかってしまいます。
ラバーダックはVBEにフォルダ管理機能をもたらします。
それだけではありません。
コードの品質チェック
自動インデント
自動記号ペア入力
シンボル(モジュール・プロシージャ・変数)が参照されている場所のリスト化
シンボルの一括リネーム
引数の削除、並べ替え
VBE画面内でTODOリスト管理
メンバ変数からプロパティプロシージャの実装
インターフェイスの実装
隠し属性の追加(デフォルトプロパティ・Enumerator(自作クラスをForEachで回せるようにする))
このコースでは
クラスモジュール特有の機能の解説
ラバーダックの使い方
クラスモジュールを実務に応用する方法
をお伝えし、あなたが自信を持ってクラスモジュールを使えるようになるためのエッセンスをお伝えいたします。
クラスモジュールの世界へ一歩踏み出しましょう!!