ข้อมูลมักจะเกี่ยวข้องกับการเขียนโปรแกรมและในโลกของข้อมูลสมัยใหม่นำเสนอในรูปแบบที่เทียบเท่ากันทางตรรกะสามรูปแบบ: ข้อมูลที่อธิบายและใช้ในโปรแกรมในภาษาโปรแกรม; ข้อมูลในระบบฐานข้อมูล ข้อมูลในระบบสารสนเทศแบบกระจาย การเขียนโปรแกรมสมัยใหม่ได้ให้อิสระสัมพัทธ์เฉพาะกับรูปแบบแรกของการจัดรูปแบบข้อมูลเท่านั้น สองตัวเลือกที่สองเป็นรูปแบบการให้ข้อมูลและความสัมพันธ์ระหว่างส่วนประกอบที่เชื่อถือได้ไม่มากก็น้อย
ข้อมูลในอดีตและปัจจุบัน
ตำแหน่งพื้นฐานของภาษาโปรแกรมคือคำอธิบายที่ถูกต้องของข้อมูลและอัลกอริธึม คอมพิวเตอร์ไม่ "นำเสนอ" โอกาสที่จะเกิดความไม่แน่นอน: มีบางอย่างที่ต้องดำเนินการและมีคำสั่งที่ดำเนินการนั้น
แนวคิดสมัยใหม่มีพื้นฐานมาจากรากฐานที่สูงกว่ามาก: มีแบบให้แล้ว และสิ่งที่จะกำหนดไว้อย่างแน่นอน ณ สถานที่ใช้งาน ไม่ว่าในกรณีใด ข้อมูลจะได้รับการตรวจสอบโดยอัตโนมัติและแปลงเป็นประเภทที่ถูกต้องในช่วงเวลาที่ใช้งานโปรแกรมเมอร์สมัยใหม่ไม่จำเป็นต้องดูแลคำอธิบายเบื้องต้นและการปฏิบัติตามประเภทความเข้ากันได้ในอัลกอริธึม

ขั้นตอนการเปลี่ยนแปลง:
- จากข้อมูลที่พิมพ์และคำอธิบายที่จำเป็นก่อนใช้งาน
- เพื่อข้อมูลที่ไม่ได้พิมพ์และเป็นอิสระจากภาระผูกพันใด ๆ ในการอธิบายและใช้งาน
อันที่จริง เราสามารถรับรู้ถึงการผ่อนคลายที่เกี่ยวข้องของข้อกำหนดการทำให้เป็นทางการ - ใช้ได้เฉพาะในสภาพแวดล้อมของเครื่องมือการเขียนโปรแกรมที่ทันสมัยเท่านั้น ที่รันไทม์ ประเภทของ Datum แต่ละอันจะได้รับการแก้ไข และลำดับคำสั่งก็ถูกกำหนดไว้อย่างดี
ประเภทและแบบจำลอง
คณิตศาสตร์และฟิสิกส์ การค้าและการผลิต เศรษฐศาสตร์ และพื้นที่อื่นๆ ที่ใช้ตัวเลข ดำเนินการกับข้อมูลเสมอและไม่ได้ให้ความสำคัญใดๆ กับแนวคิดของประเภท ความจริงที่ว่าตัวเลขอาจเป็นจำนวนเต็มหรือเศษส่วนไม่สำคัญ
แต่ละสูตรเฉพาะหรือการกระทำเฉพาะสามารถให้จำนวนเต็ม เศษส่วนอนันต์ จำนวนจริงหรือจำนวนเชิงซ้อน จวบจนปัจจุบัน มีความอัศจรรย์ของจิตใจเช่น เล็กอนันต์ ใหญ่อนันต์ ยิ่งกว่านั้น ปาฏิหาริย์เหล่านี้ยังมีสรรพคุณ
ยังไม่มีอิสระในการเขียนโปรแกรม ทุกอย่างจะต้องเป็นทางการอย่างเคร่งครัด แนวคิดของข้อมูลอย่างแรกเลยคือประเภท:
- จำนวนเต็ม;
- บูลีน;
- ถ่าน;
- สตริง และอื่นๆ
ชื่อประเภทอาจแตกต่างกันในภาษาการเขียนโปรแกรมที่แตกต่างกัน แต่จะมีจำนวนเต็มหรือจำนวนจริง ค่าบูลีน สัญลักษณ์ไลน์. ยังมีพระธาตุและแนวคิดเฉพาะเหลืออยู่: จำนวนเต็ม, รหัส, ไบต์, คำ, คำสองคำ, สตริงที่มีความยาวคงที่

