मैं वर्तमान में Effective Perl Programming (2 संस्करण) पढ़ रहा हूं। मैं कोड के एक टुकड़े में आया हूं जिसे खराब लिखा गया था, लेकिन मुझे अभी तक समझ में नहीं आया कि इसके बारे में क्या बुरा है, या इसे कैसे सुधारना चाहिए। यह अच्छा होगा अगर कोई मुझे इस मामले की व्याख्या कर सके।डीबीआई को सीधे एक्सेस करने में क्या गलत है?
यहाँ प्रश्न में कोड है:
sub sum_values_per_key {
my ($class, $dsn, $user, $password, $parameters) = @_;
my %results;
my $dbh =
DBI->connect($dsn, $user, $password, $parameters);
my $sth = $dbh->prepare(
'select key, calculate(value) from my_table');
$sth->execute();
# ... fill %results ...
$sth->finish();
$dbh->disconnect();
return \%results;
}
उदाहरण अपने कोड (पी। 324/325) के परीक्षण पर अध्याय से आता है। जिस वाक्य ने मुझे कोड को बेहतर बनाने के बारे में सोचते हुए छोड़ा है, वह निम्नलिखित है:
चूंकि कोड खराब लिखा गया था और सीधे डीबीआई तक पहुंचता है, तो आपको असली के लिए खड़े होने के लिए नकली डीबीआई ऑब्जेक्ट बनाना होगा चीज़।
शायद मुझे यह समझ में नहीं आया है कि पुस्तक अब तक मुझे सिखाने की कोशिश कर रही है, या मैंने उपर्युक्त कोड के बारे में क्या बुरा व्यवहार समझने के लिए प्रासंगिक अनुभाग छोड़ दिया है ... अच्छा, अग्रिम धन्यवाद तुम्हारी मदद के लिए!
+1 मैं भी यह जवाब सुनना चाहता हूं। मैं यहां कुछ भी "गरीब" नहीं लग रहा हूं ... –
अब तक दिए गए सभी उत्तरों ने इस मामले को बहुत अच्छी तरह से समझाया है, इसलिए आपके त्वरित प्रतिक्रियाओं के लिए सभी को धन्यवाद! मैं वास्तव में बहुत अंधेरा रहा हूं ... – canavanin