ග්ලෝබල් එතරම් නරක නැත. තවත් පිළිතුරු කිහිපයක සඳහන් කර ඇති පරිදි, ඔවුන් සමඟ ඇති සැබෑ ගැටළුව නම්, අද, ඔබේ ගෝලීය ෆෝල්ඩර මාර්ගය, හෙට, කිහිපයකින් එකක් හෝ සිය ගණනක් විය හැකිය. ඔබ ඉක්මන්, එකවර වැඩසටහනක් ලියන්නේ නම්, එය පහසු නම් ග්ලෝබල් භාවිතා කරන්න. සාමාන්යයෙන්, ඔබට එකක් අවශ්ය යැයි ඔබ සිතන විට පවා ගුණ කිරීමට ඉඩ දීම යන්නට මාර්ගයයි. හදිසියේම දත්ත සමුදායන් දෙකක් සමඟ කතා කිරීමට අවශ්ය විශාල සංකීර්ණ වැඩසටහනක් ප්රතිව්යුහගත කිරීම සතුටක් නොවේ .
නමුත් ඔවුන් විශ්වසනීයත්වයට හානියක් නොකරයි. ඔබගේ වැඩසටහනේ බොහෝ ස්ථාන වලින් යොමු කර ඇති ඕනෑම දත්ත අනපේක්ෂිත ලෙස වෙනස් වුවහොත් ගැටළු ඇති විය හැක. ගණන් ගැනීමේ මැද ගණන් කිරීමේ දී ඔවුන් ගණනය කරන එකතුව වෙනස් වූ විට ගණන් ගන්නා අය හුස්ම හිර කරති. සිදුවීම් පෝලිම් සිදුවීම් එකිනෙකාට උපක්රම සෙල්ලම් කළ හැකිය. නූල් සෑම විටම විනාශය විනාශ කළ හැකිය. දේශීය විචල්ය හෝ වෙනස් කළ නොහැකි ක්ෂේත්රයක් නොවන ඕනෑම දෙයක් ගැටළුවකි. ග්ලෝබල් යනු මේ ආකාරයේ ගැටළුවක් වන නමුත් ඔබ ඒවා ගෝලීය නොවන බවට පත් කිරීමෙන් එය නිවැරදි කිරීමට යන්නේ නැත.
ඔබ ගොනුවකට ලිවීමට සූදානම් නම් සහ ෆෝල්ඩරයේ මාර්ගය වෙනස් වේ නම්, වෙනස් කිරීම සහ ලිවීම සමමුහුර්ත කිරීම අවශ්ය වේ. . ෆෝල්ඩරයේ මාර්ගය ගෝලීය හෝ වැඩසටහන දැනට භාවිතා කරන දහසෙන් එකකි.
පෝලිම්වල විවිධ සිදුවීම්, විවිධ මට්ටම්වල පුනරාවර්තන හෝ විවිධ නූල් මගින් ප්රවේශ විය හැකි ක්ෂේත්ර පිළිබඳ සැබෑ ගැටළුවක් ඇත. එය සරල කිරීමට (සහ සරල): දේශීය විචල්යයන් හොඳ වන අතර ක්ෂේත්ර නරක ය. නමුත් කලින් ගෝලීයයන් තවමත් ක්ෂේත්රයන් වනු ඇත, එබැවින් මෙම (කෙසේ වෙතත් විවේචනාත්මකව වැදගත්) ගැටළුව ගෝලීය ක්ෂේත්රවල යහපත් හෝ නපුරු තත්වයට අදාළ නොවේ .
එකතු කිරීම: බහු කියවීමේ ගැටළු:
(ඔබට සිදුවීම් පෝලිම් හෝ පුනරාවර්තන ඇමතුම් සමඟ සමාන ගැටළු ඇති විය හැකි බව සලකන්න, නමුත් බහු කියවීම බොහෝ දුරට නරකම ය.) පහත කේතය සලකා බලන්න:
if (filePath != null) text = filePath.getName();
නම් filePath
දේශීය විචල්ය හෝ නියත යම් ආකාරයක වේ, ඔබේ වැඩසටහන වේ නොහැකි නිසා ධාවනය විට අසමත් යන්නේ filePath
ශූන්ය වේ. චෙක්පත සෑම විටම ක්රියා කරයි. වෙනත් කිසිදු නූලකට එහි වටිනාකම වෙනස් කළ නොහැක. එසේ නොමැතිනම් කිසිදු සහතිකයක් නොමැත. මම ජාවා හි බහු තෙරපුම් වැඩසටහන් ලිවීමට පටන් ගත් විට, මට සෑම විටම මෙවැනි රේඛාවලින් NullPointerException ලැබුණි. කිසියම්වෙනත් නූල් වලට ඕනෑම වේලාවක අගය වෙනස් කළ හැකි අතර ඒවා බොහෝ විට සිදු වේ. තවත් පිළිතුරු කිහිපයක් පෙන්වා දෙන පරිදි, මෙය පරීක්ෂා කිරීම සඳහා බරපතල ගැටළු ඇති කරයි. ඉහත ප්රකාශයට බිලියනයක වාරයක් වැඩ කළ හැකි අතර එය පුළුල් හා සවිස්තරාත්මක පරීක්ෂණ මගින් ලබා ගත හැකි අතර පසුව නිෂ්පාදනයේ එක් වරක් පුපුරවා හැරිය හැකිය. පරිශීලකයින්ට ගැටලුව ප්රතිනිෂ්පාදනය කිරීමට නොහැකි වනු ඇති අතර, ඔවුන් දේවල් දකින බව අමතක කර එය අමතක කරන තුරු එය නැවත සිදු නොවේ.
ග්ලෝබල් වලට නියත වශයෙන්ම මෙම ගැටළුව ඇති අතර, ඔබට ඒවා සම්පූර්ණයෙන්ම තුරන් කිරීමට හෝ නියත හෝ දේශීය විචල්යයන් සමඟ ප්රතිස්ථාපනය කළ හැකි නම් එය ඉතා හොඳ දෙයකි. ඔබට වෙබ් සේවාදායකයක අස්ථායි කේතයක් තිබේ නම්, ඔබට බොහෝ විට එසේ කළ හැකිය. සාමාන්යයෙන්, ඔබේ සියලු බහුකාර්ය ගැටලු දත්ත සමුදායට ගත හැකිය.
නමුත් ඔබේ වැඩසටහනට එක් පරිශීලක ක්රියාවක සිට තවත් දෙයකට දේවල් මතක තබා ගත යුතු නම්, ඕනෑම ධාවන නූල් මඟින් ඔබට ප්රවේශ විය හැකි ක්ෂේත්ර තිබේ. ගෝලීය නොවන එවැනි ගෝලීය නොවන ක්ෂේත්රයකට මාරුවීම විශ්වසනීයත්වයට උපකාරී නොවේ.