API構築の基礎を学んだ。QConは、開発者コミュニティにおける知識とイノベーションの普及を促進することで、ソフトウェア開発に力を与える。実務者主導のカンファレンスであるQConは、チーム内のイノベーションに影響を与える技術チームのリーダー、アーキテクト、エンジニアリングディレクター、プロジェクトマネージャー向けにデザインされている。Sheehy氏は、人工知能ハイプ時代における責任ある開発者としてのあり方について、洞察に富んだ開会基調講演をした。Grizzanti氏が、「スタッフ・プラス」への道と、それを「科学」というより「芸術」としてとらえ、芸術を創作することとソフトウェアを創作すること、そして組織のダイナミクスに対処することの類似性について語っている。Codeを採用する:確認するべき6つの適性LCNC(ローコード/ノーコード)プラットフォームは、プログラマーだけでなくプログラマーでなくても、最小限のコーディングとワンクリックのデプロイメントで、アプリケーションソフトウェアを開発できるよう設計されている。ドラッグ&ドロップ方式のインターフェースなどを利用することで、開発・デプロイメントプロセスを簡素化し、効率的なアプリケーション開発とデプロイメントを実現する。キャプチャしたレコードによって、アプリケーションの全メモリとレジスタ状態の再生が可能になることにより、実行ステップのリプレイ、前進、後退が、UndoDBデバッガ経由でサポートされる。Law博士から、その詳細情報を聞くことができた。Webサイトに述べられているように、断続的なソフトウェアエラーのデバッグは、開発、テスト、運用のいずれの段階においても、エンドユーザとエンジニアの両方にとって欲求不満を覚えるものである。C++やGoなどの言語用の最新のデバッガは、総じて機能は豊富だが、バグの再現に必要な、関連する非決定的外部イベントをすべてキャプチャしていないため、実行中のプロセスをリニアにデバッグすることしかできない。モックやスタブを使って外部イベントのシミュレートや決定性の追加をしたり、デバッグセッション内でアプリケーションを複数回実行することはもちろん可能だが、これらのアプローチはオーバーヘッドを伴ったり、構成が複雑であったり、時間を要したりする。Recordは、すべての非決定的データをインストラクションのレベルまですべてキャプチャし、これを使ってアプリケーションの完全な状態を再生することが可能である。この記録プロセスによって、ターゲットアプリケーションの実行速度は、一般的に2~5分の1にスローダウンする。Recorderは障害の発生するプロセスの記録のみを目的としており、プロファイラや他の監視ツールのように常時実行することを意図したものではないのだ。データキャプチャは最適化されているため、メモリ内にストアすることも可能で、プログラム全体のメモリとレジスタ状態を最小のオーバーヘッドで再生することができる。記録したデータをファイルに永続化して、エンジニア間で共有することも可能だ。可逆的(reversible)デバッガも統合されているので、後方向と前方向にリプレイして記録内容をデバッグすることもできる。Recorderの使用をメトリクスの発行やロギングの代用として見るべきではない、という点を明確に説明した。Recorderは、アプリケーション内の障害や支障の存在をエンジニアに警告するためのものではない。そのような目的には、メトリックの収集と分析、例外処理コード、警告ツールといったものを活用した方がよい結果が得られる。ロギングも同じように、アプリケーション内の任意の実行ポイントにおいて発生している、あるいは発生すべき事象に関して、より多くのコンテキストを提供するために用いられる。ビジネス上の問題、あるいはその基盤となるアルゴリズムに付加的なコンテキストを提供するものとして、ロギングは有用な存在です。ロギングは"分かっていることを述べる"ことができます。例外やスタックトレースは"何が悪かったのか"について、手がかりを与えてくれます。エンジニアとしては、問題が発生したシナリオを単純に再現して、問題のメンタルモデルや根本原因をステップ・バイ・ステップで構築したい場合も少なくないはずです。unknowns)"を解決する手ががりを与えてくれることを目指している、と説明した。氏は、バグの原因を理解することの困難さについて、X軸をバグの出現頻度、Y軸をバグの再現性とした場合の2次グラフによってモデル化できる、と述べた。Recorderはこのグラフの右下、すなわち、最も頻度が大きく、従来のデバッグテクニックでは最も再現が難しい位置において優位性を示すのである。Recordの"可逆的(reversible)デバッガ"であるUndoDBを使った実行履歴の解析が可能になる。UndoDBはGNUプロジェクトのデバッガGDBがベースで、C/C++、Rust、Adaなど、GDBがサポートする言語で記述されたアプリケーションのソースレベルデバッグをサポートし、変数とメモリのインスペクション、スクリプティング、条件付きブレークポイントとウォッチポイントといったデバッガに期待されるすべての機能に加えて、アプリケーションの前方向すべてと後方への実行を可能にする。その他の機能は次のようなものだ。プロセスやスレッドが共有メモリ上のデータ構造を操作した順序を明らかにする。スレッド実行を乱数化して、レースコンディションなどマルチスレッドに関わる障害を明らかにする。API、CLI、フロントエンド、コンテナプラットフォームのインテグレーション。特別なライブラリを用いてアプリケーションを再コンパイルないしリンクする必要はない。5.0はKUbernetesおよびDockerのコンテナ個々の実行を記録し、再生することもできるため、マイクロサービス環境における障害を短時間で解決する支援となる、とLaw氏は言う。x86およびx86_64上で動作するC/C++、Go、Rust、Adaアプリケーションがサポート対象で、近くJavaがサポートされる予定である。一般的なすべてのLinuxディストリビューションに適応し、カーネルを変更する必要はない。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見るあなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。毎週火曜日に前週のまとめコンテンツをお送りいたします。(日本語版は不定期リリース)25万人のシニアな開発者コミュニティーにぜひご参加ください。サンプルを見る様々なイノベーターとアーリーアダプターがお送りするテクノロジーの概要を見る。自分がまだ知らないことに気づいていないと知るあなたが興味のあるトピックスをいつでも最新な情報に。あなたのメールアドレスはこちら国を選んでください。プライバシーポリシーに従って私の個人情報を扱うことに同意します。Inc.プライバシーBT。