OOP เป็นรูปแบบการเขียนโปรแกรมที่โดดเด่นในโลกแห่งความจริงหรือไม่


20

วัตถุไม่เคย? ดีแทบจะไม่เคย

ในส่วน VIEWPOINT ของ Communications of The ACM ฉันพบบทความที่น่าสนใจเรื่อง " Objects Never? Well, Hardly Ever " มันเป็นมุมมองที่แตกต่างอย่างสิ้นเชิงจากวัตถุแรกหรือวัตถุช้า เขาแนะนำ "ไม่เคยมีวัตถุ" หรืออาจเป็น "โรงเรียนที่สำเร็จการศึกษาจากวัตถุ"

ผู้เขียนพูดคุยเกี่ยวกับ OOP และตั้งคำถามเกี่ยวกับวิธีการใช้ OOP ในสภาพแวดล้อมการเขียนโปรแกรมในโลกแห่งความเป็นจริง เขาคิดว่า OOP ไม่ใช่รูปแบบการเขียนโปรแกรมที่โดดเด่น ตัวอย่างเช่นเขาอ้างว่า 70% ของการเขียนโปรแกรมเสร็จแล้วสำหรับระบบสมองกลฝังตัวที่ OOP ไม่เหมาะจริง ๆ

เมื่ออาจารย์ในมหาวิทยาลัยต้องการพูดคุยเกี่ยวกับประโยชน์ของ OOP พวกเขาจะพูดถึงการใช้รหัสซ้ำ อีกตัวอย่างเขาอ้างว่านี่ไม่ใช่กรณีจริงในโลกแห่งความเป็นจริง การใช้ซ้ำรหัสนั้นยากกว่าสิ่งที่อ้างในมหาวิทยาลัย:

ฉันอ้างว่าการใช้ OOP นั้นไม่เป็นที่แพร่หลายเหมือนที่คนส่วนใหญ่เชื่อว่ามันไม่ประสบความสำเร็จเท่าที่ผู้เสนอเรียกร้องและดังนั้นที่กลางของมันในหลักสูตร CS ไม่ได้เป็นธรรม

เป็นเรื่องที่น่าสนใจสำหรับฉันที่จะรู้ว่าผู้คนในกองซ้อนกันคิดอย่างไรกับเรื่องนี้? OOP เป็นรูปแบบการเขียนโปรแกรมที่โดดเด่นจากมุมมองของโปรแกรมเมอร์หรือไม่?

ถ้าฉันควรเลือก / เรียนรู้ / ใช้วิธีการเดียวมันเป็น OOP หรือไม่? ทำไม?


26
"70% ของการเขียนโปรแกรมเสร็จแล้วสำหรับระบบสมองกลฝังตัว"? นั่นคือต่อโครงการต่อผู้พัฒนาหรือต่อ LOC? ฉันรู้สึกว่า 70% ของ "prorgammings ทั้งหมด" เสร็จสิ้นใน Excel แม้แต่สเปรดชีตโปรแกรมที่ไม่ใช่โปรแกรมเมอร์
LennyProgrammers

1
@ Lenny222: หากคุณต้องการเดาของฉันมันเป็น 70% ของสำเนาโปรแกรมที่กระจายอยู่ในซอฟต์แวร์ฝังตัวหรืออะไรทำนองนั้น ตอนนี้สิ่งที่ฝังตัวบางอย่างจะทำใน C ++ และมักจะเป็นเวอร์ชันที่ถูกแฮ็กซึ่งทำให้ C และวัตถุออกไป
David Thornley

9
ฉันคิดว่ารูปแบบการเขียนโปรแกรมที่โดดเด่นมานานแล้วและจะเป็นลูกโคลนขนาดใหญ่
whatsisname

