teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2021/09/23 05:19

投稿

YOshim
YOshim

スコア1094

answer CHANGED
@@ -1,4 +1,10 @@
1
1
  コードを書く際に保守性、安全性などを考慮する必要があります。
2
2
  長期間にわたって複数人で開発する際に全部グローバル変数だと大量のファイル、コードを逐一確認する必要が出てきてやってられません。
3
3
 
4
- 非常に簡易なプログラムを自分一人で作成する場合は全てグローバル変数でも問題は生じないと思います。ただ多少経験を積めば意識しなくとも自然とスコープを意識してローカル変数を使うようになるとは思いますが。
4
+ 非常に簡易なプログラムを自分一人で作成する場合は全てグローバル変数でも問題は生じないと思います。ただ多少経験を積めば意識しなくとも自然とスコープを意識してローカル変数を使うようになるとは思いますが。
5
+
6
+ なんか低評価ついちゃったんで追記
7
+ グローバル変数だらけだとデメリットの方が多そうとのことですが、一般的にはその通りです。一般的というのはコード量や開発体制が企業案件向けのようなものであればという意味です。少なくとも業界標準でこう書くべきというのはなく、書籍のリーダブルコードにある内容を一般論として念頭に置き、プロジェクト毎にリソースを考慮してルールを決めるものだと思います。
8
+ 不具合が出る前提で話すのは違和感ありませんが、不具合が出る前提なら尚更グローバル変数は減らす方がメリットがあります。
9
+ グローバル変数だらけの方がデバッグがしやすいというのは聞いたことありませんね、仮にそうなら組み込みに関わらずみんなグローバル変数をもっと推奨するのではないでしょうか。
10
+ 組み込みならではの話でいうと容量を考慮する必要がありますが、近年は容量より保守性や可読性が重視されているように感じます、その方がトータルコストが安くなるからです。ということで、追記前の内容と同じ結論になってしまいますが、小規模な個人開発案件でもない限りは極力グローバル変数を減らす方向とするのが良いはずです。業界標準はないのであくまで個人の感想です。