আমার মনে হয় যে এই আলোচনাটি বার বার আসার কারণ হ'ল এটি মনে হয় যে আপনার প্রয়োজনীয় সমস্ত ডেটা সহ কোনও বস্তু নিয়ে যাওয়া এবং এটি একটিরূপে অদৃশ্য বা প্রায় অভিন্ন দেখায় এমন একটি সামগ্রীতে রূপান্তরিত করা গুরুতর বেদনা বলে মনে হচ্ছে আপনি বন্ধ করা হয়।
এটা সত্য, এটি পিটা তবে এটি করার কয়েকটি কারণ রয়েছে (উপরে বর্ণিতগুলি ছাড়াও)।
- ডোমেন অবজেক্টগুলি খুব ভারী হয়ে উঠতে পারে এবং কলটির জন্য প্রচুর অকেজো তথ্য থাকতে পারে। এই ব্লাটটি ইউআই-কে ধীর করে দেয় কারণ সমস্ত ডেটা সংক্রমণ, মার্শাল্ড / আনমারশেল্ড এবং পার্স করা হয়েছে। আপনি যখন কোনও এফই বিবেচনা করেন তখন আপনার ওয়েব সার্ভিসগুলি উল্লেখ করে এবং এজেএক্স বা অন্য কোনও মাল্টি-থ্রেড পদ্ধতির সাথে ডাকা হওয়ার সাথে সাথে আপনার লিঙ্কগুলিকে অলস করে দেবে links এই সমস্ত ওয়েবসার্চগুলির সাধারণ স্কেলিবিলিটিতে আসে
- খুব বেশি ডেটা প্রকাশ করে সুরক্ষা সহজেই আপস করা যায়। আপনি যদি ডিটিও ফলাফল থেকে অপসারণ না করেন তবে সর্বনিম্ন আপনি ব্যবহারকারীদের ইমেল ঠিকানা এবং ফোন নম্বর প্রকাশ করতে পারেন।
- ব্যবহারিক বিবেচনাগুলি: 1 টি অবজেক্টের জন্য স্থায়ী ডোমেন অবজেক্ট এবং একটি ডিটিও হিসাবে প্যারেড করতে কোডের চেয়ে বেশি টিকা থাকতে হবে। স্তরটির মধ্য দিয়ে যাওয়ার সাথে সাথে অবজেক্টের স্থিতি পরিচালনা করতে আপনার বেশ কয়েকটি সমস্যা থাকবে। সাধারণভাবে এটি পিআইটিএর আরও অনেক কিছু পরিচালনা করার জন্য কেবল কোনও ডোমেন অবজেক্ট থেকে কোনও ডিটিওতে অনুলিপি করার ক্ষেত্রগুলি করে।
তবে, আপনি যদি রূপান্তর শ্রেণীর সংকলনে অনুবাদ যুক্তিটি সজ্জিত করেন তবে আপনি এটি মোটামুটি কার্যকরভাবে পরিচালনা করতে পারেন
ল্যাম্বদাজে একবার দেখুন যেখানে আপনি 'ডোমেনওবিজে, টুডো) রূপান্তর করতে পারেন' সংগ্রহের সাথে ব্যবহারের জন্য এটির একটি ওভারলোড রয়েছে। এটি একটি নিয়ামক পদ্ধতির উদাহরণ যা এটি ব্যবহার করে। আপনি দেখতে পাচ্ছেন, এটি এত খারাপ দেখাচ্ছে না।
@GET
@Path("/{id}/surveys")
public RestaurantSurveys getSurveys(@PathParam("id") Restaurant restaurant, @QueryParam("from") DateTime from, @QueryParam("to") DateTime to) {
checkDateRange(from, to);
MultiValueMap<Survey, SurveySchedule> surveysToSchedules = getSurveyScheduling(restaurant, from, to);
Collection<RestaurantSurveyDto> surveyDtos = convert(surveysToSchedules.entrySet(), SurveyToRestaurantSurveyDto.getInstance());
return new RestaurantSurveys(restaurant.getId(), from, to, surveyDtos);
}