Frame technology (software engineering)
ಫ್ರೇಮ್ ತಂತ್ರಜ್ಞಾನವು (ಎಫ್ಟಿ) ಒಂದು ಭಾಷಾ-ತಟಸ್ಥ (ಅಂದರೆ, ವಿವಿಧ ಭಾಷೆಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುತ್ತದೆ) ವ್ಯವಸ್ಥೆಯಾಗಿದ್ದು, ಇದು ಫ್ರೇಮ್ಗಳು ಎಂದು ಕರೆಯಲ್ಪಡುವ ಮರುಬಳಕೆ ಮಾಡಬಹುದಾದ, ಯಂತ್ರ-ಹೊಂದಿಕೊಳ್ಳಬಹುದಾದ ಬಿಲ್ಡಿಂಗ್ ಬ್ಲಾಕ್ಗಳಿಂದ ಕಸ್ಟಮ್ ಸಾಫ್ಟ್ವೇರ್ ಅನ್ನು ತಯಾರಿಸುತ್ತದೆ. ದೊಡ್ಡ, ಸಂಕೀರ್ಣ ಸಾಫ್ಟ್ವೇರ್ ವ್ಯವಸ್ಥೆಗಳ ವಿನ್ಯಾಸ, ನಿರ್ಮಾಣ ಮತ್ತು ವಿಕಾಸದಲ್ಲಿ ಒಳಗೊಂಡಿರುವ ಸಮಯ, ಪ್ರಯತ್ನ ಮತ್ತು ದೋಷಗಳನ್ನು ಕಡಿಮೆ ಮಾಡಲು ಎಫ್ಟಿಯನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಎಫ್ಟಿಗೆ ಮೂಲಭೂತವಾದುದು ಇದೇ ರೀತಿಯ ಆದರೆ ಸೂಕ್ಷ್ಮವಾಗಿ ವಿಭಿನ್ನ ಘಟಕಗಳ ಪ್ರಸರಣವನ್ನು ತಡೆಯುವ ಅದರ ಸಾಮರ್ಥ್ಯ, ಸಾಫ್ಟ್ವೇರ್ ಎಂಜಿನಿಯರಿಂಗ್ ಅನ್ನು ಬಾಧಿಸುವ ಒಂದು ಸಮಸ್ಯೆ, ಇದಕ್ಕಾಗಿ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ ರಚನೆಗಳು (ಸಬ್ರುಟೈನ್ಗಳು, ತರಗತಿಗಳು, ಅಥವಾ ಟೆಂಪ್ಲೆಟ್ಗಳು/ಜೆನೆರಿಕ್ಸ್) ಅಥವಾ ಮ್ಯಾಕ್ರೋಗಳು ಮತ್ತು ಜನರೇಟರ್ಗಳಂತಹ ಆಡ್-ಇನ್ ತಂತ್ರಗಳು ಪ್ರಾಯೋಗಿಕ, ಸ್ಕೇಲೆಬಲ್ ಪರಿಹಾರವನ್ನು ಒದಗಿಸುವಲ್ಲಿ ವಿಫಲವಾಗಿವೆ. ಎಫ್ಟಿಯ ಹಲವಾರು ಅನುಷ್ಠಾನಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿವೆ. ನೆಟ್ರಾನ್ ಫ್ಯೂಷನ್ ವ್ಯವಹಾರ ತಂತ್ರಾಂಶವನ್ನು ನಿರ್ಮಿಸುವಲ್ಲಿ ಪರಿಣತಿ ಹೊಂದಿದೆ ಮತ್ತು ಇದು ಸ್ವಾಮ್ಯದ ಸಂಸ್ಥೆಯಾಗಿದೆ. ಎಆರ್ಟಿ (ಅಡಾಪ್ಟಿವ್ ರೀಯೂಸ್ ಟೆಕ್ನಾಲಜಿ) ಎಫ್ಟಿಯ ಸಾಮಾನ್ಯ-ಉದ್ದೇಶದ, ಮುಕ್ತ-ಮೂಲ ಅನುಷ್ಠಾನವಾಗಿದೆ. ಪಾಲ್ ಜಿ. ಬಾಸೆಟ್ ಅವರು ಪುನರಾವರ್ತಿತ, ದೋಷ-ಪೀಡಿತ ಸಂಪಾದನೆಯನ್ನು ಸ್ವಯಂಚಾಲಿತಗೊಳಿಸುವ ಸಲುವಾಗಿ ಮೊದಲ ಎಫ್ಟಿಯನ್ನು ಕಂಡುಹಿಡಿದರು. ಡೊಮೇನ್ ಮಾಡೆಲಿಂಗ್, ಅವಶ್ಯಕತೆಗಳ ಸಂಗ್ರಹಣೆ, ವಾಸ್ತುಶಿಲ್ಪ ಮತ್ತು ವಿನ್ಯಾಸ, ನಿರ್ಮಾಣ, ಪರೀಕ್ಷೆ, ದಾಖಲಾತಿ, ಉತ್ತಮ ಶ್ರುತಿ ಮತ್ತು ವಿಕಸನ ಸೇರಿದಂತೆ ಸಾಫ್ಟ್ವೇರ್ ಜೀವನ-ಚಕ್ರದ ಹೆಚ್ಚಿನ ಅಂಶಗಳನ್ನು ಎಫ್ಟಿ ಹೇಗೆ ಸುಗಮಗೊಳಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ವಿವರಿಸುವ ಗಣನೀಯ ಸಾಹಿತ್ಯವು ಈಗ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ. ಪರ್ಯಾಯ ವಿಧಾನಗಳಿಗೆ ಎಫ್ಟಿಯ ಸ್ವತಂತ್ರ ಹೋಲಿಕೆಗಳು ಸಂಕೀರ್ಣ ವ್ಯವಸ್ಥೆಗಳನ್ನು ನಿರ್ಮಿಸಲು ಮತ್ತು ನಿರ್ವಹಿಸಲು ಅಗತ್ಯವಾದ ಸಮಯ ಮತ್ತು ಸಂಪನ್ಮೂಲಗಳನ್ನು ಗಣನೀಯವಾಗಿ ಕಡಿಮೆ ಮಾಡಬಹುದು ಎಂಬುದನ್ನು ದೃಢೀಕರಿಸುತ್ತವೆ. ಒಂದು ಕಾರಣಃ ಎಫ್ಟಿ ಪ್ರೋಗ್ರಾಮರ್ಗಳನ್ನು ಸಾಫ್ಟ್ವೇರ್ನ ಅಂತರ್ಗತ ಪುನರುಕ್ತಿಗಳಿಂದ ರಕ್ಷಿಸುತ್ತದೆಃ ಎಫ್ಟಿ ಸಮಾನವಾದ ಎಕ್ಸ್. ವಿ. ಸಿ. ಎಲ್ ಫ್ರೇಮ್ ಲೈಬ್ರರಿಗಳಿಂದ ಮೂರನೇ ಎರಡರಷ್ಟು ಸಣ್ಣ ಮತ್ತು ಸರಳವಾದ ಸಿಒಟಿಎಸ್ ಆಬ್ಜೆಕ್ಟ್-ಲೈಬ್ರರಿಗಳನ್ನು ಪುನರುತ್ಪಾದಿಸಿದೆ; ಕಸ್ಟಮ್ ವ್ಯವಹಾರ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ವಾಡಿಕೆಯಂತೆ ನಿರ್ದಿಷ್ಟಪಡಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ನಿರ್ವಹಿಸಲಾಗುತ್ತದೆ, ಅದು ಅವರ ಜೋಡಿಸಲಾದ ಮೂಲ ಫೈಲ್ಗಳ ಗಾತ್ರದ 5%-15% ಆಗಿರುವ ನೆಟ್ರಾನ್ ಫ್ಯೂಷನ್ಎಸ್ಪಿಸಿ ಫ್ರೇಮ್ಗಳು. ಚೌಕಟ್ಟುಗಳು ಕೆಳಗೆ ಎರಡು ಅನೌಪಚಾರಿಕ ವಿವರಣೆಗಳಿವೆ, ನಂತರ ಹೆಚ್ಚು ನಿಖರವಾದ ವ್ಯಾಖ್ಯಾನ ಮತ್ತು ವಿವರಣೆ ಇದೆ. ಫ್ರೇಮ್ ಎನ್ನುವುದು ಸ್ವಯಂಚಾಲಿತ ಸಾಫ್ಟ್ವೇರ್ ಜೋಡಣೆಯ ಸಾಲಿನಲ್ಲಿ ಹೊಂದಿಕೊಳ್ಳಬಹುದಾದ ಘಟಕವಾಗಿದೆ. ಪ್ರತಿ ಕಾರಿನ ಮಾದರಿಯ ನಿರ್ದಿಷ್ಟತೆಗಳಿಗೆ ಸರಿಹೊಂದುವಂತೆ ನಿರ್ದಿಷ್ಟ ಬಂಪರ್ಗಳು, ಫೆಂಡರ್ಗಳು ಮತ್ತು ಇತರ ಭಾಗಗಳನ್ನು ಹೊಂದುವ ಬದಲು, ನಾವು ಕೇವಲ ಒಂದು ಜೆನೆರಿಕ್ ಬಂಪರ್, ಒಂದು ಜೆನೆರಿಕ್ ಫೆಂಡರ್ ಮತ್ತು ಮುಂತಾದವುಗಳನ್ನು ಹೊಂದಿರುವ ಆಟೋ ಕಾರ್ಖಾನೆಯನ್ನು ಕಲ್ಪಿಸಿಕೊಳ್ಳಿ. ಈಗ ಈ ಜೆನೆರಿಕ್ ಭಾಗಗಳನ್ನು ಪ್ರತಿ ಕಾರಿನ ಮಾದರಿಗೆ ಸರಿಹೊಂದುವಂತೆ ಅಬೀಜ ಸಂತಾನೋತ್ಪತ್ತಿ ಮಾಡಬಹುದು ಮತ್ತು ಆಕಾರಗೊಳಿಸಬಹುದು ಎಂದು ಊಹಿಸಿಕೊಳ್ಳಿ. ಅಂತಹ ಕಲ್ಪನೆಯು ಉತ್ಪಾದನೆಯಲ್ಲಿ ಕ್ರಾಂತಿಯನ್ನುಂಟುಮಾಡುತ್ತದೆ; ಮತ್ತು ಭೌತಿಕ ಭಾಗಗಳಿಗೆ ಅಸಾಧ್ಯವಾದರೂ, ಫ್ರೇಮ್ಗಳು ಸಾಫ್ಟ್ವೇರ್ಗೆ (ಮತ್ತು ಸಾಮಾನ್ಯವಾಗಿ ಮಾಹಿತಿ) ಇದನ್ನೇ ಮಾಡುತ್ತವೆ. ಫ್ರೇಮ್ ಎಂದರೆ ಒಂದು (ಪ್ರೋಗ್ರಾಂ) ಪಠ್ಯವನ್ನು "ಬೇಯಿಸುವ" ಪಾಕವಿಧಾನವಾಗಿದೆ. ಅದರ ಸೂಚನೆಗಳು ಅದರ ಪದಾರ್ಥಗಳನ್ನು-ಫ್ರೇಮ್-ಪಠ್ಯದ ತುಂಡುಗಳನ್ನು-ಇತರ ಫ್ರೇಮ್ಗಳ ಪದಾರ್ಥಗಳೊಂದಿಗೆ ಹೇಗೆ ಮಿಶ್ರಣ ಮಾಡಬೇಕೆಂದು ಹೇಳುತ್ತವೆ. "ಬಾಣಸಿಗ" ಎಂದರೆ ಸೂಚನೆಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಫ್ರೇಮ್ ಪ್ರೊಸೆಸರ್, ಅಂದರೆ. ಮುಖ್ಯ ಪಾಕವಿಧಾನಕ್ಕೆ ಸರಿಹೊಂದುವಂತೆ ಅಗತ್ಯವಿರುವ ಪದಾರ್ಥಗಳನ್ನು (ಸೇರಿಸಿ, ಮಾರ್ಪಡಿಸಿ, ಅಳಿಸಿ) ಬದಲಾಯಿಸುವ ಫ್ರೇಮ್ ಆಜ್ಞೆಗಳು. ಔಪಚಾರಿಕವಾಗಿ, ಫ್ರೇಮ್ ಎನ್ನುವುದು ಫ್ರೇಮ್-ಟೆಕ್ಸ್ಟ್ ಅನ್ನು ಒಳಗೊಂಡಿರುವ ಕಾರ್ಯವಿಧಾನದ ಸ್ಥೂಲ ರೂಪವಾಗಿದೆ-ಸಾಮಾನ್ಯ (ಪ್ರೋಗ್ರಾಂ) ಪಠ್ಯ ಮತ್ತು ಫ್ರೇಮ್ ಆಜ್ಞೆಗಳ ಶೂನ್ಯ ಅಥವಾ ಹೆಚ್ಚಿನ ಸಾಲುಗಳು (ಇವುಗಳನ್ನು ಎಫ್ಟಿಯ ಫ್ರೇಮ್ ಪ್ರೊಸೆಸರ್ ಕಸ್ಟಮ್ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ತಯಾರಿಸುವುದರಿಂದ ನಡೆಸಲಾಗುತ್ತದೆ). ಪ್ರತಿಯೊಂದು ಚೌಕಟ್ಟು ನೆಸ್ಟೆಡ್ ಸಬ್ಅಸ್ಸೆಂಬ್ಲಿಗಳ ಶ್ರೇಣಿಯಲ್ಲಿ ಒಂದು ಸಾಮಾನ್ಯ ಅಂಶವಾಗಿದೆ ಮತ್ತು ಅದರ ಸಬ್ಅಸ್ಸೆಂಬ್ಲಿ ಫ್ರೇಮ್ಗಳೊಂದಿಗೆ ತನ್ನನ್ನು ತಾನು ಸಂಯೋಜಿಸಿಕೊಳ್ಳುವ ವಿಧಾನವಾಗಿದೆ (ಉನ್ನತ ಮಟ್ಟದ ಸಬ್ಅಸ್ಸೆಂಬ್ಲಿಗಳ ಪರವಾಗಿ ಏಕೀಕರಣ ಸಂಘರ್ಷಗಳನ್ನು ಪರಿಹರಿಸುವ ಪುನರಾವರ್ತಿತ ಪ್ರಕ್ರಿಯೆ). ಔಟ್ಪುಟ್ಗಳು ಕಸ್ಟಮ್ ಡಾಕ್ಯುಮೆಂಟ್ಗಳಾಗಿವೆ, ಸಾಮಾನ್ಯವಾಗಿ ಕಂಪೈಲ್ ಮಾಡಬಹುದಾದ ಮೂಲ ಮಾಡ್ಯೂಲ್ಗಳು. ಮುಖ್ಯ ಆಜ್ಞೆಗಳು ಚೌಕಟ್ಟನ್ನು ಆಹ್ವಾನಿಸುತ್ತವೆ (ಪ್ರೋಗ್ರಾಂ ಪಠ್ಯಗಳನ್ನು ನಿರ್ಮಿಸುವಾಗ ನಿರ್ಮಾಣದ ಸಮಯದಲ್ಲಿ ಸಂಭವಿಸುವ ಕಾರ್ಯವಿಧಾನದ ಕರೆ); ಚೌಕಟ್ಟಿನ ನಿಯತಾಂಕಕ್ಕೆ (ನಿರ್ಮಾಣ-ಸಮಯದ ವೇರಿಯೇಬಲ್ ನಿಯೋಜನೆ) ಅಭಿವ್ಯಕ್ತಿಯ (ಗಳ) ಪಟ್ಟಿಯನ್ನು ನಿಯೋಜಿಸಿ; ಚೌಕಟ್ಟಿನ-ಪಠ್ಯದ ಬ್ಲಾಕ್ಗಳ ಮೊದಲು, ಬದಲಿಗೆ, ಅಥವಾ ನಂತರ ಚೌಕಟ್ಟಿನ-ಪಠ್ಯವನ್ನು ಸೇರಿಸಿ, ನಿಯತಾಂಕ ಅಭಿವ್ಯಕ್ತಿಗಳಿಂದ ಲೇಬಲ್ ಮಾಡಲಾಗಿದೆ; ಚೌಕಟ್ಟಿನ ನಿಯತಾಂಕವನ್ನು (ನಿರ್ಮಾಣ-ಸಮಯ ಅಭಿವ್ಯಕ್ತಿಯ ಮೌಲ್ಯಮಾಪನ) ತ್ವರಿತಗೊಳಿಸಿ; ಸಂಸ್ಕರಣೆಗಾಗಿ ಚೌಕಟ್ಟಿನ-ಪಠ್ಯಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಿ (ನಿರ್ಮಾಣ-ಸಮಯದ ಕೇಸ್ ಸ್ಟೇಟ್ಮೆಂಟ್); ಕೆಲವು ಚೌಕಟ್ಟಿನ ನಿಯತಾಂಕಗಳನ್ನು ಬದಲಿಸುವಾಗ ಚೌಕಟ್ಟಿನ-ಪಠ್ಯವನ್ನು ಪುನರಾವರ್ತಿಸಿ (ಹೇಳಿಕೆಯ ಸಮಯದಲ್ಲಿ ನಿರ್ಮಾಣ-ಸಮಯ). ಆಜ್ಞೆಗಳನ್ನು ಸಾಮಾನ್ಯ ಪಠ್ಯದೊಂದಿಗೆ ಬದಲಿಸುವ ಮೂಲಕ ಮತ್ತು ಸಾಮಾನ್ಯ ಪಠ್ಯವನ್ನು ಹೊರಸೂಸುವ ಮೂಲಕ ಪ್ರೊಸೆಸರ್ ಫ್ರೇಮ್-ಟೆಕ್ಸ್ಟ್ ಅನ್ನು ಪರಿವರ್ತಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗಳುಃ ಇದು ಇನ್ವೋಕ್ ಅನ್ನು ಇನ್ವೋಕ್ ಮಾಡಿದ ಫ್ರೇಮ್ ಅನ್ನು ಸಂಸ್ಕರಿಸುವ ಫಲಿತಾಂಶದಿಂದ ಬದಲಾಯಿಸುತ್ತದೆ; ಇದು ಅಸೈನ್ಡ್ ಅನ್ನು ಶೂನ್ಯದೊಂದಿಗೆ ಬದಲಾಯಿಸುತ್ತದೆ; ಮತ್ತು ಫ್ರೇಮ್ ನಿಯತಾಂಕದ ನಿಯೋಜಿಸಲಾದ ಅಭಿವ್ಯಕ್ತಿಯನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡುವುದರ ಪರಿಣಾಮವಾಗಿ ಇನ್ಸ್ಟಾಂಟಿಯೆಟ್ ಸಾಮಾನ್ಯ ಪಠ್ಯವಾಗುತ್ತದೆ, ಇದು ತಂತಿಗಳು, ಅಂಕಗಣಿತದ ಅಭಿವ್ಯಕ್ತಿಗಳು ಮತ್ತು ನೆಸ್ಟೆಡ್ ಫ್ರೇಮ್ ನಿಯತಾಂಕಗಳ ಸಂಯೋಜನೆಯಾಗಿರಬಹುದು. ಘಟಕ ಸಂಬಂಧಗಳು ಚೌಕಟ್ಟುಗಳ ನಡುವೆ ಘಟಕ ಸಂಬಂಧಗಳನ್ನು ಸ್ಥಾಪಿಸುತ್ತವೆ. ಉದಾಹರಣೆಗೆ, ಚಿತ್ರ 1ರಲ್ಲಿಃ F ಎಂಬುದು Jನ ಘಟಕವಾಗಿದೆ ಮತ್ತು C ಎಂಬುದು Jನ ಉಪಘಟಕವಾಗಿದೆ. ಸಹಜವಾಗಿ, ಅನೇಕ ಘಟಕಗಳು ಒಂದೇ ಉಪಘಟಕವನ್ನು ಆಹ್ವಾನಿಸಬಹುದು, ಐ ಮತ್ತು ಜೆ ಎಫ್ ಅನ್ನು ಆಹ್ವಾನಿಸುವಂತೆ, ಪ್ರತಿಯೊಂದೂ ವಿಭಿನ್ನ ಪಠ್ಯವನ್ನು ನಿರ್ಮಿಸುತ್ತದೆ. ಒಟ್ಟಾರೆ ಘಟಕ ರಚನೆಯು ಜೆನೆರಿಕ್ ಸೆಮಿಲಟೈಸ್ ಅನ್ನು ರೂಪಿಸುತ್ತದೆ, ಪ್ರತಿ ಚೌಕಟ್ಟು ಉಪಗುಂಡಿಯ ಮೂಲವಾಗಿದೆ. ಹೀಗಾಗಿ ಸಿ ತನ್ನದೇ ಆದ ಉಪಗುಂಪಾಗಿದೆ; ಎಫ್ ಮತ್ತು ಸಿ ಎಫ್ ಉಪಗುಂಪಿನ ಘಟಕಗಳಾಗಿವೆ, ಮತ್ತು ಜೆ, ಎಫ್, ಮತ್ತು ಸಿ ಜೆ ಉಪಗುಂಪಿನ ಘಟಕಗಳಾಗಿವೆ. ಸಂದರ್ಭದ ವ್ಯಾಪ್ತಿ ಸಂದರ್ಭದ ವ್ಯಾಪ್ತಿಯು ಎಫ್ಟಿಯನ್ನು ಇತರ ಮಾದರಿ ಮತ್ತು ನಿರ್ಮಾಣ ವ್ಯವಸ್ಥೆಗಳಿಂದ ಪ್ರತ್ಯೇಕಿಸುತ್ತದೆಃ ಪ್ರತಿ ಚೌಕಟ್ಟು ಅದರ ಉಪಗುಂಪನ್ನು ಸಂಯೋಜಿಸುವ ಸಂದರ್ಭವನ್ನು ರೂಪಿಸುತ್ತದೆ. ನೆಸ್ಟೆಡ್ ಸಬ್ಅಸ್ಸೆಂಬ್ಲಿಗಳಲ್ಲಿ ಕೆಳ ಹಂತಗಳು ಕ್ರಮೇಣ ಹೆಚ್ಚು ಸಂದರ್ಭ-ಮುಕ್ತವಾಗಿರುತ್ತವೆ ಏಕೆಂದರೆ ಅವು ಕಡಿಮೆ ಮಾಹಿತಿಯನ್ನು ಸಂಯೋಜಿಸುತ್ತವೆ. ಸಂಯೋಜನೆಯ ಘರ್ಷಣೆಗಳನ್ನು ನಿಯತಾಂಕವನ್ನು ನಿಯೋಜಿಸಲು ಅಥವಾ ಸೇರಿಸಲು ಅತ್ಯಂತ ಸಂದರ್ಭ-ಸೂಕ್ಷ್ಮ ಚೌಕಟ್ಟಿನ ಪರವಾಗಿ ಪರಿಹರಿಸಲಾಗುತ್ತದೆ-ಅದು ಆ ಚೌಕಟ್ಟಿನ ಉಪ-ಜೋಡಣೆಯಲ್ಲಿರುವ ಎಲ್ಲಾ ಇತರ ಚೌಕಟ್ಟುಗಳಿಗೆ ಓದಲು-ಮಾತ್ರವಾಗುತ್ತದೆ. ಚಿತ್ರ 1ರಲ್ಲಿ, F ಮತ್ತು C ಚೌಕಟ್ಟುಗಳು p ನಿಯತಾಂಕಕ್ಕೆ ವಿಭಿನ್ನ ಮೌಲ್ಯಗಳನ್ನು ನಿಯೋಜಿಸಿದರೆ ಅವು ಸಂಘರ್ಷಕ್ಕೊಳಗಾಗುತ್ತವೆ. ಆದ್ದರಿಂದ F, C ಅನ್ನು ಅತಿಕ್ರಮಿಸುತ್ತದೆ-ಅಂದರೆ, ಚೌಕಟ್ಟಿನ ಪ್ರೊಸೆಸರ್ C ಯ ನಿಯೋಜನೆಯನ್ನು (ಗಳನ್ನು) p ಗೆ ನಿರ್ಲಕ್ಷಿಸುತ್ತದೆ ಮತ್ತು F ಮತ್ತು C ಯಲ್ಲಿ p ಗೆ F ನ ಮೌಲ್ಯವನ್ನು (ಗಳನ್ನು) ಬಳಸುತ್ತದೆ. ಅಂತೆಯೇ, J ಯು F ಮತ್ತು C ಎರಡನ್ನೂ ಅತಿಕ್ರಮಿಸಬಹುದು, ಮತ್ತು ಹೀಗೆ. ಸಂದರ್ಭ-ವ್ಯಾಪ್ತಿ ಮುಖ್ಯವಾಗಿದೆ ಏಕೆಂದರೆ ನಿರ್ದಿಷ್ಟ ಸಂದರ್ಭಕ್ಕೆ ಯಾವುದೇ ಸಂಖ್ಯೆಯ (ಉಪ) ಘಟಕಗಳನ್ನು ಹೊಂದಿಸಲು ಅಗತ್ಯವಾದ ಎಲ್ಲಾ ಹೊಂದಾಣಿಕೆಗಳು ಸ್ಪಷ್ಟವಾಗಿರುತ್ತವೆ ಮತ್ತು ಆ ಸಂದರ್ಭಕ್ಕೆ ಸ್ಥಳೀಯವಾಗಿರುತ್ತವೆ. ಸಂದರ್ಭ-ವ್ಯಾಪ್ತಿ ಇಲ್ಲದೆ ಅಂತಹ ಹೊಂದಾಣಿಕೆಗಳು ಹೆಚ್ಚಾಗಿ ಸೂಚ್ಯವಾಗಿರುತ್ತವೆ, ಚದುರಿದವು ಮತ್ತು ಘಟಕ ರೂಪಾಂತರಗಳಲ್ಲಿ ಅಡಗಿರುತ್ತವೆ. ಅಂತಹ ರೂಪಾಂತರಗಳು ಹೆಚ್ಚಾಗುತ್ತವೆ, ಅನಗತ್ಯ ಪುನರುಕ್ತಿ ಮತ್ತು ಸಂಕೀರ್ಣತೆಯನ್ನು ಉಂಟುಮಾಡುತ್ತವೆ, ಆದರೆ ವ್ಯವಸ್ಥೆಯ ವಿಕಸನವು ಅನಗತ್ಯವಾಗಿ ಕಷ್ಟಕರವಾಗಿದೆ ಮತ್ತು ದೋಷ-ಪೀಡಿತವಾಗಿದೆ. ನಿರ್ದಿಷ್ಟತೆಯ ಚೌಕಟ್ಟುಗಳು ಮತ್ತು ಟೆಂಪ್ಲೆಟ್ಗಳು ಒಂದು ನಿರ್ದಿಷ್ಟತೆಯ ಚೌಕಟ್ಟು (ಎ. ಎಸ್. ಪಿ. ಸಿ.) ಇಡೀ ಜೋಡಣೆಯ ಅತ್ಯುನ್ನತ ಚೌಕಟ್ಟಾಗಿದೆ, ಆದ್ದರಿಂದ ಇದು ಅತ್ಯಂತ ಸಂದರ್ಭ-ಸೂಕ್ಷ್ಮ ಚೌಕಟ್ಟಾಗಿದೆ. ಪ್ರೊಸೆಸರ್ ಒಂದು ಸಂಪೂರ್ಣ ಪ್ರೋಗ್ರಾಂ ಅಥವಾ ಉಪವ್ಯವಸ್ಥೆಯನ್ನು ತಯಾರಿಸುವ ಸಲುವಾಗಿ ಚಿತ್ರ 1 ರಲ್ಲಿ ಎಲ್ ಅಥವಾ ಎಂ ನಂತಹ ಎಸ್ಪಿಸಿಯಲ್ಲಿ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ. ತಾತ್ವಿಕವಾಗಿ ಎಸ್ಪಿಸಿ ಪ್ರತಿ ವಿವರವನ್ನು ಕಸ್ಟಮೈಸ್ ಮಾಡಬಹುದಾದರೂ, ಆಚರಣೆಯಲ್ಲಿ ಎಸ್ಪಿಸಿ ಅದರ ಸಂಪೂರ್ಣ ಜೋಡಣೆಯ ಒಂದು ಸಣ್ಣ ಭಾಗವಾಗಿದೆ ಏಕೆಂದರೆ ಹೆಚ್ಚಿನ ವಿನಾಯಿತಿಗಳು (ಮತ್ತು ವಿನಾಯಿತಿಗಳು, ಇತ್ಯಾದಿಗಳಿಗೆ ವಿನಾಯಿತಿಗಳು). ಈಗಾಗಲೇ ವಿವಿಧ ಉಪ-ಜೋಡಣೆ ಚೌಕಟ್ಟುಗಳಿಂದ ನಿರ್ವಹಿಸಲ್ಪಟ್ಟಿವೆ. ಫ್ರೇಮ್ ಲೈಬ್ರರಿಯನ್ನು ನೀಡಿದರೆ, ಎಸ್ಪಿಸಿಗಳು ತಾರ್ಕಿಕವಾಗಿ ಅವರು ನಿರ್ಮಿಸುವ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತವೆ; ಹೀಗಾಗಿ ಎಸ್ಪಿಸಿಗಳು ಮೂಲ ಫೈಲ್ಗಳನ್ನು ಪ್ರಾಥಮಿಕ ನಿಯಂತ್ರಣ ಕೇಂದ್ರಗಳಾಗಿ ಬದಲಾಯಿಸುತ್ತವೆ. ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ರಚಿಸುವ ಎಸ್ಪಿಸಿಗಳನ್ನು ರಚಿಸಲು ಟೆಂಪ್ಲೆಟ್ಗಳನ್ನು ಬಳಸುವುದು ವಾಡಿಕೆಯ ಅಭ್ಯಾಸವಾಗಿದೆ, ನಂತರ ಆ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಅನಿರ್ದಿಷ್ಟವಾಗಿ ನಿರ್ವಹಿಸಲು ಮತ್ತು ಅಭಿವೃದ್ಧಿಪಡಿಸಲು ಎಸ್ಪಿಸಿಗಳನ್ನು ಬಳಸಿ. ಈ ಅಭ್ಯಾಸವು ಅಪ್ಲಿಕೇಶನ್ ಪ್ರೋಗ್ರಾಮರ್ಗಳು ತಿಳಿದಿರಬೇಕಾದ ಮತ್ತು ನಿರ್ವಹಿಸಬೇಕಾದ ವಿವರಗಳ ಸಂಖ್ಯೆಯನ್ನು ಬಹಳವಾಗಿ ಕಡಿಮೆ ಮಾಡುತ್ತದೆ. ಇದು ಮೂಲ ಪಠ್ಯಗಳನ್ನು ಕೈಯಿಂದ ನಕಲಿಸುವ ಮತ್ತು ಸಂಪಾದಿಸುವಲ್ಲಿ ಅಂತರ್ಗತವಾಗಿರುವ ಪುನರುಕ್ತಿಗಳು, ಸಂಕೀರ್ಣತೆಗಳು ಮತ್ತು ದೋಷಗಳನ್ನು ಸಹ ತಪ್ಪಿಸುತ್ತದೆ. ಡೀಬಗ್ ಮಾಡುವ ಸಮಯವು ಕುಗ್ಗುತ್ತದೆ ಏಕೆಂದರೆ ಹೆಚ್ಚಿನ ಘಟಕಗಳನ್ನು ಮರುಬಳಕೆ ಮಾಡಲಾಗುತ್ತದೆ, ಆದ್ದರಿಂದ ಪೂರ್ವಭಾವಿಯಾಗಿ ಪರೀಕ್ಷಿಸಲಾಗುತ್ತದೆ. ದೋಷಗಳು ಎಸ್ಪಿಸಿಗಳಲ್ಲಿ ಸ್ಥಳೀಕರಣಗೊಳ್ಳುತ್ತವೆ, ಏಕೆಂದರೆ ಅವುಗಳನ್ನು ಕನಿಷ್ಠವಾಗಿ ಪರೀಕ್ಷಿಸಲಾಗುತ್ತದೆ. ಟೆಂಪ್ಲೇಟ್ ಒಂದು ಮೂಲರೂಪದ ಎಸ್ಪಿಸಿ ಆಗಿದ್ದು, ಅದನ್ನು ಹೇಗೆ ಕಸ್ಟಮೈಸ್ ಮಾಡಬೇಕೆಂದು ವಿವರಿಸುವ ಎಂಬೆಡೆಡ್ ಕಾಮೆಂಟ್ಗಳನ್ನು ಹೊಂದಿದೆ. ವಿಶಿಷ್ಟವಾಗಿ, ಒಂದು ಸಣ್ಣ ಸಂಖ್ಯೆಯ ಪ್ರೋಗ್ರಾಂಗಳಿವೆ, ಪ್ರತಿ ಪ್ರಕಾರವು ಟೆಂಪ್ಲೇಟ್ನಿಂದ ನಿರೂಪಿಸಲ್ಪಟ್ಟಿದೆ. ಅದನ್ನು ನಕಲಿಸುವ ಮತ್ತು ಭರ್ತಿ ಮಾಡುವ ಮೂಲಕ, ಪ್ರೋಗ್ರಾಮರ್ಗಳು ಟೆಂಪ್ಲೇಟ್ ಅನ್ನು ಎಸ್ಪಿಸಿ ಆಗಿ ಪರಿವರ್ತಿಸುತ್ತಾರೆ, ಅವರಿಗೆ ಯಾವ ಫ್ರೇಮ್ಗಳು ಬೇಕು, ಅವರ ಘಟಕ ಸಂಬಂಧಗಳು ಅಥವಾ ಯಾವ ವಿವರಗಳನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಕಸ್ಟಮೈಸ್ ಮಾಡಬೇಕೆಂದು ನೆನಪಿಟ್ಟುಕೊಳ್ಳಬೇಕಾಗಿಲ್ಲ. ಫ್ರೇಮ್-ಆಧಾರಿತ ಡೊಮೇನ್-ನಿರ್ದಿಷ್ಟ ಭಾಷೆಗಳು ಎಫ್ಟಿ-ಆಧಾರಿತ, ಡೊಮೇನ್-ನಿರ್ದಿಷ್ಟ ಭಾಷೆಯು (ಎಫ್ಟಿ-ಡಿಎಸ್ಎಲ್) ಡೊಮೇನ್-ನಿರ್ದಿಷ್ಟ ಭಾಷೆಯಾಗಿದ್ದು, ಅದರ ಶಬ್ದಾರ್ಥವನ್ನು (ಪ್ರೋಗ್ರಾಂ ಕೋಡ್ನಲ್ಲಿ ವ್ಯಕ್ತಪಡಿಸಲಾಗಿದೆ) ಫ್ರೇಮ್ಗಳಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಒಂದು ವಿಶಿಷ್ಟವಾದ ಎಫ್ಟಿ-ಡಿಎಸ್ಎಲ್ ಸಂಪಾದಕವು ಡಿಎಸ್ಎಲ್ ಅಭಿವ್ಯಕ್ತಿಗಳು ಮತ್ತು ಫ್ರೇಮ್ಗಳ ನಡುವೆ ಭಾಷಾಂತರಿಸುತ್ತದೆ, ಇದು ಡಿಎಸ್ಎಲ್ ಅಭಿವ್ಯಕ್ತಿಗಳ ಪ್ರೋಗ್ರಾಂ-ಕೋಡ್ ಸಮಾನತೆಗಳನ್ನು ವ್ಯಕ್ತಪಡಿಸಲು ಫ್ರೇಮ್ ಮಾಡಲಾದ ಶಬ್ದಾರ್ಥಗಳನ್ನು ಅಳವಡಿಸುತ್ತದೆ. ಈ ಉಪಗುಂಪಿನ ಮೇಲೆ ಕುಳಿತಿರುವ ಎಸ್ಪಿಸಿ ನಂತರ ಡೊಮೇನ್-ನಿರ್ದಿಷ್ಟ ಭಾಷೆಯಲ್ಲಿ ವಿವರಿಸಲಾಗದ ಯಾವುದೇ ಗ್ರಾಹಕೀಕರಣಗಳನ್ನು ಪ್ರೋಗ್ರಾಂ ಕೋಡ್ನಲ್ಲಿ ನಿರ್ದಿಷ್ಟಪಡಿಸಬಹುದು. ಹೀಗಾಗಿ ಬಳಕೆದಾರರು ಬದಲಾದ ಡಿಎಸ್ಎಲ್ ಅಭಿವ್ಯಕ್ತಿಗಳಿಂದ ಪ್ರೋಗ್ರಾಂ ಕೋಡ್ ಅನ್ನು ಪುನರುತ್ಪಾದಿಸಿದಾಗ, ಹಿಂದಿನ ಗ್ರಾಹಕೀಕರಣಗಳು ಕಳೆದುಹೋಗುವುದಿಲ್ಲ. ಫ್ರೇಮ್ ಎಂಜಿನಿಯರಿಂಗ್ ಫ್ರೇಮ್ ಎಂಜಿನಿಯರಿಂಗ್ ಫ್ರೇಮ್ ತಂತ್ರಜ್ಞಾನ ಪರಿಸರಕ್ಕೆ ಸಾಫ್ಟ್ವೇರ್ ಎಂಜಿನಿಯರಿಂಗ್ ಅನ್ನು ಅನ್ವಯಿಸುತ್ತದೆ. ಇದು ಡೊಮೇನ್ ವಿಶ್ಲೇಷಣೆ, ವಿನ್ಯಾಸ, ಬರವಣಿಗೆ, ಪರೀಕ್ಷೆ ಮತ್ತು ಫ್ರೇಮ್ಗಳನ್ನು ಅವರು ನಿರ್ಮಿಸುವ ವ್ಯವಸ್ಥೆಗಳೊಂದಿಗೆ ಸಹ-ವಿಕಸನಗೊಳಿಸುವುದನ್ನು ಒಳಗೊಂಡಿದೆ. ಫ್ರೇಮಿಂಗ್ ಬಾಟಮ್-ಅಪ್ ಮತ್ತು ಟಾಪ್-ಡೌನ್ ಎರಡೂ ಸಂಭವಿಸುತ್ತದೆ. ಕೆಳಭಾಗದಲ್ಲಿ, ಫ್ರೇಮ್ ಎಂಜಿನಿಯರ್ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಇದೇ ರೀತಿಯ ಪ್ರೋಗ್ರಾಂ ಅಂಶಗಳ (ಯಾವುದೇ ಗ್ರ್ಯಾನ್ಯುಲಾರಿಟಿಯ, ಪಠ್ಯ ತುಣುಕುಗಳಿಂದ ಉಪವ್ಯವಸ್ಥೆಗಳವರೆಗೆ) ಗುಂಪುಗಳನ್ನು ಜೆನೆರಿಕ್ ಸಮಾನಗಳಾಗಿ ಏಕೀಕರಿಸುವ ಮತ್ತು ನಿಯತಾಂಕಗೊಳಿಸುವ ಮೂಲಕ ಫ್ರೇಮ್ಗಳನ್ನು ರಚಿಸುತ್ತಾರೆ. ಟಾಪ್-ಡೌನ್ ವಿಧಾನವು ಡೊಮೇನ್ ಪರಿಣತಿಯನ್ನು ಪುನರಾವರ್ತಿತ ಮೂಲಮಾದರಿಯ ಪರಿಷ್ಕರಣೆಯೊಂದಿಗೆ ಸಂಯೋಜಿಸುತ್ತದೆ, ಅಪ್ಲಿಕೇಶನ್ ಮತ್ತು ವಾಸ್ತುಶಿಲ್ಪದ ಅವಶ್ಯಕತೆಗಳು, ಕಾರ್ಪೊರೇಟ್ ಮಾನದಂಡಗಳು ಮತ್ತು ಮರುಬಳಕೆ ಮಾಡಬಹುದಾದ ಸ್ವತ್ತುಗಳ ಗುಂಪನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುವ ಬಯಕೆಯಿಂದ ನಿರ್ಬಂಧಿತವಾಗಿದೆ, ಅದರ ಆದಾಯವು ಹೂಡಿಕೆಯನ್ನು ಮೀರಿದೆ. (ಫ್ರೇಮ್ ಲೈಬ್ರರಿಗಳ ಒಟ್ಟು ಗಾತ್ರವನ್ನು ಫಲಿತಾಂಶದ ರಚನೆಗಳ ಒಟ್ಟು ಗಾತ್ರವಾಗಿ ವಿಭಜಿಸುವ ಮೂಲಕ ಮತ್ತು/ಅಥವಾ ಪ್ರತ್ಯೇಕ ಫ್ರೇಮ್ ಮರುಬಳಕೆಗಳನ್ನು ಎಣಿಸುವ ಮೂಲಕ ಮರುಬಳಕೆಯನ್ನು ಅಳೆಯಲಾಗುತ್ತದೆ.) ಒಂದು ಪ್ರಬುದ್ಧ ಚೌಕಟ್ಟಿನ ಗ್ರಂಥಾಲಯವು ವೆಚ್ಚ-ಪರಿಣಾಮಕಾರಿತ್ವವನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ ಏಕೆಂದರೆ ತಂತ್ರಾಂಶ ಯೋಜನೆಯ ಪಾಲುದಾರರು ವ್ಯವಸ್ಥೆಯ ನವೀನತೆಗಳಿಗೆ ತಮ್ಮ ಗಮನವನ್ನು ಸೀಮಿತಗೊಳಿಸಬಹುದು, ಅದರ ದೃಢವಾದ ಘಟಕಗಳು ಮತ್ತು ವಾಸ್ತುಶಿಲ್ಪದ ಬಹುಭಾಗವನ್ನು ಲಘುವಾಗಿ ತೆಗೆದುಕೊಳ್ಳಬಹುದು. ಪ್ರೌಢ ಗ್ರಂಥಾಲಯವು ಸ್ಥಿರವಾಗಿಲ್ಲ. ಫ್ರೇಮ್ ಎಂಜಿನಿಯರ್ಗಳು, ಆಯ್ದ ಆಜ್ಞೆಯನ್ನು ಬಳಸಿಕೊಂಡು, ಫ್ರೇಮ್ಗಳ ಹಿಂದಿನ ಆವೃತ್ತಿಗಳಿಂದ ತಯಾರಿಸಿದ ಪ್ರೋಗ್ರಾಂಗಳಿಗೆ ರೆಟ್ರೊಫಿಟ್ಗಳ ಅಗತ್ಯವಿಲ್ಲದೇ ಹೊಸ ಅವಶ್ಯಕತೆಗಳನ್ನು ಪೂರೈಸುತ್ತಾ, ಮರುಬಳಕೆ ಮಾಡಬಹುದಾದ ಫ್ರೇಮ್ಗಳನ್ನು ಅನಿರ್ದಿಷ್ಟವಾಗಿ ಅಭಿವೃದ್ಧಿಪಡಿಸಬಹುದು. ಅಡಿಟಿಪ್ಪಣಿಗಳ ಮೂಲ ಕೋಡ್ ಉತ್ಪಾದನೆ