บทความนั้นทำให้ความแตกต่างที่แปลกประหลาดระหว่าง "เรียน" และ "ระบบย่อย" ที่ฉันไม่เข้าใจแม้แต่ระยะไกล มันพูดถึงDiskBrake extends Brakeว่า OOP นั้นไม่ดีสำหรับรถยนต์อย่างไรเพราะใน "โลกแห่งความจริง" การสื่อสารนี้ถูกนำไปใช้ "โดยสัญญาณเครือข่ายและโปรโตคอลรถบัส" - เป็นDiskBrake implements BrakeInterfaceอย่างไร? อาจจะเป็นประสบการณ์ของฉันเอง << 43 ปี แต่ตัวอย่างสำหรับฉันที่ล้มเหลวในการเรียกร้องของผู้เขียน
OJFord

2
ลิงค์อยู่ด้านหลัง paywall อย่างไรก็ตาม OOP เป็นประเภทที่กำหนดและ overrated ส่วนใหญ่ แต่สมมติว่าโปรแกรมใหม่ "ส่วนใหญ่" มีแนวโน้มที่จะถูกเขียนในลักษณะ OOP - esque Java แรงบันดาลใจกับ getters และ setters และชั้นเรียนชื่อ SessionManager
Charles Salvia

คำตอบ:


19

ในส่วน VIEWPOINT ของ Communications of The ACM

หากคุณสนใจในการเขียนโปรแกรมเชิงปฏิบัติขั้นตอนของ ACM และไลค์เป็นแหล่งข้อมูลสุดท้ายที่คุณต้องการอ่าน เหล่านี้มักจะ [หลอก] - สิ่งพิมพ์ทางวิทยาศาสตร์ที่ไม่มีการใช้งานในโลกแห่งความจริง เหล่านี้มักจะเป็นความคิดเห็นนอกรีตที่ทำเพื่อการประชาสัมพันธ์เพื่อให้นักเขียนแยกความแตกต่างจากฝูงชนและส่งเสริมคนของเขาเอง

ฉันอ้างว่าการใช้ OOP นั้นไม่เป็นที่แพร่หลายเหมือนที่คนส่วนใหญ่เชื่อว่ามันไม่ประสบความสำเร็จเท่าที่ผู้เสนอเรียกร้องและดังนั้นที่กลางของมันในหลักสูตร CS ไม่ได้เป็นธรรม

ฉันมักจะไม่เห็นด้วยกับประเด็นของคุณ OOP นั้นแพร่หลายและใช้งานได้ดี ด้วยจำนวนโครงการที่อ้างอิงกับ OOP นั้นมีความก้าวหน้ามากกว่าการพัฒนาที่ทำกับกลยุทธ์อื่น ๆ (ลองพูดถึงเวลาที่ทันสมัย ​​15-20 ปี)

อย่างไรก็ตาม OOP ไม่ใช่กระสุนเงิน มันใช้งานได้สำหรับการพัฒนาบางอย่างไม่ทำงานเพื่อคนอื่น เช่นเดียวกับวิธีการอื่นใด

แต่สิ่งหนึ่งที่ฉันต้องพูดถึงคือหลักสูตรควรสื่อสารความรู้เกี่ยวกับวิธีการที่แตกต่างกัน ถ้าเป็นแบบ OOP มันผิด หากเป็นฐานของ FP มันผิดปกติ ควรครอบคลุมพวกเขาทั้งหมดหรือไม่ได้สัมผัสหัวข้อนี้โดยสิ้นเชิง

ป.ล. ทำไมต้องใส่ใจกับสิ่งที่โดดเด่นและไม่อะไร เพียงแค่ใช้สิ่งที่เหมาะสมสำหรับโครงการในมือและปล่อยตัวเลขให้เป็น "นักวิจัย"


3
พวกเขาเป็นงานวิจัยในสาขาคอมพิวเตอร์ที่ยังไม่เป็นกระแสหลัก มันใช้เวลาหลายปีสำหรับนักวิชาการในการกรองสู่โลกแห่งความเป็นจริงแม้ว่ามันจะเป็นประจำ
Orbling

