CBSE कक्षा 12 कंप्यूटर विज्ञान
अध्याय: 3
1. संगणनात्मक चिंतन और प्रोग्रामिंग - 2
पायथन का पुनरावलोकन · फ़ंक्शन · अपवाद प्रबंधन · फ़ाइल प्रबंधन · स्टैक
- कक्षा 12 के लिए पायथन रिवीजन: कक्षा 11 की सारी बातें एक जगह – कक्षा 12 का पायथन कक्षा 11 पर टिका है। आपको टोकन (कीवर्ड, आइडेंटिफ़ायर, लिटरल, ऑपरेटर, पंक्चुएटर), डेटा प्रकार (int, float, bool, str, list, tuple, dict), कौन-से प्रकार अपनी जगह पर बदल सकते हैं (म्यूटेबल) और कौन नहीं (इम्यूटेबल), ऑपरेटरों का क्रम, if-elif-else, for और while लूप, break-continue, स्ट्रिंग स्लाइसिंग और लिस्ट, ट्यूपल, डिक्शनरी के मुख्य मेथड आने चाहिए।
- पायथन में फ़ंक्शन: अपनी मशीनें ख़ुद बनाइए – फ़ंक्शन एक नाम वाला कोड-खंड है जो एक काम करता है। पायथन में बिल्ट-इन फ़ंक्शन (print, len), मॉड्यूल के फ़ंक्शन (math.sqrt, random.randint) और def से बने यूज़र-डिफ़ाइंड फ़ंक्शन होते हैं। कॉल में भेजे मान आर्ग्युमेंट हैं; उन्हें पकड़ने वाले नाम पैरामीटर हैं। आर्ग्युमेंट स्थान के अनुसार (positional), नाम से (keyword) या डिफ़ॉल्ट मान से आते हैं। return मान वापस भेजता है। पायथन ऊपर से नीचे चलता है, कॉल पर फ़ंक्शन में कूदता है और फिर लौट आता है। फ़ंक्शन के अंदर बने नाम लोकल, बाहर बने ग्लोबल होते हैं।
- पायथन में अपवाद प्रबंधन: गलती पकड़ो, प्रोग्राम चलता रखो – सिंटैक्स एरर प्रोग्राम को चलने से पहले ही रोक देता है। अपवाद (exception) वह गलती है जो चलते समय होती है, जैसे शून्य से भाग या न मिलने वाली फ़ाइल खोलना। प्रबंधन न हो तो प्रोग्राम रुक (क्रैश) जाता है। try और except से पायथन अपवाद पकड़ता है और आपका बचाव वाला कोड चलाता है। else तब चलता है जब कोई अपवाद न हो; finally हर बार चलता है। raise से आप ख़ुद अपवाद फेंक सकते हैं।
- पायथन में फ़ाइल प्रबंधन: ऐसा डेटा सहेजें जो टिके – प्रोग्राम ख़त्म होते ही वेरिएबल मिट जाते हैं; फ़ाइलें डेटा डिस्क पर रखती हैं। टेक्स्ट फ़ाइल पंक्तियों में अक्षर रखती है, बाइनरी फ़ाइल कच्चे बाइट (जैसे pickle किए पायथन ऑब्जेक्ट), और CSV फ़ाइल अल्पविराम से अलग तालिका की पंक्तियाँ। फ़ाइल open(path, mode) से खुलती है; पाथ absolute या relative, मोड r, w, a, r+, rb, wb आदि। with फ़ाइल को अपने-आप बंद करता है। टेक्स्ट फ़ाइल में write, writelines, read, readline, readlines। seek फ़ाइल पॉइंटर खिसकाता है, tell उसकी जगह बताता है। pickle.dump और pickle.load से ऑब्जेक्ट सहेजते-पढ़ते हैं, जिससे रिकॉर्ड खोजना, जोड़ना और बदलना होता है। csv मॉड्यूल का writer (writerow, writerows) और reader CSV सँभालते हैं।
- पायथन में स्टैक: जो आख़िर में आया, वह पहले निकला – स्टैक ऐसी डेटा संरचना है जिसमें आइटम केवल एक सिरे से जोड़े और हटाए जाते हैं, जिसे टॉप (शीर्ष) कहते हैं। यह LIFO नियम मानता है: Last In, First Out। जोड़ना push, हटाना pop, और बिना हटाए टॉप देखना peek है। ख़ाली स्टैक से pop करना अंडरफ़्लो है; भरे हुए तय आकार के स्टैक में push करना ओवरफ़्लो है। पायथन में लिस्ट स्टैक का काम करती है: append() अंत (टॉप) पर push करता है और pop() अंत से हटाता है।
2. कंप्यूटर नेटवर्क
विकास और डेटा संचार · संचरण माध्यम और उपकरण · टोपोलॉजी, नेटवर्क प्रकार और प्रोटोकॉल · वेब सेवाएँ
- कंप्यूटर नेटवर्क और इंटरनेट कैसे चलता है – नेटवर्क यानी आपस में जुड़े उपकरण जो डेटा बाँटते हैं। हर उपकरण का एक IP पता होता है। डेटा छोटे क्रमांकित पैकेटों में कटता है। राउटर हर पैकेट को एक-एक कदम उसके पते की ओर भेजते हैं, और TCP अंत में पैकेटों को क्रम से जोड़ता है। DNS वेबसाइट के नाम को IP पते में बदलता है। क्लाइंट माँगता है, सर्वर देता है। फ़ायरवॉल, पासवर्ड, अपडेट और एन्क्रिप्शन नेटवर्क को सुरक्षित रखते हैं।
- नेटवर्क कैसे बढ़े और डेटा कैसे चलता है – कंप्यूटर नेटवर्क जुड़े हुए उपकरणों का समूह है जो डेटा साझा करते हैं। नेटवर्किंग ARPANET (1969) से शुरू हुई, 1980 के दशक में विश्वविद्यालयों के लिए NSFNET बना, और दूसरे नेटवर्कों से जुड़कर इंटरनेट बना — नेटवर्कों का नेटवर्क। हर डेटा संचार के पाँच भाग हैं: प्रेषक, प्राप्तकर्ता, संदेश, संचार माध्यम और प्रोटोकॉल। बैंडविड्थ वह आवृत्ति-सीमा है जो चैनल ले जा सकता है (Hz में); डेटा दर प्रति सेकंड जाने वाले बिट (bps) हैं। नेटवर्क के हर उपकरण का IP एड्रेस होता है। डेटा सर्किट स्विचिंग (पहले पक्का रास्ता बुक) या पैकेट स्विचिंग (डेटा पैकेटों में कटकर अलग-अलग चलता है) से जाता है।
- संचरण माध्यम और नेटवर्क उपकरण: सड़कें और ट्रैफ़िक पुलिस – संचरण माध्यम वे रास्ते हैं जिन पर सिग्नल चलते हैं। तार वाले (गाइडेड) माध्यम: ट्विस्टेड पेयर केबल, कोएक्सियल केबल और ऑप्टिकल फ़ाइबर। बेतार (अनगाइडेड) माध्यम: रेडियो तरंगें, माइक्रोवेव और इन्फ्रारेड। नेटवर्क उपकरण डेटा जोड़ते और दिशा देते हैं: मॉडेम डिजिटल को एनालॉग और वापस बदलता है; ईथरनेट कार्ड (NIC) और RJ45 कंप्यूटर को केबल से जोड़ते हैं; Wi-Fi कार्ड बिना तार जोड़ता है; रिपीटर कमज़ोर सिग्नल मज़बूत करता है; हब हर पोर्ट पर डेटा भेजता है; स्विच केवल सही पोर्ट पर; राउटर अलग नेटवर्कों के बीच पैकेट भेजता है; गेटवे अलग प्रोटोकॉल वाले नेटवर्क जोड़ता है।
- नेटवर्क के प्रकार, टोपोलॉजी और प्रोटोकॉल: आकार, ढाँचा और नियम – नेटवर्क आकार से बँटते हैं: PAN (एक व्यक्ति के आस-पास कुछ मीटर), LAN (कमरा, इमारत या परिसर), MAN (शहर) और WAN (देश या दुनिया)। टोपोलॉजी नोड्स के जुड़ने का ढाँचा है: बस (सब एक बैकबोन केबल पर), स्टार (सब एक केंद्रीय हब या स्विच से) और ट्री (स्तरों में जुड़े स्टार)। प्रोटोकॉल नियमों का समूह है: TCP/IP इंटरनेट पर डेटा तोड़ता और रास्ता देता है, HTTP और HTTPS वेब पेज लाते हैं, FTP फ़ाइलें भेजता है, SMTP ईमेल भेजता है, POP3 ईमेल डाउनलोड करता है, PPP दो उपकरण सीधे जोड़ता है, TELNET दूर के कंप्यूटर में लॉग-इन कराता है, और VoIP इंटरनेट पर आवाज़ ले जाता है।
- वेब सेवाएँ: वेबसाइट खोलने पर क्या होता है – वर्ल्ड वाइड वेब (WWW) इंटरनेट पर रखे आपस में जुड़े वेब पेजों की व्यवस्था है, जिन्हें ब्राउज़र से खोलते हैं। वेब पेज HTML में लिखे जाते हैं, जो तय टैग से सामग्री दिखाता है; XML अपने बनाए टैग से डेटा रखता और ले जाता है। हर वेबसाइट का डोमेन नेम होता है, जैसे example.org, जिसे DNS IP एड्रेस में बदलता है। URL किसी एक संसाधन का पूरा पता है: प्रोटोकॉल, डोमेन और पाथ। वेबसाइट जुड़े वेब पेजों का समूह है। वेब ब्राउज़र पेज माँगकर दिखाता है; वेब सर्वर उन्हें रखकर भेजता है; वेब होस्टिंग ऐसे सर्वर पर जगह किराए पर लेना है ताकि साइट हमेशा ऑनलाइन रहे।
3. डेटाबेस प्रबंधन
डेटाबेस संकल्पनाएँ और संबंधपरक मॉडल · एसक्यूएल · पायथन-एसक्यूएल इंटरफ़ेस
- संबंधपरक डेटाबेस: तालिकाएँ, पंक्तियाँ, स्तंभ और कीज़ – डेटा को कई अलग फ़ाइलों में रखने से डेटा दोहराता है, कॉपियाँ आपस में मेल नहीं खातीं और खोजना कठिन होता है, इसलिए हम DBMS से चलने वाला डेटाबेस उपयोग करते हैं। संबंधपरक मॉडल में डेटा रिलेशन कहलाने वाली तालिकाओं में रहता है। स्तंभ एट्रिब्यूट है, पंक्ति ट्यूपल है, और किसी स्तंभ के मान्य मानों का समूह उसका डोमेन है। स्तंभों की संख्या डिग्री है; पंक्तियों की संख्या कार्डिनैलिटी। कैंडिडेट की वह स्तंभ (या समूह) है जो हर पंक्ति को अलग पहचान सके; चुनी गई प्राइमरी की है और बाकी अल्टरनेट की। फ़ॉरेन की एक तालिका का वह स्तंभ है जो दूसरी तालिका की प्राइमरी की की ओर इशारा करके उन्हें जोड़ता है।
- कक्षा 12 के लिए SQL: तालिका बनाइए, प्रश्न पूछिए, तालिकाएँ जोड़िए – SQL संबंधपरक डेटाबेस बनाने और उनसे प्रश्न पूछने की भाषा है। DDL कमांड (CREATE, ALTER, DROP) ढाँचा बनाते हैं; DML कमांड (INSERT, UPDATE, DELETE) पंक्तियाँ बदलते हैं; SELECT डेटा पढ़ता है। स्तंभों को डेटा प्रकार (CHAR, VARCHAR, INT, FLOAT, DATE) और कंस्ट्रेंट (NOT NULL, UNIQUE, PRIMARY KEY, DEFAULT, FOREIGN KEY) मिलते हैं। SELECT में उपनाम (alias), DISTINCT, संबंधपरक और तार्किक ऑपरेटरों के साथ WHERE, IN, BETWEEN, LIKE, IS NULL और ORDER BY आते हैं। एग्रीगेट फ़ंक्शन (MAX, MIN, AVG, SUM, COUNT) कई पंक्तियों का सार देते हैं; GROUP BY समूह बनाता है और HAVING समूह छाँटता है। कार्टेशियन प्रोडक्ट एक तालिका की हर पंक्ति को दूसरी की हर पंक्ति से जोड़ता है; इक्वी-जॉइन केवल वे जोड़े रखता है जिनका साझा स्तंभ मेल खाए; नेचुरल जॉइन भी यही करता है पर साझा स्तंभ एक बार दिखाता है।
- पायथन को MySQL से जोड़ना: SQL भेजो, पंक्तियाँ पाओ – पायथन mysql.connector मॉड्यूल से MySQL डेटाबेस से बात कर सकता है। connect() host, user, password और database से कनेक्शन खोलता है। cursor() कर्सर बनाता है, वह ऑब्जेक्ट जो SQL डेटाबेस तक ले जाता है और परिणाम वापस लाता है। execute() एक SQL स्टेटमेंट चलाता है। INSERT, UPDATE और DELETE के बाद बदलाव सहेजने को कनेक्शन पर commit() ज़रूरी है। SELECT के लिए fetchone() अगली पंक्ति ट्यूपल में देता है, fetchall() बची सब पंक्तियाँ ट्यूपल की लिस्ट में, और rowcount बताता है कितनी पंक्तियाँ लीं या बदलीं। क्वेरी में मान %s प्लेसहोल्डर (execute को ट्यूपल देकर) या format() से डालते हैं।