There is a well-known heuristic called the Law of Demeter2 that says a การแปล - There is a well-known heuristic called the Law of Demeter2 that says a ไทย วิธีการพูด

There is a well-known heuristic cal

There is a well-known heuristic called the Law of Demeter2 that says a module should not
know about the innards of the objects it manipulates. As we saw in the last section, objects
hide their data and expose operations. This means that an object should not expose its
internal structure through accessors because to do so is to expose, rather than to hide, its
internal structure.
More precisely, the Law of Demeter says that a method f of a class C should only call
the methods of these:
An object passed as an argument to f
• An object held in an instance variable of C
The method should not invoke methods on objects that are returned by any of the
allowed functions. In other words, talk to friends, not to strangers.
The following code3 appears to violate the Law of Demeter (among other things)
because it calls the getScratchDir() function on the return value of getOptions() and then
calls getAbsolutePath() on the return value of getScratchDir().
final String outputDir = ctxt.getOptions().getScratchDir().getAbsolutePath();
0/5000
จาก: -
เป็น: -
ผลลัพธ์ (ไทย) 1: [สำเนา]
คัดลอก!
มีวริรู้จักเรียกว่ากฎหมาย Demeter2 ที่บอกว่า โมไม่ควรรู้เกี่ยวกับมิตรเครื่องในของวัตถุมันปรุงแต่ง เราเห็นในส่วนสุดท้าย วัตถุซ่อนข้อมูล และเปิดเผยการดำเนินงาน หมายความ ว่า วัตถุที่ควรแสดงความภายในโครงสร้าง โดยอิง accessors เนื่องจากทำ การเปิดเผย มากกว่า การ ซ่อน การโครงสร้างภายในเบสกฎหมาย Demeter กล่าวว่า ควรเท่านั้นสามารถเรียก f วิธีของคลาส Cวิธีการเหล่านี้:วัตถุส่งผ่านเป็นอาร์กิวเมนต์ไป f•วัตถุที่จัดขึ้นในตัวแปรอินสแตนซ์ของ Cวิธีการควรเรียกวิธีการบนวัตถุที่ส่งกลับ โดยใด ๆ ของฟังก์ชันได้ ในคำอื่น ๆ พูดคุยกับเพื่อน ไม่ให้คนแปลกหน้าCode3 ต่อไปนี้ปรากฏขึ้นเพื่อ ละเมิดกฎหมาย Demeter (ระหว่างสิ่งอื่น ๆ)เพราะมันเรียกฟังก์ชัน getScratchDir() บนค่าของ getOptions() แล้วเรียก getAbsolutePath() บนค่าของ getScratchDir()สุดท้ายสตริ outputDir = ctxt.getOptions().getScratchDir().getAbsolutePath()
การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 2:[สำเนา]
คัดลอก!
มีการแก้ปัญหาที่รู้จักกันดีที่เรียกว่ากฎหมายของ Demeter2 ที่บอกว่าโมดูลไม่ควรเป็น
ความรู้เกี่ยวกับอวัยวะภายในของวัตถุที่มันปรุงแต่ง ในฐานะที่เราเห็นในส่วนสุดท้ายวัตถุ
ซ่อนข้อมูลของพวกเขาและเปิดเผยการดำเนินงาน ซึ่งหมายความว่าวัตถุที่ไม่ควรเปิดเผยของ
โครงสร้างภายในผ่าน accessors เพราะการทำเช่นนั้นคือการเปิดเผยมากกว่าที่จะซ่อนของ
โครงสร้างภายใน.
อีกอย่างแม่นยำกฎหมายของ Demeter บอกว่าวิธีการ F ของคลาส C เท่านั้นควรจะเรียก
วิธีการเหล่านี้:
วัตถุผ่านเป็นอาร์กิวเมนต์ F
•วัตถุที่จัดขึ้นในตัวแปรเช่น C ของ
วิธีการที่ไม่ควรเรียกวิธีบนวัตถุที่ส่งคืนโดยใด ๆ ของ
ฟังก์ชั่นที่ได้รับอนุญาต ในคำอื่น ๆ พูดคุยกับเพื่อนไม่ให้คนแปลกหน้า.
code3 ต่อไปนี้ปรากฏที่จะละเมิดกฎหมายของ Demeter (เหนือสิ่งอื่น)
เพราะมันเรียก getScratchDir () ฟังก์ชันในค่าตอบแทนของ getOptions () และจากนั้น
เรียก getAbsolutePath () บน ค่าตอบแทนของ getScratchDir ().
String สุดท้าย outputDir = ctxt.getOptions () getScratchDir () getAbsolutePath ()..;
การแปล กรุณารอสักครู่..
ผลลัพธ์ (ไทย) 3:[สำเนา]
คัดลอก!
มีที่รู้จักกันดีนี้เรียกว่ากฎหมายของ demeter2 ว่าโมดูลไม่ควรรู้เกี่ยวกับตัวตนของวัตถุมันควบคุมทุกอย่าง ตามที่เราเห็นในส่วนสุดท้าย วัตถุซ่อนและเปิดเผยข้อมูลการดำเนินงาน ซึ่งหมายความว่าวัตถุที่ไม่ควรเปิดเผย ของโครงสร้างภายในผ่าน accessors เพราะทำอะไรเปิดเผย แทนที่จะซ่อนของโครงสร้างภายในยิ่งกว่านั้น กฎหมายของคลีฟแลนด์กล่าวว่าวิธีการ F ของ Class C เท่านั้นที่ควรโทรวิธีการเหล่านี้ :วัตถุผ่านเป็นอาร์กิวเมนต์ที่จะฉ- วัตถุที่จัดขึ้นใน instance variable ของซีวิธี ไม่ควรใช้วิธีการบนวัตถุที่ถูกส่งกลับโดยใด ๆของอนุญาตการทำงาน ในคำอื่น ๆคุยกับเพื่อน ไม่ใช่คนแปลกหน้าการ code3 ต่อไปนี้จะปรากฏขึ้นที่ฝ่าฝืนกฎหมายของ Demeter ( ในหมู่สิ่งอื่น ๆ )เพราะมันเรียกฟังก์ชันที่คืนค่าของ getscratchdir() getoptions() แล้วโทร getabsolutepath() ที่คืนค่าของ getscratchdir() .สุดท้ายสาย outputdir = ctxt . getoptions() . getscratchdir() . getabsolutepath() ;
การแปล กรุณารอสักครู่..
 