4
@DeveloperArt: โปรดทราบว่านักเขียนกระดาษมีประสบการณ์ 43 ปีในการพัฒนาซอฟต์แวร์!
Ehsan

6
Alan Kay เพิ่มความคิดเห็นที่cacm.acm.org/magazines/2010/9/… - 'ในทางตรงกันข้ามฉันไม่เคยคิดเลยว่าระบบส่วนใหญ่ที่เรียกตัวเองว่า "เชิงวัตถุ" นั้นใกล้เคียงกับความหมายของฉันมาก คำว่า ' - ความสัมพันธ์ใดในการโพสต์ของฉัน - "OO? OO ใคร"
Frank Shearar

9
@Developer Art: สิ่งที่ทำให้ฉัน (เล็กน้อย) เกี่ยวกับโพสต์ของคุณคือส่วน "นักวิจัย" นักวิชาการผู้เคราะห์ร้าย พวกเขาเคยทำอะไรให้เราบ้าง? โอ้ แลมบ์ดาแคลคูลัสปิดวัตถุการเขียนโปรแกรมการทำงาน ... แต่อื่น ๆกว่านั้นสิ่งที่นักวิชาการที่เคยทำเพื่อเรา?
Frank Shearar

4
-1 นักวิทยาศาสตร์คอมพิวเตอร์ต้องการคำพูดที่ทำให้ตกใจ? ACM เผยแพร่วิทยาศาสตร์หลอก? อย่างจริงจัง?
jprete

17

ถ้า OOP เป็นกระบวนทัศน์เดียวที่คุณรู้บางทีคุณควรเรียนรู้เพิ่มเติม แต่จริงๆแล้ว OOP หมายถึงอะไรจริง ๆ ? มันหมายถึง Java หรือ C ++? หมายความว่า Smalltalk หรือไม่? มันหมายถึงสล็อตค่าที่กำหนดได้และการปิด? (สวัสดีโครงการ!) มันหมายถึงการส่งข้อความหรือไม่ (ไงเออร์แลง!)

ในระยะสั้นดูเหมือนว่าคำถามที่ไม่น่าสนใจที่จะถาม "OO มีประโยชน์หรือไม่" เป็นคำถามที่ดีกว่า และดูเหมือนว่าอย่างนั้น (แน่นอนสำหรับฉัน)


6
+1 ฉันสงสัยว่าในทางปฏิบัติ OOP ได้หยุดที่จะหมายถึงสิ่งอื่นนอกเหนือจาก "วิธีที่ดีในการเขียนโค้ดที่ใช้สิ่งที่เรียกว่าวัตถุ"
Larry Coleman

บทความที่อ้างถึงไม่คิดว่าการใช้ภาษา OO เป็นการรับประกันการใช้งาน OO และคำถามว่าควรมีกระบวนทัศน์หรือไม่เนื่องจากไม่มีในสาขาวิชาวิศวกรรมอื่น ๆ
JeffO

บางทีผู้เขียนควรอ่าน William Cook และ Matthias Felleisen ผู้ซึ่งใช้เวลาส่วนใหญ่พูดคุยเกี่ยวกับสิ่งที่เป็นและไม่เหมือนกันในการเขียนโปรแกรม
Frank Shearar

9

นักพัฒนาทั้งหมดกำลังทำ "70% ของการเขียนโปรแกรม" อยู่ที่ไหน? จากนักพัฒนาทั้งหมดที่ฉันรู้ว่าน้อยกว่า 1% กำลังทำงานกับระบบสมองกลฝังตัว

ดังนั้นเราจึงมี 3 ตัวเลือก:

  1. ฉันไม่เหมือนใครและเพื่อน ๆ ทุกคนของคุณทำการวางโปรแกรมอย่างแท้จริง
  2. มีกองกำลังของนักพัฒนาที่ถูกขังอยู่ในห้องใต้ดินทำที่ไหน 70%
  3. สถิตินี้ถูกสร้างขึ้นและบทความเป็นเรื่องไร้สาระ

