இன்று நான் ஒரே தரவுத்தள முறையை (database pattern) மூன்று முறை கண்டேன்
இன்று எனது குறியீட்டில் (code) ஒரே மாதிரியான தரவுத்தள அமைப்பை மூன்று முறை பார்த்தேன்.
முதலில், கட்டணங்களுடன் (fees) இதைக் கண்டேன்.
- Fee (பெற்றோர்/parent: ஒரு வகுப்பு செலுத்த வேண்டிய தொகை)
- FeePayment (பிள்ளை/child: ஒவ்வொரு தனிப்பட்ட கட்டணமும்)
பிறகு, மதிப்பீடுகளுடன் (assessments) இதைக் கண்டேன்.
- Assessment (பெற்றோர்/parent: வினாடி வினா விவரங்கள், தேதி மற்றும் அதிகபட்ச மதிப்பெண்)
- AssessmentResult (பிள்ளை/child: ஒவ்வொரு மாணவரின் மதிப்பெண்)
இந்த அமைப்பு பொதுவான தவறுகளைத் தடுக்கிறது.
நீங்கள் பெற்றோர்-பிள்ளை (parent-child) முறையைப் பயன்படுத்தவில்லை என்றால், பின்வரும் சிக்கல்களைச் சந்திக்க நேரிடும்:
- நீங்கள் தரவை மீண்டும் மீண்டும் செய்கிறீர்கள். ஒவ்வொரு மாணவர் வரிசைக்கும் பாடப்பொருள் மற்றும் தேதியை நகலெடுக்கிறீர்கள்.
- நீங்கள் குழப்பத்தை உருவாக்குகிறீர்கள். எந்த வரிசைகள் ஒரு நிகழ்வுக்குச் சொந்தமானவை என்பதைக் கண்டறிவது கடினம்.
- நீங்கள் அட்டவணைகளைத் தேவையற்ற தரவுகளால் நிரப்புகிறீர்கள். தலைப்புத் தரவை (header data) மாணவர் வரிசைகளில் தேவையில்லாமல் சேர்க்கிறீர்கள்.
காலப்போக்கில் முறைகளை அடையாளம் காணும் திறன் வளரும்.
முதல் முறை நீங்கள் ஒரு கட்டமைப்புப் பிரச்சினையைச் சரிசெய்யும்போது, அது ஒரு தனிப்பட்ட சரிசெய்தலாக மட்டுமே இருக்கும். இரண்டாவது முறை அதைப் பார்க்கும்போது, நீங்கள் ஒரு முறையை அடையாளம் காண்பீர்கள். மூன்றாவது முறை, அந்தப் பிரச்சினை வரும் முன்பே நீங்கள் அந்த முறையைப் பயன்படுத்தத் தொடங்குவீர்கள்.
நான் இன்னும் விளிம்பு நிலைச் சூழல்களை (edge cases) உருவாக்கிச் சோதித்துக் கொண்டிருக்கிறேன். நான் இன்னும் கற்றுக்கொண்டிருக்கிறேன்.