2008/01/31

Recent entries from same category

  1. 書評「プログラミング言語大全」
  2. Google Developers Expert (Go) になりました。
  3. 1つの横着から隠しファイルが生まれた瞬間
  4. 書評:[試して理解]Linuxのしくみ
  5. GoCon に初参加してきた。

C言語を使える奴は凄いのか?


C Language

数年前ならYesだ。でも今は「間違なくYesだ」とは言えない。昨今業務で求められているスキルはC言語使いだけではない。

求められているのはJava使いであり、VB.NET/C#使いであり、LL(javascript、php、python、perl, ruby)使いなのだ。

最近ではエンドユーザも賢くなってきて、単にパフォーマンス性や万が一に備えた柔軟性よりも、保守性やメンテナンス性、二次利用という利点、はたまたバグ侵入率を下げるにはどうしたら良いかを勉強してきている。

まれにC言語使いは、C言語を使えない人達から崇められる事があるが、はたして本当に凄いのだろうか?

ポインタや演算子オーバロードを知っている人が、MFCやATL/WTLを知っている人が、socketをCで組める人が、kernelソースを読める人が、本当に今後も凄いと言われ続けるのだろうか。

例えばGUIを作るとしよう。pythonとGTKを使えばウインドウを出すのに10行あれば十分でしょう。

ソケットで通信してXMLを送受信するならばperlで10数行でしょう。

SHA1で長々とコードを書くまでもなく、.NET Frameworkならば、予めクラスライブラリが用意されているでしょう。

昨今ではアプリケーションのプラグインもスクリプト化しつつある。

mallocとfreeを追っかけ徹夜する開発者と、コーディングと数回のデバッグで仕事を終え、定時で帰ってしまう開発者のどちらがカッコいいのでしょう。

「言ってるその言語自体はC言語で出来ているんだ」
そうでしょうね。でもあなたが作った訳じゃないですね。
「C言語じゃないと出来ない処理だ」
そうですね。ただ、それが必要な処理ならば、いずれ誰かがクラスライブラリを作ってくれるでしょうね。
「他の言語は今後仕様が変わってしまう可能性がある」
そうかも知れませんね。きっとその頃には、そのC言語で作られたシステムも作り変えですね。

確かにハードやkernelまわり、組み込み系ならばC言語でしょう。でも今後デスクトップアプリは他の言語に置き換わって行ってしまうかもしれない。

C言語はハードの制御と新しい言語の開発だけに使われ、デスクトップアプリケーション開発で御飯を食べるのが難しくなってしまいC言語使いの仕事と言えば組み込みだけになってしまう近未来が本当にやって来てしまうかも知れない。

C言語使いの凄いところってなんだ?

あるとすればクラッシュの仕方一つで、なんとなく原因が想像出来てしまう事。

時間が掛かる処理で、なんとなく無駄なループのソースが見えてしまう事。

そんな知識がいったい何時まで「凄い」と言われ続けるんだろうか…

「C言語だけでは御飯が食べられない」そんな将来がやってくるのだろうか。


そして近い未来、こんなネタで釣りな記事が@ITやITmediaに掲載されてしまう日が来るんだろうか。

Posted at by | Edit