# बँकिंग अ‍ॅप तयार करा भाग 1: HTML टेम्पलेट्स आणि वेब अ‍ॅपमधील रूट्स जेव्हा अपोलो 11 च्या मार्गदर्शन संगणकाने 1969 मध्ये चंद्रावर नेव्हिगेशन केले, तेव्हा त्याला संपूर्ण प्रणाली पुन्हा सुरू न करता वेगवेगळ्या प्रोग्राम्समध्ये स्विच करावे लागले. आधुनिक वेब अ‍ॅप्सही असंच काम करतात – ते तुम्हाला जे दिसतं ते बदलतात, परंतु सर्वकाही सुरुवातीपासून पुन्हा लोड करत नाहीत. यामुळे वापरकर्त्यांना अपेक्षित असलेला गुळगुळीत, प्रतिसादात्मक अनुभव निर्माण होतो. पारंपरिक वेबसाइट्स ज्या प्रत्येक संवादासाठी संपूर्ण पृष्ठे पुन्हा लोड करतात, त्यापेक्षा आधुनिक वेब अ‍ॅप्स फक्त बदलण्याची गरज असलेल्या भागांचे अपडेट्स करतात. हे दृष्टिकोन, जसे मिशन कंट्रोल वेगवेगळ्या डिस्प्ले दरम्यान स्विच करते आणि सतत संवाद ठेवते, तसाच गुळगुळीत अनुभव निर्माण करतो. यामुळे फरक इतका नाट्यमय का वाटतो: | पारंपरिक मल्टी-पेज अ‍ॅप्स | आधुनिक सिंगल-पेज अ‍ॅप्स | |----------------------------|-------------------------| | **नेव्हिगेशन** | प्रत्येक स्क्रीनसाठी संपूर्ण पृष्ठ पुन्हा लोड | त्वरित सामग्री स्विचिंग | | **कामगिरी** | संपूर्ण HTML डाउनलोडमुळे धीमे | अंशतः अपडेट्समुळे जलद | | **वापरकर्ता अनुभव** | पृष्ठ फ्लॅशेस त्रासदायक | गुळगुळीत, अ‍ॅपसारखे संक्रमण | | **डेटा शेअरिंग** | पृष्ठांमध्ये कठीण | सोपे स्टेट मॅनेजमेंट | | **विकास** | अनेक HTML फाइल्स सांभाळणे | एक HTML फाइल आणि डायनॅमिक टेम्पलेट्स | **उत्क्रांती समजून घेणे:** - **पारंपरिक अ‍ॅप्स** प्रत्येक नेव्हिगेशन क्रियेसाठी सर्व्हर विनंत्या करतात - **आधुनिक SPAs** एकदाच लोड होतात आणि JavaScript वापरून सामग्री डायनॅमिकपणे अपडेट करतात - **वापरकर्त्यांच्या अपेक्षा** आता त्वरित, अखंड संवादांना प्राधान्य देतात - **कामगिरी फायदे** बँडविड्थ कमी होणे आणि जलद प्रतिसाद या धड्यात, आम्ही अनेक स्क्रीन असलेला बँकिंग अ‍ॅप तयार करू जो अखंडपणे एकत्रित होतो. जसे वैज्ञानिक वेगवेगळ्या प्रयोगांसाठी पुन्हा कॉन्फिगर करता येणारी मॉड्यूलर उपकरणे वापरतात, तसेच आम्ही HTML टेम्पलेट्स वापरू जे पुनर्वापर करता येणारे घटक आहेत आणि गरजेनुसार प्रदर्शित करता येतात. तुम्ही HTML टेम्पलेट्स (वेगवेगळ्या स्क्रीनसाठी पुनर्वापर करता येणारे ब्लूप्रिंट्स), JavaScript रूटिंग (स्क्रीन दरम्यान स्विचिंगची प्रणाली) आणि ब्राउझरचा इतिहास API (बॅक बटण अपेक्षेप्रमाणे कार्य करते याची खात्री करणारी) यावर काम कराल. React, Vue आणि Angular सारख्या फ्रेमवर्क्समध्ये वापरल्या जाणाऱ्या मूलभूत तंत्रांचा वापर येथे केला जातो. शेवटी, तुम्हाला व्यावसायिक सिंगल-पेज अ‍ॅप्लिकेशन तत्त्वे दाखवणारा कार्यरत बँकिंग अ‍ॅप तयार होईल. ## प्री-लेक्चर क्विझ [प्री-लेक्चर क्विझ](https://ff-quizzes.netlify.app/web/quiz/41) ### तुम्हाला काय लागेल आपल्या बँकिंग अ‍ॅपची चाचणी घेण्यासाठी स्थानिक वेब सर्व्हरची आवश्यकता असेल – काळजी करू नका, हे सोपे आहे! जर तुमच्याकडे आधीपासून सेटअप नसेल, तर फक्त [Node.js](https://nodejs.org) इंस्टॉल करा आणि तुमच्या प्रोजेक्ट फोल्डरमधून `npx lite-server` चालवा. ही सोपी कमांड स्थानिक सर्व्हर सुरू करते आणि तुमचा अ‍ॅप ब्राउझरमध्ये आपोआप उघडतो. ### तयारी तुमच्या संगणकावर `bank` नावाचा फोल्डर तयार करा आणि त्यामध्ये `index.html` नावाची फाइल ठेवा. आपण या HTML [बॉयलरप्लेट](https://en.wikipedia.org/wiki/Boilerplate_code) पासून सुरुवात करू: ```html Bank App ``` **या बॉयलरप्लेटमध्ये काय आहे:** - **HTML5 दस्तऐवज संरचना** योग्य DOCTYPE घोषणेसह स्थापित करते - **कॅरेक्टर एन्कोडिंग** UTF-8 म्हणून कॉन्फिगर करते, आंतरराष्ट्रीय मजकूर समर्थनासाठी - **रेस्पॉन्सिव्ह डिझाइन सक्षम करते** मोबाइल सुसंगततेसाठी व्ह्यूपोर्ट मेटा टॅगसह - **वर्णनात्मक शीर्षक सेट करते** जे ब्राउझर टॅबमध्ये दिसते - **स्वच्छ बॉडी सेक्शन तयार करते** जिथे आपण आपला अ‍ॅप तयार करू > 📁 **प्रोजेक्ट स्ट्रक्चर प्रिव्ह्यू** > > **या धड्याच्या शेवटी, तुमच्या प्रोजेक्टमध्ये खालील गोष्टी असतील:** > ``` > bank/ > ├── index.html > ├── app.js > └── style.css > ``` > > **फाइल जबाबदाऱ्या:** > - **index.html**: सर्व टेम्पलेट्स समाविष्ट करते आणि अ‍ॅपची संरचना प्रदान करते > - **app.js**: रूटिंग, नेव्हिगेशन आणि टेम्पलेट व्यवस्थापन हाताळते > - **टेम्पलेट्स**: लॉगिन, डॅशबोर्ड आणि इतर स्क्रीनसाठी UI परिभाषित करतात --- ## HTML टेम्पलेट्स टेम्पलेट्स वेब विकासातील मूलभूत समस्येचे निराकरण करतात. जेव्हा गुटेनबर्गने 1440 च्या दशकात हलणाऱ्या टाइप प्रिंटिंगचा शोध लावला, तेव्हा त्याला समजले की संपूर्ण पृष्ठे कोरण्याऐवजी, तो पुनर्वापर करता येणारे अक्षर ब्लॉक्स तयार करू शकतो आणि गरजेनुसार त्यांची व्यवस्था करू शकतो. HTML टेम्पलेट्स याच तत्त्वावर काम करतात – प्रत्येक स्क्रीनसाठी वेगळ्या HTML फाइल्स तयार करण्याऐवजी, तुम्ही पुनर्वापर करता येणाऱ्या संरचना परिभाषित करता ज्या गरजेनुसार प्रदर्शित केल्या जाऊ शकतात. टेम्पलेट्सला तुमच्या अ‍ॅपच्या वेगवेगळ्या भागांसाठी ब्लूप्रिंट्स म्हणून विचार करा. जसे एखादा आर्किटेक्ट एक ब्लूप्रिंट तयार करतो आणि त्याचा अनेक वेळा वापर करतो, त्याऐवजी समान खोल्या पुन्हा काढत नाही, तसेच आम्ही टेम्पलेट्स एकदाच तयार करतो आणि गरजेनुसार त्यांचा वापर करतो. ब्राउझर हे टेम्पलेट्स लपवून ठेवतो जोपर्यंत JavaScript त्यांना सक्रिय करत नाही. जर तुम्हाला वेब पेजसाठी अनेक स्क्रीन तयार करायच्या असतील, तर एक उपाय म्हणजे तुम्हाला प्रत्येक स्क्रीनसाठी एक HTML फाइल तयार करावी लागेल. परंतु, या उपायामध्ये काही असुविधा आहेत: - स्क्रीन स्विच करताना तुम्हाला संपूर्ण HTML पुन्हा लोड करावी लागते, ज्यामुळे प्रक्रिया धीमी होऊ शकते. - वेगवेगळ्या स्क्रीनमध्ये डेटा शेअर करणे कठीण होते. दुसरा दृष्टिकोन म्हणजे फक्त एक HTML फाइल असणे आणि `