आज मैंने जिज्ञासा से बाहर कुछ खुली स्रोत परियोजनाओं का चेकआउट किया। तो थोड़ी देर बाद मैं ओटीटीडी (http://www.openttd.org/) के कोड को देख रहा था, मुझे नहीं पता था कि प्रोजेक्ट को कहां देखना है या कैसे समझना है। मुझे पता है कि आप एक या दो दिनों में ऐसी बड़ी परियोजनाओं से परिचित नहीं हो सकते हैं, लेकिन आप लोग ऐसी चीजों को कैसे संभालेंगे जहां आप शुरू करते हैं, आप आदिटर इत्यादि के लिए क्या देखते हैं ..परियोजनाओं से परिचित होना
उत्तर
ओपनटीटीडी के स्रोत के लिए डॉक्स: http://docs.openttd.org/, वे सहायक होंगे।
इसके अलावा, देव विकी: http://wiki.openttd.org/Development।
परिचित कैसे हो?
सबसे पहले, संकलन करने का प्रयास करें। इसे अपने मंच पर संकलित करें और सुनिश्चित करें कि यह सही ढंग से चल रहा है।
फिर, एक बग या कुछ करने वाली सूची से कुछ चुनें और इसे लागू करने का प्रयास करें, या केवल गेम खेलें और कुछ सरल जोड़ने/बदलने के बारे में सोचें। बेशक आप असफल हो सकते हैं और अपना काम बदलना चाहते हैं, लेकिन प्रत्येक प्रयास एक परियोजना की संरचना को समझने में एक कदम होगा।
मेरे लिए, संकलन भाग सबसे कष्टप्रद हिस्सा है। मुझे लगता है कि ऐसा इसलिए है क्योंकि मैं विंडोज़ पर हूं :-) मैंने कभी भी सोचने और लोगों को स्पैमिंग के बिना स्क्रैच से कुछ संकलित करने में कामयाब रहा है। लेकिन मैं जल्दी से कई परियोजनाओं में उपयोग करता हूं जिन्हें संकलित करने की आवश्यकता नहीं है, जैसा कि PHP या पायथन या जावास्क्रिप्ट में लिखा गया है।
मैंने अभी कोड के साथ कुछ किया है। कुछ महत्वपूर्ण स्थिरांक बदल गए :-) प्लगइन लिखना। जो कुछ। और एक दिन मुझे यह समझ गया कि अब, अगर मैं अंक ट्रैकर से लगभग कोई भी कार्य चुनता हूं, तो मैं कम से कम समस्या को कहां ढूंढ सकता हूं।
यदि आप केवल कोड पढ़ रहे हैं, तो आप इसे अच्छी तरह से नहीं जानते! यहां तक कि (अच्छी) कथा पुस्तकें उन्हें बार-बार पढ़कर पूरी तरह से समझा नहीं जा सकता है।
कई बार यह बहुत सारे स्क्रैच पेपर, या तेजी से आरेखण उपकरण के कुछ रूपों में मदद करता है - जैसे ही आप चीजों में आते हैं, स्केच करते हैं कि वे एक-दूसरे से कैसे जुड़े होते हैं। समय के साथ आप समझ लेंगे कि चीजें कैसे रखी जाती हैं और क्या विज्ञापन-हॉक क्लास आरेख (लेकिन अधिक मुफ्त) की तरह, किस तरह से बातचीत करता है।
एक प्रारंभिक बिंदु चुनें जहां कहीं आप पहचान सकते हैं: शायद यह उपयोगकर्ता इनपुट प्रसंस्करण है, शायद यह प्रोग्राम के लिए प्रारंभिक अनुक्रम है - और वहां से निष्पादन के प्रवाह का पता लगाने के लिए कि चीजें कैसे होती हैं।
उम्मीद है कि स्रोत कोड में सहायक टिप्पणियां थीं - शायद ओपनटीटीडी के मामले में, डॉक्सिजन-स्टाइल टिप्पणियां, ताकि आप इसके लिए set of docs प्राप्त कर सकें।
कोड डाउनलोड करें।
इसे अपने पसंदीदा आईडीई में सेट करें ताकि यह बनाता है और चलता है।
) मुख्य की शुरुआत (
डिबगर :)
आप कैसे चीजें एक साथ रखा जाता है के लिए एक अच्छा लग रहा है देता में के माध्यम से निकलते कुछ गुणवत्ता समय व्यतीत पर एक ब्रेकपाइंट सेट करें, जहां निर्भरताएं हैं, और जब आप ऐप में चीजें करते हैं तो क्या होता है।
एक और अच्छी रणनीति है जिसका उपयोग आप सॉफ्टवेयर के कुछ टुकड़ों से शुरू करना चाहते हैं, यहां तक कि आप जिस पर भरोसा करते हैं। फिर सबसे कष्टप्रद बग पाएं, और इसे ठीक करें।
- 1. क्या कई परियोजनाओं में एकाधिक टीएफएस कार्यक्षेत्र होना चाहिए?
- 2. SilverStripe से परिचित? आपकी राय/इंप्रेशन क्या हैं?
- 3. एमपी 4 डेटा संरचना से परिचित कोई भी?
- 4. एक अनंत सूची की परिचित समझ
- 5. परियोजनाओं
- 6. एकाधिक परियोजनाओं से एकल असेंबली
- 7. गिट सबमिशन गड़बड़: गिट से परिचित नहीं डेवलपर्स के साथ गिट submodules का उपयोग कैसे करें?
- 8. परियोजनाओं पायथन
- 9. Emacs सत्र/परियोजनाओं/विंडो प्रबंधन
- 10. 100 से अधिक परियोजनाओं के साथ समाधान
- 11. स्वचालित रूप से कई सामान्य QtCreator परियोजनाओं
- 12. बड़ी परियोजनाओं से कोड आंकड़े प्राप्त करना
- 13. कई परियोजनाओं
- 14. बड़े कोडबेस से परिचित होने का सबसे अच्छा तरीका क्या है?
- 15. सरल चैट बॉट परियोजनाओं
- 16. System.Globalization.CultureNotFoundException परियोजनाओं
- 17. कॉन्फ़िगर Pylint परियोजनाओं
- 18. समझौता _tmain परियोजनाओं
- 19. कई पायथन परियोजनाओं/वर्चुअलएएनएस
- 20. मैं अपने सी # परियोजनाओं
- 21. हाइबरनेट, आलसी होना या आलसी होना नहीं?
- 22. परियोजनाओं के बीच बातचीत
- 23. क्या कोई जैक्सर से परिचित है? मैं पेशेवरों और विपक्ष की तलाश कर रहा हूं
- 24. क्या आप एचटीएमएल में <ins> टैग से परिचित हैं?
- 25. मार्कअप अच्छी तरह से गठित होना चाहिए
- 26. यह आसान होना चाहिए (http यूआरएल से)
- 27. गिट से ग्रहण से कई मेवेन परियोजनाओं को आयात करना
- 28. सबसे बड़ा अजगर परियोजनाओं
- 29. नामकरण परंपरा और परियोजनाओं
- 30. mod_wsgi और कई परियोजनाओं
जो भी आप कर रहे हैं, अपने नोट्स का लॉग रखना अच्छा है (आपके द्वारा चलाए गए कमांड लाइनों, आपके द्वारा किए गए कार्यों, आपके विचारों आदि), न केवल अगर आप भूल जाते हैं तो यह आपकी मदद करेगा, लेकिन आप भी उन्हें परियोजना के विकी में योगदान दें या अपने निष्कर्षों के बारे में अपने ब्लॉग पर एक पोस्ट करें। – HostileFork