คุณคิดว่ารูปแบบการออกแบบใดที่ได้รับความนิยมมากที่สุด
คุณคิดว่ารูปแบบการออกแบบใดที่ได้รับความนิยมมากที่สุด
คำตอบ:
ฉันค่อนข้างแน่ใจว่าสิ่งที่พบได้บ่อยที่สุดคือ 'The Big Ball of Mud' น่าเสียดายสำหรับพวกเราทุกคน
http://en.wikipedia.org/wiki/Big_ball_of_mud
MVCและรูปแบบของมันเป็นหนึ่งในรูปแบบการออกแบบชั้นนำอย่างแน่นอน
หากคุณกำลังพูดคุยเกี่ยวกับแก๊งของสี่รูปแบบการออกแบบผมคงต้องบอกว่าซิงเกิล นี่เป็นสถานการณ์ที่น่าเศร้าจริงๆ - เกือบราวกับว่าโปรแกรมเมอร์ได้ยินเกี่ยวกับความมหัศจรรย์ของรูปแบบการออกแบบและจากนั้นก็หยุดหลังจากคนแรก
หากคุณกำลังพูดคุยเกี่ยวกับสถาปัตยกรรมสไตล์รูปแบบ (อีกนัยหนึ่งรูปแบบการออกแบบซึ่งครอบคลุมหลายชั้นเรียนหรือชั้น) ฉันคงต้องบอกว่าMVC ไม่กี่คนที่ได้รับความนิยมอื่น ๆ ที่มีพื้นที่เก็บข้อมูลรูปแบบและบริการระบุตำแหน่ง
ผู้สังเกตการณ์
หากคุณเคยใช้เหตุการณ์ คุณเคยใช้ผู้สังเกตการณ์
มัณฑนากร
เพิ่มฟังก์ชันการทำงานให้กับวัตถุที่รันไทม์ผ่านการจัดวาง ฉันชอบส่วนตัว
แก้ไข: นอกจากนี้โรงงานอาจเป็นหนึ่งในสิ่งที่พบได้บ่อยที่สุด
หน้าตึก
คิดว่าส่วนต่อประสาน REST ใด ๆ เช่น Twitter หรือ SO API มันซ่อนอะไรหลาย ๆ อย่างไว้ที่อย่างน้อยก็ในกรณี twitters ที่ซับซ้อนอย่างน่ากลัว
ฉันสนใจที่เก็บตาราง db @ @luslusk ของทวีตหรือไม่ และมันมีแคชเร็ว? และ @shemnon นั้นมีผู้อ่านระดับต่ำมากทวีตนั้นมักจะจำไม่ได้ใช่มั้ย นั่นคือความมหัศจรรย์ของซุ้ม
รูปแบบกลยุทธ์
หากคุณเคยใช้การฉีดพึ่งพาคุณเคยใช้รูปแบบกลยุทธ์
ทำไมไม่มีใครพูดถึงตัววนซ้ำ ? โดยเฉพาะกับแผนที่ทั้งหมดที่ประกอบเป็นโครงสร้างข้อมูลที่ซับซ้อน ... มันเป็นแผนที่ที่ฉันใช้มากที่สุด หรือเรากำลังพูดถึงรูปแบบที่เรานำมาใช้ใหม่?
ฉันประหลาดใจที่ไม่มีใครพูดถึงรูปแบบของโรงงานในประสบการณ์ของฉันซึ่งเป็นหนึ่งในรูปแบบที่มีการใช้งานมากที่สุด ถ้าไม่ใช่อันดับแรกอาจเป็นซิงเกิลที่หนึ่งฉันคงคิดว่านี่น่าจะเป็นวินาทีสุดท้าย
พร้อมกับคำตอบก่อนหน้าของฉันฉันจะเพิ่มใหม่ฉันวิ่งเข้าไปในวันนี้จากสัตว์ร้ายของฉันของโครงการสืบทอด:
คัดลอกวาง
ในขณะที่การดีบักฉันวิ่งเข้าไปในชิ้นส่วนของรหัสเรียก 2 ฟังก์ชั่นที่มีชื่อคล้ายกัน:
if(x)
Func1
else
Func2
Func1 และ Func2 มีพารามิเตอร์เดียวกัน ฉันดึงพวกมันออกมาและแตกต่างกันและพวกมันก็เหมือนกัน 100% ยกเว้น Func1 เรียก Func3 และ Func2 เรียก Func4 ฉันดึงสิ่งเหล่านั้นออกมาและทำให้แตกต่าง เหมือนกัน 100% ยกเว้น 1 บรรทัด ดังนั้นโปรแกรมเมอร์ก่อนหน้านี้จึงตัดสินใจที่จะคัดลอกและวางฟังก์ชั่น 50 บรรทัดที่ซ้อนกันสองฟังก์ชันแทนที่จะเพิ่มพารามิเตอร์แฟล็กเป็น 2 ฟังก์ชันส่วนตัวที่ใช้ในที่เดียว มันทำให้ฉันอยากร้องไห้
เมื่อพูดถึงรูปแบบการออกแบบ Gang-of-Four ฉันไม่สามารถนึกถึงโปรแกรมที่ไม่ได้ใช้รูปแบบการสังเกตการณ์ นอกจากนี้ตามที่ Jaco กล่าวไว้ซิงเกิลตันก็ถูกใช้อย่างสูงเช่นกันโชคไม่ดีที่มันกลายเป็นค้อน (โปรแกรมเมอร์คนใดก็ตามก็ใช้มันแม้ว่ามันจะไม่จำเป็นก็ตามก็ตาม)
$_SESSION
ตัวแปรPHP
ล่าม
นำไปใช้อย่างไม่บ่อยนักมักใช้ XPATH, XSLT, Regex, ตัวเลือก jQuery เป็นต้น
ฉันประหลาดใจที่ไม่มีใครพูดว่า "ผู้สร้าง" เลย หรือ "อะแดปเตอร์" พวกเขาอาจจะไม่แปลกใหม่อย่างที่คนอื่นพูดถึง แต่ฉันใช้พวกเขาตลอดเวลา โรงงานและโรงงานบทคัดย่อนั้นเป็นเรื่องปกติเช่นกัน
ฉันไม่คิดว่ามันอยู่ในรายการของ GoF แต่ฉันใช้รูปแบบของมันตลอดเวลา
ในระดับการออกแบบซอฟต์แวร์ฉันจะยืนยันว่าคอมโพสิตกลยุทธ์และเทมเพลต (และขยายน้อยกว่าโรงงาน) เป็นการใช้งานอย่างกว้างขวางที่สุด ในช่วงสิบปีที่ผ่านมาเราได้เห็นถึงความนิยมในการจัดองค์ประกอบการสืบทอดเมื่อสร้างระบบของเราโดยใช้การออกแบบ OO ดังนั้นการผสมผสานรูปแบบที่กล่าวถึงมีบทบาทสำคัญมากกว่า IMO อื่น ๆ ทั้งหมด
ในเชิงสถาปัตยกรรมผมขอยืนยันว่า MVC สำหรับองค์กรและรูปแบบขึ้นอยู่กับเครื่องจักรของรัฐในด้านของสิ่งต่าง ๆ