!C言語知らない奴ってプログラマじゃなくね?

そういえばC言語を知らない人に
C言語って文字列型がないんだよ」
と言ったら驚いていた。

確かにC言語は配列は自身の長さを知らないし、
文字列も自分の長さを知らない。
正規表現だって標準ではない。
僕はこれが当たり前と思うけれども、
そうでない言語から入った人は文字列型があるのが普通で
配列だって長さがわかるのは当たり前で、
正規表現だって使いたいし……、
「なんでそんな不便なの?」って思うだろう。


nativeなCはそれ自体が豊富なライブラリや機能を持つわけではないので
「新ANSI C言語辞典」を片手に何か作ろうとしても限度がある。
初心者がnativeなCで役に立つツールを作ろうとすることに既に無理がある。*1
まだプログラマに成り立てな人に簡単なGUIツールをつくって貰おうとしたとき、
「nativeCでつくって」とは口が裂けても言わないだろう。



実際C言語でやりたいことなんていうのは範囲がしれている訳で、
例えばWeb系のプログラミングをする時にC言語なんて実際は必要ない。
「Webサービスを作りたい」っていう人がC言語から学ぼうとするのは寄り道だと思う。


学ばなくて良いものを学ぶ時間を使うくらいなら、
目の前にある事を楽しみつつ、
前進するのに必要な難問を片付けるような技術を身につける方が良い、のかも。


プログラマになるため」のルートが明確に決まっていて、
「ここを歩かなければならない」という訳ではないので、
個人個人が好きな道を歩けば良いんじゃないかな。


で、気になったらC言語にも寄り道をすると、
その頃にはきっとCがどうして文字列型を持たないのか、
配列のサイズを知らないのか、
ということが納得できるようになるはず。


特に今必要としていないなら
「興味があれば」

ただ、アドレスという概念は覚えておいて損はないと思うけども。

*1:昔の人は凄かった、ということでもある