- 締切済み
プログラムのサブルーチン・関数化の方法について
プログラム作成法に関する包括的な質問です。 ある物理シミュレーションプログラムを作成してまあ、満足できるというか当たり前の計算結果にはなりました。 それなりに複雑ではあり、それでおしまいにしたいところですが、本当はそれはもっと大きなプログラムの一部になるものです。ちゃんと動作したからこそ、パーツとして役に立つな、ということです。そこで、それをサブルーチンなり、関数なりにして外部から呼び出すように変更していくうまい方法がないでしょうか。全体を考えて構築しなおすべし、ということになるのか、あるテクニックでうまく処理できるということはないでしょうか。モジュールとかパッケージ化とかの技法で比較的簡単に処理できるとかです。変数名の重複(同じものであっても区別してもらいたい)とか変数のスコープとか呼び出し側、呼ばれ側の通信についてです。そういうのが得意なのがC++だろうとは思いますが、できればFortranで処理したいのです。Fortran95はgfortranがあるので利用できます(これは誰でもでしょうが)。 以前から全く前進しない問題で、仕方ないから全部考え直すとして組み上げていくことが多いです。私は普通はまず全体を作ってから細かいパーツに入っていくようにしますが、今回はその逆の行き方なのですが。プログラム開発に多くの人が関わるようなものだと、一人一人のコンセプトで作成して他のプログラムとのつなぎの部分だけちゃんとしていればよし、というようになっていると思いますが。gitとかsubversionとかです。 具体的な質問ではないですが、考え方をお尋ねしたいと思います。参考になるサイトとか情報でも結構です。よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- chayamati
- ベストアンサー率41% (260/624)
>Fortran95 懐かしいですね、私は1980年代COBOLで販売管理、会計等のシステム開発に携わってました。現場にリリース後不都合が起きたり、改善要求が出た時はに見直すのが大変でした。開発グループで約束したことはt次の3つです。 1.変数は全て明示宣言 2.Goto文は使わない。フラグがOkになるまでループする 3.メインルーチンもサブルーチンも50行以内にする
- tetsumyi
- ベストアンサー率25% (1960/7602)
今時のプルグラミングではどんな言語でも関数化は当たり前でほとんど全ては部品として作成して呼び出すだけです。 https://amanotk.github.io/fortran-resume-public/chap07.html 関数の受け渡しだけ気をつければ何の問題もありません。