質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

コーディング規約

コーディング規約とは、コードの書き方についての決め事のことです。 文法のことではなく、そのチームなどの中の約束事としてどのような書き方で行うかを定めるもの。 項目の例として、関数や変数の命名規則、コーディングのスタイル、括弧やインデントの書き方などが挙げられます。

Q&A

解決済

4回答

2855閲覧

C#で、Jsonをデシリアライズしたデータを格納するクラスを、なんと命名しますか?

usugita_san

総合スコア226

C#

C#はマルチパラダイムプログラミング言語の1つで、命令形・宣言型・関数型・ジェネリック型・コンポーネント指向・オブジェクティブ指向のプログラミング開発すべてに対応しています。

コーディング規約

コーディング規約とは、コードの書き方についての決め事のことです。 文法のことではなく、そのチームなどの中の約束事としてどのような書き方で行うかを定めるもの。 項目の例として、関数や変数の命名規則、コーディングのスタイル、括弧やインデントの書き方などが挙げられます。

0グッド

0クリップ

投稿2017/03/15 07:23

C#の実装中に疑問に思ったのでお問い合わせします。

JSONの文字列があります。これをデシリアライズして、あるクラスのインスタンスを生成しようとしています。
このクラスはJSONに含まれていたデータをそもまま保持する事を目的として、主に他の処理との情報の受け渡しに使用します。

JavaですとこういうクラスをDTOを呼んでいたと記憶しています。例えば、社員情報を格納するDTOは、EmployeeDto みたいな感じです。
このDTOを、エンティティとサービスの間でやりとりさせています。

C#では、このようなクラスにどのように命名するべきでしょうか?
EmployeeModel でしょうか?
EmployeeEntity でしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

DTO という名前は少なくとも私のいる C# 界隈では聞いたことがありません。Model や Entity もつけないです。普通にクラス名を付与しています。

ただし、それは私のいる C# 界隈に限った話で、開発者が組織に属して開発しているのなら、その組織で命名規則を決めて、個々の開発者はそれに従うというのが普通だと思います。

個人で開発していて、将来的に保守にも他人が関わることがなければ、それはもう個人の好みの問題で、自分が気に入ったように命名すればいいと思います。

投稿2017/03/15 08:49

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

usugita_san

2017/03/21 09:32

仰る通りです。まずはチーム内で意見をまとめようと思います。
guest

0

ベストアンサー

MVC的にはModelじゃないですかね。
データは全部Modelですし。

オレオレスタイルですが、Model.Jsonという名前空間にJSON用のクラスをおいています。

投稿2017/03/15 07:38

kiichi54321

総合スコア1984

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

usugita_san

2017/03/21 09:30

仰る通りのようです。githubでいくつかC#のプロジェクトを見てみたのですが、いくつかのプロジェクトでmodelってつけてました。ありがとうございます。
usugita_san

2017/03/22 09:14

Modelって事で確定しました。 ありがとうございました。
guest

0

こんにちは。

そのまんまDTOでも良いのでは?
Java専用の用語というわけでもないようですし、既に良く使われている用語なら、理解しやすいですし。

投稿2017/03/15 07:52

Chironian

総合スコア23272

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

usugita_san

2017/03/21 09:31

一時期はそう思ってたのですが、githubでソースを見ていると、どうもDateTimeOffsetの略でdtoってつけてる事が結構あるんです。Javaだとそんなの無いから全然気づかなかったです・・・。
Chironian

2017/03/21 10:29

あれれ、被ってますか。データ交換用に良く使われる名称は特に把握してません。 > このクラスはJSONに含まれていたデータをそもまま保持する事を目的とし なるべくこの目的が想起できるような命名にしたいところですね。
guest

0

プロジェクトに関わる方々で共通の認識がとれればなんでもよいと思います。むしろそこが一番重要だと思います。
あとは、責務に応じた名称になっていて、名称から責務が理解できるものであればと。

投稿2017/03/16 02:22

BEACHSIDE

総合スコア294

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

usugita_san

2017/03/21 09:33

確かにそこが重要なんですよね。自分の考えに自信が持てなくて、常識とか正解を求めてました。 チーム内で意見を求めようと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問