Google ऐप इंजन के लिए परियोजना संरचना

| | | | | | | | | | | | | | | | | | | |

मैंने Google ऐप इंजन में ठीक उसी समय एक एप्लिकेशन शुरू किया था, जब यह तकनीक के साथ खेलने के लिए और एक पालतू प्रोजेक्ट पर काम करने के लिए, जिसके बारे में मैं लंबे समय से सोच रहा था, लेकिन शुरू करने के लिए कभी तैयार नहीं हुआ। परिणाम BowlSK है। हालांकि, जैसे-जैसे यह बड़ा हुआ है, और सुविधाओं को जोड़ा गया है, चीजों को व्यवस्थित रखना वाकई मुश्किल हो गया है - मुख्य रूप से इस तथ्य के कारण कि यह मेरी पहली पायथन परियोजना है, और जब तक मैंने काम करना शुरू नहीं किया तब तक मुझे इसके बारे में कुछ भी पता नहीं था।

मेरे पास क्या है:

  • मुख्य स्तर में शामिल हैं:
    • सभी .py फ़ाइलें (पैकेज को काम करने का तरीका नहीं जानते)
    • मुख्य स्तर के पृष्ठों के लिए सभी .html टेम्पलेट
  • उपनिर्देशिकाएं:
    • सीएसएस, छवियों, जेएस, आदि के लिए अलग फ़ोल्डर।
    • उपनिर्देशिका-प्रकार यूआरएल के लिए .html टेम्प्लेट रखने वाले फ़ोल्डर

उदाहरण:
http://www.bowlsk.com/ मैप टू होमपेज (डिफ़ॉल्ट पैकेज), "index.html" पर टेम्प्लेट
http://www.bowlsk.com/games/view-series.html?series=7130 ViewSeriesPage के नक्शे (फिर से, डिफ़ॉल्ट पैकेज), "games/view-series.html" पर टेम्पलेट

यह बुरा है। मैं कैसे करूँ पुनर्गठन? मेरे पास 2 विचार थे:

  • मुख्य फ़ोल्डर जिसमें: appdef, indexes, main.py?

    • कोड के लिए सबफ़ोल्डर। क्या यह मेरा पहला पैकेज होना चाहिए?
    • टेम्पलेट्स के लिए सबफ़ोल्डर। फोल्डर पदानुक्रम पैकेज हेरार्की से मेल खाएगा
    • सीएसएस, छवियों, जेएस, आदि के लिए अलग-अलग सबफ़ोल्डर्स
  • मुख्य फ़ोल्डर जिसमें एपडेफ़, इंडेक्स, मुख्य शामिल हैं .py?

    • कोड + टेम्प्लेट के लिए सबफ़ोल्डर। इस तरह मेरे पास टेम्पलेट के ठीक बगल में हैंडलर क्लास है, क्योंकि इस चरण में, मैं बहुत सारी सुविधाएँ जोड़ रहा हूँ, इसलिए एक में संशोधन का मतलब दूसरे में संशोधन है। फिर, क्या मुझे इस फ़ोल्डर का नाम पहला पैकेज होना चाहिए मेरी कक्षाओं के लिए नाम? मैं चाहता हूं कि फ़ोल्डर "src" हो, लेकिन मैं नहीं चाहता कि मेरी कक्षाएं "src.WhateverPage" हों

क्या कोई सर्वोत्तम अभ्यास है? क्षितिज पर Django 1.0 के साथ, क्या ऐसा कुछ है जो मैं अब इसके साथ एकीकृत करने की अपनी क्षमता में सुधार करने के लिए कर सकता हूं जब यह आधिकारिक जीएई टेम्पलेटिंग इंजन बन जाता है? मैं बस इन चीजों की कोशिश करना शुरू कर दूंगा, और जो दिखता है उसे देखकर बेहतर है, लेकिन pyDev का रिफैक्टरिंग समर्थन पैकेज चालों को बहुत अच्छी तरह से संभाल नहीं पाता है, इसलिए यह सब फिर से काम करने के लिए यह एक गैर-तुच्छ कार्य होगा।