2009-08-19 22 views
19

मैं मुख्य रूप से एक सी #/नेट प्रोग्रामर हूं, लेकिन hobby project जिसे मैं लेने वाला हूं, में सी कोडिंग शामिल होगी।अच्छा, आधुनिक सी कोड कैसा दिखता है?

मुझे पता है कि वहाँ सी कोड का एक टन है, लेकिन अगर आप भाषा के साथ "बड़े" नहीं होते हैं तो एक बुरी तरह से संरचित परियोजना से अच्छी तरह से संरचित सी परियोजना को अलग करना मुश्किल है। क्या कोई मुझे एक नई, गैर तुच्छ (लेकिन विशाल नहीं) परियोजना की ओर इशारा कर सकता है जिसे सी कोड को कैसे व्यवस्थित किया जाए, इसका एक अच्छा उदाहरण माना जाता है?

संपादित

आप एक परियोजना बंद हो जाए तो, शब्दों को आप कैसे लगता है कि एक सी परियोजना संरचित किया जाना चाहिए में चर्चा करने के लिए स्वतंत्र लग रहा है।

उत्तर

14

डेव हैन्सन के C Interfaces and Implementations एक बहुत अच्छी तरह से तैयार है कोड की लगभग 7000 लाइनों की पुस्तकालय। यदि आप इसे बर्दाश्त कर सकते हैं तो पुस्तक बहुत बढ़िया है।

Lua प्रोग्रामिंग भाषा और पुस्तकालयों के कार्यान्वयन सी कोड की 17,000 लाइनों है और बहुत अच्छी तरह से किया, लेकिन काफी — संकलनकर्ता और कचरा कलेक्टरों स्थानों में परिष्कृत है इसलिए उन क्षेत्रों में पृष्ठभूमि के बिना समझना आसान नहीं हैं। लेकिन कोड खूबसूरती से इंजीनियर है।

गिट 125,000 से अधिक लाइनों की रेखा है। मैं अनुशंसा नहीं कर सकता कि कोई भी इसे सी कोड इंजीनियर करने के उदाहरण के रूप में अध्ययन करेगा। बस डिजाइन और सार्वजनिक इंटरफेस, कार्यान्वयन अकेले रहने दें, — को समझना मुश्किल है, यही कारण है कि बहुत सारे गिट ट्यूटोरियल हैं।

+0

लुआ के लिए +1। मैं सुखद आश्चर्यचकित था जब मैंने यह देखने के लिए हुड के नीचे एक नज़र डाली कि क्या यह एक एम्बेडेड सॉफ्टवेयर प्रोजेक्ट के लिए स्वीकार्य प्रदर्शन और गुणवत्ता के अनुसार होगा। – patros

+1

गिट में लगातार शैली और संरचना है इसलिए यह सीखने के लिए अच्छी सामग्री है। आपको इसकी हर पंक्ति तैयार करने की ज़रूरत नहीं है! –

+0

@ नॉर्मन ऐसा लगता है कि पुस्तक सफारी पर उपलब्ध है। मैंने इसे छोड़ दिया होगा क्योंकि यह 13 साल का है (माना जाता है कि यह "आधुनिक कोड" नहीं होगा), लेकिन मैं इसे आपकी सिफारिश पर देख लूंगा; धन्यवाद! –

3

यह पूरी तरह से अचूक है, लेकिन मैंने सुना है कि SQLite प्रोजेक्ट को अच्छा कोड माना जाता है।

+0

यह कम से कम एक अच्छा एपीआई है :) – Skurmedel

5

चेक बाहर Git स्रोत कोड: http://github.com/git/git/tree/master

+8

125,000 लाइनों को एक नए सी प्रोग्रामर के लिए कोड? क्या आपको यकीन है? –

+4

यह सब संरचना और शैली के बारे में है। हालांकि आपको हर पंक्ति को पढ़ने की ज़रूरत नहीं है। –

6

मैं विचार स्टीव डेकोर्ट के IO language कार्यान्वयन स्वच्छ और व्यावहारिक आधुनिक दिन के लिए एक अच्छा उदाहरण होने के लिए सी

+0

मैं सहमत हूं, यह वास्तव में अच्छा कोड है। मुझे यह पसंद है और मैं इसे समझ सकता हूं ;-) – Friedrich

1

निम्नलिखित पुस्तक (कोड उदाहरण के साथ) को कम कर सकता है Kernighan और रिची

जवाब आपका प्रतिमान थोड़ा सा बदलाव:

स्टीफन कोचन

सी में

प्रोग्रामिंग, तीसरा संस्करण

http://www.kochan-wood.com

1

C: A reference Manual By Harbison and Steele http://ecx.images-amazon.com/images/I/51R2P4EB1YL._SL500_AA240_.jpg

C: A Reference Manual उदाहरण कोड के उपयोग की एक किस्म, स्टैंडर्ड सेल्सियस के लिए केंद्रित कार्यान्वयन के साथ होता है; संभवतः सी स्टडी के साथ देखने के लिए एक निश्चित दस्तावेज।

1

एसवीएन परियोजना पूरी तरह से सी में लिखी जाती है और यह अच्छी तरह से बनाए रखा जाता है: लगातार स्टाइल, अच्छी टिप्पणियां, कम कोड गंध। मैं perusing की सिफारिश करता हूं।

संबंधित मुद्दे