HOME»応用情報技術者試験掲示板»令和3年春期午後問8 設問2(2)について
投稿する
令和3年春期午後問8 設問2(2)について [3757]
あやさん(No.1)
https://www.ap-siken.com/kakomon/03_haru/pm08.html
設問2の(2)で「処理が分割するから」という風に回答したのですが、意味合い的にはあっているのでしょうか?解答・解説を見てもいまいちわからなかったので、どなたか教えていただきたいです。
設問2の(2)で「処理が分割するから」という風に回答したのですが、意味合い的にはあっているのでしょうか?解答・解説を見てもいまいちわからなかったので、どなたか教えていただきたいです。
2022.09.30 23:16
としさん(No.2)
少し違うと思います。分割する事が保守性を下げるわけではないです。
コールバック地獄では一つの機能を改修しようとすると、多くのプログラムを変更する必要が出てきます。プログラムがすべて繋がっているためですね。そのため、改修時には他人が作成したコードを含む、すべてのコードを読んで処理を壊さない用に変更することが非常に大変です。
あとは単純に一つの処理コードが長くなるのもあります。
上記2つが可読性の低下です。
分割が関係ない理由は、2つあります。以下のようになると、可読性は良くなるとこがわかると思います。また、改修時はいくつかのコードを変更するだけで済むので、保守性もあがります。
コードA
処理1;
処理2;
処理6;
コードB
処理2(callback1()){
処理3
}
コードc
処理6...
基本的に保守を考えるときは、他人のコードを読む事や自分が作ったものを自分が保守しないことを意識した方が良いと思います。
コールバック地獄では一つの機能を改修しようとすると、多くのプログラムを変更する必要が出てきます。プログラムがすべて繋がっているためですね。そのため、改修時には他人が作成したコードを含む、すべてのコードを読んで処理を壊さない用に変更することが非常に大変です。
あとは単純に一つの処理コードが長くなるのもあります。
上記2つが可読性の低下です。
分割が関係ない理由は、2つあります。以下のようになると、可読性は良くなるとこがわかると思います。また、改修時はいくつかのコードを変更するだけで済むので、保守性もあがります。
コードA
処理1;
処理2;
処理6;
コードB
処理2(callback1()){
処理3
}
コードc
処理6...
基本的に保守を考えるときは、他人のコードを読む事や自分が作ったものを自分が保守しないことを意識した方が良いと思います。
2022.10.01 08:29
あやさん(No.3)
なるほど!理解できました。
わかりやすく説明していただきありがとうございます。
わかりやすく説明していただきありがとうございます。
2022.10.01 10:17