日経クロステック2023.01.06コピーしました全2569文字PRソフトウエア開発になくてはならない道具が「プログラミング言語」である。コンピューターに理解できる言葉、すなわちプログラムを記述するための言語だ。プログラミング言語には多くの種類があり、よく使われているものだけで10種類以上ある。最近、人気が高いのが「Python」だ。AI(人工知能)の開発やデータサイエンス分野で広く使われているのに加え、初心者がプログラミングを始める言語として選ばれることも増えている。システム開発分野では、相変わらず「Java」や「C#」といった言語がよく使われている。Webアプリケーションのフロントエンド開発によく使われているのが「JavaScript」で、最近はJavaScriptの改良版といえる「TypeScript」の人気が高まってきた。した数多くのプログラミング言語がある中で、2023年にはブレーク間違いないと考えている言語がある。その言語が生まれた経緯を紹介しよう。深刻な脆弱性をもたらすC言語の欠陥プログラミングに少しでも興味がある人なら、「C」という言語を知っているだろう。「C」だけだと少しわかりにくいため、「C言語」と表記することも多い。多くの言語がCをいわば「下敷き」にしており、たいていCに似た文法を採用している。C自体も、決して昔の言語というわけではない。組み込みソフトウエア開発などでは現役で使われている。機能がシンプルでプログラムの実行速度が速いといったメリットがあるためだ。Cには致命的な欠陥がある。Cがプログラムからメモリーを直接操作できるのは性能面では有利な半面、メモリー関連のバグの温床になりやすいのだ。確保したメモリーを解放し忘れたり、アクセスしていい範囲の外にあるメモリー領域にアクセスしたりするバグだ。したバグはプログラム実行時のエラーを引き起こすだけでなく、最悪の場合は攻撃者が任意のプログラムを実行できる深刻な脆弱性をもたらす。プログラミングをしたことがない人は、「Cのプログラムを書く人がきちんとメモリーを管理すれば済む話ではないか」と思うかもしれない。メモリー管理は一筋縄ではいかない。単純に確保したメモリーを解放するだけならそれほど難しくはないが、複雑な条件に応じてメモリーを確保するような場合だと、人間がメモリーの使用状況を把握するのが困難な場合もある。この記事は会員登録で続きをご覧いただけます。次ページでログインまたはお申し込みください。実践型データサイエンティスト育成塾BIツールを使いながら実践演習でビッグデータ解析手法を体できる!パソコン完備の会場で身体一つで体験型研修。2日間でデータサイエンティストになれます。エクセルよりもっと大量のデータで効率よく分析できるようになりたい方に最適。【第13期】8回のセミナーでリーダーに求められる“コアスキル”を身につけ、180日間に渡り、講師のサポートの...IT法務リーダー養成講座システム開発・運用に関するもめ事、紛争が後を絶ちません。人手不足に悩み、働き方改革の必要性が問われるIT企業。日本初のデジタルバンク「みんなの銀行」誕生の軌跡に学ぶ「みんなの銀行」という日本初のデジタルバンクをつくった人たちの話です。「次の一手」が分かるDXの祭典。2023年6月に大阪で開催します。情報変更・解約6/1開催ウェビナー『ChatGPTは我々の仕事をいかに変えるのか?。