แนวคิดของข้อมูลในระบบข้อมูลไม่มีอิสระ ภาษา SQL - "สากล" (มีภาษาถิ่นสำหรับฐานข้อมูลสมัยใหม่ทุกแห่ง) - ไม่ทนต่อความไม่ถูกต้องใดๆ ไม่เพียงแต่ในข้อมูลเท่านั้น แต่ยังรวมถึงการสืบค้น sql ด้วย ข้อผิดพลาดในคำขอคือการรับประกันว่าจะไม่มีผลลัพธ์ ไม่จำเป็นต้องพูดถึงการละเมิดคำอธิบายเลย
การสร้างแบบจำลองกระบวนการข้อมูลและการแสดงข้อมูลเป็นวิธีเดียวที่แน่นอนในการสร้างโครงสร้างที่สามารถพัฒนาและปรับให้เข้ากับสภาวะที่เปลี่ยนแปลงได้
ไดนามิกของต้นฉบับ
ธรรมชาติมีการเปลี่ยนแปลงอย่างต่อเนื่อง การให้คำอธิบายอย่างเป็นทางการและแนวคิดของโมเดลข้อมูลในหัวข้อเฉพาะหมายถึงการแก้ปัญหาสามประการ:
- กำหนดว่าข้อมูลใดอยู่ที่นี่
- ทำให้ความสัมพันธ์ระหว่างพวกเขาเป็นทางการ
- อธิบายขั้นตอนการเปลี่ยนแปลงข้อมูลและความสัมพันธ์
ตัวอย่างชุดข้อมูลของอัลกอริธึมอย่างง่ายใน JavaScript - สำเนาย่อของแบบจำลองของระบบการจัดการฐานข้อมูลที่แข็งแกร่งที่สุด
เพียงว่าในกรณีที่สอง ผู้เชี่ยวชาญและผู้เชี่ยวชาญ เมื่อออกแบบโครงสร้างข้อมูล ตารางและความสัมพันธ์ มักจะไม่เห็น (เป็นการยากที่จะครอบคลุมข้อมูลธรรมชาติจำนวนมาก) สาระสำคัญของสิ่งต่าง ๆ และ ได้ชุดข้อมูลจำนวนมากที่ยุ่งยากและยังไม่ได้พัฒนา ในขณะที่ข้อมูลแหล่งที่มาของหัวเรื่องจะหมุนเวียนอย่างอิสระและง่ายดาย
คงที่เป็นไปได้
จาวาสคริปต์ทั่วไปคือการรวมโค้ดที่แนบมากับเพจและฟังก์ชันที่กำหนดให้กับเหตุการณ์บนแท็กเพจ ไม่ว่าจะด้วยวิธีใด แท็กหน้าจะกำหนดข้อมูลที่ทรัพยากรบนเว็บที่ระบุยอมรับ แก้ไข หรือสร้าง
หากคุณจดจ่อกับโค้ดของตัวจัดการอย่างระมัดระวังในเหตุการณ์ขององค์ประกอบ และไม่เน้นที่โค้ดของเพจโดยรวม นี่เป็นวิธีที่ดีที่สุด ตามหลักการแล้ว เมื่อโค้ดไม่แนะนำข้อมูลใหม่หรือไม่ได้แก้ไขข้อมูลที่มีอยู่ แต่เน้นที่สิ่งที่มีในช่วงเวลาหนึ่งโดยเฉพาะ
อันที่จริง หากคุณกำหนดแนวคิดของ "ข้อมูล" เป็นคำอธิบายแบบคงที่เพียงเล็กน้อยของแหล่งข้อมูลและปฏิบัติตาม นั่นหมายความว่าคุณมีโอกาสประสบความสำเร็จ
เกี่ยวกับฐานข้อมูล สิ่งต่าง ๆ ซับซ้อนกว่ามาก รหัส JavaScript ใด ๆ "ให้" หน้าที่มีฟังก์ชันการทำงาน ฐานข้อมูลใดๆ ก็ตามคือชุดของตาราง ความสัมพันธ์ระหว่างตาราง กระบวนงานที่เก็บไว้ การสืบค้น และฟังก์ชันการทำงานที่พร้อมใช้งานจากภายนอก
สแตติกคือปัญหาของอัลกอริธึมใดๆ แนวคิดสมัยใหม่ของข้อมูลเป็นแบบคงที่ เช่น ตัวเลข สตริง อักขระ และอื่นๆ เมื่อประมวลผลหรือเขียนลงในตารางฐานข้อมูล ทุกอย่างก็ราบรื่น แต่เมื่อไหร่ต้นฉบับจะได้มิติหรือความหมายที่ต่างออกไป? ตัวเลือกที่หนึ่ง: เปลี่ยนเครื่องหมาย แต่การเชื่อมต่อและคำขออาจตกอยู่ในทันที
สถิตและวัตถุ
การกำหนดแนวคิดของ "ข้อมูล" เนื่องจากวัตถุเปลี่ยนสถานการณ์อย่างมาก วัตถุมีโครงสร้างของตัวเอง คุณสามารถใช้คำอธิบายของตัวแปรต่างๆ ได้ที่นี่ บทบาทจะไม่เล่น ออบเจ็กต์มีเมธอดซึ่งมีข้อมูลอยู่ ตั้งแต่ทุกอย่างใช้ในด้านการเขียนโปรแกรม นั่นคือ วิธีการพื้นฐานสามวิธี: อ่าน เขียน เปลี่ยนแปลง คุณสามารถเพิ่มเพื่อเปรียบเทียบ ค้นหา โคลน ฯลฯ
หัวเรื่องกำหนดช่วงของคุณสมบัติในแต่ละข้อมูล ดังนั้น ปรากฎว่าแนวคิดของข้อมูลถูกแปลงเป็นคำอธิบายประเภทหนึ่งที่สามารถเปลี่ยนแปลงได้แบบไดนามิก สแตติกภายในวัตถุให้ไดนามิกภายนอก
การเปลี่ยนการรวมตัวอธิบายแบบคงที่ภายในวัตถุ คุณไม่จำเป็นต้องกังวลเกี่ยวกับพลวัตของความสัมพันธ์กับวัตถุอื่น
การเขียนโปรแกรมและการนำเสนอข้อมูล
ข้อมูลคืออะไร? จิตสำนึกสาธารณะคุ้นเคยกับเทคโนโลยีสารสนเทศอยู่แล้ว ทำงานในเมฆและมีคอนเทนเนอร์ในพื้นที่เสมือน ตอนนี้ไม่เพียงแต่โปรแกรมเมอร์มืออาชีพและผู้ใช้เท่านั้น แต่ยังรวมถึงคนทั่วไปที่มีความสามารถด้านข้อมูลและการใช้งาน

