2010-06-16 15 views
10

में कक्षाओं का उपयोग करना आवश्यक है, तो मैं एक वर्डप्रेस प्लगइन डेवलपर हूं। मैंने कई प्लगइन्स का स्रोत देखा और कई प्लगइन उन में "वर्ग" का उपयोग करते हैं और कुछ कक्षाओं के बिना।जब PHP

"wp-postratings" जैसे कई विशाल कोडित प्लगइन्स कक्षाओं का उपयोग नहीं करते हैं और कुछ छोटे प्लगइन्स कक्षाओं का उपयोग करते हैं।

संपादित करें: चूंकि कक्षाओं में निजी, सार्वजनिक और संरक्षित पहुंच विनिर्देशक हैं, मुझे सुरक्षा का स्वाद लगता है क्या इससे सुरक्षा बढ़ जाती है?

PHP के अलावा अन्य भाषाओं में कक्षाओं की आवश्यकता होती है?

कक्षाओं का उपयोग करना अनिवार्य है?

मुझे कुछ सुझाव चाहिए।

+2

आपके डेवलपर जीवन में एक दिन आएगा, जब आपको कुछ जटिल और कार्यों की आवश्यकता होगी, तो इसका नाम कक्षाएं होगी! –

उत्तर

17

नहीं, यह अनिवार्य नहीं है, न ही यह प्रति सुरक्षा को बढ़ाता है। यह प्रोग्रामिंग के सिर्फ different style है।

अधिकांश प्रोग्रामर इस बात से सहमत होंगे कि ऑब्जेक्ट उन्मुख प्रोग्रामिंग (कक्षाओं) में मॉड्यूलर प्रोग्रामिंग (फ़ंक्शंस) पर कई फायदे हैं। लेकिन यह एक धार्मिक बहस है जो मैं नहीं लेना चाहता हूं :)

+0

erm, वास्तव में आपको ** ओओ को लागू करने के लिए ** कक्षाओं की आवश्यकता नहीं है - यह सिर्फ – symcbean

+0

@ सिम्बाबीन को आसान बनाता है: मैंने हमेशा सोचा कि कक्षा ओओपी का एक मौलिक हिस्सा है। क्या आप कक्षाओं के बिना ओओपी का उदाहरण दे सकते हैं? –

+1

@ फ़ेलिक्स - आप कक्षाओं और फ़ंक्शन पॉइंटर्स का उपयोग कर सी जैसी भाषा में कक्षाओं के कई पहलुओं को अनुकरण कर सकते हैं।आप अपने रुखों में यूनियनों या चालाक संरेखण का उपयोग करके विरासत को कुछ हद तक अनुकरण भी कर सकते हैं। आप कई सी एपीआई में ओओ जैसा चीजें भी देखते हैं। WIN32 एपीआई में हैंडल के उपयोग की तरह, जहां आपके पास विभिन्न प्रकार के हैंडल हैं, ऑपरेशंस जो केवल कुछ प्रकार के काम करते हैं, और ऑपरेशन जो सभी प्रकार के हैंडल आदि पर काम करते हैं, –

2

यह स्पष्ट रूप से तकनीकी आवश्यकता नहीं है, लेकिन यदि आपकी प्लगइन की कोड संरचना 2 या अधिक कक्षाओं में वर्णित की जा सकती है, तो मैं कहूंगा OO। इसमें सुरक्षा के साथ कुछ भी नहीं है लेकिन यह आपके कोड को क्लीनर और बनाए रखने में आसान बना सकता है।

1

जब तक आपके पास कोई अच्छा कारण न हो, मैं हमेशा कक्षाओं का उपयोग करने की सलाह देता हूं। उनका उपयोग करने के लिए कोई वास्तविक नकारात्मक पक्ष नहीं है।

5

आपको Object Oriented Programming के बारे में पढ़ना चाहिए। कक्षाओं का उपयोग करना अनिवार्य नहीं है लेकिन यह आपके कोड के कोड संगठन और रखरखाव को आसान बना सकता है।

+0

हाल ही में मैंने एक वेब ऐप विकसित करने में एक ट्यूटोरियल देखा। यह लॉगिन और पंजीकरण प्रणाली के लिए कक्षाओं का उपयोग करता है। तो कक्षाएं सुरक्षा में वृद्धि? –

+0

@ आकाश चक्रवर्ती: सुरक्षा में वृद्धि नहीं हुई है। लेकिन वे राज्यों और समूह की कार्यक्षमता का ट्रैक रखना आसान बनाते हैं। उदाहरण के लिए, 'उपयोगकर्ता' श्रेणी रखना बहुत आसान है जिसमें वर्तमान उपयोगकर्ता की सारी जानकारी बहुत सारी वैश्विक चर का उपयोग करने के लिए होती है। –

+3

कक्षाओं (या नहीं) के उपयोग से सुरक्षा के साथ कोई लेना-देना नहीं है, और आपके प्रोग्राम को पुन: प्रयोज्य और समझने में आसान कोड के टुकड़ों में व्यवस्थित करने के साथ सबकुछ करना है। –

1

कक्षाओं का उपयोग करना अनिवार्य नहीं है, यह आपको और अन्य डेवलपर की मदद करता है जो इसे बेहतर ढंग से समझने के लिए आपके कोड को संशोधित करेगा।
मेरी राय में जब भी आवश्यक हो, आपको कक्षाओं का उपयोग करना चाहिए।

2

जैसा कि एरिक ने पहले ही कहा है, यह अनिवार्य नहीं है, और न ही यह सुरक्षा प्रति-वृद्धि में वृद्धि करता है।

हालांकि, यह एक बड़ा फायदा यह है कि यह उपसर्ग को सरल बनाता है और गलती से एक कार्य को फिर से शुरू करने में त्रुटि उत्पन्न करता है।

मैं हमेशा ओओपी का उपयोग कर सकता हूं जब मैं कर सकता हूं।

0

आप ऑब्जेक्ट ओरिएंटेड फैशन में कोड लिखने के लिए नहीं हैं। आप PHP में प्रक्रियात्मक कोड भी लिख सकते हैं। कई परियोजनाएं करते हैं, ड्रूपल, अगर मुझे गलत नहीं लगता है तो उनमें से एक है।

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