アルゴリズム的知識の必要性

まだBrainSKKは完成してない。ってかローマ字→かなへの変換部分すらできてないね。ダメだ。

というのも、動く環境が動く環境なのと、既存で同じ役割を果たすソフトウエアがあるので、徹底的に軽くなるように作りたいと効率的な方法を模索したりして、結果大筋からそれたりして未だ完成していないのだが(まあこれも勉強の一環)、そういった中で効率的な方法などを考えていると、どうしてもアルゴリズム的知識の欠如について実感させられる。

正直、何も考えずにプログラミングのみをする場合にはアルゴリズム的知識は不要である。アルゴリズム的知識なしにもとりあえず動く物は作れる。でもそれ以上の物は作れない。効率的で読みやすく実行速度もはやいプログラムは、全体のバランスがとれないと作る事ができないし、全体のバランスをとるには全体を熟知している必要がある。

…っていうのはまあ妄想として、ローマ字→かな変換ってオートマトンの代表的な問題ですよね。