Germany Jahrgangsstufe 12 Computer Science
अध्याय: 7
1. Recursion
Recursion
- रिकर्शन: ख़ुद को पुकारने वाले फ़ंक्शन – रिकर्शन (recursion) तब होता है जब कोई फ़ंक्शन किसी प्रश्न को हल करने के लिए उसी प्रश्न के छोटे रूप पर ख़ुद को पुकारता है। हर रिकर्सिव फ़ंक्शन में एक आधार स्थिति (base case) चाहिए, जहाँ वह रुककर सीधे उत्तर देता है, और एक रिकर्सिव स्थिति जो आधार स्थिति की ओर बढ़ती है। हर पुकार को कॉल स्टैक पर अपना स्टैक फ़्रेम मिलता है; पुकार लौटने पर फ़्रेम हट जाता है।
2. Lists
Linked lists
- लिंक्ड लिस्ट (Linked List) – लिंक्ड लिस्ट चीज़ों को नोड में रखती है। हर नोड में डेटा और एक पॉइंटर (अगले नोड का पता) होता है। head नाम का वेरिएबल पहले नोड को दिखाता है; आख़िरी नोड NULL को दिखाता है। नोड मेमोरी में कहीं भी हो सकते हैं, इसलिए शुरू में जोड़ना-हटाना बस पॉइंटर बदलना है, पर k-वाँ आइटम ढूँढने के लिए head से चलना पड़ता है।
3. Trees
Trees and binary search trees
- डेटा स्ट्रक्चर में ट्री: बाइनरी ट्री और बाइनरी सर्च ट्री – ट्री डेटा को नोड्स में रखता है जो किनारों (edges) से जुड़े होते हैं, जैसे उल्टा खड़ा वंश-वृक्ष। सबसे ऊपर वाला नोड रूट (मूल) है, जिनके बच्चे नहीं वे लीफ (पत्ती) हैं। n नोड वाले ट्री में n − 1 किनारे होते हैं। नोड की गहराई = रूट से उसकी दूरी (किनारों में); ट्री की ऊँचाई = रूट से पत्ती तक सबसे लंबा रास्ता। बाइनरी ट्री में हर नोड के अधिकतम दो बच्चे होते हैं। बाइनरी सर्च ट्री (BST) में छोटी कुंजियाँ बाएँ, बड़ी दाएँ रहती हैं, इसलिए खोज हर कदम पर आधा ट्री छोड़ देती है। ट्रैवर्सल हर नोड पर जाता है: प्री-ऑर्डर (रूट, बायाँ, दायाँ), इन-ऑर्डर (बायाँ, रूट, दायाँ), पोस्ट-ऑर्डर (बायाँ, दायाँ, रूट)। BST पर इन-ऑर्डर क्रमबद्ध (sorted) आउटपुट देता है।
4. How a computer works
How a computer works
- कंप्यूटर का मूल संगठन – कंप्यूटर प्रणाली में हार्डवेयर (जिसे छू सकें) और सॉफ़्टवेयर (निर्देश) दोनों होते हैं। इनपुट उपकरण डेटा अंदर लाते हैं, CPU (ALU + कंट्रोल यूनिट + रजिस्टर) उस पर काम करता है, और आउटपुट उपकरण परिणाम देते हैं। मेमोरी एक सीढ़ी जैसी है: रजिस्टर और कैश छोटे पर सबसे तेज़, प्राथमिक मेमोरी (RAM, ROM) चलते प्रोग्राम रखती है, और द्वितीयक भंडारण (HDD, SSD, पेन ड्राइव) डेटा हमेशा के लिए रखता है। 8 बिट = 1 बाइट, और KB से आगे हर इकाई पिछली की 1024 गुना है।
5. Operating systems, processes and concurrency
Operating systems, processes and concurrency
- ऑपरेटिंग सिस्टम – ऑपरेटिंग सिस्टम (OS) मुख्य सिस्टम सॉफ़्टवेयर है जो उपयोगकर्ता और हार्डवेयर के बीच रहकर सारे संसाधन संभालता है। इसके कार्य: प्रोसेस प्रबंधन (प्रोग्रामों में CPU बाँटना), मेमोरी प्रबंधन (RAM देना और वापस लेना), फ़ाइल प्रबंधन, उपकरण प्रबंधन (ड्राइवरों से) और सुरक्षा (पासवर्ड, अनुमति)। उपयोगकर्ता OS से यूज़र इंटरफ़ेस से बात करता है: कमांड लाइन (CLI), ग्राफ़िकल (GUI), टच, आवाज़ या हावभाव। उदाहरण: Windows, Linux, macOS, Android, iOS।
6. Information security
Information security
- साइबर सुरक्षा: ख़तरे और उनसे बचाव – साइबर सुरक्षा कंप्यूटर, नेटवर्क और डेटा की रक्षा करती है। इसके लक्ष्य हैं गोपनीयता, अखंडता और उपलब्धता (CIA त्रिक)। आम ख़तरे: मालवेयर, फ़िशिंग व सोशल इंजीनियरिंग, ब्रूट फ़ोर्स और डिनायल ऑफ़ सर्विस। बचाव: मज़बूत प्रमाणीकरण, कूटलेखन, फ़ायरवॉल, एंटी-मालवेयर, अपडेट, पहुँच नियंत्रण और बैकअप।
7. Practical software development project
Software engineering project
- सॉफ़्टवेयर विकास: विचार से चलते ऐप तक – अच्छा सॉफ़्टवेयर चरणों में बनता है: समस्या का विश्लेषण करके आवश्यकताएँ लिखो, हल डिज़ाइन करो, छोटे हिस्सों में कोड करो, सामान्य, सीमा और गलत डेटा से परीक्षण करो, उपयोगकर्ताओं तक पहुँचाओ और रखरखाव करो। वॉटरफ़ॉल हर चरण एक बार क्रम से करता है; एजाइल छोटे चक्र दोहराता है। मज़बूत प्रोग्राम इनपुट जाँचते हैं, और टीमें वर्ज़न कंट्रोल, साफ़ भूमिकाएँ और उपयोगकर्ता की राय इस्तेमाल करती हैं।