Interning (computer science)
ಕಂಪ್ಯೂಟರ್ ವಿಜ್ಞಾನದಲ್ಲಿ, ಇಂಟರ್ನಿಂಗ್ ಎಂದರೆ ಹೊಸ ವಸ್ತುಗಳನ್ನು ರಚಿಸುವ ಬದಲು ಬೇಡಿಕೆಯ ಮೇಲೆ ಸಮಾನ ಮೌಲ್ಯದ ವಸ್ತುಗಳನ್ನು ಮರುಬಳಕೆ ಮಾಡುವುದು. ಈ ಸೃಷ್ಟಿಯ ಮಾದರಿಯನ್ನು ವಿವಿಧ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳಲ್ಲಿ ಸಂಖ್ಯೆಗಳು ಮತ್ತು ತಂತಿಗಳಿಗೆ ಆಗಾಗ್ಗೆ ಬಳಸಲಾಗುತ್ತದೆ. ಪೈಥಾನ್ನಂತಹ ಅನೇಕ ಆಬ್ಜೆಕ್ಟ್-ಓರಿಯೆಂಟೆಡ್ ಭಾಷೆಗಳಲ್ಲಿ, ಪೂರ್ಣಾಂಕ ಸಂಖ್ಯೆಗಳಂತಹ ಪ್ರಾಚೀನ ಪ್ರಕಾರಗಳು ಸಹ ಆಬ್ಜೆಕ್ಟ್ಗಳಾಗಿವೆ. ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಪೂರ್ಣಾಂಕದ ವಸ್ತುಗಳನ್ನು ನಿರ್ಮಿಸುವ ಓವರ್ಹೆಡ್ ಅನ್ನು ತಪ್ಪಿಸಲು, ಈ ವಸ್ತುಗಳನ್ನು ಇಂಟರ್ನಿಂಗ್ ಮೂಲಕ ಮರುಬಳಕೆ ಮಾಡಲಾಗುತ್ತದೆ. ಅನೇಕ ಅಸ್ಥಿರಗಳ ನಡುವೆ ಸ್ಥಿತಿಯನ್ನು ಹಂಚಿಕೊಳ್ಳುವುದರಿಂದ, ಕೆಲಸ ಮಾಡಲು ಆಂತರಿಕ ವಸ್ತುಗಳು ಬದಲಾಗದಂತಿರಬೇಕು. ಸ್ಟ್ರಿಂಗ್ ಇಂಟರ್ನಿಂಗ್ ಎಂಬುದು ಇಂಟರ್ನಿಂಗ್ನ ಸಾಮಾನ್ಯ ಅನ್ವಯವಾಗಿದೆ, ಅಲ್ಲಿ ಒಂದೇ ಪ್ರೋಗ್ರಾಂನಲ್ಲಿ ಒಂದೇ ರೀತಿಯ ಮೌಲ್ಯಗಳನ್ನು ಹೊಂದಿರುವ ಅನೇಕ ತಂತಿಗಳು ಬೇಕಾಗುತ್ತವೆ. ಹಿಸ್ಟರಿ ಲಿಸ್ಪ್ ಅದರ ಚಿಹ್ನೆಗಳಿಗೆ ಆಂತರಿಕ ತಂತಿಗಳ ಕಲ್ಪನೆಯನ್ನು ಪರಿಚಯಿಸಿತು. LISP 1.5 ಪ್ರೋಗ್ರಾಮರ್ಗಳ ಕೈಪಿಡಿಯು ಇಂಟರ್ನ್ ಎಂಬ ಕಾರ್ಯವನ್ನು ವಿವರಿಸುತ್ತದೆ, ಇದು ಸರಬರಾಜು ಮಾಡಿದ ಹೆಸರಿನ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಚಿಹ್ನೆಗೆ ಮೌಲ್ಯಮಾಪನ ಮಾಡುತ್ತದೆ, ಅಥವಾ ಯಾವುದೂ ಅಸ್ತಿತ್ವದಲ್ಲಿಲ್ಲದಿದ್ದರೆ, ಆ ಹೆಸರಿನ ಹೊಸ ಚಿಹ್ನೆಯನ್ನು ರಚಿಸುತ್ತದೆ. ಅಂತರ್ನಿರ್ಮಿತ ಚಿಹ್ನೆಗಳ ಈ ಕಲ್ಪನೆಯು ಲಿಸ್ಪ್ನ ಇತ್ತೀಚಿನ ಉಪಭಾಷೆಗಳಲ್ಲಿ ಮುಂದುವರೆದಿದೆ, ಉದಾಹರಣೆಗೆ ಕ್ಲೋಜೂರ್ ವಿಶೇಷ ರೂಪಗಳಲ್ಲಿ (ಡೆಫ್ ಚಿಹ್ನೆ) ಚಿಹ್ನೆ ಸೃಷ್ಟಿ ಮತ್ತು ಅಂತರ್ನಿರ್ಮಿತತೆಯನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ. ಆಬ್ಜೆಕ್ಟ್-ಓರಿಯೆಂಟೆಡ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮಾದರಿಯಲ್ಲಿ ಇಂಟರ್ನಿಂಗ್ ಎಂಬುದು ಫ್ಲೈವೇಟ್ ಮಾದರಿಯಲ್ಲಿ ಒಂದು ಪ್ರಮುಖ ಕಾರ್ಯವಿಧಾನವಾಗಿದೆ, ಅಲ್ಲಿ ಒಂದು ವಸ್ತುವಿನ ಆಂತರಿಕ ಸ್ಥಿತಿಯನ್ನು ಶೇಖರಿಸಿಡಲು ಇಂಟರ್ನಿಂಗ್ ವಿಧಾನವನ್ನು ಕರೆಯಲಾಗುತ್ತದೆ, ಇದು ವಿಭಿನ್ನ ಬಾಹ್ಯ ಸ್ಥಿತಿಯನ್ನು ಹಂಚಿಕೊಳ್ಳುವ ವಿವಿಧ ವಸ್ತುಗಳ ನಡುವೆ ಹಂಚಿಕೊಳ್ಳಬಹುದು, ಅನಗತ್ಯ ನಕಲು ತಪ್ಪಿಸುತ್ತದೆ. ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯ ಅನುಷ್ಠಾನಗಳಲ್ಲಿ ಮೆಮೊರಿ ಬಳಕೆಯನ್ನು ನಿರ್ವಹಿಸಲು ಇಂಟರ್ನಿಂಗ್ ಒಂದು ಪ್ರಮುಖ ತಂತ್ರವಾಗಿ ಮುಂದುವರೆದಿದೆ; ಉದಾಹರಣೆಗೆ, ಜಾವಾ ಭಾಷಾ ನಿರ್ದಿಷ್ಟತೆಗೆ ಒಂದೇ ರೀತಿಯ ಸ್ಟ್ರಿಂಗ್ ಅಕ್ಷರಗಳು (ಅಂದರೆ, ಕೋಡ್ ಪಾಯಿಂಟ್ಗಳ ಒಂದೇ ಅನುಕ್ರಮವನ್ನು ಹೊಂದಿರುವ ಅಕ್ಷರಗಳು) ಸ್ಟ್ರಿಂಗ್ ವರ್ಗದ ಅದೇ ನಿದರ್ಶನವನ್ನು ಉಲ್ಲೇಖಿಸಬೇಕು, ಏಕೆಂದರೆ ವಿಶಿಷ್ಟ ನಿದರ್ಶನಗಳನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಸ್ಟ್ರಿಂಗ್ ಅಕ್ಷರಗಳು "ಇಂಟರ್ನಿಂಗ್" ಆಗಿರುತ್ತವೆ. ಪೈಥಾನ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಲ್ಲಿ ಸಣ್ಣ ಪೂರ್ಣಾಂಕಗಳನ್ನು ಅಳವಡಿಸಲಾಗಿದೆಯಾದರೂ, ಅವುಗಳ ವಿವರಗಳು ನಿಖರವಾಗಿ ಭಾಷೆಯ ಆವೃತ್ತಿಯನ್ನು ಅವಲಂಬಿಸಿವೆ. ಪ್ರೇರಣೆ ಇಂಟರ್ನಿಂಗ್ ಮೆಮೊರಿಯನ್ನು ಉಳಿಸುತ್ತದೆ ಮತ್ತು ಹೀಗಾಗಿ ಪ್ರೋಗ್ರಾಂನ ಕಾರ್ಯಕ್ಷಮತೆ ಮತ್ತು ಮೆಮೊರಿ ಹೆಜ್ಜೆಗುರುತನ್ನು ಸುಧಾರಿಸುತ್ತದೆ. ತೊಂದರೆಯೆಂದರೆ ಆಂತರಿಕವಾಗಿರಬೇಕಾದ ವಸ್ತುಗಳ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಮೌಲ್ಯಗಳನ್ನು ಹುಡುಕಲು ಸಮಯ ಬೇಕಾಗುತ್ತದೆ. ಫ್ಲೈವೇಟ್ ಪ್ಯಾಟರ್ನ್ ಹ್ಯಾಶ್ ಕಾನ್ಸಿಂಗ್ ಉಲ್ಲೇಖಗಳು ಬಾಹ್ಯ ಕೊಂಡಿಗಳು ಡಿಸೈನ್ ಪ್ಯಾಟರ್ನ್ಸ್-ಯೂನಿವರ್ಸಿಟಿ ಆಫ್ ವಾಷಿಂಗ್ಟನ್ ಸ್ಟ್ರಿಂಗ್ ಇಂಟರ್ನಿಂಗ್ ಇನ್ ಪೈಥಾನ್ ಸಾಫ್ಟ್ವೇರ್ ಆಪ್ಟಿಮೈಸೇಶನ್ ಸ್ಟ್ರಿಂಗ್ (ಕಂಪ್ಯೂಟರ್ ಸೈನ್ಸ್) ಅನ್ನು ಸಹ ನೋಡಿ.