ವೇಗವಾದ ವೆಬ್ಸೈಟ್ ಲೋಡಿಂಗ್ ಮತ್ತು ಸುಧಾರಿತ ಬಳಕೆದಾರ ಅನುಭವಕ್ಕಾಗಿ ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಅನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ಮತ್ತು ಆಪ್ಟಿಮೈಜ್ ಮಾಡಲು ಒಂದು ಸಮಗ್ರ ಮಾರ್ಗದರ್ಶಿ. ಜಾಗತಿಕವಾಗಿ ಫ್ರಂಟ್-ಎಂಡ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸುಧಾರಿಸಲು ಪ್ರಾಯೋಗಿಕ ತಂತ್ರಗಳನ್ನು ಕಲಿಯಿರಿ.
ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕಾರ್ಯಕ್ಷಮತೆ ಆಪ್ಟಿಮೈಸೇಶನ್: ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಅನ್ನು ಕರಗತ ಮಾಡಿಕೊಳ್ಳುವುದು
ಇಂದಿನ ವೆಬ್ ಜಗತ್ತಿನಲ್ಲಿ, ಕಾರ್ಯಕ್ಷಮತೆ ಅತ್ಯಂತ ಮುಖ್ಯವಾಗಿದೆ. ನಿಧಾನವಾಗಿ ಲೋಡ್ ಆಗುವ ವೆಬ್ಸೈಟ್ ಬಳಕೆದಾರರನ್ನು ನಿರಾಶೆಗೊಳಿಸಬಹುದು, ಹೆಚ್ಚಿನ ಬೌನ್ಸ್ ದರಗಳಿಗೆ ಕಾರಣವಾಗಬಹುದು, ಮತ್ತು ಅಂತಿಮವಾಗಿ ಆದಾಯ ನಷ್ಟಕ್ಕೆ ಕಾರಣವಾಗಬಹುದು. ನಿಮ್ಮ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವುದು ಮತ್ತು ಬ್ರೌಸರ್ಗಳು ವೆಬ್ ಪುಟಗಳನ್ನು ಹೇಗೆ ರೆಂಡರ್ ಮಾಡುತ್ತವೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ವೇಗವಾದ ಮತ್ತು ಆಕರ್ಷಕವಾದ ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ನೀಡಲು ನಿರ್ಣಾಯಕವಾಗಿದೆ. ಈ ಕ್ಷೇತ್ರದಲ್ಲಿ ಅತ್ಯಂತ ಪ್ರಮುಖ ಪರಿಕಲ್ಪನೆಗಳಲ್ಲಿ ಒಂದು ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ (CRP).
ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಎಂದರೇನು?
ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಎನ್ನುವುದು ಬ್ರೌಸರ್ HTML, CSS, ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಪರದೆಯ ಮೇಲೆ ಕಾಣುವ ವೆಬ್ ಪುಟವಾಗಿ ಪರಿವರ್ತಿಸಲು ತೆಗೆದುಕೊಳ್ಳುವ ಹಂತಗಳ ಅನುಕ್ರಮವಾಗಿದೆ. ಇದು ಅವಲಂಬನೆಗಳ ಒಂದು ಸರಪಳಿ; ಪ್ರತಿಯೊಂದು ಹಂತವು ಹಿಂದಿನ ಹಂತದ ಔಟ್ಪುಟ್ ಅನ್ನು ಅವಲಂಬಿಸಿದೆ. ಬಳಕೆದಾರರು ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ಅನ್ನು ನೋಡಲು ಮತ್ತು ಸಂವಹನ ನಡೆಸಲು ತೆಗೆದುಕೊಳ್ಳುವ ಸಮಯವನ್ನು ಕಡಿಮೆ ಮಾಡಲು ಈ ಮಾರ್ಗವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಮತ್ತು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವುದು ನಿರ್ಣಾಯಕವಾಗಿದೆ. ಇದನ್ನು ಎಚ್ಚರಿಕೆಯಿಂದ ಸಂಯೋಜಿಸಲಾದ ಬ್ಯಾಲೆಯಂತೆ ಯೋಚಿಸಿ, ಅಲ್ಲಿ ಅಂತಿಮ ಪ್ರದರ್ಶನವು ದೋಷರಹಿತವಾಗಿರಲು ಪ್ರತಿಯೊಂದು ಚಲನೆಯನ್ನು (ಪ್ರತಿಯೊಂದು ರೆಂಡರಿಂಗ್ ಹಂತ) ಸಂಪೂರ್ಣವಾಗಿ ಸಮಯೋಚಿತವಾಗಿ ಮತ್ತು ಕಾರ್ಯಗತಗೊಳಿಸಬೇಕಾಗುತ್ತದೆ. ಒಂದು ಹಂತದಲ್ಲಿನ ವಿಳಂಬವು ನಂತರದ ಎಲ್ಲಾ ಹಂತಗಳ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುತ್ತದೆ.
CRP ಈ ಕೆಳಗಿನ ಪ್ರಮುಖ ಹಂತಗಳನ್ನು ಒಳಗೊಂಡಿದೆ:
- ಡಾಮ್ (DOM) ನಿರ್ಮಾಣ: HTML ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡುವುದು ಮತ್ತು ಡಾಕ್ಯುಮೆಂಟ್ ಆಬ್ಜೆಕ್ಟ್ ಮಾಡೆಲ್ (DOM) ಅನ್ನು ನಿರ್ಮಿಸುವುದು.
- ಸಿಎಸ್ಎಸ್ಒಎಮ್ (CSSOM) ನಿರ್ಮಾಣ: CSS ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡುವುದು ಮತ್ತು CSS ಆಬ್ಜೆಕ್ಟ್ ಮಾಡೆಲ್ (CSSOM) ಅನ್ನು ನಿರ್ಮಿಸುವುದು.
- ರೆಂಡರ್ ಟ್ರೀ ನಿರ್ಮಾಣ: DOM ಮತ್ತು CSSOM ಅನ್ನು ಸಂಯೋಜಿಸಿ ರೆಂಡರ್ ಟ್ರೀಯನ್ನು ರಚಿಸುವುದು.
- ಲೇಔಟ್: ರೆಂಡರ್ ಟ್ರೀಯಲ್ಲಿನ ಪ್ರತಿಯೊಂದು ಎಲಿಮೆಂಟ್ನ ಸ್ಥಾನ ಮತ್ತು ಗಾತ್ರವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವುದು.
- ಪೇಂಟ್: ರೆಂಡರ್ ಟ್ರೀಯನ್ನು ಪರದೆಯ ಮೇಲೆ ನಿಜವಾದ ಪಿಕ್ಸೆಲ್ಗಳಾಗಿ ಪರಿವರ್ತಿಸುವುದು.
ಈ ಪ್ರತಿಯೊಂದು ಹಂತಗಳನ್ನು ನಾವು ಇನ್ನಷ್ಟು ವಿವರವಾಗಿ ನೋಡೋಣ.
1. ಡಾಮ್ (DOM) ನಿರ್ಮಾಣ
ಬ್ರೌಸರ್ ಒಂದು HTML ಡಾಕ್ಯುಮೆಂಟ್ ಅನ್ನು ಸ್ವೀಕರಿಸಿದಾಗ, ಅದು ಕೋಡ್ ಅನ್ನು ಸಾಲು ಸಾಲಾಗಿ ಪಾರ್ಸ್ ಮಾಡಲು ಪ್ರಾರಂಭಿಸುತ್ತದೆ. ಅದು ಪಾರ್ಸ್ ಮಾಡುವಾಗ, ಡಾಕ್ಯುಮೆಂಟ್ ಆಬ್ಜೆಕ್ಟ್ ಮಾಡೆಲ್ (DOM) ಎಂಬ ಮರದಂತಹ ರಚನೆಯನ್ನು ನಿರ್ಮಿಸುತ್ತದೆ. DOM, HTML ಡಾಕ್ಯುಮೆಂಟ್ನ ರಚನೆಯನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ, ಪ್ರತಿಯೊಂದು HTML ಎಲಿಮೆಂಟ್ ಮರದಲ್ಲಿನ ಒಂದು ನೋಡ್ ಆಗುತ್ತದೆ. ಈ ಕೆಳಗಿನ ಸರಳ HTML ಅನ್ನು ಪರಿಗಣಿಸಿ:
<!DOCTYPE html>
<html>
<head>
<title>My Website</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h1>Hello, World!</h1>
<p>This is my first website.</p>
</body>
</html>
ಬ್ರೌಸರ್ ಇದನ್ನು DOM ಟ್ರೀ ಆಗಿ ಪಾರ್ಸ್ ಮಾಡುತ್ತದೆ, ಅಲ್ಲಿ ಪ್ರತಿ ಟ್ಯಾಗ್ (<html>, <head>, <body>, ಇತ್ಯಾದಿ) ಒಂದು ನೋಡ್ ಆಗುತ್ತದೆ.
ಕ್ರಿಟಿಕಲ್ ಬ್ಲಾಕಿಂಗ್ ಸಂಪನ್ಮೂಲ: ಪಾರ್ಸರ್ ಒಂದು <script> ಟ್ಯಾಗ್ ಅನ್ನು ಎದುರಿಸಿದಾಗ, ಸ್ಕ್ರಿಪ್ಟ್ ಡೌನ್ಲೋಡ್, ಪಾರ್ಸ್ ಮತ್ತು ಕಾರ್ಯಗತಗೊಳ್ಳುವವರೆಗೆ ಅದು ಸಾಮಾನ್ಯವಾಗಿ DOM ನಿರ್ಮಾಣವನ್ನು ತಡೆಯುತ್ತದೆ (ಬ್ಲಾಕ್ ಮಾಡುತ್ತದೆ). ಏಕೆಂದರೆ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ DOM ಅನ್ನು ಮಾರ್ಪಡಿಸಬಹುದು, ಆದ್ದರಿಂದ DOM ನಿರ್ಮಾಣವನ್ನು ಮುಂದುವರಿಸುವ ಮೊದಲು ಸ್ಕ್ರಿಪ್ಟ್ ಕಾರ್ಯಗತಗೊಂಡು ಮುಗಿದಿದೆ ಎಂದು ಬ್ರೌಸರ್ ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಬೇಕು. ಅಂತೆಯೇ, CSS ಅನ್ನು ಲೋಡ್ ಮಾಡುವ <link> ಟ್ಯಾಗ್ಗಳನ್ನು ಕೆಳಗೆ ವಿವರಿಸಿದಂತೆ ರೆಂಡರ್-ಬ್ಲಾಕಿಂಗ್ ಎಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ.
2. ಸಿಎಸ್ಎಸ್ಒಎಮ್ (CSSOM) ನಿರ್ಮಾಣ
ಬ್ರೌಸರ್ DOM ಅನ್ನು ರಚಿಸಲು HTML ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡುವಂತೆಯೇ, ಅದು CSS ಆಬ್ಜೆಕ್ಟ್ ಮಾಡೆಲ್ (CSSOM) ಅನ್ನು ರಚಿಸಲು CSS ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡುತ್ತದೆ. CSSOM, HTML ಎಲಿಮೆಂಟ್ಗಳಿಗೆ ಅನ್ವಯಿಸಲಾದ ಶೈಲಿಗಳನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ. DOM ನಂತೆ, CSSOM ಕೂಡ ಮರದಂತಹ ರಚನೆಯಾಗಿದೆ. CSSOM ನಿರ್ಣಾಯಕವಾಗಿದೆ ಏಕೆಂದರೆ ಇದು DOM ಎಲಿಮೆಂಟ್ಗಳನ್ನು ಹೇಗೆ ಶೈಲೀಕರಿಸಲಾಗಿದೆ ಮತ್ತು ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ ಎಂಬುದನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ. ಈ ಕೆಳಗಿನ CSS ಅನ್ನು ಪರಿಗಣಿಸಿ:
h1 {
color: blue;
font-size: 2em;
}
p {
color: gray;
}
ಬ್ರೌಸರ್ ಈ CSS ಅನ್ನು ಪಾರ್ಸ್ ಮಾಡುತ್ತದೆ ಮತ್ತು CSS ನಿಯಮಗಳನ್ನು ಅನುಗುಣವಾದ HTML ಎಲಿಮೆಂಟ್ಗಳಿಗೆ ಮ್ಯಾಪ್ ಮಾಡುವ CSSOM ಅನ್ನು ರಚಿಸುತ್ತದೆ. CSSOM ನಿರ್ಮಾಣವು ಪುಟದ ರೆಂಡರಿಂಗ್ ಮೇಲೆ ನೇರ ಪರಿಣಾಮ ಬೀರುತ್ತದೆ; ತಪ್ಪಾದ ಅಥವಾ ಅಸಮರ್ಥ CSS ರೆಂಡರಿಂಗ್ ವಿಳಂಬಗಳಿಗೆ ಮತ್ತು ಕಳಪೆ ಬಳಕೆದಾರ ಅನುಭವಕ್ಕೆ ಕಾರಣವಾಗಬಹುದು. ಉದಾಹರಣೆಗೆ, ಬ್ರೌಸರ್ನ ಕೆಲಸವನ್ನು ಕಡಿಮೆ ಮಾಡಲು CSS ಸೆಲೆಕ್ಟರ್ಗಳು ಸಾಧ್ಯವಾದಷ್ಟು ನಿರ್ದಿಷ್ಟ ಮತ್ತು ಸಮರ್ಥವಾಗಿರಬೇಕು.
ಕ್ರಿಟಿಕಲ್ ಬ್ಲಾಕಿಂಗ್ ಸಂಪನ್ಮೂಲ: CSSOM ಒಂದು ರೆಂಡರ್-ಬ್ಲಾಕಿಂಗ್ ಸಂಪನ್ಮೂಲವಾಗಿದೆ. CSSOM ನಿರ್ಮಾಣವಾಗುವವರೆಗೆ ಬ್ರೌಸರ್ ಪುಟವನ್ನು ರೆಂಡರ್ ಮಾಡಲು ಪ್ರಾರಂಭಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ. ಏಕೆಂದರೆ CSS ನಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ಶೈಲಿಗಳು HTML ಎಲಿಮೆಂಟ್ಗಳನ್ನು ಹೇಗೆ ಪ್ರದರ್ಶಿಸಲಾಗುತ್ತದೆ ಎಂಬುದರ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುತ್ತವೆ. ಆದ್ದರಿಂದ, ರೆಂಡರಿಂಗ್ನೊಂದಿಗೆ ಮುಂದುವರಿಯುವ ಮೊದಲು CSSOM ಪೂರ್ಣಗೊಳ್ಳುವವರೆಗೆ ಬ್ರೌಸರ್ ಕಾಯಬೇಕಾಗುತ್ತದೆ. ಡಾಕ್ಯುಮೆಂಟ್ನ <head> ನಲ್ಲಿರುವ ಸ್ಟೈಲ್ಶೀಟ್ಗಳು (<link rel="stylesheet"> ಬಳಸಿ) ಸಾಮಾನ್ಯವಾಗಿ ರೆಂಡರಿಂಗ್ ಅನ್ನು ತಡೆಯುತ್ತವೆ.
3. ರೆಂಡರ್ ಟ್ರೀ ನಿರ್ಮಾಣ
DOM ಮತ್ತು CSSOM ನಿರ್ಮಾಣವಾದ ನಂತರ, ಬ್ರೌಸರ್ ಅವುಗಳನ್ನು ಸಂಯೋಜಿಸಿ ರೆಂಡರ್ ಟ್ರೀಯನ್ನು ರಚಿಸುತ್ತದೆ. ರೆಂಡರ್ ಟ್ರೀಯು DOM ನ ದೃಶ್ಯ ನಿರೂಪಣೆಯಾಗಿದ್ದು, ಇದು ಪರದೆಯ ಮೇಲೆ ನಿಜವಾಗಿ ಪ್ರದರ್ಶಿಸಲ್ಪಡುವ ಎಲಿಮೆಂಟ್ಗಳನ್ನು ಮಾತ್ರ ಒಳಗೊಂಡಿರುತ್ತದೆ. ಮರೆಮಾಡಲಾದ ಎಲಿಮೆಂಟ್ಗಳು (ಉದಾ., display: none; ಬಳಸಿ) ರೆಂಡರ್ ಟ್ರೀಯಲ್ಲಿ ಸೇರಿಸಲಾಗುವುದಿಲ್ಲ. ರೆಂಡರ್ ಟ್ರೀಯು ಬಳಕೆದಾರರು ಪರದೆಯ ಮೇಲೆ ನಿಜವಾಗಿ ಏನು ನೋಡುತ್ತಾರೆ ಎಂಬುದನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ; ಇದು DOM ನ ಸಂಕ್ಷಿಪ್ತ ಆವೃತ್ತಿಯಾಗಿದ್ದು, ಗೋಚರಿಸುವ ಮತ್ತು ಶೈಲೀಕರಿಸಿದ ಎಲಿಮೆಂಟ್ಗಳನ್ನು ಮಾತ್ರ ಒಳಗೊಂಡಿರುತ್ತದೆ.
ರೆಂಡರ್ ಟ್ರೀಯು ಪುಟದ ಅಂತಿಮ ದೃಶ್ಯ ರಚನೆಯನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ, ವಿಷಯ (DOM) ಮತ್ತು ಶೈಲಿ (CSSOM) ಅನ್ನು ಸಂಯೋಜಿಸುತ್ತದೆ. ಈ ಹಂತವು ನಿರ್ಣಾಯಕವಾಗಿದೆ ಏಕೆಂದರೆ ಇದು ನಿಜವಾದ ರೆಂಡರಿಂಗ್ ಪ್ರಕ್ರಿಯೆಗೆ ವೇದಿಕೆಯನ್ನು ಸಿದ್ಧಪಡಿಸುತ್ತದೆ.
4. ಲೇಔಟ್
ಲೇಔಟ್ ಹಂತವು ರೆಂಡರ್ ಟ್ರೀಯಲ್ಲಿನ ಪ್ರತಿಯೊಂದು ಎಲಿಮೆಂಟ್ನ ನಿಖರವಾದ ಸ್ಥಾನ ಮತ್ತು ಗಾತ್ರವನ್ನು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವುದನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ. ಈ ಪ್ರಕ್ರಿಯೆಯನ್ನು "ರಿಫ್ಲೋ" ಎಂದೂ ಕರೆಯಲಾಗುತ್ತದೆ. ಬ್ರೌಸರ್ ಪ್ರತಿಯೊಂದು ಎಲಿಮೆಂಟ್ ಅನ್ನು ಪರದೆಯ ಮೇಲೆ ಎಲ್ಲಿ ಇರಿಸಬೇಕು ಮತ್ತು ಅದು ಎಷ್ಟು ಜಾಗವನ್ನು ಆಕ್ರಮಿಸಬೇಕು ಎಂಬುದನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ. ಲೇಔಟ್ ಹಂತವು ಎಲಿಮೆಂಟ್ಗಳಿಗೆ ಅನ್ವಯಿಸಲಾದ CSS ಶೈಲಿಗಳಿಂದ ಹೆಚ್ಚು ಪ್ರಭಾವಿತವಾಗಿರುತ್ತದೆ. ಮಾರ್ಜಿನ್ಗಳು, ಪ್ಯಾಡಿಂಗ್, ಅಗಲ, ಎತ್ತರ ಮತ್ತು ಸ್ಥಾನೀಕರಣದಂತಹ ಅಂಶಗಳು ಲೇಔಟ್ ಲೆಕ್ಕಾಚಾರಗಳಲ್ಲಿ ಪಾತ್ರವಹಿಸುತ್ತವೆ. ಈ ಹಂತವು, ವಿಶೇಷವಾಗಿ ಸಂಕೀರ್ಣ ಲೇಔಟ್ಗಳಿಗೆ, ಗಣಕೀಕೃತವಾಗಿ ತೀವ್ರವಾಗಿರುತ್ತದೆ.
ಲೇಔಟ್ CRP ಯಲ್ಲಿ ಒಂದು ನಿರ್ಣಾಯಕ ಹಂತವಾಗಿದೆ ಏಕೆಂದರೆ ಇದು ಪುಟದಲ್ಲಿನ ಎಲಿಮೆಂಟ್ಗಳ ಪ್ರಾದೇಶಿಕ ವ್ಯವಸ್ಥೆಯನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ. ಸುಗಮ ಮತ್ತು ಸ್ಪಂದನಾಶೀಲ ಬಳಕೆದಾರ ಅನುಭವಕ್ಕಾಗಿ ಸಮರ್ಥ ಲೇಔಟ್ ಪ್ರಕ್ರಿಯೆಯು ಅತ್ಯಗತ್ಯ. DOM ಅಥವಾ CSSOM ನಲ್ಲಿನ ಬದಲಾವಣೆಗಳು ಮರು-ಲೇಔಟ್ ಅನ್ನು ಪ್ರಚೋದಿಸಬಹುದು, ಇದು ಕಾರ್ಯಕ್ಷಮತೆಯ ದೃಷ್ಟಿಯಿಂದ ದುಬಾರಿಯಾಗಬಹುದು.
5. ಪೇಂಟ್
ಅಂತಿಮ ಹಂತವೆಂದರೆ ಪೇಂಟ್ ಹಂತ, ಇಲ್ಲಿ ಬ್ರೌಸರ್ ರೆಂಡರ್ ಟ್ರೀಯನ್ನು ಪರದೆಯ ಮೇಲೆ ನಿಜವಾದ ಪಿಕ್ಸೆಲ್ಗಳಾಗಿ ಪರಿವರ್ತಿಸುತ್ತದೆ. ಇದು ಎಲಿಮೆಂಟ್ಗಳನ್ನು ರಾಸ್ಟರೈಜ್ ಮಾಡುವುದು ಮತ್ತು ನಿರ್ದಿಷ್ಟಪಡಿಸಿದ ಶೈಲಿಗಳು, ಬಣ್ಣಗಳು ಮತ್ತು ಟೆಕ್ಸ್ಚರ್ಗಳನ್ನು ಅನ್ವಯಿಸುವುದನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ. ಪೇಂಟ್ ಪ್ರಕ್ರಿಯೆಯು ಅಂತಿಮವಾಗಿ ವೆಬ್ ಪುಟವನ್ನು ಬಳಕೆದಾರರಿಗೆ ಗೋಚರಿಸುವಂತೆ ಮಾಡುತ್ತದೆ. ಪೇಂಟಿಂಗ್ ಮತ್ತೊಂದು ಗಣಕೀಕೃತವಾಗಿ ತೀವ್ರವಾದ ಪ್ರಕ್ರಿಯೆಯಾಗಿದೆ, ವಿಶೇಷವಾಗಿ ಸಂಕೀರ್ಣ ಗ್ರಾಫಿಕ್ಸ್ ಮತ್ತು ಅನಿಮೇಷನ್ಗಳಿಗೆ.
ಪೇಂಟ್ ಹಂತದ ನಂತರ, ಬಳಕೆದಾರರು ರೆಂಡರ್ ಮಾಡಿದ ವೆಬ್ ಪುಟವನ್ನು ನೋಡುತ್ತಾರೆ. DOM ಅಥವಾ CSSOM ನಲ್ಲಿನ ಯಾವುದೇ ನಂತರದ ಬದಲಾವಣೆಗಳು ರಿಪೇಂಟ್ ಅನ್ನು ಪ್ರಚೋದಿಸಬಹುದು, ಇದು ಪರದೆಯ ಮೇಲಿನ ದೃಶ್ಯ ನಿರೂಪಣೆಯನ್ನು ನವೀಕರಿಸುತ್ತದೆ. ಸುಗಮ ಮತ್ತು ಸ್ಪಂದನಾಶೀಲ ಬಳಕೆದಾರ ಇಂಟರ್ಫೇಸ್ ಅನ್ನು ನಿರ್ವಹಿಸಲು ಅನಗತ್ಯ ರಿಪೇಂಟ್ಗಳನ್ನು ಕಡಿಮೆ ಮಾಡುವುದು ನಿರ್ಣಾಯಕವಾಗಿದೆ.
ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವುದು
ಈಗ ನಾವು ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಅನ್ನು ಅರ್ಥಮಾಡಿಕೊಂಡಿದ್ದೇವೆ, ಅದನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡಲು ಕೆಲವು ತಂತ್ರಗಳನ್ನು ಅನ್ವೇಷಿಸೋಣ.
1. ಕ್ರಿಟಿಕಲ್ ಸಂಪನ್ಮೂಲಗಳ ಸಂಖ್ಯೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಿ
ಬ್ರೌಸರ್ ಡೌನ್ಲೋಡ್ ಮಾಡಲು ಮತ್ತು ಪಾರ್ಸ್ ಮಾಡಲು ಕಡಿಮೆ ಕ್ರಿಟಿಕಲ್ ಸಂಪನ್ಮೂಲಗಳು (CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಫೈಲ್ಗಳು) ಇದ್ದರೆ, ಪುಟವು ವೇಗವಾಗಿ ರೆಂಡರ್ ಆಗುತ್ತದೆ. ಕ್ರಿಟಿಕಲ್ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಕಡಿಮೆ ಮಾಡುವುದು ಹೇಗೆ ಎಂಬುದು ಇಲ್ಲಿದೆ:
- ಅನಿರ್ಣಾಯಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಡಿಫರ್ ಮಾಡಿ: DOM ನಿರ್ಮಾಣವನ್ನು ತಡೆಯುವುದನ್ನು ತಪ್ಪಿಸಲು
<script>ಟ್ಯಾಗ್ಗಳಲ್ಲಿdeferಅಥವಾasyncಆಟ್ರಿಬ್ಯೂಟ್ಗಳನ್ನು ಬಳಸಿ. - ಕ್ರಿಟಿಕಲ್ CSS ಅನ್ನು ಇನ್ಲೈನ್ ಮಾಡಿ: ಮೇಲೆ-ದಿ-ಫೋಲ್ಡ್ ವಿಷಯವನ್ನು ರೆಂಡರ್ ಮಾಡಲು ಅಗತ್ಯವಾದ CSS ನಿಯಮಗಳನ್ನು ಗುರುತಿಸಿ ಮತ್ತು ಅವುಗಳನ್ನು ನೇರವಾಗಿ HTML ಡಾಕ್ಯುಮೆಂಟ್ನ
<head>ನಲ್ಲಿ ಇನ್ಲೈನ್ ಮಾಡಿ. ಇದು ಆರಂಭಿಕ ರೆಂಡರ್ಗಾಗಿ ಬ್ರೌಸರ್ಗೆ ಬಾಹ್ಯ CSS ಫೈಲ್ ಅನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡುವ ಅಗತ್ಯವನ್ನು ನಿವಾರಿಸುತ್ತದೆ. - CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಮಿನಿಫೈ ಮಾಡಿ: ಅನಗತ್ಯ ಅಕ್ಷರಗಳನ್ನು (ಖಾಲಿ ಜಾಗ, ಕಾಮೆಂಟ್ಗಳು, ಇತ್ಯಾದಿ) ತೆಗೆದುಹಾಕುವ ಮೂಲಕ ನಿಮ್ಮ CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಫೈಲ್ಗಳ ಗಾತ್ರವನ್ನು ಕಡಿಮೆ ಮಾಡಿ.
- CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಫೈಲ್ಗಳನ್ನು ಸಂಯೋಜಿಸಿ: ಅನೇಕ CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಫೈಲ್ಗಳನ್ನು ಒಂದೇ ಫೈಲ್ಗೆ ಸಂಯೋಜಿಸುವ ಮೂಲಕ HTTP ವಿನಂತಿಗಳ ಸಂಖ್ಯೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಿ. ಆದಾಗ್ಯೂ, HTTP/2 ನೊಂದಿಗೆ, ಸುಧಾರಿತ ಮಲ್ಟಿಪ್ಲೆಕ್ಸಿಂಗ್ ಸಾಮರ್ಥ್ಯಗಳಿಂದಾಗಿ ಬಂಡ್ಲಿಂಗ್ನ ಪ್ರಯೋಜನಗಳು ಕಡಿಮೆ ಸ್ಪಷ್ಟವಾಗಿವೆ.
- ಬಳಕೆಯಾಗದ CSS ಅನ್ನು ತೆಗೆದುಹಾಕಿ: ನಿಮ್ಮ CSS ಅನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಮತ್ತು ಎಂದಿಗೂ ಬಳಸದ ನಿಯಮಗಳನ್ನು ಗುರುತಿಸಲು ಉಪಕರಣಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿವೆ. ಈ ನಿಯಮಗಳನ್ನು ತೆಗೆದುಹಾಕುವುದರಿಂದ CSSOM ನ ಗಾತ್ರ ಕಡಿಮೆಯಾಗುತ್ತದೆ.
ಉದಾಹರಣೆ (ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಡಿಫರ್ ಮಾಡುವುದು):
<script src="script.js" defer></script>
defer ಆಟ್ರಿಬ್ಯೂಟ್ ಬ್ರೌಸರ್ಗೆ DOM ನಿರ್ಮಾಣವನ್ನು ತಡೆಯದೆ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಲು ಹೇಳುತ್ತದೆ. DOM ಸಂಪೂರ್ಣವಾಗಿ ಪಾರ್ಸ್ ಆದ ನಂತರ ಸ್ಕ್ರಿಪ್ಟ್ ಕಾರ್ಯಗತಗೊಳ್ಳುತ್ತದೆ.
ಉದಾಹರಣೆ (ಕ್ರಿಟಿಕಲ್ CSS ಅನ್ನು ಇನ್ಲೈನ್ ಮಾಡುವುದು):
<head>
<style>
/* ಮೇಲೆ-ದಿ-ಫೋಲ್ಡ್ ವಿಷಯಕ್ಕಾಗಿ ಕ್ರಿಟಿಕಲ್ CSS */
body { font-family: sans-serif; }
h1 { color: black; }
</style>
<link rel="stylesheet" href="style.css">
</head>
ಈ ಉದಾಹರಣೆಯಲ್ಲಿ, body ಮತ್ತು h1 ಎಲಿಮೆಂಟ್ಗಳಿಗಾಗಿ CSS ನಿಯಮಗಳನ್ನು <head> ನಲ್ಲಿ ಇನ್ಲೈನ್ ಮಾಡಲಾಗಿದೆ. ಬಾಹ್ಯ ಸ್ಟೈಲ್ಶೀಟ್ (style.css) ಡೌನ್ಲೋಡ್ ಆಗುವ ಮೊದಲೇ ಬ್ರೌಸರ್ ಮೇಲೆ-ದಿ-ಫೋಲ್ಡ್ ವಿಷಯವನ್ನು ತ್ವರಿತವಾಗಿ ರೆಂಡರ್ ಮಾಡಬಹುದು ಎಂದು ಇದು ಖಚಿತಪಡಿಸುತ್ತದೆ.
2. CSS ವಿತರಣೆಯನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡಿ
ನೀವು ನಿಮ್ಮ CSS ಅನ್ನು ವಿತರಿಸುವ ವಿಧಾನವು CRP ಮೇಲೆ ಗಮನಾರ್ಹವಾಗಿ ಪರಿಣಾಮ ಬೀರಬಹುದು. ಈ ಆಪ್ಟಿಮೈಸೇಶನ್ ತಂತ್ರಗಳನ್ನು ಪರಿಗಣಿಸಿ:
- ಮೀಡಿಯಾ ಕ್ವೆರಿಗಳು: ನಿರ್ದಿಷ್ಟ ಸಾಧನಗಳು ಅಥವಾ ಪರದೆಯ ಗಾತ್ರಗಳಿಗೆ ಮಾತ್ರ CSS ಅನ್ನು ಅನ್ವಯಿಸಲು ಮೀಡಿಯಾ ಕ್ವೆರಿಗಳನ್ನು ಬಳಸಿ. ಇದು ಬ್ರೌಸರ್ ಅನಗತ್ಯ CSS ಅನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡುವುದನ್ನು ತಡೆಯುತ್ತದೆ.
- ಪ್ರಿಂಟ್ ಸ್ಟೈಲ್ಶೀಟ್ಗಳು: ನಿಮ್ಮ ಪ್ರಿಂಟ್ ಶೈಲಿಗಳನ್ನು ಪ್ರತ್ಯೇಕ ಸ್ಟೈಲ್ಶೀಟ್ಗೆ ಪ್ರತ್ಯೇಕಿಸಿ ಮತ್ತು ಮುದ್ರಿಸುವಾಗ ಮಾತ್ರ ಅದನ್ನು ಅನ್ವಯಿಸಲು ಮೀಡಿಯಾ ಕ್ವೆರಿಯನ್ನು ಬಳಸಿ. ಇದು ಪ್ರಿಂಟ್ ಶೈಲಿಗಳು ಪರದೆಯ ಮೇಲೆ ರೆಂಡರಿಂಗ್ ಅನ್ನು ತಡೆಯುವುದನ್ನು ತಡೆಯುತ್ತದೆ.
- ಷರತ್ತುಬದ್ಧ ಲೋಡಿಂಗ್: ಬ್ರೌಸರ್ ವೈಶಿಷ್ಟ್ಯಗಳು ಅಥವಾ ಬಳಕೆದಾರರ ಆದ್ಯತೆಗಳ ಆಧಾರದ ಮೇಲೆ CSS ಫೈಲ್ಗಳನ್ನು ಷರತ್ತುಬದ್ಧವಾಗಿ ಲೋಡ್ ಮಾಡಿ. ಇದನ್ನು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅಥವಾ ಸರ್ವರ್-ಸೈಡ್ ತರ್ಕವನ್ನು ಬಳಸಿ ಸಾಧಿಸಬಹುದು.
ಉದಾಹರಣೆ (ಮೀಡಿಯಾ ಕ್ವೆರಿಗಳು):
<link rel="stylesheet" href="style.css" media="screen">
<link rel="stylesheet" href="print.css" media="print">
ಈ ಉದಾಹರಣೆಯಲ್ಲಿ, style.css ಅನ್ನು ಪರದೆಗಳಿಗೆ ಮಾತ್ರ ಅನ್ವಯಿಸಲಾಗುತ್ತದೆ, ಆದರೆ print.css ಅನ್ನು ಮುದ್ರಿಸುವಾಗ ಮಾತ್ರ ಅನ್ವಯಿಸಲಾಗುತ್ತದೆ.
3. ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡಿ
ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ CRP ಮೇಲೆ ಗಮನಾರ್ಹ ಪರಿಣಾಮ ಬೀರಬಹುದು, ವಿಶೇಷವಾಗಿ ಅದು DOM ಅಥವಾ CSSOM ಅನ್ನು ಮಾರ್ಪಡಿಸಿದರೆ. ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವುದು ಹೇಗೆ ಎಂಬುದು ಇಲ್ಲಿದೆ:
- ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಡಿಫರ್ ಅಥವಾ ಅಸಿಂಕ್ ಮಾಡಿ: ಮೊದಲೇ ಹೇಳಿದಂತೆ, ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ DOM ನಿರ್ಮಾಣವನ್ನು ತಡೆಯುವುದನ್ನು ತಪ್ಪಿಸಲು
deferಅಥವಾasyncಆಟ್ರಿಬ್ಯೂಟ್ಗಳನ್ನು ಬಳಸಿ. - ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕೋಡ್ ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡಿ: DOM ಮ್ಯಾನಿಪ್ಯುಲೇಷನ್ಗಳು ಮತ್ತು ಲೆಕ್ಕಾಚಾರಗಳನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಸಮರ್ಥ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕೋಡ್ ಬರೆಯಿರಿ.
- ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಲೇಜಿ ಲೋಡ್ ಮಾಡಿ: ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅಗತ್ಯವಿದ್ದಾಗ ಮಾತ್ರ ಅದನ್ನು ಲೋಡ್ ಮಾಡಿ. ಉದಾಹರಣೆಗೆ, ಫೋಲ್ಡ್ನ ಕೆಳಗಿರುವ ಎಲಿಮೆಂಟ್ಗಳಿಗಾಗಿ ನೀವು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಲೇಜಿ ಲೋಡ್ ಮಾಡಬಹುದು.
- ವೆಬ್ ವರ್ಕರ್ಸ್: ಗಣಕೀಕೃತವಾಗಿ ತೀವ್ರವಾದ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕಾರ್ಯಗಳನ್ನು ವೆಬ್ ವರ್ಕರ್ಗಳಿಗೆ ಸರಿಸಿ, ಅವು ಮುಖ್ಯ ಥ್ರೆಡ್ ಅನ್ನು ತಡೆಯುವುದನ್ನು ತಪ್ಪಿಸಲು.
ಉದಾಹರಣೆ (ಅಸಿಂಕ್ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್):
<script src="analytics.js" async></script>
async ಆಟ್ರಿಬ್ಯೂಟ್ ಬ್ರೌಸರ್ಗೆ ಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಅಸಮಕಾಲಿಕವಾಗಿ ಡೌನ್ಲೋಡ್ ಮಾಡಲು ಮತ್ತು DOM ನಿರ್ಮಾಣವನ್ನು ತಡೆಯದೆ, ಅದು ಲಭ್ಯವಾದ ತಕ್ಷಣ ಕಾರ್ಯಗತಗೊಳಿಸಲು ಹೇಳುತ್ತದೆ. defer ಗಿಂತ ಭಿನ್ನವಾಗಿ, async ನೊಂದಿಗೆ ಲೋಡ್ ಮಾಡಲಾದ ಸ್ಕ್ರಿಪ್ಟ್ಗಳು HTML ನಲ್ಲಿ ಕಾಣಿಸಿಕೊಳ್ಳುವ ಕ್ರಮಕ್ಕಿಂತ ವಿಭಿನ್ನ ಕ್ರಮದಲ್ಲಿ ಕಾರ್ಯಗತಗೊಳ್ಳಬಹುದು.
4. DOM ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡಿ
ಒಂದು ದೊಡ್ಡ ಮತ್ತು ಸಂಕೀರ್ಣವಾದ DOM ರೆಂಡರಿಂಗ್ ಪ್ರಕ್ರಿಯೆಯನ್ನು ನಿಧಾನಗೊಳಿಸಬಹುದು. DOM ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವುದು ಹೇಗೆ ಎಂಬುದು ಇಲ್ಲಿದೆ:
- DOM ಗಾತ್ರವನ್ನು ಕಡಿಮೆ ಮಾಡಿ: ಅನಗತ್ಯ ಎಲಿಮೆಂಟ್ಗಳು ಮತ್ತು ಆಟ್ರಿಬ್ಯೂಟ್ಗಳನ್ನು ತೆಗೆದುಹಾಕುವ ಮೂಲಕ DOM ಅನ್ನು ಸಾಧ್ಯವಾದಷ್ಟು ಚಿಕ್ಕದಾಗಿಡಿ.
- ಆಳವಾದ DOM ಟ್ರೀಗಳನ್ನು ತಪ್ಪಿಸಿ: ಆಳವಾಗಿ ಗೂಡುಕಟ್ಟಿದ DOM ರಚನೆಗಳನ್ನು ರಚಿಸುವುದನ್ನು ತಪ್ಪಿಸಿ, ಏಕೆಂದರೆ ಅವು ಬ್ರೌಸರ್ಗೆ DOM ಅನ್ನು ದಾಟಲು ಹೆಚ್ಚು ಕಷ್ಟಕರವಾಗಿಸಬಹುದು.
- ಸೆಮ್ಯಾಂಟಿಕ್ HTML ಬಳಸಿ: ನಿಮ್ಮ HTML ಡಾಕ್ಯುಮೆಂಟ್ಗೆ ರಚನೆ ಮತ್ತು ಅರ್ಥವನ್ನು ಒದಗಿಸಲು ಸೆಮ್ಯಾಂಟಿಕ್ HTML ಎಲಿಮೆಂಟ್ಗಳನ್ನು (ಉದಾ.,
<article>,<nav>,<aside>) ಬಳಸಿ. ಇದು ಬ್ರೌಸರ್ಗೆ ಪುಟವನ್ನು ಹೆಚ್ಚು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ರೆಂಡರ್ ಮಾಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
5. ಲೇಔಟ್ ಥ್ರಾಶಿಂಗ್ ಅನ್ನು ಕಡಿಮೆ ಮಾಡಿ
ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಪದೇ ಪದೇ DOM ಗೆ ಓದುವಾಗ ಮತ್ತು ಬರೆಯುವಾಗ ಲೇಔಟ್ ಥ್ರಾಶಿಂಗ್ ಸಂಭವಿಸುತ್ತದೆ, ಇದರಿಂದಾಗಿ ಬ್ರೌಸರ್ ಅನೇಕ ಲೇಔಟ್ಗಳು ಮತ್ತು ಪೇಂಟ್ಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ. ಇದು ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಗಮನಾರ್ಹವಾಗಿ ಕುಗ್ಗಿಸಬಹುದು. ಲೇಔಟ್ ಥ್ರಾಶಿಂಗ್ ಅನ್ನು ತಪ್ಪಿಸಲು:
- DOM ಬದಲಾವಣೆಗಳನ್ನು ಬ್ಯಾಚ್ ಮಾಡಿ: DOM ಬದಲಾವಣೆಗಳನ್ನು ಒಟ್ಟಿಗೆ ಗುಂಪು ಮಾಡಿ ಮತ್ತು ಅವುಗಳನ್ನು ಒಂದೇ ಬ್ಯಾಚ್ನಲ್ಲಿ ಅನ್ವಯಿಸಿ. ಇದು ಲೇಔಟ್ಗಳು ಮತ್ತು ಪೇಂಟ್ಗಳ ಸಂಖ್ಯೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ.
- ಬರೆಯುವ ಮೊದಲು ಲೇಔಟ್ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಓದುವುದನ್ನು ತಪ್ಪಿಸಿ: DOM ಗೆ ಬರೆಯುವ ಮೊದಲು ಲೇಔಟ್ ಗುಣಲಕ್ಷಣಗಳನ್ನು (ಉದಾ.,
offsetWidth,offsetHeight) ಓದುವುದನ್ನು ತಪ್ಪಿಸಿ, ಏಕೆಂದರೆ ಇದು ಬ್ರೌಸರ್ ಅನ್ನು ಲೇಔಟ್ ಮಾಡಲು ಒತ್ತಾಯಿಸಬಹುದು. - CSS ಟ್ರಾನ್ಸ್ಫಾರ್ಮ್ಸ್ ಮತ್ತು ಅನಿಮೇಷನ್ಗಳನ್ನು ಬಳಸಿ: ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಆಧಾರಿತ ಅನಿಮೇಷನ್ಗಳ ಬದಲು CSS ಟ್ರಾನ್ಸ್ಫಾರ್ಮ್ಸ್ ಮತ್ತು ಅನಿಮೇಷನ್ಗಳನ್ನು ಬಳಸಿ, ಏಕೆಂದರೆ ಅವು ಸಾಮಾನ್ಯವಾಗಿ ಹೆಚ್ಚು ಕಾರ್ಯಕ್ಷಮತೆ ಹೊಂದಿರುತ್ತವೆ. ಟ್ರಾನ್ಸ್ಫಾರ್ಮ್ಸ್ ಮತ್ತು ಅನಿಮೇಷನ್ಗಳು ಸಾಮಾನ್ಯವಾಗಿ GPU ಅನ್ನು ಬಳಸುತ್ತವೆ, ಇದು ಈ ರೀತಿಯ ಕಾರ್ಯಾಚರಣೆಗಳಿಗೆ ಆಪ್ಟಿಮೈಜ್ ಮಾಡಲಾಗಿದೆ.
6. ಬ್ರೌಸರ್ ಕ್ಯಾಶಿಂಗ್ ಅನ್ನು ಬಳಸಿಕೊಳ್ಳಿ
ಬ್ರೌಸರ್ ಕ್ಯಾಶಿಂಗ್ ಬ್ರೌಸರ್ಗೆ ಸಂಪನ್ಮೂಲಗಳನ್ನು (ಉದಾ., CSS, ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್, ಚಿತ್ರಗಳು) ಸ್ಥಳೀಯವಾಗಿ ಸಂಗ್ರಹಿಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ, ಆದ್ದರಿಂದ ಅವುಗಳನ್ನು ನಂತರದ ಭೇಟಿಗಳಲ್ಲಿ ಮತ್ತೆ ಡೌನ್ಲೋಡ್ ಮಾಡಬೇಕಾಗಿಲ್ಲ. ನಿಮ್ಮ ಸಂಪನ್ಮೂಲಗಳಿಗಾಗಿ ಸೂಕ್ತವಾದ ಕ್ಯಾಶ್ ಹೆಡರ್ಗಳನ್ನು ಹೊಂದಿಸಲು ನಿಮ್ಮ ಸರ್ವರ್ ಅನ್ನು ಕಾನ್ಫಿಗರ್ ಮಾಡಿ.
ಉದಾಹರಣೆ (ಕ್ಯಾಶ್ ಹೆಡರ್ಗಳು):
Cache-Control: public, max-age=31536000
ಈ ಕ್ಯಾಶ್ ಹೆಡರ್ ಬ್ರೌಸರ್ಗೆ ಸಂಪನ್ಮೂಲವನ್ನು ಒಂದು ವರ್ಷದವರೆಗೆ (31536000 ಸೆಕೆಂಡುಗಳು) ಕ್ಯಾಶ್ ಮಾಡಲು ಹೇಳುತ್ತದೆ. ಕಂಟೆಂಟ್ ಡೆಲಿವರಿ ನೆಟ್ವರ್ಕ್ (CDN) ಅನ್ನು ಬಳಸುವುದು ಕ್ಯಾಶಿಂಗ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೆಚ್ಚು ಸುಧಾರಿಸಬಹುದು, ಏಕೆಂದರೆ ಇದು ನಿಮ್ಮ ವಿಷಯವನ್ನು ಪ್ರಪಂಚದಾದ್ಯಂತ ಅನೇಕ ಸರ್ವರ್ಗಳಲ್ಲಿ ವಿತರಿಸುತ್ತದೆ, ಬಳಕೆದಾರರಿಗೆ ಭೌಗೋಳಿಕವಾಗಿ ಹತ್ತಿರವಿರುವ ಸರ್ವರ್ನಿಂದ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಡೌನ್ಲೋಡ್ ಮಾಡಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.
ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಅನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಉಪಕರಣಗಳು
ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಅನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಮತ್ತು ಕಾರ್ಯಕ್ಷಮತೆಯ ಅಡಚಣೆಗಳನ್ನು ಗುರುತಿಸಲು ಹಲವಾರು ಉಪಕರಣಗಳು ನಿಮಗೆ ಸಹಾಯ ಮಾಡಬಹುದು:
- Chrome DevTools: Chrome DevTools ರೆಂಡರಿಂಗ್ ಪ್ರಕ್ರಿಯೆಯ ಬಗ್ಗೆ ಹೇರಳವಾದ ಮಾಹಿತಿಯನ್ನು ಒದಗಿಸುತ್ತದೆ, CRP ಯಲ್ಲಿನ ಪ್ರತಿ ಹಂತದ ಸಮಯವನ್ನು ಒಳಗೊಂಡಂತೆ. ಪುಟ ಲೋಡ್ನ ಟೈಮ್ಲೈನ್ ಅನ್ನು ರೆಕಾರ್ಡ್ ಮಾಡಲು ಮತ್ತು ಆಪ್ಟಿಮೈಸೇಶನ್ಗಾಗಿ ಕ್ಷೇತ್ರಗಳನ್ನು ಗುರುತಿಸಲು ಪರ್ಫಾರ್ಮೆನ್ಸ್ ಪ್ಯಾನೆಲ್ ಬಳಸಿ. ಕವರೇಜ್ ಟ್ಯಾಬ್ ಬಳಕೆಯಾಗದ CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಗುರುತಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
- WebPageTest: WebPageTest ಒಂದು ಜನಪ್ರಿಯ ಆನ್ಲೈನ್ ಸಾಧನವಾಗಿದ್ದು, ಇದು ವಿವರವಾದ ಕಾರ್ಯಕ್ಷಮತೆಯ ವರದಿಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ, ಇದರಲ್ಲಿ ಸಂಪನ್ಮೂಲಗಳ ಲೋಡಿಂಗ್ ಅನ್ನು ದೃಶ್ಯೀಕರಿಸುವ ವಾಟರ್ಫಾಲ್ ಚಾರ್ಟ್ ಸಹ ಸೇರಿದೆ.
- Lighthouse: Lighthouse ವೆಬ್ ಪುಟಗಳ ಗುಣಮಟ್ಟವನ್ನು ಸುಧಾರಿಸಲು ಒಂದು ಓಪನ್-ಸೋರ್ಸ್, ಸ್ವಯಂಚಾಲಿತ ಸಾಧನವಾಗಿದೆ. ಇದು ಕಾರ್ಯಕ್ಷಮತೆ, ಪ್ರವೇಶಸಾಧ್ಯತೆ, ಪ್ರಗತಿಶೀಲ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು, ಎಸ್ಇಒ ಮತ್ತು ಹೆಚ್ಚಿನವುಗಳಿಗಾಗಿ ಆಡಿಟ್ಗಳನ್ನು ಹೊಂದಿದೆ. ನೀವು ಇದನ್ನು Chrome DevTools ನಲ್ಲಿ, ಕಮಾಂಡ್ ಲೈನ್ನಿಂದ ಅಥವಾ ನೋಡ್ ಮಾಡ್ಯೂಲ್ ಆಗಿ ಚಲಾಯಿಸಬಹುದು.
ಉದಾಹರಣೆ (Chrome DevTools ಬಳಸುವುದು):
- Chrome DevTools ತೆರೆಯಿರಿ (ಪುಟದ ಮೇಲೆ ಬಲ ಕ್ಲಿಕ್ ಮಾಡಿ ಮತ್ತು "Inspect" ಆಯ್ಕೆಮಾಡಿ).
- "Performance" ಪ್ಯಾನೆಲ್ಗೆ ಹೋಗಿ.
- ರೆಕಾರ್ಡ್ ಬಟನ್ (ವೃತ್ತದ ಐಕಾನ್) ಕ್ಲಿಕ್ ಮಾಡಿ ಮತ್ತು ಪುಟವನ್ನು ಮರುಲೋಡ್ ಮಾಡಿ.
- ಪುಟವು ಲೋಡ್ ಆಗಿ ಮುಗಿದ ನಂತರ ರೆಕಾರ್ಡಿಂಗ್ ಅನ್ನು ನಿಲ್ಲಿಸಿ.
- ಕಾರ್ಯಕ್ಷಮತೆಯ ಅಡಚಣೆಗಳನ್ನು ಗುರುತಿಸಲು ಟೈಮ್ಲೈನ್ ಅನ್ನು ವಿಶ್ಲೇಷಿಸಿ. "Loading", "Scripting", "Rendering", ಮತ್ತು "Painting" ವಿಭಾಗಗಳಿಗೆ ಹೆಚ್ಚಿನ ಗಮನ ಕೊಡಿ.
ನೈಜ-ಪ್ರಪಂಚದ ಉದಾಹರಣೆಗಳು ಮತ್ತು ಕೇಸ್ ಸ್ಟಡೀಸ್
ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವುದು ವೆಬ್ಸೈಟ್ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಹೇಗೆ ಸುಧಾರಿಸಬಹುದು ಎಂಬುದರ ಕೆಲವು ನೈಜ-ಪ್ರಪಂಚದ ಉದಾಹರಣೆಗಳನ್ನು ನೋಡೋಣ:
- ಉದಾಹರಣೆ 1: ಇ-ಕಾಮರ್ಸ್ ವೆಬ್ಸೈಟ್: ಒಂದು ಇ-ಕಾಮರ್ಸ್ ವೆಬ್ಸೈಟ್ ತನ್ನ CRP ಅನ್ನು ಕ್ರಿಟಿಕಲ್ CSS ಅನ್ನು ಇನ್ಲೈನ್ ಮಾಡುವ ಮೂಲಕ, ಅನಿರ್ಣಾಯಕ ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಅನ್ನು ಡಿಫರ್ ಮಾಡುವ ಮೂಲಕ ಮತ್ತು ಅದರ ಚಿತ್ರಗಳನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವ ಮೂಲಕ ಸುಧಾರಿಸಿತು. ಇದರ ಪರಿಣಾಮವಾಗಿ ಪುಟ ಲೋಡ್ ಸಮಯದಲ್ಲಿ 40% ಕಡಿತ ಮತ್ತು ಪರಿವರ್ತನೆ ದರಗಳಲ್ಲಿ 20% ಹೆಚ್ಚಳವಾಯಿತು.
- ಉದಾಹರಣೆ 2: ಸುದ್ದಿ ವೆಬ್ಸೈಟ್: ಒಂದು ಸುದ್ದಿ ವೆಬ್ಸೈಟ್ ತನ್ನ DOM ನ ಗಾತ್ರವನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಮೂಲಕ, ಅದರ CSS ಸೆಲೆಕ್ಟರ್ಗಳನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವ ಮೂಲಕ ಮತ್ತು ಬ್ರೌಸರ್ ಕ್ಯಾಶಿಂಗ್ ಅನ್ನು ಬಳಸಿಕೊಳ್ಳುವ ಮೂಲಕ ತನ್ನ CRP ಅನ್ನು ಸುಧಾರಿಸಿತು. ಇದು ಬೌನ್ಸ್ ದರದಲ್ಲಿ 30% ಇಳಿಕೆ ಮತ್ತು ಜಾಹೀರಾತು ಆದಾಯದಲ್ಲಿ 15% ಹೆಚ್ಚಳಕ್ಕೆ ಕಾರಣವಾಯಿತು.
- ಉದಾಹರಣೆ 3: ಜಾಗತಿಕ ಪ್ರಯಾಣ ವೇದಿಕೆ: ವಿಶ್ವಾದ್ಯಂತ ಬಳಕೆದಾರರಿಗೆ ಸೇವೆ ಸಲ್ಲಿಸುತ್ತಿರುವ ಜಾಗತಿಕ ಪ್ರಯಾಣ ವೇದಿಕೆಯು CDN ಅನ್ನು ಅಳವಡಿಸುವ ಮೂಲಕ ಮತ್ತು ವಿವಿಧ ಸಾಧನ ಪ್ರಕಾರಗಳು ಮತ್ತು ನೆಟ್ವರ್ಕ್ ಪರಿಸ್ಥಿತಿಗಳಿಗಾಗಿ ಚಿತ್ರಗಳನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವ ಮೂಲಕ ಗಮನಾರ್ಹ ಸುಧಾರಣೆಗಳನ್ನು ಕಂಡಿತು. ಅವರು ಆಗಾಗ್ಗೆ ಪ್ರವೇಶಿಸುವ ಡೇಟಾವನ್ನು ಕ್ಯಾಶ್ ಮಾಡಲು ಸರ್ವಿಸ್ ವರ್ಕರ್ಗಳನ್ನು ಸಹ ಬಳಸಿದರು, ಇದು ಆಫ್ಲೈನ್ ಪ್ರವೇಶ ಮತ್ತು ವೇಗದ ನಂತರದ ಲೋಡ್ಗಳಿಗೆ ಅವಕಾಶ ಮಾಡಿಕೊಟ್ಟಿತು. ಇದರ ಪರಿಣಾಮವಾಗಿ ವಿವಿಧ ಪ್ರದೇಶಗಳು ಮತ್ತು ಇಂಟರ್ನೆಟ್ ವೇಗಗಳಲ್ಲಿ ಹೆಚ್ಚು ಸ್ಥಿರವಾದ ಬಳಕೆದಾರ ಅನುಭವ ಉಂಟಾಯಿತು.
ಜಾಗತಿಕ ಪರಿಗಣನೆಗಳು
CRP ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವಾಗ, ಜಾಗತಿಕ ಸಂದರ್ಭವನ್ನು ಪರಿಗಣಿಸುವುದು ಮುಖ್ಯ. ಪ್ರಪಂಚದ ವಿವಿಧ ಭಾಗಗಳಲ್ಲಿನ ಬಳಕೆದಾರರು ವಿಭಿನ್ನ ಇಂಟರ್ನೆಟ್ ವೇಗಗಳು, ಸಾಧನ ಸಾಮರ್ಥ್ಯಗಳು ಮತ್ತು ನೆಟ್ವರ್ಕ್ ಪರಿಸ್ಥಿತಿಗಳನ್ನು ಹೊಂದಿರಬಹುದು. ಇಲ್ಲಿ ಕೆಲವು ಜಾಗತಿಕ ಪರಿಗಣನೆಗಳಿವೆ:
- ನೆಟ್ವರ್ಕ್ ಲೇಟೆನ್ಸಿ: ನೆಟ್ವರ್ಕ್ ಲೇಟೆನ್ಸಿ ಪುಟ ಲೋಡ್ ಸಮಯದ ಮೇಲೆ ಗಮನಾರ್ಹವಾಗಿ ಪರಿಣಾಮ ಬೀರಬಹುದು, ವಿಶೇಷವಾಗಿ ದೂರದ ಪ್ರದೇಶಗಳಲ್ಲಿ ಅಥವಾ ನಿಧಾನಗತಿಯ ಇಂಟರ್ನೆಟ್ ಸಂಪರ್ಕಗಳನ್ನು ಹೊಂದಿರುವ ಬಳಕೆದಾರರಿಗೆ. ನಿಮ್ಮ ವಿಷಯವನ್ನು ನಿಮ್ಮ ಬಳಕೆದಾರರಿಗೆ ಹತ್ತಿರದಲ್ಲಿ ವಿತರಿಸಲು ಮತ್ತು ಲೇಟೆನ್ಸಿಯನ್ನು ಕಡಿಮೆ ಮಾಡಲು CDN ಬಳಸಿ.
- ಸಾಧನ ಸಾಮರ್ಥ್ಯಗಳು: ಮೊಬೈಲ್ ಸಾಧನಗಳು, ಟ್ಯಾಬ್ಲೆಟ್ಗಳು ಮತ್ತು ಡೆಸ್ಕ್ಟಾಪ್ಗಳಂತಹ ವಿವಿಧ ಸಾಧನ ಸಾಮರ್ಥ್ಯಗಳಿಗಾಗಿ ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡಿ. ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ಅನ್ನು ವಿವಿಧ ಪರದೆಯ ಗಾತ್ರಗಳು ಮತ್ತು ರೆಸಲ್ಯೂಶನ್ಗಳಿಗೆ ಹೊಂದಿಕೊಳ್ಳಲು ರೆಸ್ಪಾನ್ಸಿವ್ ವಿನ್ಯಾಸ ತಂತ್ರಗಳನ್ನು ಬಳಸಿ.
- ನೆಟ್ವರ್ಕ್ ಪರಿಸ್ಥಿತಿಗಳು: ಬಳಕೆದಾರರು ಅನುಭವಿಸಬಹುದಾದ ವಿವಿಧ ನೆಟ್ವರ್ಕ್ ಪರಿಸ್ಥಿತಿಗಳನ್ನು ಪರಿಗಣಿಸಿ, ಉದಾಹರಣೆಗೆ 2G, 3G, ಮತ್ತು 4G. ನಿಧಾನಗತಿಯ ನೆಟ್ವರ್ಕ್ ಸಂಪರ್ಕಗಳಿಗಾಗಿ ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡಲು ಅಡಾಪ್ಟಿವ್ ಇಮೇಜ್ ಲೋಡಿಂಗ್ ಮತ್ತು ಡೇಟಾ ಕಂಪ್ರೆಷನ್ನಂತಹ ತಂತ್ರಗಳನ್ನು ಬಳಸಿ.
- ಅಂತರರಾಷ್ಟ್ರೀಕರಣ (i18n): ಬಹುಭಾಷಾ ವೆಬ್ಸೈಟ್ಗಳೊಂದಿಗೆ ವ್ಯವಹರಿಸುವಾಗ, ನಿಮ್ಮ CSS ಮತ್ತು ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ವಿವಿಧ ಅಕ್ಷರ ಸೆಟ್ಗಳು ಮತ್ತು ಪಠ್ಯ ನಿರ್ದೇಶನಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಸರಿಯಾಗಿ ಅಂತರರಾಷ್ಟ್ರೀಕರಣಗೊಂಡಿದೆಯೆ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ.
- ಪ್ರವೇಶಸಾಧ್ಯತೆ (a11y): ವಿಕಲಾಂಗ ಜನರು ಬಳಸಲು ಸಾಧ್ಯವಾಗುವಂತೆ ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ಅನ್ನು ಪ್ರವೇಶಸಾಧ್ಯತೆಗಾಗಿ ಆಪ್ಟಿಮೈಜ್ ಮಾಡಿ. ಇದು ಚಿತ್ರಗಳಿಗೆ ಪರ್ಯಾಯ ಪಠ್ಯವನ್ನು ಒದಗಿಸುವುದು, ಸೆಮ್ಯಾಂಟಿಕ್ HTML ಅನ್ನು ಬಳಸುವುದು ಮತ್ತು ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ಕೀಬೋರ್ಡ್ ಮೂಲಕ ಪ್ರವೇಶಿಸಬಹುದೆಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವುದನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ.
ತೀರ್ಮಾನ
ವೇಗವಾದ ಮತ್ತು ಆಕರ್ಷಕವಾದ ಬಳಕೆದಾರ ಅನುಭವವನ್ನು ನೀಡಲು ಕ್ರಿಟಿಕಲ್ ರೆಂಡರಿಂಗ್ ಪಾತ್ ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವುದು ಅತ್ಯಗತ್ಯ. ಕ್ರಿಟಿಕಲ್ ಸಂಪನ್ಮೂಲಗಳನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಮೂಲಕ, CSS ವಿತರಣೆಯನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವ ಮೂಲಕ, ಜಾವಾಸ್ಕ್ರಿಪ್ಟ್ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವ ಮೂಲಕ, DOM ಅನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡುವ ಮೂಲಕ, ಲೇಔಟ್ ಥ್ರಾಶಿಂಗ್ ಅನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಮೂಲಕ ಮತ್ತು ಬ್ರೌಸರ್ ಕ್ಯಾಶಿಂಗ್ ಅನ್ನು ಬಳಸಿಕೊಳ್ಳುವ ಮೂಲಕ, ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ನ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ನೀವು ಗಮನಾರ್ಹವಾಗಿ ಸುಧಾರಿಸಬಹುದು. ನಿಮ್ಮ CRP ಅನ್ನು ವಿಶ್ಲೇಷಿಸಲು ಮತ್ತು ಆಪ್ಟಿಮೈಸೇಶನ್ಗಾಗಿ ಕ್ಷೇತ್ರಗಳನ್ನು ಗುರುತಿಸಲು ಲಭ್ಯವಿರುವ ಉಪಕರಣಗಳನ್ನು ಬಳಸಲು ಮರೆಯದಿರಿ. ಈ ಕ್ರಮಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುವ ಮೂಲಕ, ನಿಮ್ಮ ವೆಬ್ಸೈಟ್ ತ್ವರಿತವಾಗಿ ಲೋಡ್ ಆಗುತ್ತದೆ ಮತ್ತು ಪ್ರಪಂಚದಾದ್ಯಂತದ ಬಳಕೆದಾರರಿಗೆ ಸಕಾರಾತ್ಮಕ ಅನುಭವವನ್ನು ನೀಡುತ್ತದೆ ಎಂದು ನೀವು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಬಹುದು. ಇಂಟರ್ನೆಟ್ ಹೆಚ್ಚೆಚ್ಚು ಜಾಗತಿಕವಾಗುತ್ತಿದೆ; ವೇಗವಾದ ಮತ್ತು ಪ್ರವೇಶಿಸಬಹುದಾದ ವೆಬ್ಸೈಟ್ ಇನ್ನು ಮುಂದೆ ಕೇವಲ ಉತ್ತಮ ಅಭ್ಯಾಸವಲ್ಲ, ಆದರೆ ವೈವಿಧ್ಯಮಯ ಪ್ರೇಕ್ಷಕರನ್ನು ತಲುಪಲು ಒಂದು ಅವಶ್ಯಕತೆಯಾಗಿದೆ.