ถ้าฉันไม่เห็นหลักฐานว่าตัวเลือกที่ 1 หรือ 2 เป็นจริงฉันจะไปกับตัวเลือกที่ 3

(BTW ฉันไม่พิจารณาการพัฒนาโปรแกรมมือถือที่ทันสมัยและการพัฒนามือถือมักจะ OO หลังจากที่ Apple บังคับให้คุณใช้ * วัตถุประสงค์ * C เพื่อพัฒนาสำหรับ iPhone)


FWIW ฉันใช้เวลาสองสามวินาทีและคิดมาตรการที่เป็นไปได้ครึ่งโหลสำหรับ "70% ของการเขียนโปรแกรม" ผู้เขียนอาจใช้ที่เจ็ด (นอกจากนี้โปรแกรมเมอร์ฝังตัวอยู่ที่นั่นพวกเขาก็มักจะไม่ออกไปเที่ยวในสถานที่เดียวกันและมักจะพิจารณาตัวเองวิศวกรไฟฟ้าหรืออะไรแบบนั้นมากกว่าโปรแกรมเมอร์)
เดวิด ธ อร์นลีย์

1
@David Thornley - การโกหกด้วยสถิติยังคงเป็นเรื่องโกหกผู้เขียนอ้างอย่างชัดเจนว่าส่วนใหญ่ของการเขียนโปรแกรมในโลกวันนี้สำหรับระบบฝังตัว - และฉันบอกว่านี่คือบูลทั้งหมด # @ $ t ฉันแน่ใจว่าฉันสามารถประดิษฐ์ การวัดที่แสดงให้เห็นว่าการวางโปรแกรมส่วนใหญ่ในโลกเสร็จแล้วในห้องที่ฉันอยู่ตอนนี้ (ที่ฉันแบ่งปันกับผู้พัฒนารายอื่นเพียงคนเดียว) - แต่ข้อสรุปใด ๆ ที่ฉันสร้างขึ้นจากการสังเกตนี้จะไม่มีค่าเท่ากับการวัด .
Nir

1
ฉันเป็นคนที่ฝังตัว ฉันเคยเห็นรายงานหลายฉบับว่าโปรเซสเซอร์ประมาณ 99% ที่ผลิต / จัดส่งนั้นใช้สำหรับระบบฝังตัว (ถ้าจำเป็นจริงๆฉันสามารถกลับมาใหม่ & อ้างอิงรายงาน) ต้องบอกว่าฉันมั่นใจว่าไม่มีที่ไหนเลยเกือบ 70% ของการเขียนโปรแกรมทั้งหมดจะทำสำหรับระบบฝังตัว ฉันคิดว่าบางอย่างเช่น 50% ของโปรเซสเซอร์ทั้งหมดที่จัดส่งเป็น 4 บิตและ 8 บิต แต่สิ่งเหล่านี้อาจรวมถึงการเขียนโปรแกรมทั้งหมด 0.1% (หรือน้อยกว่า) อย่างที่เดวิดพูดมีหลายวิธีในการคิด "70% ของรายการ" ฉันจะไม่แปลกใจถ้าจำนวน 20-25%
เรเดียน

+1 สำหรับ“ การโกหกด้วยสถิติยังคงเป็นเรื่องโกหก”; เป็นความจริงดังนั้นจึงเป็นความจริง…
Donal Fellows

8

ฉันไม่มีข้อเท็จจริงที่จะติดตาม แต่ OOP ไม่ใช่โมเดลการเขียนโปรแกรมที่โดดเด่น แค่คิดว่าแอพทั้งหมดในบ้านที่พัฒนาโดยคนที่เรียนวิชาพื้นฐานด้วยภาพหรือเขียนโปรแกรมแมโครบางตัวใน Excel