แต่การเขียนโปรแกรมคืออะไร? จนถึงทุกวันนี้ ความคิดเห็นของสาธารณชนได้ให้คำจำกัดความแก่แนวคิดนี้และแนวคิดดังต่อไปนี้:
- สารสนเทศและข้อมูลเป็นแนวคิดพื้นฐานที่ใช้ในวิทยาการคอมพิวเตอร์
- ข้อมูลเป็นวิธีหนึ่งที่ได้รับและบันทึกการสังเกตที่สัมพันธ์กับความเป็นจริงโดยรอบ
- พวกมันเรียบง่ายและซับซ้อน (โครงสร้าง) ระดับประถมศึกษาและมัธยมศึกษา
- ฐานข้อมูลคือชุดของสื่ออิสระที่นำเสนออย่างเป็นระบบ เพื่อให้สามารถค้นหา ดัดแปลง และนำไปใช้ได้
มันมีวัตถุประสงค์อะไร? ผู้เขียนที่มีสิทธิ์คิดอย่างนั้น. การปฏิบัติจริงมีแนวโน้มที่จะทำให้แน่ใจว่าแต่ละสาขาวิชากำหนดระบบข้อมูลที่ถูกต้อง และให้ทุกโอกาสในการสร้างแบบจำลองไดนามิกที่ดี
ไม่ใช่เรื่องแปลกที่ลูกค้า (ผู้บริโภค) จะกำหนดความคิดเห็นของตนเองเกี่ยวกับโปรแกรมเมอร์ (ผู้ออกแบบฐานข้อมูล) เกี่ยวกับวิธีการและสิ่งที่ต้องทำ จากมุมมองของการเขียนโปรแกรม ความต้องการของลูกค้าสามารถเติมเต็มด้วยความแม่นยำสูงสุด
ต้องการออราเคิลในการแก้ปัญหาเรื่องงบสำหรับการบำรุงรักษาน้ำประปาในชนบท (ตึก21ในหมู่บ้าน)-ดี จำเป็นต้องใช้ MySQL เพื่อจัดระเบียบระบบติดตามสำหรับรายการจดหมายของที่ทำการไปรษณีย์ทั้งหมดในรัสเซีย - ทุกอย่างก็จะได้ผลเช่นกัน
คุณสามารถเขียนอัลกอริธึมใด ๆ และให้การเข้าถึงการแสดงข้อมูลใด ๆ ภายในคำจำกัดความของแนวคิดของข้อมูล ซึ่งจัดตั้งขึ้นโดยผู้พัฒนาระบบการจัดการฐานข้อมูลหรือภาษาการเขียนโปรแกรม คำถามแตกต่างออกไป: จะทำอย่างไรกับต้นทุนต่ำสุดในไดนามิกสูงสุด
ฐานข้อมูล ตัวอย่าง
ฐานที่เรียบง่ายถูกสร้างขึ้นโดยไม่มีแบบจำลอง แนวคิดพื้นฐานของข้อมูลและการสื่อสารมีขนาดเล็ก ฟังก์ชันการทำงานง่ายมาก ตัวอย่างเช่น สำหรับสถาบันอุดมศึกษา คุณต้องมี:
- โต๊ะครู;
- ตารางกลุ่ม (รหัสและหมายเลขกลุ่ม);
- โต๊ะนักเรียนทั่วไป (ใช้คีย์กลุ่ม)
คณบดีอยากรู้ความก้าวหน้าของอาจารย์ ตารางครูมีช่อง:
- นามสกุล;
- ชื่อ;
- patronymic;
- หมายเลขกลุ่มควบคุม
โต๊ะนักเรียนมีช่อง:
- นามสกุล;
- ชื่อ;
- patronymic;
- วันเดือนปีเกิด;
- GPA (สำหรับทุกวิชา);
- หมายเลขกลุ่ม
การสุ่มตัวอย่างสามารถมีได้อย่างน้อยสองตัวเลือก: โดยใช้ชื่อครู คุณสามารถไปที่หมายเลขกลุ่มและดูนักเรียนทั้งหมดและคะแนนเฉลี่ยของพวกเขา หรือตามนามสกุลของครูและนามสกุล ชื่อของนักเรียน คุณสามารถดูคะแนนเฉลี่ยของคนสุดท้าย

