「Go 1.18」リリース--ファジングテストをネイティブでサポート

Owen Hughes (ZDNET.com) 翻訳校正: 編集部

2022-03-23 10:52

 Googleが「Go 1.18」をリリースし、「Go」プログラミング言語に「重要な」アップデートを施したことを明らかにした。具体的には、主要なプログラミング言語として初めて、ファジングテストのネイティブサポートが導入された。

提供:skynesher/Getty
提供:skynesher/Getty

 Googleの説明によると、ファジングテストまたは「ファジング」とは、ソフトウェアにランダムなデータや無効なデータを入力して、バグや未知のエラーの有無を確認することで、ソフトウェアの脆弱性をテストする手段だという。

 これにより、機能の進化が続くGoのコードに新たなセキュリティ層が追加され、安全な状態が維持される。ソフトウェアに対する攻撃の頻度と複雑さの両方がエスカレートし続けているので、このアップデートは極めて重要だ。

 Googleのインフラストラクチャー担当バイスプレジデントのEric Brewer氏は、「Googleでは、世界が依存するオンラインインフラストラクチャーとアプリケーションのセキュリティ保護に献身的に取り組んでいる」と述べた。

 「これに関する重要な側面は、オープンソースの依存関係チェーンのセキュリティを理解して検証できることだ。Goの1.18リリースは、開発者が最も安全なアプリケーションを構築して、脆弱性が発見された場合のリスクを理解し、サイバーセキュリティ攻撃の影響を軽減できるようにするための重要な一歩である」

 ファジングをサポートする言語はほかにもあるが、Goは主要言語として初めて、それをコアツールチェーンに組み込んだ。つまり、ほかの言語と違って、サードパーティーサポートの統合は必要ない。

 Googleが「10年以上にわたる設計作業の集大成」と宣伝するGo1.18は、開発者が長年要望してきた同言語の重要なアップデートを多数提供する。

 Googleは、パラメーター化された型を使用するジェネリックコードのサポートが新たに追加されたことも強調している。これは、Goユーザーからの要望が最も多かった機能だ。

 GoogleでGoの製品および戦略担当リードを務めるSteve Francia氏によると、ジェネリクスがサポートされていない場合、Goユーザーは使用するデータ型ごとに同様のコードを繰り返す必要があるという。

 Francia氏は米ZDNetに対し、「ジェネリクスを使用すれば、ユーザーはそのコードを単一のルーチンに統合し、なおかつ安全性も維持することが可能だ」と語った。「さらに、ユーザーは、より読みやすくて高性能なコードと、Goが一貫して提供してきた安全性も享受することができる。それは、生産性とパフォーマンスに大きな『恩恵』をもたらす」

 最後に紹介するGo 1.18プログラミング言語への追加機能は、開発者が単一のリポジトリーで複数のコンポーネントを使用できるようにするモジュールワークスペースと、「ARM64」およびApple「M1」プロセッサーでの20%のパフォーマンス向上だ。

 Googleが2007年に開発したGoは、特にソフトウェアエンジニアが現代的なマルチコアコンピューティングシステム向けの安全なオープンソースエンタープライズアプリケーションを構築できるように支援することを目的としている。

 Googleによると、「Kubernetes」や「Istio」など、Cloud Native Computing Foundation(CNCF)のプロジェクトの4分の3以上はGoで記述されているという。Stack Overflowのデータによると、世界中の開発者の約10%はGoを使用しているという。テクノロジー分野でGoプログラマーを求める採用担当者が増えていることを示す兆候もある。

 Francia氏は、「『Kubernetes』や『Docker』など、クラウドネイティブでコンテナー化されたアプリケーション開発の未来を形作る重要なプロジェクトの多くが、Goを使用して構築されている」と説明する。

 「Googleには専任のGoチームがあるが、コミュニティーからの多大な貢献を歓迎している。これは共同の取り組みであり、彼らのアップデートによって、われわれはコミュニティーがGoの長期的なビジョンを達成できるように支援している」

この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ホワイトペーパー

新着

ランキング

  1. セキュリティ

    「デジタル・フォレンジック」から始まるセキュリティ災禍論--活用したいIT業界の防災マニュアル

  2. 運用管理

    「無線LANがつながらない」という問い合わせにAIで対応、トラブル解決の切り札とは

  3. 運用管理

    Oracle DatabaseのAzure移行時におけるポイント、移行前に確認しておきたい障害対策

  4. 運用管理

    Google Chrome ブラウザ がセキュリティを強化、ゼロトラスト移行で高まるブラウザの重要性

  5. ビジネスアプリケーション

    技術進化でさらに発展するデータサイエンス/アナリティクス、最新の6大トレンドを解説

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]