Architecture Decision Record

Active theme: Light

← ನಿರ್ಧಾರ ದಾಖಲೆ ಉದಾಹರಣೆಗಳು

ವಾಸ್ತುಶಿಲ್ಪ ನಿರ್ಧಾರ ದಾಖಲೆ: Java ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆ

ಶೀರ್ಷಿಕೆ: ಯೋಜನೆಗಾಗಿ Java ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯನ್ನು ಆರಿಸುವುದು

ನಿರ್ಧಾರ: ಹಲವಾರು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡಿದ ನಂತರ, ನಮ್ಮ ಯೋಜನೆಗೆ Java ಬಳಸಲು ನಾವು ನಿರ್ಧರಿಸಿದ್ದೇವೆ.

ಹಿನ್ನೆಲೆ

ಹಲವಾರು ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್‌ಗಳಲ್ಲಿ ಚಲಿಸಬಲ್ಲ ವೆಬ್ ಆಧಾರಿತ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ನಾವು ಉದ್ದೇಶಿಸಿದ್ದೆವು. ನಮ್ಮ ಯೋಜನೆಗೆ ಬಲವಾದ ಭದ್ರತಾ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಒದಗಿಸುವ, ಏಕಕಾಲಿಕತೆಯನ್ನು ನಿಭಾಯಿಸುವ, ದೊಡ್ಡ ಕೋಡ್ ಬೇಸ್‌ಗಳನ್ನು ಬೆಂಬಲಿಸುವ ಮತ್ತು ನಮ್ಮ ಭವಿಷ್ಯದ ಬೆಳವಣಿಗೆಯ ಅವಶ್ಯಕತೆಗಳನ್ನು ಪೂರೈಸುವಷ್ಟು ಬಹುಮುಖವಾಗಿರುವ ಭಾಷೆ ಬೇಕಾಗಿತ್ತು. Java ಆರಿಸುವ ಮೊದಲು, ಹಲವಾರು ಭಾಷೆಗಳ ಸಾಮರ್ಥ್ಯಗಳು ಮತ್ತು ಮಿತಿಗಳನ್ನು ಪರಿಗಣಿಸಿ ನಾವು ಮೌಲ್ಯಮಾಪನ ಮಾಡಿದೆವು.

ಪರಿಗಣನೆಗಳು

  1. ಭದ್ರತೆ: Java ತನ್ನ ಉತ್ತಮವಾಗಿ ವ್ಯಾಖ್ಯಾನಿಸಿದ ಭದ್ರತಾ ನೀತಿಗಳು ಮತ್ತು ಪ್ರವೇಶ ನಿಯಂತ್ರಣದ ಮೂಲಕ ಅತ್ಯುತ್ತಮ ಭದ್ರತಾ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ದುರುದ್ದೇಶಪೂರಿತ ತಂತ್ರಾಂಶ ಚಲಿಸುವುದನ್ನು ತಡೆಯಲು ಸಹಾಯ ಮಾಡುವ ಬೈಟ್‌ಕೋಡ್ ಪರಿಶೀಲನೆಯಂತಹ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನೂ ಇದು ಒಳಗೊಂಡಿದೆ.

  2. ಏಕಕಾಲಿಕತೆ: Java ಅಂತರ್ನಿರ್ಮಿತ ಮಲ್ಟಿಥ್ರೆಡಿಂಗ್ ಬೆಂಬಲವನ್ನು ಹೊಂದಿದೆ, ಇದು ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ಏಕಕಾಲದಲ್ಲಿ ಹಲವಾರು ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ. ಈ ವೈಶಿಷ್ಟ್ಯವು ಅನೇಕ ವೈಶಿಷ್ಟ್ಯಗಳು ಮತ್ತು ಕಾರ್ಯಚಟುವಟಿಕೆಗಳೊಂದಿಗೆ ದೊಡ್ಡ, ಸಂಕೀರ್ಣ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲು Java ಅನ್ನು ಅತ್ಯುತ್ತಮ ಆಯ್ಕೆಯಾಗಿಸುತ್ತದೆ.

  3. ದೊಡ್ಡ ಕೋಡ್‌ಬೇಸ್‌ಗಳು: Java ವಸ್ತು-ಆಧಾರಿತ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ, ಇದು ದೊಡ್ಡ ಕೋಡ್‌ಬೇಸ್‌ಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲು ಸೂಕ್ತ ಆಯ್ಕೆಯಾಗಿಸುತ್ತದೆ. ಇದರ ಮಾಡ್ಯುಲರ್ ಸ್ವಭಾವ ಮತ್ತು ಎನ್‌ಕ್ಯಾಪ್ಸುಲೇಶನ್ ಹಾಗೂ ಅಮೂರ್ತತೆ ಮಾದರಿಗಳ ಬಳಕೆ ತಂತ್ರಾಂಶ ಅಭಿವೃದ್ಧಿ ಪ್ರಕ್ರಿಯೆಯ ಸುಲಭತೆಗೆ ಮತ್ತಷ್ಟು ಸೇರಿಸುತ್ತದೆ.

  4. ಬಹುಮುಖತೆ: Java ಬಹುಮುಖವಾಗಿದ್ದು ವಿಶಾಲ ಶ್ರೇಣಿಯ ಗ್ರಂಥಾಲಯಗಳು ಮತ್ತು ಚೌಕಟ್ಟುಗಳನ್ನು ಬಳಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಒದಗಿಸುತ್ತದೆ, ಇದು ವೆಬ್ ಆಧಾರಿತ ಮತ್ತು ಎಂಟರ್‌ಪ್ರೈಸ್ ಮಟ್ಟದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳೆರಡಕ್ಕೂ ಅತ್ಯುತ್ತಮ ಆಯ್ಕೆಯಾಗಿಸುತ್ತದೆ.