แม้จะเป็นเวอร์ชั่นธรรมดาๆ ก็ตาม ปัญหาก็รับประกันได้ และบางสิ่งจะต้องเปลี่ยนแปลง สถานการณ์: ครูล้มป่วย อีกหนึ่งเดือนมาแทนที่เขา ซึ่งหมายความว่าเขาดูแลสองกลุ่ม มีเพียงหนึ่งฟิลด์ภายใต้หมายเลขกลุ่มเดียวในตารางครู
ในการแก้ปัญหา คุณต้องเพิ่มฟิลด์ที่ซ้ำกัน และถ้าสองคนป่วยก็เพิ่มสามฟิลด์ ดังนั้นตารางครูจึงเริ่มเติบโตจากศูนย์
มีตัวเลือกอื่น: แทนที่ฟิลด์ตัวเลขของคีย์กลุ่มด้วยสัญลักษณ์ จากนั้น ทุกครั้งที่คุณเลือก คุณจะต้องแปลงสตริงเป็นลำดับของคีย์ และข้อความค้นหา sql หนึ่งรายการจะกลายเป็นหลายรายการ
ตัวอย่างที่ดีไม่ใช่การสร้างตาราง แต่เพื่อสร้างวัตถุ จากนั้นครูจะเป็นวัตถุ และเขาสามารถมีกลุ่มภายใต้การดูแลได้หลายกลุ่ม แต่มันเป็นวัตถุอย่างหนึ่งเสมอ วัตถุครูมีคีย์ที่ไม่ซ้ำกัน แต่สามารถมีกลุ่มภายใต้การดูแลได้หลายกลุ่ม กลุ่มนี้ยังมีคีย์เฉพาะ นักเรียนด้วย
ทั้ง 3 ตำแหน่งไม่ได้มีเฉพาะในงานเท่านั้น แต่สามารถพัฒนาต่อไปได้
ฐานเชิงวัตถุ
ผู้นำอุตสาหกรรมสารสนเทศเสนอฐานข้อมูลเชิงสัมพันธ์แบบคลาสสิก พวกเขาได้รับการทดสอบโดยชีวิต ทำงานได้ ปลอดภัย เชื่อถือได้ และในกรณีที่เกิดปัญหา จะอนุญาตให้คุณกู้คืนข้อมูลได้
ฐานข้อมูลเชิงวัตถุ (OODB) เริ่มได้รับการพัฒนาในช่วงกลางทศวรรษ 1980 และตามที่ผู้เขียนที่เชื่อถือได้มีแนวโน้มมาจนถึงทุกวันนี้ แต่จนถึงตอนนี้ นอกเหนือจากทฤษฎีพื้นฐานและการจัดเตรียมแนวความคิดแล้ว ไม่มี OODB ใดที่ได้รับการจัดอันดับและการกระจายแบบเดียวกันกับ MySQL, MS SQL Server หรือ Oracle ในทุกรูปแบบที่หลากหลาย

