අතුරු ආබාධ අවම කරන්න (ඉතා මැනවින් කිසිවක් නැත)
තමන්ගේ විෂය පථයෙන් බැහැර රාජ්යයන් 3 ක් වෙනස් කිරීමට හේතු වන ශ්රිතයක්, යමක් ආදානය කර වෙනත් දෙයක් ප්රතිදානය කරන එකකට වඩා තර්කානුකූලව හා නඩත්තු කිරීම වඩා දුෂ්කර ය. ශ්රිතය කරන්නේ කුමක්දැයි ඔබට දැනගත නොහැක, එය කළ දේ සහ අනෙක් සියලුම අදාළ ක්රියාකාරකම් වලට එය බලපාන්නේ කෙසේද යන්න මතක තබා ගත යුතුය.
OOP සඳහා අතුරු ආබාධ අවම කිරීම යන්නෙන් අදහස් කරන්නේ අඩු සාමාජිකයන් සහිත පංති සහ විශේෂයෙන් පංතියේ තත්වය වෙනස් කළ හැකි සාමාජිකයින් අඩු වීමයි, මන්ද සාමාජික ක්රියාකාරිත්වයන්ට තමන්ගේම රාජ්යයන් වෙනස් කළ හැකි අතර අතුරු ආබාධ ඇති විය හැකිය (ඔවුන්ට පන්තියේ අභ්යන්තරය හැසිරවිය හැකිය, උදා). එහි අර්ථය වන්නේ තමන්ගේම දත්ත සාමාජිකයන් අඩු සංඛ්යාවක් සිටින පන්ති, එමඟින් එම ක්රමවේදයන් හීලෑ කිරීමට අඩු තත්වයක් සහ ඔවුන්ට ඇතිවිය හැකි අතුරු ආබාධ අඩු වීමයි.
සරල උදාහරණයක් ලෙස, sorted
ද්විමය හෝ රේඛීය සෙවීම් සිදු කරන්නේද යන්න තීරණය කිරීම සඳහා එය භාවිතා කරන රාජ්යයක් පවත්වා ගත හැකි විසිතුරු දත්ත ව්යුහයක් සැලසුම් කිරීමට උත්සාහ කිරීම ගැන සිතන්න . එවැනි අවස්ථාවක, සැලසුම පන්ති දෙකකට වෙන් කිරීම ප්රයෝජනවත් විය හැකිය. ඇමතුම් sorted
මෙම unsorted පන්තිය මත එවකට සෑම විටම එහි අන්තර්ගතය හිඳගෙන, දිගටම තවත් පන්තියේ දත්ත ව්යුහය නැවත විය හැකිය. දැන් ඔබට අඩු අතුරු ආබාධ ඇත (එබැවින් අඩු දෝෂ සහිත සහ කේත තේරුම් ගැනීමට පහසුය) මෙන්ම වඩාත් පුළුල් ලෙස අදාළ වන කේතය (කලින් සැලසුම් කිරීම කිසි විටෙකත් වර්ග කිරීමට අවශ්ය නොවන කුඩා අරා සඳහා සැකසීමේදී හා මානව බුද්ධිමය කාර්යක්ෂමතාවයෙන් නාස්ති වනු ඇත).
අතිරික්ත බාහිර යැපීම් වලින් වළකින්න
සාපේක්ෂව සරල කාර්යයක් ඉටු කිරීම සඳහා විවිධ පුස්තකාල 13 ක් භාවිතා කිරීමෙන් ඔබට උපරිම කේත නැවත භාවිතා කළ හැකි යැයි සිතිය හැකි වඩාත්ම දැඩි කේතය ක්රියාත්මක කිරීමට ඔබට හැකි වනු ඇත. කෙසේ වෙතත්, එමඟින් ඔබේ පා readers කයන්ට බුද්ධිමය පොදු කාර්යය මාරු කරනු ලැබේ, එවිට විවිධ පුස්තකාල 13 ක අවම වශයෙන් කොටස් තේරුම් ගැනීමට ඔවුන්ට හැකි වේ. තෙවන පාර්ශවීය පුස්තකාලයක් තැනීමට හා අවබෝධ කර ගැනීමට උත්සාහ කළ ඕනෑම අයෙකු මෙම ආවේනික සංකීර්ණතාව වහාම අගය කළ යුතුය.
මෙය බොහෝ විට මතභේදාත්මක මතයක් විය හැකි නමුත් අවසාන ප්රති result ලය හොඳින් පරීක්ෂා කර ඇත්නම් (ප්රතිවිරුද්ධ අන්තයට වඩා නිහතමානී කේත අනුපිටපත් කිරීමට මම කැමැත්තෙමි. (පරීක්ෂා නොකළ වැරදි කේතයට වඩා නරක කිසිවක් බොහෝ වාර ගණනක් අනුපිටපත් කර නැත). දෛශික හරස් නිෂ්පාදනයක් ගණනය කිරීම සඳහා තේරීම් අනුපිටපත් පේළි 3 ක් අතර හෝ කේත පේළි 3 ක් රැවුල කැපීම සඳහා එපික් ගණිත පුස්තකාලයකට ඇදගෙන යාම නම්, ඔබේ ගණිත පුස්තකාලය සමඟ ඔබේ මුළු කණ්ඩායමම නොසිටියේ නම් මම කලින් යෝජනා කරමි. , විසන්ධි කිරීමේ ප්රතිලාභ වෙනුවට ප්රමාණවත් තරම් සුළු නම්, 1 වෙනුවට කේත පේළි 3 ක් ලිවීම ගැන ඔබ තවමත් සලකා බැලිය හැකිය.
කේත නැවත භාවිතා කිරීම සමතුලිත ක්රියාවකි. ඕනෑවට වඩා නැවත භාවිතා කරන්න, ඔබ බුද්ධිමය සංකීර්ණතාව එකින් එක ආකාරයකට මාරු කරයි, ඔබ ඉහත සුරකින ලද සරල කේත පේළි 3 හි මෙන්, පේළි 3 කට වඩා වැඩි තොරතුරු පා readers කයන්ට සහ නඩත්තුකරුවන්ට අවබෝධ කර ගත යුතුය. . ගණිත පුස්තකාලය වෙනස් වුවහොත් ඔබේ කේතයද විය හැකි බැවින් එය ඔබගේ කේතය අඩු ස්ථාවර කරයි. ඉතා සුළු වශයෙන් නැවත භාවිතා කරන්න, ඔබ බුද්ධිමය පොදු කාර්යය ද ගුණ කරන අතර ඔබේ කේතය කේන්ද්රීය වැඩිදියුණු කිරීම් වලින් ප්රතිලාභ ලැබීම නවතා දමයි, එබැවින් එය සමතුලිත ක්රියාවකි, නමුත් එය සමබර කිරීමේ ක්රියාවක් යන අදහස සඳහන් කිරීම වටී. ප්රතිවිරුද්ධ අන්තයට වඩා නඩත්තු කිරීමට අපහසු, වැඩි නොවේ නම් ප්රති result ලයකට.
එයින් පිටත පරීක්ෂා කරන්න
මෙය ලබා දී ඇති නමුත් ඔබේ කේතය සියලු ආදාන සිද්ධීන් හසුරුවන්නේ නැතිනම් සහ සමහර දාරවල අවස්ථා මඟ හැරී ඇත්නම්, අනෙක් අය ඔබ ලියා ඇති කේතය ඔවුන්ගේ ඇස් සහ අත් වලට මාරු කිරීමට පෙර පවා ඔබ නිවැරදිව ලබා නොගත් බවට නඩත්තු කරනු ඇතැයි අපේක්ෂා කරන්නේ කෙසේද? මුලින් කිසි විටෙකත් නිවැරදි නොවූ කේතයක් පමණක් නොව පරිපූර්ණ ලෙස ක්රියා කරන කේතයේ වෙනස්කම් කිරීම ප්රමාණවත් නොවේ.
ඊට ඉහළින්, ගැඹුරු පරීක්ෂණ සමත් කේතය සාමාන්යයෙන් වෙනස් වීමට හේතු කිහිපයක් සොයා ගනී. එය ස්ථායීතාවයට සම්බන්ධ වන අතර එය නඩත්තු කළ හැකි මට්ටමට වඩා ළඟා කර ගත හැකි ශුද්ධ ග්රේල් එකකි. මන්දයත් කිසි විටෙකත් වෙනස් කළ යුතු ස්ථාවර කේතය නඩත්තු පිරිවැයක් දැරීමට සිදු නොවන බැවිනි.
අතුරු මුහුණත් ප්රලේඛනය
දෙකම ලේඛනගත කිරීම සඳහා ඔබට සමාන කාලයක් වෙන් කළ නොහැකි නම් "දේවල් කරන්නේ කෙසේද" යන්නට "දේවල් කරන්නේ කෙසේද" යන්නට ප්රමුඛතාවය දෙන්න. හැකි සෑම ආදාන අවස්ථා වලදීම එය කරන්නේ කුමක් ද යන්න පිළිබඳ (හෝ අවම වශයෙන් එය කළ යුතු දේ) පැහැදිලි අභිප්රායක් ඇති අතුරු මුහුණතක්, එය ක්රියාත්මක කිරීම සඳහා සන්දර්භය පිළිබඳ පැහැදිලි බවක් ලබා දෙනු ඇති අතර එය කෙසේ දැයි තේරුම් ගැනීමට මග පෙන්වනු ඇත. කේතය භාවිතා කිරීමට පමණක් නොව එය ක්රියාත්මක වන ආකාරයද.
මේ අතර, මෙම ගුණාංග නොමැති පුද්ගලයින් විසින් කළ යුතු දේ පවා නොදන්නා කේතය SOL යනු එය ක්රියාත්මක කිරීමේ තොරතුරු කෙතරම් හොඳින් ලේඛනගත කර තිබුණද. පිටු 20 කින් යුත් අත්පොතක් ප්රභව කේතය ක්රියාත්මක කරන්නේ කෙසේද යන්න හරියටම වටහා ගත නොහැකි අයට එය මුලින්ම භාවිතා කළ යුත්තේ කෙසේද යන්න සහ එය කළ හැකි සෑම අවස්ථාවකම කළ යුතු දේ පවා වටහා ගත නොහැක.
ක්රියාත්මක කිරීමේ පැත්ත සඳහා, ඔබ කරන දේ අනෙක් සියල්ලන්ට වඩා වෙනස් ලෙස ලේඛනගත කිරීමට ප්රමුඛතාවය දෙන්න. නිදසුනක් ලෙස, ඉන්ටෙල්හි ඔවුන්ගේ රේට්රේසිං කර්නල් සඳහා සීමිත පරිමාවක් ඇත. මම මෙම ක්ෂේත්රයේ වැඩ කරන බැවින්, ඔවුන්ගේ කේතය කරන්නේ කුමක්ද යන්න බැලූ බැල්මට ලේඛනගත කිරීමකින් තොරව මට හඳුනාගත හැකිය. කෙසේ වෙතත්, ඔවුන් අද්විතීය දෙයක් කරයි, එය බීවීඑච් හරහා ගමන් කිරීම සහ කිරණ පැකට් භාවිතා කරමින් සමාන්තරව මංසන්ධි සිදු කිරීම ය . බොහෝ historical තිහාසික BVH ක්රියාත්මක කිරීම් වලින් කේතයේ එම කොටස් විදේශීය හා අසාමාන්ය බැවින් ඒවායේ ලේඛනවලට ප්රමුඛතාවය දීමට මට අවශ්ය වන්නේ එතැනිනි.
කියවීමේ හැකියාව
මෙම කොටස ඉතා ආත්මීය ය. මිනිස් චින්තන ක්රියාවලියට සමීප ආකාරයේ කියවීමේ හැකියාව ගැන මම එතරම් තැකීමක් නොකරමි. කතුවරයා ගැටළුවක් විසඳීම සඳහා විකාර සහ සංක්ෂිප්ත චින්තන ක්රියාවලීන් භාවිතා කරන්නේ නම්, ඉහළම මට්ටමේ දේවල් විස්තර කරන වඩාත් හොඳින් ලේඛනගත කේතය තවමත් මට අනුගමනය කිරීමට අපහසුය. මේ අතර අක්ෂර 2 හෝ 3 භාවිතා කරන ටර්ස් කේතය බොහෝ විට තර්කනය ඉතා සරල දැයි තේරුම් ගැනීමට මට පහසු වේ. සමාලෝචන බැලීමට ඔබට හැකි අතර අනෙක් පුද්ගලයින් කැමති දේ දැක ගත හැකිය.
මම වැඩිපුරම උනන්දු වන්නේ නඩත්තු කිරීම සහ ඊටත් වඩා වැදගත් ලෙස ස්ථාවරත්වයයි. වෙනස් කිරීමට කිසිදු හේතුවක් සොයා නොගන්නා කේතය නඩත්තු වියදම් ශුන්ය වන එකකි.