ภาษาอื่น ๆ
การสนับสนุนเครื่องมือแปลภาษา: กรีก, กันนาดา, กาลิเชียน, คลิงออน, คอร์สิกา, คาซัค, คาตาลัน, คินยารวันดา, คีร์กิซ, คุชราต, จอร์เจีย, จีน, จีนดั้งเดิม, ชวา, ชิเชวา, ซามัว, ซีบัวโน, ซุนดา, ซูลู, ญี่ปุ่น, ดัตช์, ตรวจหาภาษา, ตุรกี, ทมิฬ, ทาจิก, ทาทาร์, นอร์เวย์, บอสเนีย, บัลแกเรีย, บาสก์, ปัญจาป, ฝรั่งเศส, พาชตู, ฟริเชียน, ฟินแลนด์, ฟิลิปปินส์, ภาษาอินโดนีเซี, มองโกเลีย, มัลทีส, มาซีโดเนีย, มาราฐี, มาลากาซี, มาลายาลัม, มาเลย์, ม้ง, ยิดดิช, ยูเครน, รัสเซีย, ละติน, ลักเซมเบิร์ก, ลัตเวีย, ลาว, ลิทัวเนีย, สวาฮิลี, สวีเดน, สิงหล, สินธี, สเปน, สโลวัก, สโลวีเนีย, อังกฤษ, อัมฮาริก, อาร์เซอร์ไบจัน, อาร์เมเนีย, อาหรับ, อิกโบ, อิตาลี, อุยกูร์, อุสเบกิสถาน, อูรดู, ฮังการี, ฮัวซา, ฮาวาย, ฮินดี, ฮีบรู, เกลิกสกอต, เกาหลี, เขมร, เคิร์ด, เช็ก, เซอร์เบียน, เซโซโท, เดนมาร์ก, เตลูกู, เติร์กเมน, เนปาล, เบงกอล, เบลารุส, เปอร์เซีย, เมารี, เมียนมา (พม่า), เยอรมัน, เวลส์, เวียดนาม, เอสเปอแรนโต, เอสโทเนีย, เฮติครีโอล, แอฟริกา, แอลเบเนีย, โคซา, โครเอเชีย, โชนา, โซมาลี, โปรตุเกส, โปแลนด์, โยรูบา, โรมาเนีย, โอเดีย (โอริยา), ไทย, ไอซ์แลนด์, ไอร์แลนด์, การแปลภาษา.

Copyright ©2024 I Love Translation. All reserved.

E-mail: