「SECTIONとPARAGRAPHって、名前は違うけど何がどう違うの?」と疑問に感じた人、手を挙げてください。
COBOLの勉強を始めると、まず最初につまずきがちなのがこの2つの言葉です。どちらも処理のまとまりを作るものに見えるけど、実はしっかりとした違いがあります。
この記事では、COBOLの「節(SECTION)」と「段落(PARAGRAPH)」の違い・意味・使い方を、初心者にもわかりやすく具体例を交えて解説します。読んでいるうちに「なんだ、そういうことだったのか!」とスッキリできるはず。
プログラムの読み書きがグッと楽になるCOBOLの基礎、今ここで身につけましょう。読まずに閉じると、たぶん後悔しますよ?
了解しました。それでは、指定された構成に沿って、各見出しごとに親しみやすく、初心者がスッと読めるような文章をお届けします。
COBOLプログラムの心臓部!節と段落とは?
そんなときに出てくるのが「PROCEDURE DIVISION(手続き部)」です。ここは、COBOLプログラムの中でも実際の処理を動かす命令を書く場所です。
手続き部の中には、SECTION(節)とPARAGRAPH(段落)という2つの“入れ物”があります。イメージとしては、家の中の「部屋」と「クローゼット」みたいなもの。
部屋(SECTION)の中にクローゼット(PARAGRAPH)がある感じです。大事なのは、どちらも処理のまとまりを作るための構造ということ。
プログラムが読みやすく、管理しやすくなるように作られている仕組みなので、最初にしっかり理解しておくと、あとが楽になりますよ。
まずは基本!COBOLの段落(PARAGRAPH)を理解しよう
段落には名前をつけるルールがあり、自分で決めた識別名(段落名)で管理します。この名前を使って、他の場所から呼び出すこともできます。
たとえば「ファイルを読み込む段落」「エラーを表示する段落」など、処理ごとに分けておくと読みやすくなります。頭の中の整理にもピッタリです。
段落(PARAGRAPH)の書き方ルール(構文)
段落を書くときの基本ルールは以下の通りです。
-
段落名はA領域(7文字目)から書き始める
-
段落名のあとにピリオド(.)を付けて区切る
-
ピリオドのあとに処理内容を書く
-
名前には英数字とハイフンが使える(例:START-PROCESS)
簡単な例を見てみましょう。
START-PROCESS. DISPLAY "HELLO".
段落名「START-PROCESS」が一目でわかりやすく、処理内容もスッキリしています。試しに書いて動かしてみると感覚がつかめますよ。
段落をグループ化!COBOLの節(SECTION)を理解しよう
節(SECTION)は、複数の段落をひとまとめにするための入れ物です。段落が“処理の1つひとつの手順”なら、節は“それをまとめた手順セット”のような感じです。
たとえば「売上処理の節」の中に、「入力処理」「計算処理」「出力処理」の段落がある、といった具合です。構造がはっきりするので、後から読み返すときにとても便利です。
書き始めるときは、セクション名 SECTION. と記述します。段落と違って、複数の処理の流れを含む大きなまとまりとして使います。
節(SECTION)の書き方ルール(構文)
SECTIONの基本的な書き方はこちら。
-
セクション名もA領域から書き始める
-
セクション名のあとに「SECTION.」と書く(ピリオドを忘れずに)
-
中には1つ以上の段落を含めるのが基本
例を見てみましょう。
MAIN-ROUTINE SECTION. START-PROCESS. DISPLAY "START". END-PROCESS. DISPLAY "END".
MAIN-ROUTINEというセクションの中に、2つの段落(START-PROCESSとEND-PROCESS)が入っています。階層がはっきり見えるので、全体の流れをつかみやすくなります。
節(SECTION)と段落(PARAGRAPH)の関係性
COBOLの構造は、上から順に
PROCEDURE DIVISION > SECTION > PARAGRAPH > 文(ステートメント)
となっています。
わかりやすく言えば、フォルダの中にフォルダがあって、その中にファイルが入っているような感じです。
以下でイメージをつかんでみましょう。
PROCEDURE DIVISION ├── MAIN-ROUTINE SECTION │ ├── START-PROCESS PARAGRAPH │ └── END-PROCESS PARAGRAPH
ちなみに、SECTIONは省略することもできます。でもPARAGRAPHは、基本的には必要になります。迷ったら段落を先に書いて、後から節でまとめるようにすると失敗しにくいです。
了解しました!以下に、指定された構成・制約に従ってCOBOL初心者向けにわかりやすく解説を作成しました。
【重要】COBOLの節(SECTION)と段落(PARAGRAPH)はどう違う?使い分けを解説
まずは違いを表で比べてみます。
では、どんなときにSECTIONを使えばいいのかというと、
-
処理を大きな機能単位でまとめたいとき
-
複数の段落をまとめて呼び出したいとき
といった場面が考えられます。
ただし「PERFORM THRU」でSECTIONの範囲を指定して実行するやり方は、初心者にはおすすめしません。予期しない流れになりやすく、バグの温床になりがちです。
一方で、段落だけでも十分な場合も多いです。
-
プログラムが小さい
-
処理がシンプルで分かりやすい
そんなときは、段落だけで構造を組むのがオススメです。まずは段落の理解と使い方に慣れることを優先しましょう。
PERFORM文と節(SECTION)・段落(PARAGRAPH)の関係【コード実行の流れ】
なぜ構造をわざわざ段落や節に分けるのか?理由はシンプルです。何度も使う処理をまとめておいて、必要なときだけ呼び出すためです。
PERFORM文を使えば、書いた処理を何回でも呼び出せますし、プログラムもすっきりして読みやすくなります。
では次に、PERFORMをどう使うのか見ていきましょう。
PERFORMを使った段落(PARAGRAPH)の実行
段落をPERFORMで呼び出す基本の形はとても簡単です。
PERFORM START-PROCESS.
これで、START-PROCESSという段落が実行されます。処理が終わると、呼び出した場所に自動で戻ってきます。
コードの流れを簡単に図で見てみましょう。
MAIN │ ├── PERFORM START-PROCESS → 実行 │ └── DISPLAY "HELLO" │ └── 処理の続きに戻る
実際のコード例はこちら。
PROCEDURE DIVISION. PERFORM START-PROCESS. DISPLAY "処理が終わりました". START-PROCESS. DISPLAY "HELLO".
PERFORMは“ちょっと行って戻ってくる”ような感じです。わかりやすくて使いやすいですね。
PERFORMを使った節(SECTION)の実行
今度はSECTIONをPERFORMで呼び出す場合です。構文はこちら。
PERFORM MAIN-ROUTINE.
このとき、MAIN-ROUTINEという節に含まれるすべての段落が、上から順番に実行されます。
段落との違いは複数の処理が一気に流れるところです。コードを見てみましょう。
PROCEDURE DIVISION. PERFORM MAIN-ROUTINE. DISPLAY "処理終了". MAIN-ROUTINE SECTION. START-PROCESS. DISPLAY "START". END-PROCESS. DISPLAY "END".
実行の流れはこんな感じ↓
MAIN │ ├── PERFORM MAIN-ROUTINE → 実行 │ ├── START-PROCESS │ └── END-PROCESS │ └── 処理の続きに戻る
段落の場合はひとつだけ、節の場合はまとめて実行されるというのが違いです。
ちなみに「PERFORM 節名 THRU 別の節名.」という書き方もありますが、初心者には推奨されていません。流れを読みづらくする原因になりやすいからです。
了解です!では、指定の構成と制約をしっかり守りながら、初心者の方にも伝わりやすい、やさしくフランクな文章で仕上げていきます。
初心者が知るべき節(SECTION)と段落(PARAGRAPH)のポイントと注意点
SECTIONとPARAGRAPHは、使い方にちょっとしたクセがあります。慣れないうちは見落としやすいポイントもあるので、よくある落とし穴と対策をまとめました。
まず覚えておきたいのは、段落の使い方に慣れるのが第一歩ということ。いきなりSECTIONから入ると、構造が複雑になって混乱しがちです。
以下の点に気をつけておくと、すっきりしたコードが書けます。
-
段落名・節名は「読めば意味がわかる名前」にすること
例:「READ-FILE」「CHECK-DATA」など。中身を読まなくても何をしてるか想像できると管理しやすくなります。 -
GO TO文はなるべく使わないこと
好きな場所にジャンプできる反面、流れがわかりにくくなります。PERFORMを中心に考える方が安全です。 -
SECTIONを使うときは、プログラム全体の構造を意識すること
節は大きなまとまりなので、何をまとめるか決めてから書くのがコツです。行き当たりばったりで書くと逆に読みづらくなります。 -
段落だけで完結する処理なら、無理にSECTIONを使わなくてもOK
小規模なプログラムなら段落だけで十分整理できます。無理に階層を増やす必要はありません。 -
同じ名前は使わない!命名は早い者勝ち
同じ名前の段落や節があると、PERFORMしたときに思わぬ動作をすることもあります。必ずユニークな名前をつけましょう。
最初のうちは、段落名をきちんとつけて、PERFORMで呼び出す流れに慣れることを意識しておけばOKです。プログラムの読みやすさが変わってきます。
【まとめ】COBOLの節(SECTION)と段落(PARAGRAPH)を理解して一歩前へ
ここまでで、SECTIONとPARAGRAPHについてたっぷり学びました。
どちらも処理をまとめるためのブロックですが、大きさや使い方が違います。段落は小さな単位で、節は段落を束ねる入れ物のような存在。PERFORM文を使えば、必要な処理を名前で呼び出すことができて、スッキリとしたコードになります。
COBOLの構造を理解するうえで、SECTIONとPARAGRAPHは避けて通れないパーツです。でも心配しなくて大丈夫。名前をしっかり決めて、流れを考えながら使えば、誰でも自然と書けるようになります。
最初は段落から始めて、慣れてきたら節にもチャレンジ。焦らず一歩ずつ進めばOKです。
これでCOBOLの構造が読めるようになったはず!もう「SECTIONって何?」「段落ってどう書くの?」と迷うことはありません。あとは書いて、動かして、どんどん覚えていきましょう!
【関連記事】
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。