IT用語再帰呼び出しとは? 日の出ITスクール

IT用語再帰呼び出しとは? 日の出ITスクール Photo by Branko Stancevic on Unsplash 今回は再帰定義について説明したいと思います。関数定義の中で関数自身を呼び出すことを、再帰呼び出しや再帰定義と呼びます。関数の定義に自分自身を呼び出すなんてなにか特別な仕掛けがあると思われる方も多いかもしれません。ところが、再帰定義はそこまで特別なことではありません。大昔のプログラミング言語であればありえるかもしれませんが、今この時代にできないプログラミング言語のほうが珍しいぐらいです。もちろんJAVAの関数も、再帰呼び出しが可能です。 それでは再帰定義の基本をご紹介いたします。再帰定義といいますと、LISPのような関数型言語の専売特許だと思われている方もいると思います。実際、C言語などの手続き型言語では、再帰定義が難しいと判断し、初心者の方ですとさけて通っている方も多いように思います。再帰定義は、関数の呼び出しとまったくおなじ理屈なので、警戒する必要はありません。慣れるまで苦労するかとは思いますが、慣れてしまえばこっちのものです。 それでは簡単に例をあげて説明していきたいと思います。皆さん合わせ鏡はご存知ですよね?二枚の鏡(鏡Aと鏡B)を向かい合わせにしたときに、鏡Aの中に鏡B、鏡Bの中に鏡A、鏡Bの中に鏡A、鏡Bの中に鏡Aと永遠に続いていく現象です。それを踏まえて自分自身が書かれえている関数を呼び出すのは再帰呼び出しです。対象が関数ではなく、プログラムの部品だったりするかもしてません。そのあたりはゆるく解釈してください。とにかく、自分自身が書かれている何かを呼び出すことをいいます。 再帰処理はうまく使えるようになるとできるプログラマー気分を味わうことになるとは思いますが、それは罠です。再帰処理を行う際は注意をしてください。再帰処理にはリスクを伴います。その一つが、終了条件が間違っていると永遠に処理が終わらないということ、そして次に、入れ子が深くなると、メモリーが足りなくなるということです。 もしその処理が再帰処理を絶対必要としないものなら、使わないほうが無難かもというのが正直な感想です。また再帰呼び出しになっている関数のことを再帰関数と呼びます。ついでに覚えておくといいと思います。   再帰呼び出しとはざっとこのような感じです。この記事をみてもっとITについて知りたいと思った方は、インドグルガオンにある、日の出ITスクールに是非おいでください。質問等いつでもお待ちしています。その際はemailにてお願い致します。