Visual Component Framework
ವಿಷುಯಲ್ ಕಾಂಪೊನೆಂಟ್ ಫ್ರೇಮ್ವರ್ಕ್ (ವಿಸಿಎಫ್) ಮೈಕ್ರೋಸಾಫ್ಟ್ ವಿಂಡೋಸ್ ಮತ್ತು ಆಪಲ್ ಮ್ಯಾಕಿಂತೋಷ್ ಅಡಿಯಲ್ಲಿ ಅಭಿವೃದ್ಧಿಗಾಗಿ ಕೈಬಿಟ್ಟ ತೆರೆದ ಮೂಲ ಯೋಜನೆಯಾಗಿದೆ, ಇದನ್ನು ಬಿಎಸ್ಡಿ ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ವಿತರಿಸಲಾಗಿದೆ. ಇದು ಸುಧಾರಿತ ಸಿ + + ಅಪ್ಲಿಕೇಶನ್ ಫ್ರೇಮ್ವರ್ಕ್ ಆಗಿದ್ದು, ಇದು ಜಿಯುಐ ಆಧಾರಿತ ಸಿ + + ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಉತ್ಪಾದಿಸಲು ಸುಲಭವಾಗಿಸುತ್ತದೆ. ಚೌಕಟ್ಟು ಸಿ + + ವಿನ್ಯಾಸವಾಗಿದೆ ಮತ್ತು ತ್ವರಿತ ಅಪ್ಲಿಕೇಶನ್ ಅಭಿವೃದ್ಧಿಗೆ ಬೆಂಬಲವಾಗಿ ನಿರ್ಮಿಸಲಾಗಿದೆ. ಫ್ರೇಮ್ವರ್ಕ್ ಅನ್ನು ಅನೇಕ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗಳು ಮತ್ತು ಕಂಪೈಲರ್ಗಳ ಮೂಲಕ ಒಯ್ಯಬಹುದಾದಂತೆ ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಫ್ರೇಮ್ವರ್ಕ್ ವಿಂಡೋಸ್ ಮತ್ತು ಮ್ಯಾಕ್ ಓಎಸ್ ಎಕ್ಸ್ ಅಡಿಯಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ, ಆದರೆ ಏಪ್ರಿಲ್ 6,2006 ರ ಹೊತ್ತಿಗೆ, ಮ್ಯಾಕ್ ಪೋರ್ಟ್ ಅಪೂರ್ಣವಾಗಿತ್ತು, ಮತ್ತು ಲಿನಕ್ಸ್ ಪೋರ್ಟ್ ಇನ್ನೂ ಬಾಕಿ ಇತ್ತು. ಈ ಯೋಜನೆಯು ವಿವಿಧ ಕಂಪೈಲರ್ಗಳು ಮತ್ತು ಇಂಟಿಗ್ರೇಟೆಡ್ ಡೆವಲಪ್ಮೆಂಟ್ ಎನ್ವಿರಾನ್ಮೆಂಟ್ಗಳನ್ನು (ಐಡಿಇ) ಬೆಂಬಲಿಸಲು ದೊಡ್ಡ ಪ್ರಯತ್ನವನ್ನು ಮಾಡಿದೆ, ಇದು ಡೆವಲಪರ್ಗೆ ಅವರು ಆದ್ಯತೆ ನೀಡುವ ಯಾವುದೇ ಐಡಿಇ/ಕಂಪೈಲರ್ನಲ್ಲಿ ಕೆಲಸ ಮಾಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ವಿಂಡೋಸ್ನಲ್ಲಿ ಕಂಪೈಲರ್ ಬೆಂಬಲವು ಮೈಕ್ರೋಸಾಫ್ಟ್ ವಿಷುಯಲ್ ಸಿ + + ಆವೃತ್ತಿಗಳು 6,7,7.1 ಮತ್ತು 8 ಅನ್ನು ಒಳಗೊಂಡಿದೆ, ಜೊತೆಗೆ ಬೊರ್ಲ್ಯಾಂಡ್ ಸಿ + + ಕಂಪೈಲರ್, ಇಂಟೆಲ್ ಸಿ + + ಕಂಪೈಲರ್ ಮತ್ತು ಜಿಸಿಸಿ. ಮ್ಯಾಕ್ ಓಎಸ್ ಎಕ್ಸ್ನಲ್ಲಿ ಜಿಸಿಸಿಯು ಎಕ್ಸ್ಕೋಡ್ ಐಡಿಇ ಬಳಸಿ ಬೆಂಬಲಿತವಾಗಿದೆ. ಕೋಡ್ ವಾರಿಯರ್ ಬಂದರು ಪೂರ್ಣಗೊಂಡಿತು, ಆದರೆ ಕೋಡ್ ವಾರಿಯರ್ ಅವರ ಕಂಪೈಲರ್ನ x86 ಆವೃತ್ತಿಗೆ ಮತ್ತು ನಂತರ ಅವರ ಪವರ್ಪಿಸಿ ಆವೃತ್ತಿಗೆ ಬೆಂಬಲವನ್ನು ಕೈಬಿಟ್ಟ ಕಾರಣ ಸ್ಥಗಿತಗೊಂಡಿತು. ಪರವಾನಗಿ ಚೌಕಟ್ಟನ್ನು ಅದು ನಡೆಸುವ ಯಾವುದೇ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗೆ ಬಿಎಸ್ಡಿ ಪರವಾನಗಿ ಅಡಿಯಲ್ಲಿ ಪರವಾನಗಿ ನೀಡಲಾಗಿದೆ. ವಿನ್ಯಾಸ ಮತ್ತು ಗುರಿಗಳು ಚೌಕಟ್ಟನ್ನು ಹಲವಾರು ಗುರಿಗಳನ್ನು ಗಮನದಲ್ಲಿಟ್ಟುಕೊಂಡು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ. ಒಂದು ವಿಂಡೋಸ್ ಅನ್ನು ಮೀರಿದ ಇತರ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗಳಿಗೆ ಪೋರ್ಟ್ ಮಾಡುವ ಸಾಮರ್ಥ್ಯ, ಉದಾಹರಣೆಗೆ ಮ್ಯಾಕ್ ಓಎಸ್ ಎಕ್ಸ್, ಬೀಓಎಸ್, ಅಥವಾ ವಿಂಡೋಸ್ ಸಿಇ ನಂತಹ ಎಂಬೆಡೆಡ್ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ಗಳು. ಬೊರ್ಲ್ಯಾಂಡ್ನ ಆಬ್ಜೆಕ್ಟ್ ಪ್ಯಾಸ್ಕಲ್, ಜಾವಾ ಅಥವಾ ಆಬ್ಜೆಕ್ಟಿವ್-ಸಿ ಭಾಷೆಗಳಲ್ಲಿ ಕಂಡುಬರುವ ಡೈನಾಮಿಕ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ಗೆ ದೃಢವಾದ ಬೆಂಬಲವನ್ನು ಒದಗಿಸುವುದು ಮುಂದಿನ ಗುರಿಯಾಗಿದೆ. ಇದು ಆರ್. ಟಿ. ಟಿ. ಐ. ಅಥವಾ ಪ್ರತಿಬಿಂಬದಂತಹ ವರ್ಗಗಳನ್ನು ಒಳಗೊಂಡಿತ್ತು, ಇದು ಡೆವಲಪರ್ಗೆ ರನ್ಟೈಮ್ನಲ್ಲಿ ನಿರ್ದಿಷ್ಟ ವರ್ಗದ ನಿದರ್ಶನದ ಬಗ್ಗೆ ಎಲ್ಲಾ ರೀತಿಯ ಮಾಹಿತಿಯನ್ನು ಪ್ರಶ್ನಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಡೆಲ್ಫಿಯಲ್ಲಿ ಕಂಡುಬರುವಂತೆ ದೃಶ್ಯ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅಥವಾ ತ್ವರಿತ ಅಪ್ಲಿಕೇಶನ್ ಅಭಿವೃದ್ಧಿ ಸಾಧ್ಯವಾಗುವಂತೆ ಯುಐ ತರಗತಿಗಳನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸುವುದು ಮತ್ತೊಂದು ಗುರಿಯಾಗಿತ್ತು. ಇದು ಪ್ರಾಪರ್ಟಿ ಎಡಿಟರ್ಗಳು, ಕಾಂಪೊನೆಂಟ್ ಎಡಿಟರ್ಗಳಿಗೆ ಬೆಂಬಲ, ಬಾಹ್ಯ ಪಠ್ಯ ಕಡತಕ್ಕೆ ಮತ್ತು ಅದರಿಂದ ಯುಐ ಸ್ಥಿತಿಯ ನಿರಂತರತೆ ಮತ್ತು ವರ್ಗ ನಿದರ್ಶನಗಳನ್ನು ರಚಿಸಲು ಮತ್ತು ನಿದರ್ಶನದ ನೋಂದಾಯಿತ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಪಡೆಯಲು ಮತ್ತು ಹೊಂದಿಸಲು ಕ್ರಿಯಾತ್ಮಕ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಬಳಸುವುದನ್ನು ಒಳಗೊಂಡಿದೆ. ಇದರ ಜೊತೆಗೆ, ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುವಾಗ, ವಿಶೇಷವಾಗಿ ದೊಡ್ಡ ಪ್ರಮಾಣದ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಸಾಮಾನ್ಯ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಕಾರ್ಯಗಳಿಗೆ ಬೆಂಬಲವನ್ನು ಒದಗಿಸುವುದು ಕೊನೆಯ ಗುರಿಯಾಗಿತ್ತು. ಇದು ವಿವಿಧ ರೀತಿಯ ಐಒ (ಮೆಮೊರಿ, ಫೈಲ್/ಡಿಸ್ಕ್ ಮತ್ತು ಮುಂತಾದವುಗಳಲ್ಲಿ), ಥ್ರೆಡ್ ಬೆಂಬಲ ಮತ್ತು ಮ್ಯೂಟೆಕ್ಸ್ಗಳು, ಸೆಮಾಫೋರ್ಗಳು ಮತ್ತು ಷರತ್ತುಗಳಂತಹ ವಿವಿಧ ಸಿಂಕ್ರೊನೈಸೇಶನ್ ಪ್ರಿಮಿಟಿವ್ಗಳು, ಯುನಿಕೋಡ್ ಸ್ಟ್ರಿಂಗ್ ಬೆಂಬಲ, ಲೋಕಲೈಸಿಂಗ್ ಸ್ಟ್ರಿಂಗ್ ಸಂಪನ್ಮೂಲಗಳು, ಸಮಗ್ರ ಸಂಪನ್ಮೂಲ ಬೆಂಬಲ ಮತ್ತು ಮೂಲ ಎಕ್ಸ್ಎಂಎಲ್ ಪಾರ್ಸಿಂಗ್ ಸೇರಿದಂತೆ ಲೋಕೇಲ್ ಮತ್ತು ಅಂತರರಾಷ್ಟ್ರೀಯಕರಣದ ಬೆಂಬಲವನ್ನು ಒಳಗೊಂಡಿದೆ. ಗ್ರಾಫಿಕ್ಸ್ ವೈಶಿಷ್ಟ್ಯಗಳಲ್ಲಿ ಆಂಟಿ-ಗ್ರೇನ್ ಗ್ರಾಫಿಕ್ಸ್ ಲೈಬ್ರರಿಯನ್ನು ಬಳಸುವ ಆಂಟಿ-ಎಲಿಯೇಸ್ಡ್ ಗ್ರಾಫಿಕ್ಸ್, ಫುಲ್ ಅಫೈನ್ ಟ್ರಾನ್ಸ್ಫರ್ಮೇಷನ್ ಸಪೋರ್ಟ್, ಚಿತ್ರದ ಪಿಕ್ಸೆಲ್ ಬಿಟ್ಗಳಿಗೆ ನೇರ ಪ್ರವೇಶವನ್ನು ಹೊಂದಿರುವ ಚಿತ್ರಗಳು ಸೇರಿವೆ. ಹೆಚ್ಚುವರಿ ಅಪ್ಲಿಕೇಶನ್ ಬೆಂಬಲ ವೈಶಿಷ್ಟ್ಯಗಳು ತರಗತಿಗಳನ್ನು ರದ್ದುಗೊಳಿಸುವುದು/ಮರುಬಳಕೆ ಮಾಡುವುದು, ಮಾಡೆಲ್ ವ್ಯೂ ಕಂಟ್ರೋಲರ್ಗೆ ಸುಧಾರಿತ ಬೆಂಬಲವನ್ನು ಸಹ ಒಳಗೊಂಡಿವೆ. ಸಾಮಾನ್ಯ ನಿಯಮದಂತೆ, ಚೌಕಟ್ಟು ಸ್ಟ್ಯಾಂಡರ್ಡ್ ಟೆಂಪ್ಲೇಟ್ ಲೈಬ್ರರಿಯನ್ನು ಸಾಧ್ಯವಾದಷ್ಟು ಬಳಸಿಕೊಳ್ಳುತ್ತದೆ, ಕಂಟೇನರ್ ಕ್ಲಾಸ್ಗಳು ಅಥವಾ ಸ್ಟ್ರಿಂಗ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್ನಂತಹ ವಿಷಯಗಳ ಮೇಲೆ ಕೆಲಸದ ನಕಲು ತಪ್ಪಿಸುತ್ತದೆ. ಸಾಧ್ಯವಾದಾಗ ಚೌಕಟ್ಟು ಸ್ಥಳೀಯ ಸಿ + + ಆರ್ಟಿಟಿಐ ಬೆಂಬಲದ ಮೇಲೆ ನಿರ್ಮಿಸುತ್ತದೆ, ಉದಾಹರಣೆಗೆ ಡೈನಾಮಿಕ್ _ ಕಾಸ್ಟ್ ಮತ್ತು ಟೈಪಿಡ್ ಅನ್ನು ಬಳಸುವುದು, ಅದನ್ನು ಸರಳವಾಗಿ ಮರು-ಅನುಷ್ಠಾನಗೊಳಿಸುವ ಬದಲು. ಕಡತಗಳು, ಥ್ರೆಡ್ಗಳು, ಗ್ರಾಫಿಕ್ಸ್ ಸಾಧನಗಳು ಮತ್ತು ವಿಂಡೋ ನಿಯಂತ್ರಣಗಳು (ಅಥವಾ ವಿಜೆಟ್ಗಳು) ಮುಂತಾದ ಹೆಚ್ಚಿನ ಓಎಸ್ ಆಬ್ಜೆಕ್ಟ್ಗಳನ್ನು ನಿರ್ದಿಷ್ಟ ಸ್ಥಳೀಯ ವಸ್ತುವಿಗೆ ನೇರವಾಗಿ ಮಾತನಾಡುವ ತೆಳುವಾದ ಪದರವನ್ನು ಬಳಸಿ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ. ಯುಐ ನಿಯಂತ್ರಣಗಳನ್ನು ಬಹುಪಾಲು ಅನುಕರಿಸಲಾಗುವುದಿಲ್ಲ, ಬದಲಿಗೆ ಚೌಕಟ್ಟು ಹೆಚ್ಚಿನ ಸ್ಥಳಗಳಲ್ಲಿ ಸ್ಥಳೀಯ ವಿಜೆಟ್ಗಳನ್ನು ಬಳಸುತ್ತದೆ. ಪ್ಲಾಟ್ಫಾರ್ಮ್ ನಿರ್ದಿಷ್ಟ ಕಾರ್ಯಚಟುವಟಿಕೆಯ ಅಗತ್ಯವಿರುವ ಸಂದರ್ಭಗಳಲ್ಲಿ ಆಧಾರವಾಗಿರುವ ಓಎಸ್ "ಹ್ಯಾಂಡಲ್" ಗೆ ನೇರ ಪ್ರವೇಶವನ್ನು ಅನುಮತಿಸಲಾಗಿದೆ, ಇದು ಡೆವಲಪರ್ಗೆ ಪ್ಲಾಟ್ಫಾರ್ಮ್ನ ಸ್ಥಳೀಯ ಎಪಿಐಗಳನ್ನು ಸುಲಭವಾಗಿ ಕರೆಯಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಸಾಫ್ಟ್ವೇರ್ ಘಟಕ ವಿಜೆಟ್ ಟೂಲ್ಕಿಟ್ ವಿಜೆಟ್ ಟೂಲ್ಕಿಟ್ಗಳ ಪಟ್ಟಿ ಕ್ಯೂಟಿ ಡಬ್ಲ್ಯೂಎಕ್ಸ್ ವಿಜೆಟ್ಸ್ ಮೋಟಿಫ್ ಜಿಟಿಕೆ + ಜಿಟಿಕೆಎಂಎಂ ಎಫ್ಎಲ್ಟಿಕೆ ಫಾಕ್ಸ್ ಟೂಲ್ಕಿಟ್ ಅಲ್ಟಿಮೇಟ್ + + ಬಾಹ್ಯ ಕೊಂಡಿಗಳು ವಿಸಿಎಫ್ ರೆಫರೆನ್ಸ್ ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ವಿಸಿಎಫ್ ಸೋರ್ಸ್ ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ವಿಸಿಎಫ್ ಬಿಲ್ಡರ್ ಮುಖಪುಟ ಧಾನ್ಯ ವಿರೋಧಿ ಗ್ರಾಫಿಕ್ಸ್ ಲೈಬ್ರರಿ ಸಾಫ್ಟ್ವೇರ್ ಬಿಎಸ್ಡಿ ಪರವಾನಗಿ ವಿಜೆಟ್ ಟೂಲ್ಕಿಟ್ಗಳನ್ನು ಬಳಸುತ್ತದೆ