सुमारे 15 वर्षांपूर्वी, मी एका कंपनीत काम करत होतो जिथे आम्ही ट्रॅव्हल एजंट, विमानतळ कामगार आणि एअरलाइन कंपन्यांसाठी ॲप्स तयार केले होते. आम्ही UI घटक आणि सिंगल-पेज ॲप क्षमतांसाठी आमची स्वतःची इन-हाउस फ्रेमवर्क देखील तयार केली आहे. आमच्याकडे प्रत्येक गोष्टीसाठी घटक होते: फील्ड, बटणे, टॅब, श्रेणी, डेटाटेबल, मेनू, डेटपिकर, निवड आणि मल्टीसिलेक्ट्स. आमच्याकडे एक div घटक देखील होता. आमचा div घटक खूप चांगला होता, त्याने आम्हाला सर्व ब्राउझरवर गोलाकार कोपरे करण्याची परवानगी दिली, ज्यावर विश्वास ठेवा किंवा नाही, त्या वेळी करणे सोपे नव्हते.

आमचे कार्य आमच्या इतिहासाच्या एका टप्प्यावर घडले जेव्हा JS, Ajax आणि डायनॅमिक HTML आम्हाला भविष्यात आणणारी क्रांती म्हणून पाहिले गेले. अचानक, आम्ही एखादे पृष्ठ गतिमानपणे अद्यतनित करू शकतो, सर्व्हरवरून डेटा मिळवू शकतो आणि इतर पृष्ठांवर नेव्हिगेट करणे टाळू शकतो, जे हळू दिसले आणि दोन पृष्ठांमधील स्क्रीनवर एक मोठा पांढरा आयत चमकला. जेफ एटवुड (स्टॅकओव्हरफ्लोचे संस्थापक) यांनी लोकप्रिय केलेला एक वाक्प्रचार होता: "जावास्क्रिप्टमध्ये लिहिता येणारा कोणताही अनुप्रयोग अखेरीस जावास्क्रिप्टमध्ये लिहिला जाईल." - जेफ ॲटवुड

त्या वेळी आमच्यासाठी, प्रत्यक्षात जाऊन ते ॲप्स तयार करण्याचे धाडस वाटले. जे.एस.सोबत सर्व काही करण्याची मंजुरी मिळाल्यासारखे वाटले. म्हणून आम्ही जेएस सोबत सर्व काही केले आणि आम्ही गोष्टी करण्याच्या इतर मार्गांवर संशोधन करण्यासाठी खरोखर वेळ काढला नाही. HTML आणि CSS काय करू शकतात हे योग्यरित्या शिकण्यासाठी आम्हाला खरोखर प्रोत्साहन वाटले नाही. वेबला संपूर्णपणे विकसित होत असलेले ॲप प्लॅटफॉर्म म्हणून आम्हाला खरोखरच समजले नाही. आम्ही बहुधा ते काम करण्यासाठी आवश्यक असल्याने पाहिले, विशेषत: जेव्हा ब्राउझर सपोर्टसाठी येतो. गोष्टी पूर्ण करण्यासाठी आम्ही त्यावर अधिक जेएस टाकू शकतो. वेब कसे कार्य करते आणि प्लॅटफॉर्मवर काय उपलब्ध होते याबद्दल अधिक जाणून घेण्यासाठी वेळ काढणे मला मदत करेल का? नक्कीच, मी कदाचित कोडचा एक समूह मुंडला असेल ज्याची खरोखर गरज नाही. पण, त्या वेळी, कदाचित तितकेसे नाही. तुम्ही पाहता, तेव्हा ब्राउझरमधील फरक खूपच लक्षणीय होते. हा असा काळ होता जेव्हा इंटरनेट एक्सप्लोरर हा ब्राउझर अजूनही प्रबळ ब्राउझर होता, फायरफॉक्स जवळचा दुसरा होता, परंतु क्रोम झपाट्याने लोकप्रिय झाल्यामुळे मार्केट शेअर गमावू लागला. जरी क्रोम आणि फायरफॉक्स वेब मानकांवर सहमती देण्यास चांगले होते, परंतु आमचे ॲप्स ज्या वातावरणात चालत होते त्याचा अर्थ असा होतो की आम्हाला बर्याच काळासाठी IE6 चे समर्थन करावे लागले. आम्हाला IE8 चे समर्थन करण्याची परवानगी असतानाही, आम्हाला ब्राउझरमधील बऱ्याच फरकांना सामोरे जावे लागले. इतकंच नाही तर त्यावेळच्या वेबमध्ये प्लॅटफॉर्ममध्ये इतक्या क्षमता निर्माण झाल्या नव्हत्या.

