こちらは、babydaemonsさんのユーザページですよ。 アナウンス:スラドとOSDNは受け入れ先を募集中です。
babydaemonsのコメント: Re:おや? (スコア 1) 4
真に必要なのは「抽象概念レベルでの」ソフトウェアにおけるデータ構造という概念に対する理解です。 この意味では基本中の基本になります。このレベルのデータ構造の理解なしにまともなプログラムは作れません。 アセンブラだろうが、Lispだろうが、これは変わらない。
さすがにアセンブラではまともなデータ構造が必要となる大規模なプログラムを書いたことがありませんが (PC-9801のGDCをアセンブラで叩くくらい)、 高級アセンブラたるC言語では2分木をはじめ基本的なデータ構造を教科書の30%程度を割いて 高専時代の2年生あたりに叩き込まれた記憶があります。
今時のC#やJavaやC++(STL)では、これら基本的なデータ構造はわざわざ自分で作らなくても 処理系が用意してくれますが、計算量のオーダーやメモリ使用量の見積りは 処理系が用意してくれてる中身を理解できる人でないと、当然精度は落ちるでしょう。
JDKのAPIリファレンスには、検索速度のオーダー表記も載ってるけど、 C言語やアセンブラである必要は無いけど自分で一通りのデータ構造と検索ロジックを 書いて、timeコマンドでCPU使用時間を実測した人じゃないと、 深く理解できないんじゃないかなー
つい最近までは、CPUやメモリは実用上無限に使えるから、そんなのどーでもいいーよ的な 感じで作ってたと思いますけど、USの富裕層様に使われた害死系凍死銀行の亡者どもが 経済をめっためったにしてくれたおかげで、みんなクラウドでスモールスタートせざるを 得なくなって、再びCPU使用時間やメモリ使用量を気にして書かないといけない時代になったという…
課金にモロに響きますからねーというつぶやきを目にします。 教科書でしか知らないけど、タイムシェアリングシステムの時代に先祖返りしてる??