हेलो दोस्तों स्वगत हे आपका हमारे एक और नए पोस्ट पर यहाँ पर में आपको Flutter के files & folders का Structure बताने वाला हूँ। तो दोस्तो मै आपको flutter के files and folders के बारे में step-by-step और file और folder के बारे में एक दम डिटेल्स से बताने वाला हूँ।
.dart_tool
दोस्तों जब अपन कभी flutter का प्रोजेक्ट बनाते है तो अपने flutter प्रोजेक्ट्स में बहुत सारी files एंड folders बने हुए मिलते है जिसमे की सबसे पहले या सबसे ऊपर जो folder होता है वो होता है, .dart_tool के नाम से, दोस्तों। .dart_tool नाम का ये folder flutter sdk का version 2.0 के बाद में add हुआ है इससे पहले .pub नाम का फोल्डर हुआ करता था जिसको बदल कर .dart_tool कर दिया गया है। दोस्तों ये folder और इनके अंदर जितनि भी files होती है वे सभी pub (Package Repository) और कुछ अन्य टूल्स के द्वारा काम में ली जाती है और दोस्तों ये फोल्डर git version control के द्वारा ignore की जाती है।
.idea
दोस्तों .idea फोल्डर एक hidden फोल्डर होता हे और ये IntelliJ IDEA के द्वारा generate किया जाता हे और ये हर प्रोजेक्ट के लिए अलग अलग होती है और सभी IntelliJ IDEA के द्वारा बने प्रोजेक्ट्स में होती है। दोस्तों एंड्राइड स्टूडियो भी इंटेललज IDEA पर ही base हे इसलिए हमे ये फोल्डर देखने को मिल रहा है दोस्तों इस फोल्डर में प्रोजेक्ट से रिलेटेड, प्रोजेक्ट की configuration और settings की फाइल्स होती है और दोस्तों ये फोल्डर git version control के द्वारा ignore की जाती है।
android
दोस्तों जैसा की आप जानते हे flutter के cross-platform framework हे जो की android और ios दोनों पर काम करता है और हम flutter का यूज़ करके android और ios दोनों की ऍप बना सकते है। दोस्तों यही वज़ह हे की हमे flutter project में android नाम से folder देखने को मिलता हे और इस folder में android app से related sabi files और folders होते हे जो की android devices के लिए android application बनाने के काम आते है। इसमें हम अपने android app का icon, name, fonts etc. बदल सकते है और यही से हम अपने android app में कुछ permissions add करते है और दोस्तों यह folder भी flutter project के साथ ही automatically बनता है तो दोस्तों इस folder को कभी delete नहीं करना चाहिए अन्यतः हम्हरा flutter project run नहीं होगा।
ios
दोस्तों android की तरह ios folder भी auto generate होता हे जो की flutter project बनाते समय अपने आप बनता है। दोस्तों यह folder ios app को run कराने से related important files को रखता है जिसकी मदद से हम flutter app को ios में run कराते है। ios फ़ोल्डर के अंतर्गत मुख्य फ़ाइलें Assets.xcassests फ़ोल्डर और info.plist फ़ाइल हैं। Assets.xcassests फ़ोल्डर Android में res, Folder की तरह है। इसमें Application के लिए आवश्यक गैर-प्रोग्राम योग्य resources शामिल हैं। info.plist फ़ाइल `AndroidManifest.xml फ़ाइल' के समान है। यह Application के SDK के द्वारा आवश्यक जानकारी store करता है। अगर आपको ios platform के लिए specific application बनानी है या कुछ अलग करना है तो आप इस folder में changes कर सकते है।
lib
दोस्तों यह प्रोजेक्ट का सबसे महत्वपूर्ण फ़ोल्डर है, जिसका उपयोग अधिकांश डार्ट कोड लिखने के लिए किया जाता है। दोस्तों जैसा की आप सभी जानते हे flutter project या flutter app dart language पर चलता है और उन सभी dart files को flutter default lib के folder में create करता है और हम खुद भी यहाँ पर sub-folder बना कर अपनी dart files को रख सकते हे और हमे इस folder को कभी delete नहीं करना चाहिए क्युकी यह folder अपने project का base folder होता हे और इसमें main.dart जो फाइल होती हे वो अपने flutter project को run करने के काम में आती है जिसमे main() नाम का method होता है।
test
दोस्तों यह एक basic flutter widget test है। जभी हम होने flutter project को रिलीज़ करते हे तो उससे पहले हमे अपने अप्प का test करना बहुत ही जरुरी होता हे ऐसे में जो सबसे मैन काम होता है वो होता है widget testing जिसके लिए हम flutter_test package का यूज़ करते है और इसकी मदद से हम widget test करते है। उदाहरण के लिए, आप टैप और Scroll Gestures भेज सकते हैं। आप Widget tree में child widget ढूंढने, text पढ़ने, और widgets की values के मान सही होने की पुष्टि करने के लिए भी WidgetTester का उपयोग कर सकते हैं।
.gitignore
दोस्तों .gitignore फाइल के अंदर अपने flutter project से related वो सभी फाइल्स एंड फ़ोल्डर्स के पाथ होते है जो की GitHub पर code push करते समय अपने project में ही रहते है GitHub पर नहीं जाते या git के द्वारा इन सभी files और folders को ignore कर दिया जाता है क्युकि जिन भी files और folders का इस्तमाल सिर्फ project को build करने या फिर run करने के लिए होता है और ये फाइल्स या फ़ोल्डर्स अपने code या फिर flutter project के लिए जरुरी नहीं होती ये वही files और folders होते है और इस file में जितने भी files और folders होते है वो ज्यादा तर system generate होते है।
.metadata
दोस्तों ये file आपको सभी flutter project में देखने को मिलती है इसका यूज़ हर flutter project में project से related properties को track करने लिए होती है assess capabilities and perform upgrades के लिए और ये फाइल version control के लिए भी काम में आती है और दोस्तों ये file भी git version control के द्वारा ignore की जाती है।
.packages
दोस्तों जैसा की आप सभी जाते है flutter के framework हे और ये अनेक packages और libraries के साथ आता है। .packages फाइल उन सभी packages और libraries के पाथ को store रखती है। प्रोग्रामर्स द्वारा इस फाइल में बदलाव नहीं किया जाना चाहिए
analysis_options.yaml
दोस्तों यह फ़ाइल analyzer को configures करती है, जो dart code को statically analyzes करती है। यह फाइल Errors, Warnings और lints को check करने के काम आती है। analyzer के द्वारा पहचानी गये issues को UI पार्ट पर Dart-enabled के द्वारा दिखाये जाते हैं। Analyzer को command line के द्वारा भी यूज़ किया जा सकता है, `flutter analyze` command चला कर।
pubspec.lock
दोस्तों ये file pub के द्वारा generated होती है जो की हर flutter project के अंदर होती है। इस file में वो सभी libraries या packages की entry होती हे अलग-अलग versions के साथ जो की अपने flutter project में काम आती है। अगर आप इस file को delete कर देते है तो next time flutter project run या build करते समय यह file अपने आप बन जाएगी।
pubspec.yaml
दोस्तों ये file भी हमे हर flutter project में देखने को मिलती है यह वह फ़ाइल है जिसका उपयोग हम अपने Application के लिए specific metadata और configuration जोड़ने के लिए करते हैं। जो की dart और flutter tools के द्वारा काम में लिया जाता है। दोस्तों यह file YAML language में लिखी होती है जिसको कोई भी समझ सकता है। दोस्तों जभी हमे अपने flutter प्रोजेक्ट में कुछ भी या कोई भी file, Image, Video लगानी होती है तो उसकी entry पाथ के साथ में हमे इस फाइल में करनी होती हे साथ-की-साथ इस फाइल से हम अपने flutter project का version upgrade या downgrade भी कर सकते है और हम testing के समय जो भी package यूज़ करना चाहते है उसकी भी अलग से entry करके उसको यूज़ कर सकते है।
README.md
दोस्तों यह file भी flutter project में अपने आप या auto generated फाइल होती है जिसका यूज़ अपन अपने flutter project को github पर push करने से पहले जो भी changes हमने किये होते है अपने flutter project में उसके बारे में लिखते है साथ ही इस फाइल में हम अपने project के बारे में लिखते है अपना project किस तरह से काम करता है वह इसमें आगे कितना काम करना हे और इसमें अपन ने क्या क्या काम में लिया है साथ ही आप इसमें अपना नाम और play store पर published latest ऍप की details भी लिख सकते है।
untitled.iml
दोस्तों यह file IntelliJ IDEA के द्वारा auto generated होती है और जैसा की आपको ऊपर screenshot में दिख रहा होगा हम Android Studio यूज़ कर रहे है जो की IntelliJ IDEA को ही यूज़ करता है इसलिए हुम्हे यह file देखने को मिली हे जो की अपने Flutter Project के नाम पर है। दोस्तों यह file IntelliJ IDEA के द्वारा अपने project का structure के द्वारा यूज़ की जाती हे flutter के द्वारा नहीं। दोस्तों जभी आप Android Studio में कोई Android native या फिर java का कोई project बनाते हो उसमे भी आपको ये file देखने को मिलती है। इसलिए, यह फ़ाइल मूल रूप से IntelliJ IDEA के लिए एक मेटाडेटा है जो यह जानने के लिए है कि प्रोजेक्ट की Structure कैसे करें और प्रत्येक फ़ोल्डर का उपयोग किस लिए किया जाएगा।
IML फ़ाइल एक जावा एप्लिकेशन के एंड्रॉइड, प्लगइन, जावा या मावेन घटक जैसे विकास मॉड्यूल से संबंधित जानकारी संग्रहीत करती है। यह मॉड्यूल, पथ, प्रकार, निर्भरता और ऑर्डर सेटिंग्स को संग्रहीत करता है
दोस्तों उम्मीद है की आपको मेरा ये पोस्ट पसंद आया होगा और आपके सवालों
के जवाब भी मिल गए होंगे।Flutter के file and folder का structure.
लेकिन अगर आपको अभी भी कोई प्रसन है Flutter के बारे मे तो आप मुझसे comment करके पूछ सकते है में आपके सवालो का जरूर जवाब दूंगा।
धन्यवाद।















0 Comments