ビジ速+

Sponser
ITEMs
BookMarkd
Items
プロフィール

busyness.on

Author:busyness.on
【このブログについて】
相互リンク・相互RSS随時募集中です。
苦情・意見なども受け付けます。
メールフォームよりお知らせ下さい。

メールフォーム

名前:
メール:
件名:
本文:

検索フォーム
QRコード
QRコード
カテゴリ
OS (27)
TOP > ビジネスニュース > C/C++に死を
■ 更新ヘッドライン

C/C++に死を

このエントリーをはてなブックマークに追加 
1 :ノチラ ★:2017/07/17(月) 15:40:31.76 ID:CAP_USER.net

プログラミング言語Cはおぞましい。いや、素晴らしくもある、もちろん。私たちの住む世界の大部分はCの上に作られている。そしてほとんどのコンピュータープログラミングの基礎をなしている、歴史的にも、実質的にも。Xavier Nielの革新的な “42” スクールのカリキュラムが、学生に標準Cライブラリー関数を一から書き直させることから始まるのはそれが理由だ。しかしCは、C自身が作り上げたこの世界にとってもはやふさわしくない。

「おぞましい」と言ったのは「悪い」ということではなく「畏敬の念を起こさせる怖さ」という意味だ。Cはモンスターになってしまった。あまりに多くの大砲を与えたためにユーザーは自分の足を撃ち抜いてしまう。豊富な体験が教えるところによると、セキュリティーホールにむしばまれることなく大量のCコードを書くことは非常に困難であり「事実上不可能」になりつつある。2年前、私は最初の「Cに死を[Death To C]」の記事にこう書いた:

原理上、ソフトウェアが成長し進化して成熟度を増すほど、セキュリティー脆弱性は複雑になっていく。しかし、C/C++で書かれたソフトウェアにそれは当てはまらない。バッファーオーバーフローや宙ぶらりんのポインターのために壊滅的セキュリティーホールが生まれる事態は、繰り返し繰り返し起こっていて、昔も今も変わることがない。

私たちはこれ以上巨大な口を開けたセキュリティーの盲点を放っておくことはできない。引退して別の言語に取って代わられる時期はとうに過ぎている。問題なのは、ほとんどの近代言語はCを置き換えようという意欲すら持っていないことだ。〈中略〉どの言語もCが最も得意とすることに長けていない ―― 例えばシステムの奥深くまで掘り下げてマッハスピードで動くこと。

あなたがデベロッパーなら、私の言いたいことはもちろんわかっているだろう。Rustの長所を並べることだ。実際これは有望なC/C++の後継だ。2年前に私は、新規の下層レベルコーディングをCではなくRustで書くことを勧めた。つまるところ、穴に関して何よりも大切なのは、掘るのをやめることだ。

Security tips when programming in C (2017 edition):
1) Stop typing
2) Delete what you've already typed
[Cでプログラミングする際のセキュリティー心得(2017年版):
1)タイプするのをやめる
2)すでにタイプしたものを削除する]

今私は、エンジニアが既存のCコードをリファクタリングするとき、特にパーサーなどの入力ハンドラーを書き直すとき ―― ゆっくりと、すこしずつ ―― Rustで置き換えるように真剣に勧めている。
http://jp.techcrunch.com/2017/07/17/20170716death-to-c/



3 :名刺は切らしておりまして:2017/07/17(月) 15:45:09.91 ID:MirfapV3.net

よし!いよいよCOBOLの時代だな!



6 :名刺は切らしておりまして:2017/07/17(月) 15:48:54.67 ID:UKmfRd6A.net

時代はマシン語だろ





7 :名刺は切らしておりまして:2017/07/17(月) 15:49:06.00 ID:+A69iEC4.net

Rust は、Cの代わりにはなれん。
C++は、いらん子



11 :名刺は切らしておりまして:2017/07/17(月) 15:54:25.75 ID:NTMHIaoA.net

セキュリティホールを気にするならCはやめた方が良いな



15 :名刺は切らしておりまして:2017/07/17(月) 16:02:03.44 ID:1e/YiDug.net

カーニハン アンド リッチーの本は本当に入門用として優れてるのか疑問。

あれは初心者には難しいで。



16 :名刺は切らしておりまして:2017/07/17(月) 16:03:36.83 ID:bv61c3zy.net

忖度言語come



18 :名刺は切らしておりまして:2017/07/17(月) 16:05:24.66 ID:GoLr6Ddi.net

コイツの頭の中ではBOFとポンターだけがセキュリティリスクらしい



24 :名刺は切らしておりまして:2017/07/17(月) 16:12:58.74 ID:Zkj4ZMuR.net

アセンブラでいいんじゃね?



27 :名刺は切らしておりまして:2017/07/17(月) 16:14:27.27 ID:d+PzUTg2.net

みんなでLISPを使えば幸せになれるよ
俺はごめんだが



35 :名刺は切らしておりまして:2017/07/17(月) 16:24:49.33 ID:8bbD8Aiy.net

Cは高級な低級言語



41 :名刺は切らしておりまして:2017/07/17(月) 16:28:08.82 ID:2Xg9lz+P.net

じゃあC#で