แอปพลิเคชั่นจำนวนมากกำลังทำการเขียนโปรแกรมที่จำเป็นซึ่งลอจิกทั้งหมดถูกซ้อนในคลาสหรือมุมมองเดียว นี่อาจเป็นแอปพลิเคชั่นภายในที่ใช้งานง่ายส่วนใหญ่ที่รันอยู่ทั่วองค์กร

มีอะไรผิดปกติกับที่มีหลายวิธีในการแก้ปัญหาเดียวกัน บางคนดีกว่าคนอื่น

เช่นเดียวกับที่คุณชี้ให้เห็น OOP ไม่ได้มีประโยชน์สำหรับทุกสถานการณ์ ยังมีรุ่นอื่นอีกด้วย


จากนั้นอีกครั้งอาจมีคำถามว่าจำเป็นต้องอธิบายอะไรเป็นโมเดลที่โดดเด่น มันคือ "ปริมาณของแอพที่พัฒนากับรุ่น X" หรือเป็น "ปริมาณของรหัสที่พัฒนาด้วยรุ่น X" หรือไม่? ด้วยวิธีใดฉันก็ยังคงคิดว่า OOP จะไม่เป็นรุ่นที่โดดเด่น
มอร์เทน

1
+1 สำหรับการหยิบยกประเด็นที่แม้ว่า OOP อาจจะอยู่ใกล้กับผู้เชี่ยวชาญที่ผ่านการฝึกอบรมมาอย่างดีอุตสาหกรรมทั่วโลกไม่ได้สะท้อนสิ่งนี้และมีรหัสที่จำเป็นมากมายตรงนั้น
Orbling

5

ไม่ว่า OOP จะเป็นรูปแบบการเขียนโปรแกรมที่โดดเด่นหรือไม่

ไม่มีกระสุนเงิน

สิ่งที่ Moti Ben Ari โต้เถียงกันคือการยืนยันทางวิชาการซึ่งไร้ความหมายอยู่แล้ว อย่างไรก็ตามเขาบอกกับตัวเองว่าเขาไม่เคยพบ OOP เพื่อ "ทำความเข้าใจ" อย่างชัดเจนว่ามันมีประโยชน์ต่อนักพัฒนาและวิศวกรซอฟต์แวร์หลายพันคนและถูกนำมาใช้ในหลาย ๆ ระบบ ...

แต่จริงๆแล้วประเด็นของคำตอบของฉันคือสิ่งนี้สิ่งที่ดีที่จะระบุว่ารูปแบบหนึ่งหรืออื่น ๆ ที่โดดเด่นหรือไม่นั้นเป็นเหตุผลที่ดีสำหรับการใช้มันสุ่มสี่สุ่มห้า? แน่นอนมันไม่ใช่


หากหลายคนอ้างว่าใช้รุ่นเดียวและไม่ทำนั่นเป็นปัญหา คำถามคือ oop เป็นที่แพร่หลายตามที่ปรากฏและไม่เกี่ยวกับการโดดเด่น / ดีกว่า
JeffO

4

นี่เป็นคำถามที่ตอบยากได้อย่างน่าเชื่อถือ เหตุผลที่ยิ่งใหญ่ที่สุดคือคนอย่างฉันที่ทำงานในแอปพลิเคชันตามประเพณีซึ่งโค้ดไม่เคยออกจากอาคาร พวกเราใช้ OO หรือเปล่า ฉันไม่ได้พูด โปรแกรมเมอร์อื่น ๆ กี่คนที่มีงานคล้ายกัน พวกเขาไม่ได้พูดเช่นกัน เรามีเว็บไซต์สมัครงาน แต่ไม่ใช่งานทั้งหมดที่โพสต์และไม่ใช่โพสต์ทั้งหมดที่มีไว้สำหรับงานจริงซึ่งต่างจากนายหน้าที่พยายามรวบรวมรายชื่อ

