InfoQ ホームページ C++ に関するすべてのコンテンツ
-
Herb Sutter氏の語る現代的C++プログラミングの基本
CppCon 2014でHerb Sutter氏が,現代的なC++プログラミングの基本的なイディオムに関する講演を行った。ここではその要約を紹介しよう。
-
C++14登場 -その新機能
C++11に続くC++標準であるC++14の最終承認が完了し,年内の公開に向けてISOに提出された。C++の生みの親であるBjarne Stroustrup氏によると,C++14の改善内容はC++11に比べて "意識的に小さくなっている"が,それでも"ユーザに対する重要な利便性が追加された"ことで,C++を"より初心者向けに"する方向に踏み出しているという。
-
C++14で遅延評価と関数型を実現するStreamsライブラリ
Streamsは,遅延評価とデータの関数型変換を提供することで,C++標準ライブラリのコンテナとアルゴリズムの使い勝手を向上するC++14ライブラリである。mapやfilter, reduceといった一般的な操作を多数サポートする。InfoQはその作者にインタビューした。
-
Google Play Games - EventとQuest, Saved Games
Google Play Gamesサービスが先月,EventとQuest,そして新たにSave Game APIを導入した。C++とiOS SDKではすでに,これらの機能がサポートされている。
-
強力なRakNetネットワーキングライブラリ、Oculusによってオープンソース化
多数のプロジェクト(Lego Universe、Unity、Sony Onlineを含む)で使われているRakNetネットワーキングライブラリが買収され、新しいオーナーであるOculusによって修正BSDライセンスでリリースされた。これは多数の強力な機能を提供するライブラリが、コストなしでプロジェクトに使えることを意味している。
-
Googleがプログラマのビルドエラーを研究
GoogleのエンジニアがGoogleで9ヶ月間で、数千人の開発者が実行した2660万回のビルドに関するリサーチペーパーを発表した。このペーパーにはビルドのワークフローを説明し、ビルド失敗の頻度、コンパイルエラータイプ、修正作業を分析している。著者らによれば、この調査結果は大規模な組織でのビルドプロセスのあり方や、開発者より効率的にサポートする方法についての理解を促進するのに役に立つ。
-
Google、FlatBuffersをオープンソース化: 効率の良いクロスプラットフォームのシリアライゼーションライブラリ
Google "Fun Propulsion Labs" チームがFlatBuffersをオープンソース化した。FlatBuffersは特にゲーム開発者のパフォーマンス要求をサポートするために作られており、シリアライズされたデータをバッファに格納する。バッファはパースのオーバーヘッドなしに、ファイルに格納したり、そのままネットワークに伝送したりすることができる。
-
最新C++への注力を強めるVisual Studio “14"
Visual Studio "14"では,C++/C++14準拠性が改善される予定である。その開発の一環として,”14”にバンドルされるSTL(Standard Template Library)の大幅な変更が行われている。
-
C++14の新機能に潜む互換性リスクは何か
新C++標準であるC++14がC++言語に多くの変化を引き起こしそうだ。バグフィックスや小さな改善を主体として,前バージョンにする拡張は小規模になるように計画されているのだが,その数少ない変更が原因となって,正しいC++11プログラムがC++14準拠コンパイラで動作しないという事態の発生は避けられそうにない。新標準が完成に近づく今こそ,その中に潜むリスクを問う価値がある。
-
C++によるiOSとAndroidでのクロスプラットフォーム開発:Dropboxの教訓
Dropboxの開発者が、最近、アプリをiOSとAndroidの両方でそれぞれのプラットフォームごとにすべてを書き直すことなくサポートする方法についての講演をいくつか行っている。以下、そのアプローチをとることになった理由、それがもたらす恩恵、そのプロセスを通じて得られるいくつかのキーポイントについて再点検してみよう。
-
Webフレームワークのパフォーマンス比較
TechEmpowerは昨年から、Webフレームワークのパフォーマンスを測定、比較しようと、ベンチマークを走らせてきた。このベンチマークでは「フレームワーク」という言葉がゆるく使われており、ここにはプラットフォームやマイクロフレームワークも含まれている。
-
Coverity ScanがJava, Apache Hadoop, HBase, Cassandoraのコード向上をサポート
先頃リリースされたCoverityによるソース調査レポートでは,おもにリソースリークやnullポインタ,コントロールフローその他の問題の検出と修正が行われている。Linuxソースコードの検査も行われて,いくつかのバグが修正された。
-
Modern C++とVisual Studio
Modern C++サポートは、Microsoftがフォーカスし続ける領域である。今週、BuildにおいてHerb Sutter氏は、彼らの現在の取り組みについて最新情報を提供し、次のVisual Studio previewに追加されるCPPサポートレベルと将来について話した。
-
Coverity 7.0がリリース
Coverityがバージョン7.0をリリースした。 C#, Java, C, C++ のアル��リズムが改善され、SonarQube、Eclipse、Visual Studio 2013との統合がサポートされている。また、Objective-CとC/C++の開発で使われているClangコンパイラもサポートする。
-
Reactive Extensions for C++の紹介
Rx.cppとしても知られるReactive Extensions for C++が、WinRTでも(C++/CXを使って)、OS Xでも(clangを使って)利用できるようになった。まだ初期段階だが、最後のプレビュー以来、多くの仕事がなされている。