आज फास्ट फॉरवर्ड करा. गोष्टी कमालीच्या बदलल्या आहेत. आमच्याकडे या क्षमतांपैकी पूर्वीपेक्षा जास्त क्षमता तर आहेतच, पण त्या उपलब्ध होण्याच्या दरातही वाढ झाली आहे. मला पुन्हा प्रश्न विचारू द्या, मग: वेब कसे कार्य करते आणि प्लॅटफॉर्मवर काय उपलब्ध आहे याबद्दल अधिक जाणून घेण्यासाठी वेळ काढणे तुम्हाला आज मदत करेल का? एकदम हो. आज वेब प्लॅटफॉर्म समजून घेणे आणि वापरणे शिकणे तुम्हाला इतर डेव्हलपरच्या तुलनेत खूप फायदा मिळवून देते. तुम्ही कार्यप्रदर्शन, प्रवेशयोग्यता, प्रतिसाद, या सर्वांवर एकत्र काम करत असलात किंवा फक्त UI वैशिष्ट्यांवर काम करत असाल, जर तुम्हाला ते जबाबदार अभियंता म्हणून करायचे असेल तर, तुमच्यासाठी उपलब्ध असलेली साधने जाणून घेतल्याने तुम्हाला तुमची उद्दिष्टे जलद आणि चांगल्या प्रकारे गाठण्यात मदत होते. काही गोष्टी ज्यासाठी तुम्हाला यापुढे लायब्ररीची आवश्यकता नाही आज कोणते ब्राउझर समर्थन देतात हे जाणून घेतल्यानंतर, प्रश्न असा आहे: आपण काय कमी करू शकतो? 2025 मध्ये गोलाकार कोपरे करण्यासाठी आम्हाला div घटकाची आवश्यकता आहे का? अर्थात, आम्ही नाही. बॉर्डर-रेडियस प्रॉपर्टीला या टप्प्यावर 15 वर्षांहून अधिक काळ वापरल्या जाणाऱ्या सर्व ब्राउझरद्वारे समर्थित आहे. आणि अगदी फॅन्सी कॉर्नरसाठी कॉर्नर-आकार देखील लवकरच येत आहे. आता सर्व प्रमुख ब्राउझरमध्ये उपलब्ध असलेल्या तुलनेने अलीकडील वैशिष्ट्यांवर एक नजर टाकूया आणि जी तुम्ही तुमच्या कोडबेसमधील विद्यमान अवलंबन बदलण्यासाठी वापरू शकता. मुद्दा तुमची सर्व प्रिय लायब्ररी ताबडतोब खोडून टाकण्याचा आणि तुमचा कोडबेस पुन्हा लिहिण्याचा नाही. इतर सर्व गोष्टींसाठी, तुम्हाला प्रथम ब्राउझर सपोर्ट विचारात घेणे आवश्यक आहे आणि तुमच्या प्रकल्पाशी संबंधित इतर घटकांवर आधारित निर्णय घेणे आवश्यक आहे. खालील वैशिष्ट्ये तीन मुख्य ब्राउझर इंजिनमध्ये (Chromium, WebKit, आणि Gecko) लागू केली आहेत, परंतु तुमच्यासाठी भिन्न ब्राउझर समर्थन आवश्यकता असू शकतात ज्या तुम्हाला ते लगेच वापरण्यापासून प्रतिबंधित करतात. या वैशिष्ट्यांबद्दल जाणून घेण्यासाठी आताही चांगली वेळ आहे, आणि कदाचित ते कधीतरी वापरण्याची योजना आहे. पॉपओव्हर्स आणि संवाद Popover API,

