うるう年対策は万全ですか?

このポストは、2 月 2 日に投稿された Is your code ready for the leap year? の翻訳です。  2016 年も 2 月に入りました。そして今年はうるう年です。多くの人にとっては仕事や遊ぶ日が 1 日増えたイレギュラーな年なだけかも知れませんが、ソフトウェア開発者にとってはこれがたいへん大きな問題になる可能性があります。 もしも今、うるう年のバグが潜んでいるコードがあるかもと気になっている方は、すぐにチェックしてみてください。もしかしたら、既に影響が出始めているのに気付いていないだけかもしれません。では、どんなバグがコードに潜んでいることが考えられるのでしょうか? 日付が 1 日ずれる問題。特に、日付の範囲を指定するクエリを使用したデータ フィルタリング処理など ユーザー インターフェイスが予期しない動作をする、または望ましくない動作をする エッジ ケースの発生により、例外、クラッシュ、ハングアップが起きる ここまで言っても、「まさか。私のコードは問題ないですよ。ちゃんと単体テストをしてますから」と、無関心な方もいるでしょう。 そのような方に、私はいつも次のような質問をします。「そうですか。ではテストではきちんと時計をモックしていますか? 2 月 29 日や 12 月 31 日を含めたエッジ ケースをテストしていますか? C++ の低レベル コードやシステムの残りの部分もテストしましたか? そもそも、うるう年のバグがどのようなものか、本当にご存じですか?」 すると、多くの人は一様にぽかんとした顔を見せます。   この問題が Azure に影響する理由 うるう年は開発者が書くほとんどのコードに関係する問題であり、多くの処理が Azure クラウドでの実行に影響します。Azure ではうるう年だった 2012 年にサービス停止 (英語)…


Azure App Service Mobile Apps SDK for Node.js の最新情報

このポストは、1 月 26 日に投稿された Progress update: Node.js SDK for Azure App Service Mobile Apps の翻訳です。   昨年 9 月 (英語)、Azure App Service Mobile Apps SDK for Node.js の最初のアルファ版の提供が開始されました。この SDK は Azure App Service にモバイル バックエンドを実装するコードを簡略化するものであり、提供以来ご活用いただいたコミュニティの皆様からの多数のフィードバックに基づいて、このソリューションの発展に努めてきました。   Yeoman ジェネレーター 特に Node.js で Web アプリケーション開発を行った経験のある方にとっては、単純なモバイル バックエンドを実装するコードの作成はさほど難しいことではありません。しかし、私たちは基本的なスキャフォールディングの生成プロセスをさらに容易にしたいと考えました。Node.js コミュニティは、プロジェクトのスキャフォールディングを生成する Yeoman (英語) という優れたツールを利用しています。今回、このツール用のプラグインをリリースしました。Azure App Service Mobile Apps の新規プロジェクトを設定するには、以下のコードを使用します。 npm install…


Azure App Service Mobile Apps 向けベータ版 Apache Cordova プラグインを発表

このポストは、1 月 19 日に投稿された Announcing the Beta Apache Cordova Plugin for Azure App Service Mobile Apps の翻訳です。 このたび、Azure App Service Mobile Apps 向け Apache Cordova プラグインのベータ リリースが発表されました。このプラグインでは、データへのアクセス、プッシュ登録、Node.js または ASP.NET のいずれかで作成された Azure Mobile Apps バックエンドでの認証に使用する API が提供されます。 Azure Mobile Apps バックエンドの開発の詳細については、ASP.NET 向けまたは Node.js 向けのサーバーの使用方法に関するドキュメントを参照してください。また、Azure ポータルで Azure Mobile Apps バックエンドを生成、管理することもできます。方法については、TodoList のクイックスタート ドキュメントに簡単なガイドがありますので、そちらを参照してください。 サービスの作成が完了したら、次に Apache Cordova クライアントを作成します。このために使用できる Apache…