แม้ว่าฉันจะบอกว่าเราใช้ OO ที่ฉันทำงานอยู่นั่นหมายความว่าคำจำกัดความดั้งเดิมจากบทความที่เชื่อมโยง: วัตถุคลาสการสืบทอด? หรือหมายความว่าฉันใช้วัตถุเป็นหลักในการจัดระเบียบรหัส? หรือหมายความว่าฉันเพิ่งตั้งโปรแกรมอินเทอร์เฟซและแทบจะไม่ใช้การสืบทอดเลย ฉันยังไม่ได้พูด แต่สิ่งเหล่านี้จริงๆนับเป็น OO?

มันไม่มีความหมายเลยที่จะถามว่า OO มีประโยชน์หรือไม่จนกว่าคำถามข้างต้นจะได้รับคำตอบ


2

แน่นอนว่าเป็นเพราะเป็นคำศัพท์ล่าสุดที่ผู้บริหารให้ความสนใจ นอกจากนี้ยังมีการห่อหุ้มและนามธรรมที่ดีกว่าการเขียนโปรแกรมที่จำเป็นดังนั้นฉันคิดว่าการก้าวกระโดดจาก oop ไปยังสิ่งที่เกิดขึ้นต่อไปอาจใช้เวลานานกว่าความจำเป็นที่จะต้องใช้ oop

PS2: ถ้าฉันควรเลือก / เรียนรู้ / ใช้วิธีการเดียวมันเป็น OOP หรือไม่? ทำไม?

หากคุณกำลังจะเรียนรู้เพียงอย่างเดียวคุณควรเลือกสาขาอื่น

คุณควรเรียนรู้เกี่ยวกับประเภทและการห่อหุ้มและผลประโยชน์อื่น ๆ ทั้งหมดของ OOP แล้วเรียนรู้วิธีการทำสิ่งเดียวกันให้สำเร็จโดยใช้รูปแบบการทำงานของการเขียนโปรแกรม


+1 สำหรับความคิดเห็นเกี่ยวกับการเลือกเขตข้อมูลอื่นหากคุณวางแผนที่จะเรียนรู้วิธีการหนึ่ง นั่นมันบ้า
Mat Nadrofsky

1

OOP เป็นหนึ่งในโมเดลการเขียนโปรแกรมที่โดดเด่นกว่าในโลกแห่งความเป็นจริง

แม้แต่ผู้ที่ออกแบบฮาร์ดแวร์ดิจิทัลซึ่งเป็นผู้ออกแบบชิปเองก็กำลังเผชิญกับคู่ของ SystemVerilog และ SystemC ภาษาเหล่านี้เป็นภาษาโปรแกรมเชิงวัตถุ

จะไม่ใช้ OOP ที่ไหน ถ้าคุณเข้ารหัสโปรแกรมควบคุมอุปกรณ์มันยากที่จะจินตนาการว่าทำไมคุณต้องมีการเขียนโปรแกรมทั่วไปหรือการสืบทอดหลาย ๆ แบบหรือถ้าคุณใช้เทคนิคการเขียนโปรแกรมการทำงานของ AI ทำให้มันง่ายขึ้นมากในหัว มีสถานการณ์อื่นอีกมากมายเช่นกัน แต่พอจะพูดได้ว่า OOP เป็นสถานที่ที่ทรงพลังพอสมควรที่จะอยู่ในโลกแห่งการเขียนโปรแกรมโอลิโกโพลิส


1

ฉันจะบอกว่าไม่

ฉันเข้าใจว่ามีโค้ดจำนวนมากที่เขียนโดยใช้ภาษา 'เชิงวัตถุ' แต่โดยทั่วไปฉันพบว่าโค้ดนั้นเป็นเพียงขั้นตอนในคลาส (ไม่ใช่ว่านี่เป็นสิ่งที่ไม่ดี) รหัสที่ฉันเห็นว่าถูกเขียนขึ้นเพื่อ OO มากขึ้นในภาษาเหล่านี้มีแนวโน้มที่จะเป็นระเบียบของการพึ่งพาระหว่างชั้นเรียนที่มักจะไม่สามารถบำรุงรักษาได้

