Defensive Programming
defensive programming सीखिए: inputs को validate कीजिए, nulls से बचिए और स्पष्ट exceptions के साथ जल्दी विफल होना सुनिश्चित कीजिए
Defensive Programming, CoddyKit पर Java Academy का एक निःशुल्क पाठ है। यह 3 में से 3वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Java Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Java Academy पाठ्यक्रम में कुल 3 पाठ शामिल हैं।
परिचय
रक्षात्मक प्रोग्रामिंग का अर्थ है ऐसा कोड लिखना जो अमान्य इनपुट, रिक्त मान और गलत स्थितियों जैसी त्रुटियों का पहले से अनुमान लगाए। इससे समस्याओं को जल्दी पकड़ने में मदद मिलती है।
इनपुट मान्य करें
विधियों की शुरुआत में तर्कों की जाँच करें। यदि इनपुट अमान्य हो, तो गलत डेटा के साथ आगे बढ़ने के बजाय तुरंत एक अपवाद थ्रो करें।
कोड: इनपुट मान्य करना
यह विधि हर को जाँचती है और शून्य से भाग देने के बजाय एक अपवाद थ्रो करती है।
public class Main {
static int divide(int a, int b) {
if (b == 0) {
throw new IllegalArgumentException("Denominator must not be zero");
}
return a / b;
}
public static void main(String[] args) {
try {
System.out.println(divide(10, 0));
} catch (IllegalArgumentException e) {
System.out.println("Caught: " + e.getMessage());
}
}
}
रिक्त मानों से बचें
null को भेजने या लौटाने से बचें। इसके बजाय, NullPointerExceptions की संभावना कम करने के लिए खाली संग्रह, डिफ़ॉल्ट मान या वैकल्पिक मान का उपयोग करें।
कोड: रिक्त मान की जाँच
यहाँ हम null की जाँच करते हैं और बाद में NullPointerException होने देने के बजाय एक अपवाद थ्रो करते हैं।
public class Main {
static String upper(String s) {
if (s == null) {
throw new IllegalArgumentException("String must not be null");
}
return s.toUpperCase();
}
public static void main(String[] args) {
try {
System.out.println(upper(null));
} catch (IllegalArgumentException e) {
System.out.println("Caught: " + e.getMessage());
}
}
}
कोड: तुरंत विफल होना
तुरंत विफल होना: समस्याओं को स्पष्ट त्रुटियों के साथ तुरंत पहचानें। इससे बाद में होने वाले भ्रमित करने वाले बग रुकते हैं।
public class Main {
static int[] makeArray(int size) {
if (size < 0) {
throw new IllegalArgumentException("Size must be non-negative");
}
return new int[size];
}
public static void main(String[] args) {
try {
makeArray(-5);
} catch (IllegalArgumentException e) {
System.out.println("Caught: " + e.getMessage());
}
}
}
रक्षात्मक प्रोग्रामिंग की जाँच
त्वरित जाँच: रक्षात्मक प्रोग्रामिंग का एक मुख्य उद्देश्य क्या है?
पुनरावृत्ति
पुनरावृत्ति: रक्षात्मक प्रोग्रामिंग इनपुट को मान्य करती है, रिक्त मानों से बचती है और तुरंत विफल होती है। इससे प्रोग्राम अधिक सुरक्षित और डिबग करने में आसान बनते हैं।
एआई शिक्षक के साथ Java सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 104
- पाठ
- 374
अक्सर पूछे जाने वाले प्रश्न
क्या “Defensive Programming” पाठ निःशुल्क है?
हाँ—“Defensive Programming” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Java Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Java Academy पाठ्यक्रम में कुल 3 पाठ शामिल हैं।
“Defensive Programming” में मैं क्या सीखूँगा?
defensive programming सीखिए: inputs को validate कीजिए, nulls से बचिए और स्पष्ट exceptions के साथ जल्दी विफल होना सुनिश्चित कीजिए आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Java Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Java Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Java Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 3 में से 3वाँ पाठ है।
“Defensive Programming” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Java Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Java Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- Exceptions Throw करना और Custom Exceptions
- try-with-resources (AutoCloseable)
- Defensive Programming