คอมพิวเตอร์, การเขียนโปรแกรม
PLO - นี่คืออะไร? หลักการพื้นฐานของการเขียนโปรแกรมเชิงวัตถุ
ทำไมเขียนโปรแกรมเชิงวัตถุเป็นที่ต้องการในโครงการมากที่สุด? PLO มีวิธีที่มีประสิทธิภาพในการจัดการกับความซับซ้อนของพวกเขา แทนที่จะพิจารณาโปรแกรมเป็นลำดับของคำสั่งปฏิบัติการที่มันหมายถึงว่ามันเป็นกลุ่มของวัตถุที่มีคุณสมบัติบางอย่างและผลิตพวกเขาด้วยการกระทำบางอย่าง ซึ่งจะส่งผลชัดเจนการใช้งานที่มีความน่าเชื่อถือมากขึ้นและ legkosoprovozhdaemyh
หลักการพื้นฐานของการ เขียนโปรแกรมเชิงวัตถุ (OOP) เกิดขึ้นเนื่องจากข้อ จำกัด ได้ถูกพบในวิธีการที่มีอยู่ก่อน ในหมู่พวกเขา - ไม่ จำกัด การเข้าถึงข้อมูลและจำนวนมากของการเชื่อมโยงซึ่งกำหนดข้อ จำกัด ในการเปลี่ยนแปลง การรับรู้ของพวกเขาและเป็นสาเหตุสำคัญที่จะเข้าใจสิ่งที่เขียนโปรแกรม OOP และสิ่งที่เป็นข้อดีของมัน
ภาษาขั้นตอน
C, ปาสกาล FORTRAN และภาษาที่คล้ายกันในการดำเนินการ นั่นคือแต่ละผู้ประกอบการบอกคอมพิวเตอร์ที่จะทำบางสิ่งบางอย่างเพื่อให้ได้ข้อมูลเพิ่มขึ้นตัวเลขที่แบ่งออกเป็นหกทำให้การแสดงผล ภาษาขั้นตอนการเรียนการสอนภาคผนวกเป็นรายการ ถ้ามันมีขนาดเล็กไม่มีหลักการในการจัดการอื่น ๆ (มักจะเรียกว่ากระบวนทัศน์) ไม่จำเป็นต้องใช้ โปรแกรมเมอร์สร้างรายการของคำแนะนำและคอมพิวเตอร์รันพวกเขา
แยกของฟังก์ชั่น
เมื่อการใช้งานกลายเป็นรายการที่ยุ่งยากมากขึ้นในการเปลี่ยน ไม่กี่สามารถเข้าใจมากกว่าไม่กี่ร้อยคำแนะนำจนกว่าพวกเขาจะถูกจัดกลุ่ม ด้วยเหตุนี้ฟังก์ชั่นเป็นวิธีที่จะทำให้แอพลิเคชันที่เข้าใจมากขึ้นในการสร้างที่ ในบางภาษาแนวคิดเดียวกันสามารถเรียกโปรแกรมย่อยหรือขั้นตอน
ตรวจสอบที่ถูกแบ่งออกเป็นฟังก์ชั่นแต่ละที่มีจุดประสงค์ที่กำหนดไว้อย่างชัดเจนและอินเตอร์เฟซ
ความคิดของการแยกของขั้นตอนที่สามารถขยายตัวในกลุ่มที่มีขนาดใหญ่ของวัตถุที่เรียกว่าโมดูล แต่หลักการที่คล้ายคลึง: การจัดกลุ่มของส่วนประกอบที่ดำเนินรายการของเอกสาร
แยกของฟังก์ชั่นและโมดูล - หนึ่งในหินมุมของการเขียนโปรแกรมโครงสร้างซึ่งเป็นเวลาหลายทศวรรษที่ผ่านมาจนกระทั่ง PLO คือมันโพสท่ากระบวนทัศน์
ปัญหาการเขียนโปรแกรมโครงสร้าง
เป็นโปรแกรมกลายเป็นใหญ่, การเขียนโปรแกรมโครงสร้าง จุดเริ่มต้นที่จะได้สัมผัสกับความยากลำบาก โครงการกลายเป็นความซับซ้อนมากเกินไป กราฟิกขยับ มันเกี่ยวข้องกับการเป็นจำนวนมากของการเขียนโปรแกรม ความซับซ้อนได้เติบโตขึ้น ค่าใช้จ่ายในการถ่ายภาพขึ้นตารางขยับต่อไปและมีมาล่มสลาย
วิเคราะห์สาเหตุของความล้มเหลวเผยให้เห็นข้อบกพร่องกระบวนทัศน์ในการดำเนินการ โดยไม่คำนึงถึงวิธีการที่โครงสร้างดีวิธีการเขียนโปรแกรมดำเนินการโปรแกรมขนาดใหญ่กลายเป็นความซับซ้อนมากเกินไป
อะไรคือสาเหตุของปัญหาเหล่านี้ที่เกี่ยวข้องกับภาษาในการดำเนินการหรือไม่ ครั้งแรกที่ฟังก์ชั่นได้ไม่ จำกัด การเข้าถึงข้อมูลทั่วโลก ประการที่สองขั้นตอนที่ไม่เกี่ยวข้องและค่านิยมที่ไม่ดีจำลองโลกแห่งความจริง
ถ้าเราพิจารณาประเด็นเหล่านี้ในบริบทของโปรแกรมบัญชีสินค้าคงคลังซึ่งเป็นหนึ่งในองค์ประกอบที่สำคัญที่สุดของข้อมูลทั่วโลกคือชุดของ SKUs ฟังก์ชั่นที่แตกต่างกันสามารถดูพวกเขาในการป้อนค่าใหม่จะแสดงการเปลี่ยนแปลงและเพื่อง.
ไม่ จำกัด การเข้าถึง
โปรแกรมที่เขียนยกตัวอย่างเช่นใน C มีสองประเภทของข้อมูล ซ่อนท้องถิ่นภายในฟังก์ชั่นและวิธีการอื่น ๆ ไม่ได้ใช้
เมื่อสองคนหรือมากกว่าฟังก์ชั่นที่มีสิทธิ์เข้าถึงข้อมูลเดียวกันหลังจะต้องเป็นระดับโลก ดังตัวอย่างเช่นจะถูกนำเข้าข้อมูลบัญชีเกี่ยวกับอาสาสมัคร ข้อมูลทั่วโลกอาจจะมีขั้นตอนใด ๆ
ในโครงการขนาดใหญ่ที่มีคุณสมบัติและองค์ประกอบหลาย ๆ ระดับโลกหลาย ปัญหาของกระบวนทัศน์ในการดำเนินการก็คือว่ามันนำไปสู่การเป็นจำนวนมากของการเชื่อมโยงที่อาจเกิดขึ้นระหว่างพวกเขา
ดังกล่าวเป็นจำนวนมากของการเชื่อมต่อทำให้เกิดความยากลำบากหลาย ครั้งแรกก็มีความซับซ้อนเข้าใจในโครงสร้างของโปรแกรมที่ ประการที่สองยากที่จะเปลี่ยน การเปลี่ยนแปลงในรายการข้อมูลทั่วโลกอาจต้องมีการปรับตัวของฟังก์ชั่นทั้งหมดที่สามารถเข้าถึงได้
ยกตัวอย่างเช่นในโปรแกรมบัญชีคนตัดสินใจว่ารหัสวัตถุคิดไม่ควรประกอบด้วย 5 หลักและจาก 12 นี้จะต้องมีการเปลี่ยนแปลง ชนิดข้อมูล จากระยะสั้นถึงยาว ตอนนี้ที่เกี่ยวข้องกับรหัสฟังก์ชั่นที่จะต้องมีการปรับเปลี่ยนการทำงานกับรูปแบบใหม่
เมื่อองค์ประกอบที่มีการเปลี่ยนแปลงในโปรแกรมประยุกต์ขนาดใหญ่ก็เป็นเรื่องยากที่จะพูดในสิ่งที่ขั้นตอนมีการเข้าถึงพวกเขา แต่ถึงแม้ว่ารูปนี้เปลี่ยนพวกเขาอาจจะส่งผลในการดำเนินการที่ไม่ถูกต้องกับข้อมูลอื่น ๆ ทั่วโลก ทุกอย่างจะเชื่อมต่อกับทุกอย่างอื่นดังนั้นการเปลี่ยนแปลงในสถานที่แห่งหนึ่งย้อนกลับมาอีก
การสร้างแบบจำลองโลกแห่งความจริง
ปัญหาที่สองและที่สำคัญมากของกระบวนทัศน์ในการดำเนินการคือว่าข้อมูลและฟังก์ชั่นสถานที่เฉพาะของมันไม่ดีเลียนแบบสิ่งที่อยู่ในโลกแห่งความจริง ที่นี่เราจะจัดการกับวัตถุเช่นคนหรือรถยนต์ พวกเขาเป็นเหมือนไม่มีข้อมูลหรือฟังก์ชั่น คอมเพล็กซ์วัตถุโลกแห่งความจริงมีคุณลักษณะและพฤติกรรม
แอตทริบิวต์
ตัวอย่างของคุณลักษณะ (คุณสมบัติบางครั้งเรียกว่า) สำหรับคนที่มีสีตาและชื่อของโพสต์สำหรับรถ - อำนาจและจำนวนประตู ที่จะเปิดออก, คุณลักษณะของโลกแห่งความจริงเทียบเท่ากับข้อมูลในโปรแกรมที่ พวกเขามีค่าที่เฉพาะเจาะจงเช่นสีฟ้า (สีของตา) หรือสี่ (จำนวนประตู)
พฤติกรรม
พฤติกรรม - คือว่าวัตถุที่แท้จริงของโลกที่มีการผลิตเพื่อตอบสนองต่อชนิดของผลกระทบบางส่วน ถ้าคุณขอเจ้านายขึ้นเงินเดือนคำตอบคือ "ใช่" หรือ "ไม่ใช่". หากคุณกดเบรกรถจะหยุด และการหยุดพฤติกรรมคำพูดเป็นตัวอย่าง พฤติกรรมคล้ายกับขั้นตอน: มันจะเรียกว่าจะทำอะไรบางอย่างและมันไม่ให้ ดังนั้นข้อมูลและฟังก์ชั่นด้วยตัวเองไม่ได้รูปแบบที่แท้จริงของโลกวัตถุได้อย่างมีประสิทธิภาพ
ที่อยู่
วัตถุใน OOP จะแสดงเป็นชุดของข้อมูลและฟังก์ชั่น เพียงขั้นตอนที่เรียกว่าฟังก์ชั่นสมาชิกใน C ++ อนุญาตที่จะได้รับความคุ้มค่า เหล่านี้จะถูกซ่อนอยู่และได้รับการคุ้มครองจากการเปลี่ยนแปลง ความหมายและหน้าที่ถูกห่อหุ้มไว้ในที่เดียว Encapsulation และ upryatyvanie - แง่พื้นฐานในรายละเอียดของภาษาเชิงวัตถุ
หากคุณต้องการเปลี่ยนแปลงข้อมูลก็รู้ว่าสิ่งที่ฟังก์ชั่นโต้ตอบกับพวกเขา ไม่มีวิธีการอื่น ๆ ไม่สามารถเข้าถึงได้ นี้ง่ายเขียนแก้จุดบกพร่องและการบำรุงรักษาโปรแกรม
การประยุกต์ใช้โดยทั่วไปจะประกอบด้วยหลายวัตถุซึ่งโต้ตอบกับแต่ละอื่น ๆ ที่ก่อให้เกิดการทำงานของสมาชิก
วันนี้ OOP ใช้กันอย่างแพร่หลายภาษา (การเขียนโปรแกรมเชิงวัตถุ) - c ++ (บวกบวก) ใน Java ขาดคุณสมบัติบางอย่างเช่นตัวชี้แม่แบบและมรดกหลายซึ่งทำให้มันมีประสิทธิภาพน้อยและหลากหลายกว่า C ++ C # ยังไม่ได้รับความนิยมของ C ++
มันควรจะตั้งข้อสังเกตว่าที่เรียกว่าฟังก์ชั่นสมาชิกใน C ++ เรียกว่าวิธีการในบางภาษาเชิงวัตถุอื่น ๆ เช่นสมอลล์ทอล์ค รายการข้อมูลจะเรียกว่าแอตทริบิวต์ เรียกวิธีการของวัตถุที่จะส่งข้อความให้เขา
การเปรียบเทียบ
คุณสามารถจินตนาการวัตถุของหน่วยงาน บริษัท ในองค์กรส่วนใหญ่พนักงานไม่ทำงานวันหนึ่งกับพนักงานเงินเดือนขูดรีดต่อไปนี้แล้วสัปดาห์มีส่วนร่วมในการค้าปลีก แต่ละแผนกมีพนักงานของตัวเองกับหน้าที่ที่ได้รับมอบหมายอย่างชัดเจน ตัวชี้วัดของค่าจ้าง, การขาย, พนักงานบัญชี, คนอื่น ๆ ในหน่วยงานที่มีข้อมูลของพวกเขา ... : มีข้อมูลของตัวเองอยู่ ส่วนของ บริษัท ฯ จึงอำนวยความสะดวกในการควบคุมของการดำเนินงานและรักษาความสมบูรณ์ของข้อมูล บัญชีเป็นผู้รับผิดชอบใน การจ่ายเงินเดือน หากคุณต้องการที่จะทราบจำนวนของค่าจ้างที่จ่ายให้กับสาขาภาคใต้ในเดือนกรกฎาคมไม่จำเป็นต้องเจาะเข้าไปในที่เก็บ มันก็เพียงพอที่จะส่งจดหมายถึงผู้รับผิดชอบรอจนกว่าคนที่มีการเข้าถึงข้อมูลและส่งการตอบสนองต่อข้อมูลที่ร้องขอ นี้ช่วยให้มั่นใจปฏิบัติตามกฎระเบียบและการขาดการรบกวนจากภายนอก ในลักษณะเดียวกับวัตถุใน PLO ให้แอปพลิเคองค์กร
มันควรจะจำได้ว่าทิศทางของวัตถุที่ใช้ไม่ได้กับรายละเอียดของโปรแกรมการทำงาน คำแนะนำส่วนใหญ่ c ++ ผู้ประกอบการที่สอดคล้องกับภาษาในการดำเนินการเช่นซีในความเป็นจริงการทำงานของสมาชิกใน C ++ จะคล้ายกับฟังก์ชั่นใน C. เฉพาะบริบทที่กว้างขึ้นจะช่วยให้การกำหนดว่าการเรียนการสอนขั้นตอนหรือเชิงวัตถุ
วัตถุใน OOP: นิยาม
เมื่อพิจารณาถึงปัญหาของการเขียนโปรแกรมในภาษาเชิงวัตถุแทนคำถามเกี่ยวกับส่วนของมันเข้าไปในฟังก์ชั่นที่แยกต่างหากเป็นปัญหาในการแยกสิ่งอำนวยความสะดวกที่ OOP ความคิดเป็นเรื่องง่ายในการพัฒนาโปรแกรม เพราะนี่คือความคล้ายคลึงกันของซอฟต์แวร์และวัตถุจริง
ชนิดของสิ่งที่เป็นวัตถุใน OOP? นี่คือบางส่วนประเภททั่วไป
วัตถุทางกายภาพใน OOP - คือ:
- แบบจำลองการไหลของการขนส่ง
- ชิ้นส่วนไฟฟ้าในโปรแกรมออกแบบวงจร;
- รูปแบบเศรษฐกิจของประเทศ;
- เครื่องบินในระบบการควบคุมการจราจรทางอากาศ
องค์ประกอบของสภาพแวดล้อมคอมพิวเตอร์ของผู้ใช้:
- เมนู
- หน้าต่าง;
- กราฟิก (เส้นสี่เหลี่ยม, วงกลม);
- แป้นพิมพ์เมาส์เครื่องพิมพ์ดิสก์ไดรฟ์
คน:
- แรงงาน;
- นักเรียน;
- ลูกค้า
- ผู้ขาย
ข้อมูล:
- การเก็บรักษาหนังสือ;
- เป็นเรื่องส่วนตัว;
- พจนานุกรม;
- ตารางของละติจูดและลองจิจูดของการตั้งถิ่นฐาน
การสื่อสารของโลกแห่งความจริงและวัตถุ PLO เป็นผลมาจากการรวมกันของฟังก์ชั่นและข้อมูลที่มีการปฏิวัติการเขียนโปรแกรมที่ เช่นการแข่งขันอย่างใกล้ชิดในภาษาขั้นตอนมี
ชั้น
วัตถุใน PLO - สมาชิกชั้นเรียน มันหมายความว่าอะไร? การเขียนโปรแกรมภาษาได้ในตัว ชนิดข้อมูล ประเภท int, t. อีจำนวนเต็มที่กำหนดไว้ใน C ++ คุณสามารถประกาศจำนวนของตัวแปร int ใด ๆ
ในทำนองเดียวกันส่วนใหญ่ของวัตถุที่กำหนดโดยระดับหนึ่ง มันกำหนดฟังก์ชั่นและข้อมูลที่รวมอยู่ในสถานที่ของมันไม่สร้างพวกเขาเช่นเดียวกับการเป็น int ไม่สร้างตัวแปร
ชั้นใน PLO - รายละเอียดของจำนวนของวัตถุที่คล้ายกัน เจ้าชาย, Sting และมาดอนน่าเป็นนักร้อง ไม่มีใครตามชื่อที่มี แต่คนสามารถเรียกว่าหากพวกเขามีลักษณะที่เหมาะสม วัตถุ OOP - กรณีนี้
มรดก
ในชีวิตการเรียนจะแบ่งออกเป็นคลาสย่อย ยกตัวอย่างเช่นสัตว์จะแบ่งออกเป็นสัตว์ครึ่งบกครึ่งเลี้ยงลูกด้วยนมนกแมลงและอื่น ๆ . D.
หลักการของชนิดของส่วนนี้ก็คือว่าในแต่ละประเภทรองมีคุณสมบัติทั่วไปกับการเรียนจากการที่ รถยนต์ทุกคันมีล้อและมอเตอร์ นี่คือการกำหนดลักษณะของยานพาหนะ นอกจากนี้ยังมีลักษณะโดยทั่วไปของแต่ละประเภทรองมีลักษณะของตนเอง มีที่นั่งรถบัสจำนวนมากและรถบรรทุกมีพื้นที่ในการแบกของหนัก
ในทำนองเดียวกันชั้นฐานสามารถเป็น subclass ปกครองอนุพันธ์หลายอย่างที่อาจจะกำหนดเพื่อที่จะร่วมกันในลักษณะของตัวเองด้วยนอกจากนี้ มรดกเช่นฟังก์ชั่นการลดความซับซ้อนในการดำเนินการโครงการ ถ้าหลายส่วนของรหัสที่กำลังทำสวยมากเหมือนกันคุณสามารถแยกองค์ประกอบทั่วไปและใส่ไว้ในขั้นตอนที่หนึ่ง ประยุกต์ใช้ในพื้นที่สามสามารถเรียกใช้ฟังก์ชันเพื่อดำเนินการร่วมกัน แต่พวกเขาสามารถผลิตและการดำเนินงานของตัวเอง ในทำนองเดียวกันชั้นฐานมีข้อมูลที่พบบ่อยในกลุ่มของสัญญาซื้อขายล่วงหน้า ฟังก์ชั่นที่คล้ายกันจะช่วยลดการรับมรดกของโปรแกรมเชิงวัตถุและอธิบายความสัมพันธ์ขององค์ประกอบของมัน
การรีไซเคิล
เมื่อชั้นถูกสร้างขึ้นและบั๊กก็สามารถโอนไปยังเขียนโปรแกรมอื่น ๆ เพื่อนำมาใช้ในการใช้งานของคุณเอง มันเหมือนห้องสมุดของฟังก์ชั่นที่สามารถรวมในการใช้งานที่แตกต่างกัน
ใน OOP มรดกเป็นส่วนขยายของความคิดของการใช้งานหลาย ๆ จากระดับที่มีอยู่โดยไม่ต้องเปลี่ยนมันเราสามารถสร้างขึ้นมาใหม่ด้วยการเพิ่มฟังก์ชั่นอื่น ๆ ความสะดวกในการกลับมาใช้ซอฟต์แวร์ที่มีอยู่ - ข้อได้เปรียบที่สำคัญของ PLO เป็นที่เชื่อกันว่ามันยังมีการทำกำไรที่เพิ่มขึ้นของเงินลงทุนเริ่มแรก
สร้างชนิดข้อมูลใหม่
สิ่งอำนวยความสะดวกที่เหมาะสมสำหรับการสร้างชนิดข้อมูลใหม่ สมมติว่าโปรแกรมที่ใช้ค่าสองมิติ (เช่นพิกัดหรือละติจูดและลองจิจูด) และมีความปรารถนาที่จะแสดงการกระทำของคณิตศาสตร์ที่พวกเขา:
position1 = ตำแหน่ง + แหล่งกำเนิด
ที่ position1 ตำแหน่ง และที่มา - คู่ของค่าตัวเลขที่เป็นอิสระ สร้างชั้นเรียนที่มีทั้งสองค่าและการประกาศตัวแปรของวัตถุที่สร้างชนิดข้อมูลใหม่
ความแตกต่างมากไป
ผู้ประกอบการ = (เท่ากับ) และ + (บวก) ที่ใช้ในการคำนวณตำแหน่งดังกล่าวข้างต้นไม่ได้ทำหน้าที่เช่นเดียวกับในตัวชนิดเช่น int วัตถุตำแหน่งและอื่น ๆ . ที่ไม่ได้กำหนดไว้และการตั้งค่าโดยซอฟต์แวร์ วิธีทำประกอบการเหล่านี้รู้วิธีจัดการกับพวกเขา? คำตอบอยู่ในความจริงที่ว่าพฤติกรรมใหม่ที่สามารถตั้งค่าสำหรับพวกเขา การดำเนินงานเหล่านี้จะเป็นฟังก์ชั่นสมาชิกระดับตำแหน่ง
ใช้ประกอบการหรือขั้นตอนการขึ้นอยู่กับสิ่งที่พวกเขากำลังทำงานที่เรียกว่าแตกต่าง เมื่อมีผู้ประกอบการเช่น + หรือ = ได้รับโอกาสที่จะทำงานร่วมกับชนิดข้อมูลใหม่ก็บอกว่ามันมากเกินไป เกินพิกัดใน PLO - ชนิดของ polymorphism มันเป็นคุณลักษณะที่สำคัญของมัน
หนังสือบน PLO "การเขียนโปรแกรมเชิงวัตถุสำหรับ Dummies" จะช่วยให้ทุกคนที่จะได้ทำความคุ้นเคยกับหัวข้อนี้ในรายละเอียดเพิ่มเติม
Similar articles
Trending Now