RustとPythonを比較【第1回】
なぜ「Rust」は「C」「C++」に代わる“期待の言語”なのか
人気のプログラミング言語「Rust」と「Python」は、それぞれ異なる特徴や得意分野を持つ。両者を比較するに当たり、まずはRustの歴史や強み、機構といった概要を紹介する。
「Rust」と「Python」は、異なる得意分野を持つ人気のプログラミング言語だ。自社の開発プロジェクトに向いているのはどちらのプログラミング言語なのかを見極めるには、両者の特性を理解する必要がある。まずはRustについて、なぜ「C」および「C++」に代わるプログラミング言語として期待されているのかを押さえておこう。
「Rust」はなぜ期待の代替言語なのか
Rustは2006年、非営利組織Mozillaのグレードン・ホア氏が個人プロジェクトとして開発を始めた。CおよびC++に代わる、より安全なプログラミング言語の創出を目指している。2015年にはMozillaの支援の下で「Rust 1.0」が公開され、安全性や並行性、処理性能を重視するプログラミング言語として認知を得た。
2024年5月、米政府のセキュリティ政策機関ONCD(Office of the National Cyber Director)が公開したレポート「2024 Report on the Cybersecurity Posture of the United States」は、メモリの安全性を確保できるプログラミング言語を推奨し、Rustが注目を集めた。同年7月には、米国防高等研究計画局(DARPA)が、Cで書かれたソースコードをRustに自動変換する技術の実現を目指すプロジェクト「Translating All C to Rust」(TRACTOR)を発表した。
Rustの特徴である「所有権」は、ガベージコレクション(不要なデータを削除して空き容量を増やす機構)を使用せずに、メモリの安全性を確保する仕組みだ。「Fearless Concurrency」(恐れない並行)という設計思想によって、開発者が安全かつ効率的に並行処理を実装できる。ソースコードに変数の型を明示し、コンパイル(ソースコードを実行可能ファイルに変換する作業)時に整合性をチェックする「静的型付け」を採用しており、コンパイル時にエラーを検出して防止できる点も特徴だ。
コンピュータの基本的な機能や、ハードウェアを直接制御するプログラムを作成する「システムプログラミング」に不慣れな開発者にとって、Rustの習得は容易ではない。所有権や、所有権を持つデータへのアクセス権限を一時的に他のプログラムに与える「借用」、参照(データの場所を示す情報)が有効である期間「ライフタイム」といった概念の習得には、時間を要する可能性がある。
次回はなぜPythonが人気を集めているのかを解説する。
TechTarget発 エンジニア虎の巻
米国Informa TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
TechTarget発 エンジニア虎の巻
米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品レビュー
[ヴィーム・ソフトウェア株式会社] SCS評価制度を導入するだけで十分? 組織の防御力を高める活用方法とは -
技術文書・技術解説
[フォーティネットジャパン合同会社] AIランサムウェアに勝つ 自律型エンドポイント管理導入で確認すべき条件4つ -
技術文書・技術解説
[フォーティネットジャパン合同会社] LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント -
製品レビュー
[ネットアップ合同会社] 研究分野でAI活用が進まない? 真の成果につなげるデータ管理の在り方とは -
製品レビュー
[ヴィーム・ソフトウェア株式会社] SCS評価制度を導入するだけで十分? 組織の防御力を高める活用方法とは
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
2
VMware離れの決め手は“機能”以外だった 情シス109人が選んだ新基準と死角は
-
3
IBM iのブラックボックス化を打破 資産継承と進化を実現する「IBM Bob」の実力
-
4
二極化する生成AI活用 「一部の社員しか使いこなせない」をどう解消すべきか
-
5
「Apple Watch」、読者の95%は「仕事で使える」、5%は何に不満?
-
6
「クラウドDR」4大基礎用語 クラウドバックアップやDRaaSとの違いは?
-
7
高機能化が進む“タブレット型電子カルテ”は次の段階へ
-
8
「有線LAN環境」に関するアンケート
-
9
「ITインフラとデータ保護・バックアップ対策」に関するアンケート
-
10
「Excel至上主義」と“謎マクロ”の限界 属人化リスクを断つ業務移行の勘所
ホワイトペーパーランキング PR
-
1
登録セキスぺが語る「SCS評価制度」の舞台裏 星を取得すべき理由と対応のコツ
-
2
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
3
OSSでは困難 100超のサービスを持つマネーフォワードが実践した統合監視術
-
4
「改正物流効率化法対策」徹底解説 総物流費を抑制するサプライチェーン戦略
-
5
月1000枚の紙を削減 9年動けなかった組織が、業務改革のその先に得たもの
-
6
ネットワーク遅延の原因、「パケットロス」の基礎知識と効果的な解決策
-
7
ドラマで分かる、標的型攻撃メールの被害を受ける企業と回避できる企業の分岐点
-
8
Windows PCとMacの選択制で生産性向上 LINEヤフーが実践する運用管理方法とは
-
9
「Google Workspace」活用事例34選、先進の生成AIによる組織変革の全貌
-
10
ソフトウェア開発の属人化と手戻りをどう防ぐ? 速さと品質を両立させる方法
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー