プログラムじゃなくて設計の問題だと思う