プログラミングって専門的ではあるんだが
そのベースとなってる部分にあまり学術性が無いというか
例えば電気回路で言うところのオームの法則など
そういう学校で扱いやすい話題があまりない
疎結合やモジューラビリティー、テスト性とか
すぐにえらく専門的で現実的で「実技」な話に発展する
学校で扱いやすいのは、せいぜい論理演算などの離散数学ぐらいか

もともとやらせたいことを順番に並べて書いておけば
コンピュータが逐次実行してくれるってだけだし
そのような仕組み的概念など、一瞬で理解できてしまう
足し算よりも簡単な概念だ

ただし、コンピュータに、何を、どうやらせるか、の話になると難しいが
これは電子回路で言えば、理想素子など存在しない現実世界で
実際に回路を組む場合のノウハウの話であって、えらく専門的だ

それでも学校でプログラムをするなら
きっと目的に向けて手続きプランを立てる力を養うためなんだろう