ठीक है मेरे पास 2 वास्तव में बड़ी कक्षाएं> 1k लाइनें हैं जिन्हें मैंने वर्तमान में कई में विभाजित किया है। फिर वे एकाधिक विरासत का उपयोग कर पुनः संयोजित हो जाते हैं। अब मैं सोच रहा हूं, अगर ऐसा करने के लिए कोई क्लीनर/बेहतर और पाइथोनिक तरीका है। उन्हें पूरी तरह फैक्टरिंग के परिणामस्वरूप self.otherself.do_something
कॉल की अंतहीन मात्रा होगी, जो मुझे नहीं लगता कि यह तरीका किया जाना चाहिए।पायथन क्लास डिज़ाइन - समूह की कार्यक्षमता के लिए कई वर्गों में बड़ी कक्षाओं को विभाजित करना
from gui_events import GUIEvents # event handlers
from gui_helpers import GUIHelpers # helper methods that don't directly modify the GUI
# GUI.py
class GUI(gtk.Window, GUIEvents, GUIHelpers):
# general stuff here stuff here
एक समस्या यह है इस Pylint मुझे अरबों देने शिकायत कर रहा है का परिणाम "नहीं कहा init" है कि/"अपरिभाषित विशेषता"/"विशेषता पहुँचा:
चीज़ें यहाँ स्पष्ट करने के लिए क्या यह वर्तमान की तरह लग रहा है परिभाषा से पहले "चेतावनियां।
संपादित करें:
आप कोड पर एक नज़र लेने के लिए, अपने आप को क्या पूरी बात वास्तव में है के बारे में एक तस्वीर बनाने के लिए कर सकते हैं।
http://github.com/BonsaiDen/Atarashii/tree/next/atarashii/usr/share/pyshared/atarashii/
कृपया ध्यान दें, मैं वास्तव में इस बात संभव के रूप में सूखा रखने के लिए कुछ भी कोशिश कर रहा हूँ, मैं कोड दोहराव, केवल एक चीज यह शिकायत के बारे में आयात कर रहे हैं पता लगाने के लिए pylint उपयोग कर रहा हूँ।
कुछ जोड़ नहीं है। सवाल कहता है "> 1k लाइन प्रत्येक"। भंडार में वास्तविक कोड 356 लाइनें है। कृपया प्रश्न या लिंक को ठीक करें। –
आपको समेकित करने की आवश्यकता है: http://github.com/BonsaiDen/Atarashii/blob/next/atarashii/usr/share/pyshared/atarashii/gui.py http://github.com/BonsaiDen/Atarashii/blob/ अगली/atarashii/usr/share/pyshared/atarashii/gui_events.py और http://github.com/BonsaiDen/Atarashii/blob/next/atarashii/usr/share/pyshared/atarashii/gui_helpers.py क्योंकि मैंने पहले से ही विभाजित किया है सामान (वर्तमान में केवल 968 लाइन है, क्योंकि मैंने हाल ही में कुछ फाइलों को अन्य फाइलों पर ले जाया है)। दृश्य * फ़ाइलों को भी देखें, जो एक साथ 1,1k लाइनें हैं। –