46 :名刺は切らしておりまして:2017/07/17(月) 16:32:24.57 ID:c5z0rTCh.net

で?Rust使ってる奴はどう思ってんの?



49 :名刺は切らしておりまして:2017/07/17(月) 16:33:56.04 ID:av6tGE7Y.net

ポインタ操作なんてセキュリティ上行ってはならない



53 :名刺は切らしておりまして:2017/07/17(月) 16:38:54.89 ID:LjaHUsA4.net

C/C++レモン



60 :名刺は切らしておりまして:2017/07/17(月) 16:46:26.80 ID:GVjusvWe.net

www.ac.jp//.html



62 :名刺は切らしておりまして:2017/07/17(月) 16:47:01.76 ID:PljvrNsD.net

了解した。ISO規格を教えてくれ



68 :名刺は切らしておりまして:2017/07/17(月) 16:49:15.50 ID:XHBulnIf.net

今更C++やってるけど、すげーぞ。俺はべたぼれ。



70 :名刺は切らしておりまして:2017/07/17(月) 16:51:02.66 ID:YwIB5GEf.net

高級言語はアセンブラーのpre-Processor。



74 :名刺は切らしておりまして:2017/07/17(月) 16:52:31.05 ID:c4BMzrCm.net

ポインタ潰しきやがったな



75 :名刺は切らしておりまして:2017/07/17(月) 16:53:13.24 ID:Qc7Pc9vw.net

これからはマクロアセンブラの時代



88 :名刺は切らしておりまして:2017/07/17(月) 17:16:02.57 ID:JqX6aG39.net

Cはライブラリでしかない



91 :名刺は切らしておりまして:2017/07/17(月) 17:25:51.79 ID:4wQ0ty9i.net

記事風広告



92 :名刺は切らしておりまして:2017/07/17(月) 17:26:21.32 ID:jCQseR6y.net

エビバディダンスナウ!



101 :名刺は切らしておりまして:2017/07/17(月) 17:39:39.99 ID:1YGwJ5ho.net

ハードウェア設計をやってると、C以外の高級言語なんて使う機会は皆無。
ただし、高位合成の関係でC++というかSystemCは使うが。



108 :名刺は切らしておりまして:2017/07/17(月) 17:52:13.39 ID:lkTuPpuz.net

Rust最大の問題は生産性の低さだと聞いたが…
メモリ管理厳密にやるには仕方ないのかもしれないけど、
C++より書きにくいってのはなかなかないよな
Objective-Cくらいかw



112 :名刺は切らしておりまして:2017/07/17(月) 18:00:30.88 ID:Y5nCLATQ.net

 
Cは「システム記述言語」。
アセンブリの置き換え
セキュリティが担保されている階層で使うべき

C++は万能感があるがC以上に慎重さが求められる
力量で記述の差が大きいし、コンパイルにも時間がかかるから
複数人の大規模開発ではなるべく避ける方が結果的に無難



113 :名刺は切らしておりまして:2017/07/17(月) 18:02:13.14 ID:cdv0bjlU.net

メモリーリークはスレッド関連でも起きるんだよな。w



114 :名刺は切らしておりまして:2017/07/17(月) 18:03:25.95 ID:cdv0bjlU.net

Cはなんでもキャストできるから危ないといわれ、
C++でカプセル化が導入されたが、中途半端であった。

そして言語仕様が複雑化していった。



117 :名刺は切らしておりまして:2017/07/17(月) 18:09:37.61 ID:FM5x//n7.net

高速だしメモリをいじったりするのには代替が無いだろ



118 :名刺は切らしておりまして:2017/07/17(月) 18:10:00.62 ID:BIJ46XXK.net

cでもcppでもいいけど、昔ながらの職人コード書くのはやめてほしい。
cが最強とか言う人って、関数型言語はおろか、オブジェクト指向すら学ぼうとしないし、スマートポインタとかラムダとかを学ぼうとしない。



119 :名刺は切らしておりまして:2017/07/17(月) 18:11:07.28 ID:Y5nCLATQ.net

 
いまのC++が目指しているのは
「何でもできる究極のコンパイル言語」

これは「生き残り戦略」

だから全部入りで研究者レベルにも不満を抱かれないようにしている
逆に肥大化し過ぎて素人レベルには理解不能な機能も多い



120 :名刺は切らしておりまして:2017/07/17(月) 18:11:25.92 ID:YwIB5GEf.net

昔は、Assembler全盛期だったし(汗)



129 :名刺は切らしておりまして:2017/07/17(月) 18:22:59.52 ID:vRLE0W2c.net

新人間よ、永遠なれ



136 :名刺は切らしておりまして:2017/07/17(月) 18:54:23.78 ID:z52PqUF06

意地悪コードが書けるC++は消えてもいいと思う。




Source : http://anago.2ch.sc/test/read.cgi/bizplus/1500273631/
関連記事





あとで読む このエントリーを含むはてなブックマークはてなブックマーク - C/C++に死を

■おすすめ記事

COMMENT



:
:
:
:


:

管理者にだけ表示を許可する :

トラックバック

トラックバックURL:
    (copyボタンはIEのみ有効です)
«  | HOME |  »