StackOverflow ನಲ್ಲಿ ಜಾವಾ ಕೋಡ್‌ನ ಅತ್ಯಂತ ಜನಪ್ರಿಯ ಉದಾಹರಣೆಯು ದೋಷವನ್ನು ಹೊಂದಿದೆ

ಅತ್ಯಂತ ಜನಪ್ರಿಯ ಜಾವಾ ಕೋಡ್ ಉದಾಹರಣೆ, StackOverflow ನಲ್ಲಿ ಪ್ರಕಟಿಸಲಾಗಿದೆ, ಹೀಗಾಯಿತು ಕೆಲವು ಪರಿಸ್ಥಿತಿಗಳಲ್ಲಿ ತಪ್ಪಾದ ಫಲಿತಾಂಶದ ಔಟ್ಪುಟ್ಗೆ ಕಾರಣವಾಗುವ ದೋಷದೊಂದಿಗೆ. ಪ್ರಶ್ನಾರ್ಹ ಕೋಡ್ ಅನ್ನು 2010 ರಲ್ಲಿ ಪೋಸ್ಟ್ ಮಾಡಲಾಗಿದೆ ಮತ್ತು ಸಾವಿರಕ್ಕೂ ಹೆಚ್ಚು ಶಿಫಾರಸುಗಳನ್ನು ಸಂಗ್ರಹಿಸಿದೆ ಮತ್ತು ಸಹ ಮಾಡಲಾಗಿದೆ ನಕಲು ಮಾಡಲಾಗಿದೆ ಅನೇಕ ಯೋಜನೆಗಳಲ್ಲಿ ಮತ್ತು ಸುಮಾರು 7 ಸಾವಿರ ಬಾರಿ GitHub ನಲ್ಲಿ ರೆಪೊಸಿಟರಿಗಳಲ್ಲಿ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ. ಬಳಕೆದಾರರು ಈ ಕೋಡ್ ಅನ್ನು ತಮ್ಮ ಯೋಜನೆಗಳಿಗೆ ನಕಲಿಸುವುದರಿಂದ ದೋಷ ಕಂಡುಬಂದಿಲ್ಲ, ಆದರೆ ಸಲಹೆಯ ಮೂಲ ಲೇಖಕರಿಂದ ಕಂಡುಬಂದಿದೆ ಎಂಬುದು ಗಮನಾರ್ಹ.

ಪ್ರಶ್ನೆಯಲ್ಲಿರುವ ಕೋಡ್ ಬೈಟ್ ಗಾತ್ರವನ್ನು ಓದಬಹುದಾದ ರೂಪಕ್ಕೆ ಪರಿವರ್ತಿಸುತ್ತದೆ, ಉದಾಹರಣೆಗೆ 110592 ಅನ್ನು "110.6 kB" ಅಥವಾ "108.0 KiB" ಗೆ ಪರಿವರ್ತಿಸುತ್ತದೆ. 1018, 1015, 1012, 1019 ರ ಮೂಲಕ ಲೂಪ್‌ನಲ್ಲಿನ ಮೂಲ ಮೌಲ್ಯದ ಅನುಕ್ರಮ ವಿಭಜನೆಯ ಆಧಾರದ ಮೇಲೆ ಮೌಲ್ಯವನ್ನು ನಿರ್ಧರಿಸುವ ಈ ಹಿಂದೆ ಪ್ರಸ್ತಾಪಿಸಲಾದ ಸಲಹೆಯ ಲಾಗರಿಥಮ್-ಆಪ್ಟಿಮೈಸ್ಡ್ ಆವೃತ್ತಿಯಾಗಿ ಕೋಡ್ ಅನ್ನು ಪ್ರಸ್ತಾಪಿಸಲಾಗಿದೆ.
106, 103 ಮತ್ತು 100, ಎಲ್ಲಿಯವರೆಗೆ ಭಾಜಕವು ಮೂಲ ಬೈಟ್ ಮೌಲ್ಯಕ್ಕಿಂತ ಹೆಚ್ಚಾಗಿರುತ್ತದೆ. ಆಪ್ಟಿಮೈಸ್ಡ್ ಆವೃತ್ತಿಯಲ್ಲಿನ ದೊಗಲೆ ಲೆಕ್ಕಾಚಾರಗಳ ಕಾರಣದಿಂದಾಗಿ (ದೀರ್ಘ ಮೌಲ್ಯದ ಓವರ್‌ಫ್ಲೋ), ಬಹಳ ದೊಡ್ಡ ಸಂಖ್ಯೆಗಳನ್ನು (ಎಕ್ಸಾಬೈಟ್‌ಗಳು) ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವಾಗ ಫಲಿತಾಂಶವು ವಾಸ್ತವಕ್ಕೆ ಹೊಂದಿಕೆಯಾಗುವುದಿಲ್ಲ.