HTML घटक आणि ::backdrop स्यूडो-एलिमेंट तुम्हाला पॉपअपवरील अवलंबित्वांपासून मुक्त होण्यास मदत करू शकतात,टूलटिप आणि डायलॉग लायब्ररी, जसे की फ्लोटिंग UI, Tippy.js, Tether, किंवा React Tooltip. ते तुमच्यासाठी प्रवेशयोग्यता आणि फोकस व्यवस्थापन हाताळतात, बॉक्सच्या बाहेर, CSS वापरून अत्यंत सानुकूल करण्यायोग्य आहेत आणि सहजपणे ॲनिमेटेड केले जाऊ शकतात. Accordions <तपशील> घटक, परस्पर अनन्य घटकांसाठी त्याचे नाव गुणधर्म आणि ::तपशील-सामग्री स्यूडो-घटक बूटस्ट्रॅप ॲकॉर्डियन किंवा रिॲक्ट अकॉर्डियन घटक सारख्या ॲकॉर्डियन घटकांची आवश्यकता काढून टाकतात. फक्त येथे प्लॅटफॉर्म वापरणे म्हणजे HTML/CSS जाणणाऱ्यांना तुमचा कोड समजणे सोपे आहे. याचा अर्थ असा आहे की तुम्ही लायब्ररीतील बदल किंवा त्या लायब्ररीचे खंडन करण्यापासून मुक्त आहात. आणि अर्थातच, याचा अर्थ डाउनलोड आणि चालवण्यासाठी कमी कोड. परस्पर अनन्य तपशील घटकांना उघडण्यासाठी, बंद करण्यासाठी किंवा ॲनिमेट करण्यासाठी JS ची आवश्यकता नाही. CSS सिंटॅक्स कॅस्केड स्तर, अधिक संघटित CSS कोडबेस, CSS नेस्टिंग, अधिक कॉम्पॅक्ट CSS, नवीन रंग फंक्शन्स, सापेक्ष रंग आणि रंग-मिश्रणासाठी, नवीन गणित कार्ये जसे abs(), sign(), pow() आणि इतर CSS प्री-प्रोसेसर, बूटस्ट्रॅप आणि टेलविंड सारख्या उपयुक्तता लायब्ररींवर अवलंबित्व कमी करण्यात मदत करतात. गेम चेंजर :has(), बर्याच काळापासून सर्वात विनंती केलेल्या वैशिष्ट्यांपैकी एक, अधिक क्लिष्ट JS-आधारित उपायांची आवश्यकता दूर करते. जेएस युटिलिटीज FindLast(), किंवा at(), तसेच फरक(), intersection(), union() आणि इतर सारख्या सेट पद्धती सारख्या आधुनिक ॲरे पद्धती Lodash सारख्या लायब्ररीवरील अवलंबित्व कमी करू शकतात. कंटेनर क्वेरी कंटेनर क्वेरीमुळे UI घटक व्ह्यूपोर्ट आकाराव्यतिरिक्त इतर गोष्टींना प्रतिसाद देतात आणि त्यामुळे त्यांना वेगवेगळ्या संदर्भांमध्ये पुन्हा वापरता येण्याजोगे बनवतात. यासाठी आता JS-हेवी UI लायब्ररी वापरण्याची गरज नाही आणि पॉलीफिल वापरण्याचीही गरज नाही. मांडणी ग्रिड, सबग्रीड, फ्लेक्सबॉक्स किंवा मल्टी-कॉलम आता बर्याच काळापासून आहेत, परंतु स्टेट ऑफ CSS सर्वेक्षणांचे परिणाम पाहता, हे स्पष्ट होते की विकासक नवीन गोष्टींचा अवलंब करण्याबाबत खूप सावध असतात आणि ते करण्यापूर्वी खूप वेळ प्रतीक्षा करतात. ही वैशिष्ट्ये बऱ्याच काळापासून बेसलाइन आहेत आणि तुम्ही बूटस्ट्रॅपची ग्रिड सिस्टीम, फाउंडेशन फ्रेमवर्कची फ्लेक्सबॉक्स युटिलिटीज, बुलमा फिक्स्ड ग्रिड, मटेरियलाइज ग्रिड किंवा टेलविंड कॉलम्स यांसारख्या गोष्टींवरील अवलंबित्वांपासून मुक्त होण्यासाठी त्यांचा वापर करू शकता. मी असे म्हणत नाही की तुम्ही तुमची चौकट सोडली पाहिजे. तुमच्या टीमने ते एका कारणासाठी स्वीकारले आहे आणि ते काढून टाकणे हा एक मोठा प्रकल्प असू शकतो. पण वेब प्लॅटफॉर्म वर थर्ड-पार्टी रॅपरशिवाय काय ऑफर करू शकते ते पाहता बरेच फायदे मिळतात. नजीकच्या भविष्यात ज्या गोष्टींची तुम्हाला गरज भासणार नाही आता, नजीकच्या भविष्यात तुम्हाला लायब्ररीची गरज भासणार नाही अशा काही गोष्टींवर एक झटकन नजर टाकूया. असे म्हणायचे आहे की, खालील गोष्टी मोठ्या प्रमाणावर दत्तक घेण्यास तयार नाहीत, परंतु त्यांची जाणीव असणे आणि नंतरच्या संभाव्य वापरासाठी नियोजन करणे उपयुक्त ठरू शकते. अँकर पोझिशनिंग CSS अँकर पोझिशनिंग इतर घटकांच्या सापेक्ष पॉपओव्हर्स आणि टूलटिप्सची स्थिती हाताळते आणि पृष्ठ हलवताना, स्क्रोल करताना किंवा आकार बदलताना देखील ते लक्षात ठेवण्याची काळजी घेते. हे आधी नमूद केलेल्या Popover API साठी एक उत्तम पूरक आहे, जे अधिक कार्यप्रदर्शन-केंद्रित JS सोल्यूशन्सपासून दूर जाणे आणखी सोपे करेल. नेव्हिगेशन API नॅव्हिगेशन API चा वापर सिंगल-पेज ॲप्समध्ये नेव्हिगेशन हाताळण्यासाठी केला जाऊ शकतो आणि राउटर, नेक्स्ट.जेएस राउटिंग किंवा अँगुलर राउटिंग कार्यांसाठी एक उत्तम पूरक किंवा बदली देखील असू शकतो. संक्रमण API पहा View Transitions API पृष्ठाच्या वेगवेगळ्या स्थितींमध्ये ॲनिमेट करू शकते. सिंगल-पेज ॲप्लिकेशनवर, हे राज्यांमधील गुळगुळीत संक्रमणे खूप सोपे करते आणि तुम्हाला Anime.js, GSAP किंवा Motion.dev सारख्या ॲनिमेशन लायब्ररीपासून मुक्त होण्यास मदत करू शकते. आणखी चांगले, API एकाधिक-पृष्ठ अनुप्रयोगांसह देखील वापरले जाऊ शकते. पूर्वी लक्षात ठेवा, जेव्हा मी 15 वर्षांपूर्वी काम केलेल्या कंपनीत आम्ही सिंगल-पेज ॲप्स बनवण्याचे कारण नॅव्हिगेट करताना पृष्ठ रीलोड होण्याचे पांढरे फ्लॅश टाळण्यासाठी होते असे सांगितले होते? त्या वेळी एपीआय उपलब्ध असता, तर आम्ही एका पृष्ठाच्या फ्रेमवर्कशिवाय आणि संपूर्ण ॲपच्या मोठ्या प्रारंभिक डाउनलोडशिवाय सुंदर पृष्ठ संक्रमण प्रभाव प्राप्त करू शकलो असतो. स्क्रोल-चालित ॲनिमेशन स्क्रोल-चालित ॲनिमेशन वापरकर्त्याच्या स्क्रोल स्थितीवर चालतात, कालांतराने ते कथाकथन आणि उत्पादन टूरसाठी उत्तम उपाय बनवतात. काही लोक यासह थोडे वर गेले आहेत, परंतु जेव्हा ते चांगले वापरले जाते तेव्हा हे एक अतिशय प्रभावी डिझाइन साधन असू शकते आणि लायब्ररींपासून मुक्त होण्यास मदत करू शकते जसे की: ScrollReveal, GSAP Scroll किंवाWOW.js. सानुकूल करण्यायोग्य निवड सानुकूल करण्यायोग्य निवड हा एक सामान्य

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free