カテゴリ
タグ
以前の記事
フォロー中のブログ
最新のトラックバック
ライフログ
Salyu
庄司紗矢香
その他
検索
その他のジャンル
ファン
記事ランキング
ブログジャンル
画像一覧
|
ABAPオブジェクトを活用されていますか? 皆さん汎用モジュールは使っていると思いますが、 クラスはあまり使っていないのではないでしょうか? 実は、クラスと汎用モジュールは共通点がたくさんあります。 比較で示すと、 汎用グループ → クラス 汎用モジュール → メソッド となります。より精確には、 汎用モジュール → スタティックメソッド です。 スタティックメソッドとは、クラスのインスタンス化 (Create Object命令でオブジェクトを生成すること)を 行わずに使用できるメソッドです。 スタティックメソッドは、汎用モジュールと変わりなく 使用することができます。 更に、クラスには汎用モジュールにない以下のメリットがあります。 1.有効化時にパラメータの型チェックが行われる。 2.インスタンス化することにより、1つのクラスからメソッドと属性の 組み合わせを複数作れる。 3.外部からいじられたくないデータを可視性の指定でコントロールできる。 4.継承によって機能を拡張したり、用途を明確化したりできる。 プログラムのメンテナンス時に一番厄介なのは、グローバル変数 (内部テーブルを含む)ですが、上記の2.や3.をうまく使うと 余計なグローバル変数を減らすことができます。 ここまでは、汎用モジュールをクラスに置き換えるお話でしたが、 共通定数をクラス化することも可能です。 実際には、クラスの仲間のインタフェースを使用します。 インタフェースは、メソッドを持たない特殊なクラスです。 このインタフェースのスタティック属性(または定数)として 共通定数を定義します。 使用する際には、プログラムの最初で、 INTERFACE <インタフェース名> DEFINITION LOAD 命令を記述し、後はインタフェースの属性を参照するだけです。 たとえば、RANGEテーブルのOPTIONの値に’EQ'を設定する場合、 INTERFACE で定数 OPTION_EQ (参照データ型:CHAR2、値:’EQ') を定義しておき、プログラム中では、 ZIF_CONST=>OPTION_EQ で参照します。(ZIF_CONSTはインタフェース名) 以上のようにオブジェクト指向を意識しなくてもクラスを 活用することができます。大事なことは、クラスを使うことに 慣れておくことです。 SAP の製品のアップグレードにともなってクラスの重要性は 増しています。 スタティックなものから徐々にクラスに慣れて、 インスタンスを作成する本格的なオブジェクト指向のクラス利用に ステップアップしてください。
by kuni3_98
| 2006-06-13 10:21
| SAP
|
ファン申請 |
||