ロボット工学研究室(AMSL)を志望する学生達へ - Part 4

Last update: Dec.01,'07

 

日本語・英語・C言語〜続き

C言語とはもちろん,コンピュータのプログラミング言語のことです.まぁ,必ずしもC言語である必要は無いのですが※.

ここでは実は,コンピュータのプログラミング言語が重要だ,と言う事が本来の目的ではありません.本当の所は,「何かを実行するとき,或いは何らかの目的を達成するためには,それの為に必要な技術を先んじて身につけている必要がある」,と言いたいのです.

前に述べた,日本語と英語もそうですが,コンピュータ言語もそうです.英語が出来なければ,外国で自分の事を説明できませんよね?それと同じ.コンピュータ言語が出来なければ,ロボットは動かないのです.

こうした技術(道具)は一朝一夕には身に付きません.皆さんは英語は何年勉強しましたか?コンピュータ言語を身につけるためには,少なくとも2,3年の修業が必要です.つまり,研究室に来てから初めてプログラミングを始めたのではもう遅いのです.その程度の技術では,十分な成果を挙げることは期待できません.

もちろん,学部の講義ではC言語によるプログラミングを勉強します.が,それは非常に基礎的なもので,大学を卒業するのに最低限必要なレベルを保証するものであるに過ぎません.研究で自在に使いこなすにはもっともっと高い技術が必要なのです.

これはあくまで個人的な意見ですが,プログラミング言語は元来,講義で習うものでは無いと思っています.もちろん,初学者に対して,勉強する最初のきっかけを作ることには一定の効果があるでしょう.が,講義で習う事によってそれ以上の成果を挙げられるとはとても思えません.言葉は自分自身で勉強するものです.

皆さんは今まで,英語を習ってきたと思いますが,それによってある程度文章を読めるようにはなったかも知れませんが,書けるようになりましたか?話せるようになりましたか?そこから先は学習する者自身の意志と努力が必要なのです.

 


※ロボットを制御するために最も良い言語はC++でしょう.Cとは似て非なる言語で,プログラミングの思想においてはCとFortranやBasicとの違いよりも,CとC++との違いの方が遙かに大きいと言えます.C++を使うと行列の取り扱いなどが圧倒的にラクになります.また,OSに関しては通常,Windowsはリアルタイムの制御には使い(え)ません.m-iTRONのような専用のリアルタイムOSか,あるいはLinuxを使います.ロボットを開発するときは,当然これらの言語やOSに習熟している必要があります.