मैंने सही समय पर Google App Engine में एक एप्लिकेशन शुरू किया, जब यह तकनीक के साथ खेलने और एक पालतू प्रोजेक्ट पर काम करने के लिए था, जिसके बारे में मैं लंबे समय से सोच रहा था, लेकिन शुरू करने के लिए कभी भी आस-पास नहीं हुआ। परिणाम बाउलस्क है । हालांकि, जैसा कि यह बड़ा हो गया है, और सुविधाओं को जोड़ा गया है, चीजों को व्यवस्थित रखने के लिए वास्तव में मुश्किल हो गया है - मुख्य रूप से इस तथ्य के कारण कि यह मेरी पहली अजगर परियोजना है, और जब तक मैंने काम करना शुरू नहीं किया, तब तक मुझे इसके बारे में कुछ भी नहीं पता था।
जो मेरे पास है:
- मुख्य स्तर में शामिल हैं:
- सभी .py फाइलें (पैकेज काम करने का तरीका नहीं जानता)
- मुख्य स्तर के पृष्ठों के लिए सभी। html टेम्प्लेट
- उप-निर्देशिकाएं:
- सीएसएस, चित्र, जेएस, आदि के लिए अलग फ़ोल्डर।
- फ़ोल्डर्स जो कि .html उप-प्रकार के यूआरएल के लिए टेम्पलेट्स रखते हैं
उदाहरण: होमपेज (डिफ़ॉल्ट पैकेज) के लिए
http://www.bowlsk.com/ मैप्स, "index.html" पर टेम्पलेट
http://www.bowlsk.com/games/view-series.html?series=7130 मैप्स ViewSeriesPage (फिर, डिफ़ॉल्ट पैकेज), "गेम / व्यू-सीरीज़.html" पर टेम्पलेट
वो बहुत बेकार है। मैं कैसे पुनर्गठन करूं? मेरे 2 विचार थे:
मुख्य फ़ोल्डर युक्त: appdef, अनुक्रमित, main.py?
- कोड के लिए सबफ़ोल्डर। क्या यह मेरा पहला पैकेज होना चाहिए?
- टेम्पलेट्स के लिए सबफ़ोल्डर। फ़ोल्डर उत्तराधिकारिणी पैकेज वारिस से मेल खाएगा
- सीएसएस, चित्र, js, आदि के लिए अलग-अलग सबफ़ोल्डर।
मुख्य फ़ोल्डर जिसमें appdef, indexes, main.py?
- कोड + टेम्पलेट्स के लिए सबफ़ोल्डर। इस तरह से मेरे पास टेम्पलेट के ठीक बगल में हैंडलर क्लास है, क्योंकि इस चरण में, मैं बहुत सारी विशेषताओं को जोड़ रहा हूं, इसलिए एक में संशोधन का मतलब दूसरे से संशोधन करना है। फिर से, क्या मुझे इस फ़ोल्डर का नाम अपनी कक्षाओं के लिए पहला पैकेज नाम होना चाहिए? मुझे फ़ोल्डर "src" चाहिए, लेकिन मैं नहीं चाहता कि मेरी कक्षाएं "src.WhateverPage" हों
क्या कोई सबसे अच्छा अभ्यास है? Django 1.0 के साथ क्षितिज पर, क्या ऐसा कुछ है जो अब मैं इसके साथ एकीकृत करने की क्षमता में सुधार कर सकता हूं जब यह आधिकारिक GAE अस्थायी इंजन बन जाता है? मैं बस इन चीजों की कोशिश करना शुरू करूँगा, और यह देखना कि जो बेहतर लगता है, लेकिन pyDev के रीफैक्टरिंग समर्थन पैकेज को बहुत अच्छी तरह से संभालना नहीं लगता है, इसलिए यह फिर से काम करने के लिए एक गैर-तुच्छ कार्य होगा।