OO น่าจะเกี่ยวกับการส่งข้อความระหว่างวัตถุที่มีอยู่ในตัวเองอย่างสมบูรณ์และเราจะเห็นว่าในรหัสของวันนี้ แต่ในระดับที่มีขนาดใหญ่กว่ามาก - นั่นคือเราเห็นวัตถุเหล่านี้ถูกใช้งานเป็น dlls หรือแอสเซมบลีหรือวัตถุ COM 'ส่วนประกอบ' ฉันเคยได้ยินพวกเขาอธิบายว่า

ดังนั้นฉันคิดว่ามันไม่สำคัญว่า OO จะถูกใช้หรือไม่ - ถ้ารหัสนั้นสามารถคงอยู่ได้ตลอดอายุการใช้งานจะสามารถนำไปใช้งานได้อีกครั้งตามที่ได้รับการออกแบบมาให้พัฒนาและรวดเร็วในการพัฒนา ถ้าเป็นขั้นตอนอย่างหมดจดหรือกึ่งวัตถุหรือ OO อย่างเต็มที่ ฉันสงสัยว่าใคร ๆ ก็สามารถบอกคุณได้ว่าสไตล์ที่โดดเด่นเป็นหนึ่งในสิ่งเหล่านี้หรือไม่ แต่ฉันเสี่ยงต่อการเดาว่ารูปแบบการดำเนินการจะเป็นเรื่องที่พบได้บ่อยที่สุดแม้ว่าจะถูกสับเป็นคลาสแทนที่จะเป็นฟังก์ชั่น


0

ฉันคิดว่ามันสำคัญที่จะต้องแยกความแตกต่างของการแก้ปัญหาที่ได้รับโดยใช้วิธีการเชิงวัตถุและวิธีการแก้ปัญหาการใช้กระบวนทัศน์ Object Oriented ความคิดเห็นของฉันเกี่ยวกับชิ้นส่วนของซอฟต์แวร์ที่ดีคือการผสมผสานทั้งสองโซลูชัน หากคุณคิดว่าในวัตถุและคุณเคารพคำจำกัดความของวัตถุและการโต้ตอบและปัญหาของคุณสามารถปรับเปลี่ยนให้ใช้โครงสร้างนี้ได้คุณจะมีรหัสที่ยืดหยุ่นและแข็งแกร่ง แต่ถ้าคุณใช้ออบเจ็กต์เพื่อแก้โค้ดโดยใช้กระบวนทัศน์กระบวนงานคุณจะพบกับการผสมผสานที่น่ารังเกียจที่จะไม่ใช้ประโยชน์จากข้อดีของ Objects

ฉันชอบรหัสของฉันเป็น Object Oriented และฉันได้มารู้ว่าในตอนแรกมันอาจจะรำคาญมากกว่าที่จะสร้างโครงสร้างที่ดี แต่เมื่อต้องรับมือกับความยืดหยุ่นและความต้องการแฟลชลูกค้าในวันนี้ฉันคิดว่ามันคุ้มค่า ความพยายาม


0

ฉันไม่แกล้งรู้จำนวนที่แน่นอนหรือแม้กระทั่งการคาดเดาคร่าวๆ แต่มีโครงการการเขียนโปรแกรมจำนวนมากที่ไม่เกี่ยวข้องกับ OOP ฉันทำงานกับหุ่นยนต์อุตสาหกรรม โปรแกรมมักจะค่อนข้างง่ายและตรงไปตรงมารหัสขั้นตอน ระบบปฏิบัติการหุ่นยนต์จริงยิ่งขึ้นไปอีก

"เครื่องมือ" ของเราที่เราใช้นั้นเป็นแบบ OOP แต่มันทำงานบนพีซีไม่ใช่ตัวควบคุมหุ่นยนต์ เหล่านี้รวมถึงบรรณาธิการการจำลองและยูทิลิตี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.