ಸಲಹೆಯ ಲೇಖಕರು ಮೂಲವನ್ನು ಉಲ್ಲೇಖಿಸದೆ ಮತ್ತು ಪರವಾನಗಿಯನ್ನು ಸೂಚಿಸದೆ ಉದಾಹರಣೆಗಳನ್ನು ನಕಲಿಸುವ ಸಮಸ್ಯೆಯ ಬಗ್ಗೆ ಗಮನ ಸೆಳೆಯಲು ಪ್ರಯತ್ನಿಸಿದರು. ಹಿಂದಿನ ಮಾಹಿತಿಯ ಪ್ರಕಾರ ಸಂಶೋಧನೆ ನಡೆಸಿದರು 46% ಡೆವಲಪರ್‌ಗಳು ಸ್ಟಾಕ್‌ಓವರ್‌ಫ್ಲೋ ನಿಂದ ಗುಣಲಕ್ಷಣವಿಲ್ಲದೆ ಕೋಡ್ ಅನ್ನು ನಕಲಿಸಿದ್ದಾರೆ, 75% ರಷ್ಟು CC BY-SA ಅಡಿಯಲ್ಲಿ ಕೋಡ್ ಪರವಾನಗಿ ಪಡೆದಿದೆ ಎಂದು ತಿಳಿದಿರಲಿಲ್ಲ ಮತ್ತು 67% ರಷ್ಟು ಇದಕ್ಕೆ ಗುಣಲಕ್ಷಣದ ಅಗತ್ಯವಿದೆ ಎಂದು ತಿಳಿದಿರಲಿಲ್ಲ.

ಬೈ ನೀಡಲಾಗಿದೆ ಮತ್ತೊಂದು ಅಧ್ಯಯನದ ಪ್ರಕಾರ, ಕೋಡ್ ಉದಾಹರಣೆಗಳನ್ನು ನಕಲಿಸುವುದು ಕೋಡ್‌ನಲ್ಲಿನ ದೋಷಗಳ ಅಪಾಯವನ್ನು ಮಾತ್ರವಲ್ಲದೆ ದುರ್ಬಲತೆಗಳನ್ನೂ ಒಳಗೊಂಡಿರುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, StackOverflow ನಲ್ಲಿ 72483 C++ ಕೋಡ್ ಉದಾಹರಣೆಗಳನ್ನು ವಿಶ್ಲೇಷಿಸಿದ ನಂತರ, ಸಂಶೋಧಕರು ಅತ್ಯಂತ ಜನಪ್ರಿಯ ಶಿಫಾರಸುಗಳ ಪಟ್ಟಿಯಲ್ಲಿ ಸೇರಿಸಲಾದ 69 ಉದಾಹರಣೆಗಳಲ್ಲಿ (ಇದು 0.09%) ಗಂಭೀರ ದೋಷಗಳನ್ನು ಗುರುತಿಸಿದ್ದಾರೆ. ನಂತರ GitHub ನಲ್ಲಿ ಈ ಕೋಡ್ ಇರುವಿಕೆಯನ್ನು ವಿಶ್ಲೇಷಿಸಿದ ನಂತರ, StackOverflow ನಿಂದ ನಕಲಿಸಲಾದ ದುರ್ಬಲ ಕೋಡ್ 2859 ಯೋಜನೆಗಳಲ್ಲಿದೆ ಎಂದು ತಿಳಿದುಬಂದಿದೆ.

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