Perlサブルーチンとメインスクリプト間でコードを整理する方法

スタン

メインスクリプトといくつかのサブルーチンがインターリーブされた1つのperlスクリプトを入手しました。次のようになります。

sub utils1 {
  ...
}

# some code
# some more code that calls utils1

sub utils2 {
  ...
}

# some code that calls utils2

sub utils3 {
  ...
}

# some code that calls utils3
# the rest of code

コードを整理するためのより良い方法はありますか?良いコーディング規約を探しています。私のPythonコーディングの経験に基づいて、私は以下のようなことを考えています。それはどのように見えますか?

sub utils1 {
  ...
}

sub utils2 {
  ...
}

sub utils3 {
  ...
}

sub main {
    # some code
    # some more code that calls utils1
    # some code that calls utils2
    # some code that calls utils3
    # the rest of code
}

&main();
ランティ

私の知る限り、サブルーチンの編成について定義されたベストプラクティスはありません私の経験から、ドキュメントはしばしば順序を指示します。

例えば

use Getopt::Lucid;

=head1 SYNOPSIS

This program does nothing so long ...

=cut

# ... main code here, not necessary to wrap into a sub

=head1 PUBLIC METHODS

=cut

sub method1 {

=head2 method1

This method does something ...

=cut

    $self = shift;
    # ...
}

sub method2 {

=head2 method2

This method does something different...

=cut

    $self = shift;
    # ...
}

=head1 PRIVATE METHODS

These methods are private their interface may change.

=cut

sub _priv1 {

=head2 _priv1

The _priv1 method is for ... and used by ....

=cut

    my $self = shift;
    # ...
}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ネットでメッセージを適切にチャンクする方法。ブロードキャストを防止するコンとスリープ

分類Dev

複数のAngularアプリをホストする方法、nginxコンテナーでサブドメイン化

分類Dev

Perlスクリプトでの奇妙なサブルーチンコンパイルエラー

分類Dev

APIベースのマルチページクライアント側アプリケーションでルーティングを整理する方法は?

分類Dev

フィールドにクエリを実行してメインコレクションフィールドを取得し、クラウドファイヤーストアのサブコレクションドキュメントでサブコレクションを取得することはできますか?

分類Dev

ソースオブジェクトとして使用されるフォームで宣言されたパブリックサブルーチンを、メインフォームからサブフォームコントロールを呼び出すのに最適な方法はありますか?

分類Dev

バッチスクリプトでforループ変数をインクリメントする方法は?

分類Dev

タイプスクリプトでクライアントとサーバー間でコードを共有する

分類Dev

htaccessリダイレクト サブフォルダーをサブドメインとサブフォルダーにリダイレクトする方法

分類Dev

単一のワードプレスのインストールでサブディレクトリにウェブサイト全体をコピーする

分類Dev

ノードjsアプリケーションのローカルホストでウィルカードサブドメインを操作する方法

分類Dev

スマートポインタとサブクラスでタイプチェックを適用する方法

分類Dev

バッチスクリプトをチェーンするときの予期しないダブルアンパサンド/パイプの動作

分類Dev

forループで時間をインクリメントする方法

分類Dev

サブドメインをローカルホストの既存のコントローラーアクションにマップする方法

分類Dev

htaccessを介したhttpsサブドメイン間のマルチサイトワードプレスリダイレクト

分類Dev

matlabオンラインスクリプトでコードのコメントを解除する方法

分類Dev

Rubyリファインメントブロックで長いコードを整理するための最良の方法

分類Dev

RxJS:ネストされたサブスクリプション呼び出し間でサブスクリプションを整理する方法

分類Dev

パブリックドメインなしでランチャーHAをインストールすることは可能ですか(--set hostname)

分類Dev

トグルアイコンをクリックすると、ブートストラップドロップダウンメニューが消えます

分類Dev

.htaccessを使用してサブドメインをエイリアス/別のドメインサブフォルダーにリダイレクトする方法

分類Dev

マルチスレッドアプリケーションコールバックをサポートするLinux共有ライブラリ

分類Dev

コルドバとウェブサイトの流星アプリに異なるクライアントコードベースを使用する

分類Dev

forループ内で月をインクリメントするphpコード

分類Dev

特定のフィールドでメインドキュメントとサブドキュメントを並べ替えるマングースクエリ

分類Dev

テンプレートとサーバーサイドスクリプト間で値を渡す(gs)

分類Dev

Swiftスクリプトでシェルコマンドをパイプでチェーンする

分類Dev

SQLステートメントをperl(コードスタイル)でフォーマットする方法

Related 関連記事

  1. 1

    ネットでメッセージを適切にチャンクする方法。ブロードキャストを防止するコンとスリープ

  2. 2

    複数のAngularアプリをホストする方法、nginxコンテナーでサブドメイン化

  3. 3

    Perlスクリプトでの奇妙なサブルーチンコンパイルエラー

  4. 4

    APIベースのマルチページクライアント側アプリケーションでルーティングを整理する方法は?

  5. 5

    フィールドにクエリを実行してメインコレクションフィールドを取得し、クラウドファイヤーストアのサブコレクションドキュメントでサブコレクションを取得することはできますか?

  6. 6

    ソースオブジェクトとして使用されるフォームで宣言されたパブリックサブルーチンを、メインフォームからサブフォームコントロールを呼び出すのに最適な方法はありますか?

  7. 7

    バッチスクリプトでforループ変数をインクリメントする方法は?

  8. 8

    タイプスクリプトでクライアントとサーバー間でコードを共有する

  9. 9

    htaccessリダイレクト サブフォルダーをサブドメインとサブフォルダーにリダイレクトする方法

  10. 10

    単一のワードプレスのインストールでサブディレクトリにウェブサイト全体をコピーする

  11. 11

    ノードjsアプリケーションのローカルホストでウィルカードサブドメインを操作する方法

  12. 12

    スマートポインタとサブクラスでタイプチェックを適用する方法

  13. 13

    バッチスクリプトをチェーンするときの予期しないダブルアンパサンド/パイプの動作

  14. 14

    forループで時間をインクリメントする方法

  15. 15

    サブドメインをローカルホストの既存のコントローラーアクションにマップする方法

  16. 16

    htaccessを介したhttpsサブドメイン間のマルチサイトワードプレスリダイレクト

  17. 17

    matlabオンラインスクリプトでコードのコメントを解除する方法

  18. 18

    Rubyリファインメントブロックで長いコードを整理するための最良の方法

  19. 19

    RxJS:ネストされたサブスクリプション呼び出し間でサブスクリプションを整理する方法

  20. 20

    パブリックドメインなしでランチャーHAをインストールすることは可能ですか(--set hostname)

  21. 21

    トグルアイコンをクリックすると、ブートストラップドロップダウンメニューが消えます

  22. 22

    .htaccessを使用してサブドメインをエイリアス/別のドメインサブフォルダーにリダイレクトする方法

  23. 23

    マルチスレッドアプリケーションコールバックをサポートするLinux共有ライブラリ

  24. 24

    コルドバとウェブサイトの流星アプリに異なるクライアントコードベースを使用する

  25. 25

    forループ内で月をインクリメントするphpコード

  26. 26

    特定のフィールドでメインドキュメントとサブドキュメントを並べ替えるマングースクエリ

  27. 27

    テンプレートとサーバーサイドスクリプト間で値を渡す(gs)

  28. 28

    Swiftスクリプトでシェルコマンドをパイプでチェーンする

  29. 29

    SQLステートメントをperl(コードスタイル)でフォーマットする方法

ホットタグ

アーカイブ