पीएचपी
वेब एजेंसी » डिजिटल समाचार » PHP सर्वोत्तम अभ्यास: पैरामीटर टाइप करें

PHP सर्वोत्तम अभ्यास: पैरामीटर टाइप करें

ऐसी प्रथाएँ हैं जो हम स्कूल में सीखते हैं, जिन्हें हम आलस्य के माध्यम से अपनाते हैं, जिन्हें हम आदत से अपनाते हैं, चाहे इसे देखकर या व्यवस्थित रूप से कॉपी और पेस्ट करके। समय और अनुभव के साथ, यह स्पष्ट हो गया है कि हम पहले से अधिक स्पष्ट पद्धतियों और सिंटैक्स की तलाश कर रहे हैं। प्रत्येक भाषा के आसपास अलग-अलग रुझानों के बावजूद, हम अक्सर कोड पढ़कर यह निर्धारित करने में सक्षम होते हैं कि हमारी टीम में सी # में ऐसा सिंटैक्स है, शुद्धतावादियों को अपने सभी इंटरफेस को "आई" के साथ शुरू करने की आदत होगी। .

PHP, एक मुफ्त सिंटैक्स ... बहुत मुफ्त?

मेरे पास स्वयं कई आदतें हैं जो मुझे अपना कोड नियमित रूप से बनाने की अनुमति देती हैं। यह आसानी से अपना रास्ता खोजने के लिए, जल्दी से काम करने के लिए, लेकिन मेरे सहयोगियों के लिए डिबगिंग और मेरे कोड को पढ़ने की सुविधा के लिए भी।

इसके पैरामीटर टाइप करें, किस लिए? और यह एक अच्छा अभ्यास क्यों है?

PHP में, सिंटैक्स बहुत मुफ़्त है। मेरा मतलब इस तथ्य से बहुत मुक्त है कि भाषा बहुत क्रियात्मक नहीं है। उदाहरण के लिए जावा जैसी भाषाओं का समर्थक न होकर मुझे लगता है कि इसके पैरामीटर टाइप करने से ही हमें अपने काम में मदद मिल सकती है।

डेटा प्रकार लिखने में समय क्यों बर्बाद करें?
वास्तव में, लेकिन आइए तुरंत पेशेवरों और विपक्षों की तुलना करें।

विपक्ष में, खराब समय के बिना, मैंने जो तर्क ऊपर लिखा था, उसके अलावा मुझे एक और तर्क देना मुश्किल होगा।

पेशेवरों में, मैं एक छोटी सूची बता सकता हूं:

  1. यह मुझे अपना कोड बनाने में मदद करता है। मेरे प्रोटोटाइप (मेरे कार्य की घोषणा) में, मुझे पता है कि ऐसा और ऐसा तर्क एक होना चाहिएक्रोध करना ou int.
  2. यह मुझे तेजी से डिबग करने की अनुमति देता है। यदि आपने घोषित किया है कि आप प्रकार का तर्क चाहते हैं उपयोगकर्ता आपकी विधि में, PHP उपयोगकर्ता उदाहरण की अपेक्षा करेगा। या एक देने का प्रयास करेंक्रोध करना या निर्धारित के अलावा कोई अन्य प्रकार, PHP को तुरंत बंद कर देगा। माना जाता है कि त्रुटि जोखिम काफी "कठिन" है, लेकिन आपके बाकी के सभी विकासों में विफलता होने की संभावना नहीं है।
  3. मेरे सहकर्मी मेरे कोड को एक किताब की तरह पढ़ना पसंद करते हैं। दरअसल, जब हम जानते हैं कि setItem(…) विधि प्रकार का तर्क लेती है फू, यह मदद करता है। नहीं ?
    1
    2
    समारोह सेटआइटम($आइटम);
    समारोह सेटआइटम(फू $ आइटम);

बेशक, इस सूची में केवल 3 बिंदु हैं, लेकिन हमारा काम हमें हमेशा युद्धस्तर पर रहने और हमेशा नए रास्ते तलाशने के लिए बाध्य करता है, मैं आपको सलाह देता हूं कि आप खुद कोशिश करें और देखें।

प्रकार के साथ एक निलंबित समस्या मिश्रित

वास्तव में, मुझे फिर भी एक कमजोरी, प्रकार को स्वीकार करना चाहिए मिश्रित. भयानक आदमी और प्रतिबंधित किया जाना है। उन लोगों के लिए जिन्होंने सी/सी ++ में कोड किया है, यह एक (शून्य *) के साथ एक इंस्टेंस पॉइंटर घोषित करने जैसा है।

मैं आपको यथासंभव सलाह देता हूं कि इस प्रकार का उपयोग न करें और इसके उपयोग को सीमित करें। एक उदाहरण ?
विधि सेट पोइरेउ (मिश्रित $ पोइरो) लीक को पैरामीटर के रूप में लेती है लेकिन चूंकि यह टाइप नहीं किया गया है, आप इसे एक बेबी सील भी दे सकते हैं ... समस्याग्रस्त।

यदि आप लीक होने के लिए मजबूर करना चाहते हैं, तो आप जानते हैं कि आपको क्या करना है, और मान लें कि आपके पास एक विकृत दिमाग है, और आप सब्जियां देने में सक्षम होना चाहते हैं, मैं आपको एक इंटरफ़ेस (या कक्षा सार) का उपयोग करने के लिए आमंत्रित करता हूं ) और अपनी विधि को इस तरह परिभाषित करें।

1
समारोह setLeek(मैं सब्जी $ लीक);

मैं सहमत हूँ कि यह उदाहरण सबसे अच्छा नहीं हो सकता है, लेकिन इसमें स्पष्ट होने का गुण है।

निष्कर्ष

टाइपिंग अनिवार्य नहीं है, लेकिन जो कोई भी स्पष्ट और सफाई से काम करना चाहता है, उसके लिए यह उपलब्ध रहता है। मैं आपको इसकी जोरदार सलाह देता हूं।

शायद हमारे पास एक दिन, हमेशा बेहतर सिमेंटिक्स की हमारी खोज में मदद करने के लिए एक विधि की वापसी टाइप करने का अधिकार होगा।

★ ★ ★ ★ ★