जवाबों:
मुझे एक हाइब्रिड पसंद है:
Name : Hamt
Version : 0.1.0
Cabal-Version : >= 1.2
License : BSD3
Author : Jason Baker
जो अनिवार्य रूप से समसामयिक लाइनों के अपवादों के साथ नंबर 2 है जो कि आसपास की रेखाओं से अधिक लंबी है - बहुसंख्यक लाइनों को दूर तक फैलने से रोकने के लिए।
यहाँ सूची लेआउट के लिए एक और भिन्नता है, दोनों अनुभव के आधार पर और साथ ही एक विश्वविद्यालय पाठ्यक्रम से शिक्षा जो मैंने मानव-कंप्यूटर-इंटरैक्शन और कई पुस्तकों पर ली है जो मैंने (G) UI डिज़ाइन और ग्राफिक डिज़ाइन पर पढ़ी हैं। मैं इसे संवादों के लिए उपयोग करता हूं, और जब मेरे पास सीएसएस के लिए ऊर्जा / समय होता है, (आमतौर पर कोड के लिए नहीं)।
Name : Hamt
Version : 0.1.0
Cabal-Version : >= 1.2
License : BSD3
Author : Jason Baker
अन्य सभी की तरह, इसके पेशेवरों और विपक्ष हैं।
पेशेवरों:
विपक्ष:
HTH
मैं पहले वाले को पसंद करता हूं, लेकिन टैब के बिना (जो मुझे लगता है कि रिक्त स्थान हैं); इसके बजाय सिर्फ एक खाली जगह। मेरे लिए यह पढ़ना आसान है जब डेटा "समान" नहीं है, जैसा कि दिए गए मामले में है। यह "इस तरह के डेटा को संपादित करते समय" को और अधिक कठिन बना देता है, "जब आप एक पंक्ति को गलत करते हैं", यानी जब आपके पास तीन पंक्तियाँ होती हैं, तो संस्करण संख्याएँ। और फिर एक को संपादित करते समय, आप गलती से एक और जगह में संपादित करते हैं।
जब डेटा समान होता है, हालांकि, यह आपके दूसरे उदाहरण के रूप में इसे कॉलम में डालने के लिए सही समझ में आता है (केवल वहां यह समान नहीं है, लेकिन आपको बिंदु मिलता है)।
दुर्भाग्य से एक शैली का प्रश्न है, यह बहुत व्यक्तिपरक है और आपके पास संभवतः कई परस्पर विरोधी परिणाम होंगे। इसके अलावा, उपयोग करने की शैली TAB या रिक्त स्थान के आपके उपयोग पर बहुत अधिक निर्भर करती है।
मेरे दो सेंटों के लिए, मैं दूसरे संस्करण की भिन्नता पसंद करता हूं। मुझे यह सबसे अच्छा लगता है:
Name : Hamt
Version : 0.1.0
Cabal-Version : >= 1.2
License : BSD3
Author : Jason Baker
यह सबसे पठनीय और प्रयोग करने में आसान संस्करण है जिसे मैंने आजमाया है। केवल वास्तविक नकारात्मक पक्ष यह है कि मुझे यह पता लगाना है कि सबसे चौड़ा क्षेत्र क्या है, और कभी-कभी उन सभी का विस्तार करने के लिए अंत होता है जब एक बहुत चौड़ा होता है (यह आमतौर पर केवल सीएसएस के साथ होता है)। हालाँकि कुछ बिंदु हैं जिन पर विचार करने की आवश्यकता है।
सबसे पहले, मैं आमतौर पर रिक्त स्थान के विपरीत TAB को पसंद करता हूं, हालांकि वास्तविक TAB सेटिंग बदलती रहती है; उदाहरण के लिए, मैं C (++) कोड के लिए 4-स्पेस TABs या HTML और Pascal या Assembler कोड के लिए 2-स्पेस TABs का आदी हूं, जबकि CSS जैसी कुछ चीजों के लिए, मुझे TAB चौड़ाई के लिए कोई वरीयता नहीं है। यह भिन्नता चीजों को काफी उलझा देती है, लेकिन तब मैं संपादक का उपयोग अपनी जटिलताओं में करता हूं। कुछ संपादकों ने आपको प्रति-भाषा TAB सेटिंग्स सेट करने दी हैं, लेकिन कुछ नहीं (यहां तक कि कुछ अलग प्रोफाइल हैं)।
आप रिक्त स्थान के पक्ष में TABs द्वारा इस जटिलता से बच सकते हैं। चूंकि कोड आमतौर पर एक निश्चित-चौड़ाई वाले फ़ॉन्ट में होता है, इसलिए रिक्त स्थान का उपयोग करना ठीक काम करता है, जबकि यदि आप फॉर्म, रिज्यूम, या अन्य गैर-कोड पाठ में फ़ील्ड स्वरूपित कर रहे हैं और एक आनुपातिक फ़ॉन्ट का उपयोग कर रहे हैं, तो आपको चीजों को संरेखित रखने के लिए TAB की आवश्यकता होगी ।
मैं सामान्य रूप से TAB को पसंद करता हूं क्योंकि फिक्स्ड-चौड़ाई कोड के साथ भी, मुझे लगता है कि प्रत्येक TAB के लिए कई स्थानों से कर्सर ले जाना निराशाजनक है। मुझे याद है कि पुराने बोरलैंड IDE में TAB (विशेषकर व्हॉट्सएप की पूरी लंबाई) के माध्यम से दो, चार, आदि स्थानों के रूप में एकल इकाई के रूप में कर्सर करने का विकल्प था। इसने कर्सर नेविगेशन को आसान और तेज़ बनाते हुए TAB को रिक्त स्थान के रूप में सम्मिलित करना व्यावहारिक बना दिया। दुर्भाग्य से मैंने कोई आधुनिक, विंडोज एडिटर नहीं देखा है जो ऐसा कर सके।
अंत में, अन्य लोग आपके कोड का उपयोग कर रहे होंगे या नहीं यह स्टाइल की पसंद में एक बड़ा कारक है। मैं आमतौर पर केवल एक ही हूं जो मेरे कोड का उपयोग करता है, इसलिए मैं अपने स्वाद के अनुसार सब कुछ प्रारूप कर सकता हूं बिना संपादकों या दूसरों की सेटिंग के। यदि आप दूसरों के साथ काम कर रहे हैं, तो आपको उन्हें ध्यान में रखना होगा क्योंकि उन्हें आपको विचार करने की आवश्यकता होगी।
सारांश में, पठनीयता अच्छी और बहुत वांछनीय है, हालांकि निर्णय लेने के दौरान आपको और अन्य लोगों को जो कोड का उपयोग करने की आवश्यकता होती है, वे सेटिंग्स और संपादकों के लिए महत्वपूर्ण होंगे। यदि आप अकेले हैं, तो आप केवल उस प्रारूप का उपयोग कर सकते हैं जो सबसे अधिक पठनीय है। आपको इसका उपयोग करने के लिए उपयोग करने की आवश्यकता हो सकती है, लेकिन यह लंबे समय में भुगतान करने की संभावना होगी, खासकर जब आपको थोड़ी देर पहले लिखे गए कोड पर वापस आना होगा: पठनीयता उतनी ही महत्वपूर्ण है जितना कि कोड क्या करता है यह समझने में टिप्पणी। यदि आप दूसरों के साथ काम करते हैं, तो आप टीम द्वारा उपयोग के लिए कुछ प्रकार के डिज़ाइन गाइड सेट करने के लिए एक साथ काम करना चाहेंगे।
:%s/\([^ ]\) \+/\1 /g