0

プロジェクト アーキテクトからの要求に問題があります。この人は、.NET の命名規則と同じ方法ですべてのプロパティに名前を付けることを望んでいます。

JavaScript を JavaScript として維持するために戦うべきですか、それとも .NET ショップにいるという理由で .NET 命名規則が JS に忍び寄るのを許すべきでしょうか?

//ALL THE RETURN PROPERTY NAMES SHOULD START WITH A CAPITALIZED LETTER - like     MaxItemsPerPage.
return {
    MaxItemsPerPage: _dataModel.pageSize,
    data: _data,
    searchTerm: _searchTerm,
    filterViewModel: _filterModel,
    dataGridViewModel: _dataModel,
    sortOptions: _sortOptions,
    selectedSortOption: _selectedSortOption,
    selectedSortOrder: _selectedSortOrder,
    sortOrders: _sortOrders,
    loading: _loading,
    update: updateData,
    searchResults: _searchResults,
    pageTitle: _pageTitle,
    showSortOpts: _showSortOpts,
    enableSortOpts: _enableSortOpts,
    disableSortOpts: _disableSortOpts,
    showA: _showAscendingOptions,
    showD: _showDescendingOptions,
    selectedSearchTemplate: _selectedSearchTemplate,
    searchListTemplateOptions: _searchListTemplates
};
4

2 に答える 2

3

Javascript コードは、命名規則を含む Javascript 規則に従う必要があります。

C# や VB のコードを書くように Javascript を書こうとすると、悪い Javascript になってしまいます。良いコードを書くということは、使用する言語ごとに良い慣用的なコードを書くことを意味します。

于 2012-06-26T18:11:25.357 に答える
2

個人的には、純粋な JavaScript コードではキャメル ケースを、純粋な C# プロパティではパスカル ケースを好みます。

しかし、JSON を介して C# クラスを JavaScript にシリアル化する場合、または JavaScript オブジェクトとして開始された投稿された値をモデル バインドする場合、境界はぼやけます。アーキテクトが「どちらか一方を一貫して行うべきだ」と言うのは、完全に妥当な懸念事項です。どの道を行くかは、多くのことに依存します。オブジェクトが境界を越え、選択を迫られたときは、次のことを自問してください。

外部の関係者は公開されたコントラクト/JavaScript オブジェクトに依存していますか、それとも純粋に内部的なものですか?

JavaScript は、軽い jQuery の動作または重大なビジネス上の問題に使用されますか? JavaScript の単体テストを行っていますか?

C# でシリアル化されたクラスをよく使用しますか? 多くのビジネス層、または単体テスト全体で?

C#/JS コントラクトの両端に存在するオブジェクトの場合、C# のコード % と JS のコード % は何 % ですか?

于 2012-06-26T18:20:45.717 に答える