ನಿರ್ಧಾರದ ಫಲಿತಾಂಶ

ಅದರ ಭದ್ರತಾ ವೈಶಿಷ್ಟ್ಯಗಳು, ಏಕಕಾಲಿಕತೆ ಬೆಂಬಲ, ದೊಡ್ಡ ಕೋಡ್‌ಬೇಸ್‌ಗಳನ್ನು ನಿಭಾಯಿಸುವ ಸಾಮರ್ಥ್ಯ ಮತ್ತು ಬಹುಮುಖತೆಯನ್ನು ಪರಿಗಣಿಸಿ, ನಮ್ಮ ಯೋಜನೆಗೆ Java ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯನ್ನು ಬಳಸಲು ನಾವು ನಿರ್ಧರಿಸಿದ್ದೇವೆ. ಈ ನಿರ್ಧಾರವು ನಮ್ಮ ಯೋಜನೆಯ ಅವಶ್ಯಕತೆಗಳಿಗೆ ಹೊಂದುತ್ತದೆ, ಮತ್ತು Java ಆರಿಸುವುದು ಅದರ ಯಶಸ್ಸನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ ಎಂದು ನಾವು ನಂಬುತ್ತೇವೆ.

ಪರಿಣಾಮಗಳು

  1. Java ದಲ್ಲಿ ಅನುಭವವಿರುವ ಮತ್ತು ಅದನ್ನು ಪ್ರವೀಣವಾಗಿ ಬಳಸಬಲ್ಲ ಡೆವಲಪರ್‌ಗಳು ನಮಗೆ ಬೇಕಾಗುತ್ತಾರೆ.

  2. ಆ ಭಾಷೆಯಲ್ಲಿ ಬರೆದ ಯಾವುದೇ ಕೋಡ್ Java ವರ್ಚುವಲ್ ಮಷಿನ್‌ಗೆ (JVM) ಹೊಂದಿಕೆಯಾಗಬೇಕು.

  3. ಹೊಸ ವೈಶಿಷ್ಟ್ಯಗಳು, ಕಾರ್ಯಚಟುವಟಿಕೆಗಳು ಅಥವಾ ಚೌಕಟ್ಟುಗಳನ್ನು ಸೇರಿಸುವುದು ಕೆಲವು ಸವಾಲುಗಳನ್ನು ಒಡ್ಡಬಹುದು.

  4. Java ದಲ್ಲಿನ ದೊಡ್ಡ, ಸಂಕೀರ್ಣ ಯೋಜನೆಗಳ ಅಭಿವೃದ್ಧಿಗೆ ಹೆಚ್ಚಿನ ಸಮಯ ಮತ್ತು ಸಂಪನ್ಮೂಲಗಳು ಬೇಕಾಗಬಹುದು.

ಶ್ರೇಯ: ಈ ಪುಟವನ್ನು ChatGPT ಉತ್ಪಾದಿಸಿದೆ, ನಂತರ ಸ್ಪಷ್ಟತೆ ಮತ್ತು ಸ್ವರೂಪಕ್ಕಾಗಿ ಸಂಪಾದಿಸಲಾಗಿದೆ.