แต่จะเกิดอะไรขึ้นหากคำจำกัดความ แนวคิดของข้อมูล ประเภท คุณลักษณะ คลาส ลำดับชั้นถูกเสนอโดยนักพัฒนาที่มีคะแนนไม่เพียงพอที่จะสร้างชุมชนของโปรแกรมเมอร์ที่ยอมรับแนวคิดของ OODB นี้ เราจะต้องพึ่งกำลังของตัวเอง
OODB มากกว่า 30 แบบถูกสร้างขึ้นในสภาพแวดล้อม Linux แต่ที่ไหนคือการรับประกันว่าฐานข้อมูลที่สร้างขึ้นจะไม่ต้องการฟังก์ชันเพิ่มเติม? สภาพแวดล้อมของ Windows ไม่ได้ให้การรับประกันมากนักในพื้นที่นี้
วิธีแก้ปัญหาเชิงวัตถุ
อย่างไรก็ตามมีวิธีแก้ไข การใช้ MySQL เป็นตัวอย่าง คุณสามารถแสดงให้เห็นว่าตารางเชิงสัมพันธ์มาตรฐานกลายเป็นโมเดลเชิงวัตถุของปัญหาที่กำลังแก้ไขได้อย่างไร

ไม่มีฐานข้อมูลที่นี่ แต่มีสภาพแวดล้อมสำหรับสร้างระบบวัตถุของคุณเอง พลังของ MySQL ถูกใช้เป็นหน่วยความจำเชิงสัมพันธ์สำหรับตารางจากแถวข้อมูลเท่านั้น ตรรกะของการใช้งานนั้นถูกกำหนดโดยผู้พัฒนาเอง โดยเฉพาะมีตาราง is_cache มีครบทุกอย่างฟิลด์พื้นฐานหลายฟิลด์:
- owner_code;
- session_code;
- h_code;
- a_surprise;
- a_contents.
พื้นที่ที่เหลือมีฟังก์ชั่นบริการ ตารางนี้อยู่ที่อินพุตของคำขอและบันทึกการมาถึง ผู้พัฒนาจะเป็นผู้กำหนดรูปแบบฐานข้อมูลที่จะใช้งานได้ สิ่งที่จะพอดีกับช่องเนื้อหา (a_contents) ถูกกำหนดโดยวัตถุของแบบจำลองที่สร้างโดยนักพัฒนา
แนวคิดนี้มีสี่อย่าง: hit, hit session, hit history code และเนื้อหาเฉพาะ การโทรคืออะไรระบบของอ็อบเจ็กต์ใดที่ควรสร้าง - ถูกกำหนดโดยนักพัฒนา เซสชัน (กระบวนการทำงาน) หมายถึงอะไร ถูกกำหนดโดยนักพัฒนา รหัสประวัติคือความสามารถในการย้อนกลับตามคำขอ
ตารางที่นี่ไม่เกี่ยวอะไรกับหัวข้อ มีตัวควบคุมการโทร (is_cache) มีการบันทึก (is_customs) มีประวัติการโทร (is_histories) ตารางที่เหลือถูกกำหนดโดยงานที่กำลังแก้ไข
อันที่จริง โซลูชันนี้แนะนำให้สร้าง OODB ของคุณเองตามโมเดลฐานข้อมูลโดเมนที่สร้างและปัญหาที่กำลังแก้ไข มีประโยชน์มากมายที่นี่ - นี่คือแนวคิดเกี่ยวกับข้อมูลของคุณเอง รูปแบบการนำเสนอของคุณเอง และความสัมพันธ์ระหว่างข้อมูลเหล่านี้ มีรากฐานอยู่ที่นี่ - ฐานข้อมูลเชิงสัมพันธ์ที่ยอดเยี่ยม จะไม่มีปัญหาในการมองหาบางสิ่งและเข้าใจบางสิ่งผิด
รุ่น: ระบบวัตถุ + DBMS
แทบจะเป็นไปไม่ได้เลยที่จะเปลี่ยนแปลงอะไรในเทคโนโลยีสารสนเทศ การปฏิวัติข้อมูลที่แท้จริงยังห่างไกล จิตสำนึกแบบมืออาชีพนักพัฒนาซอฟต์แวร์จะไม่เปลี่ยนประเพณีดั้งเดิม แต่ก็ยังมีทางออกจากสถานการณ์

การใช้ระบบการจัดการฐานข้อมูลที่ทันสมัยที่เชื่อถือได้เป็นพื้นฐานสำหรับการสร้างสภาพแวดล้อมสำหรับการมีอยู่ของแบบจำลองของคุณเอง คุณจะประสบความสำเร็จอย่างเห็นได้ชัด
ไม่ว่าในกรณีใด คุณจะต้องสร้างมุมมองหรือตัวแบบข้อมูลเพื่อแก้ปัญหา แต่คุณต้องทำอย่างถูกต้อง: ปล่อยให้เป็นระบบของวัตถุ และ DBMS ที่ดีจะเป็นสภาพแวดล้อม