प्रस्तावना यदि आप प्रोग्रामिंग को गंभीरता से लेना चाहते हैं, तो आपने देखा होगा सही किताब। सच में! यह वह किताब है जिसके साथ आप अपना पहला बना सकते हैं प्रोग्रामिंग में कदम। यह आपकी लंबी यात्रा के लिए एक उड़ान शुरुआत देगा आधुनिक प्रोग्रामिंग भाषा सीखना और सॉफ्टवेयर विकास प्रौद्योगिकियां। यह पुस्तक मौलिक सिद्धांतों और अवधारणाओं को सिखाती है प्रोग्रामिंग की, जो पिछले 15 वर्षों में महत्वपूर्ण रूप से नहीं बदली है। इस पुस्तक को पढ़ने में संकोच न करें, भले ही C# वह भाषा न हो जो आप चाहते हैं पीछा करना पसंद है। आप जिस भी भाषा में आगे बढ़ते हैं, वह ज्ञान हम करेंगे आपको यहाँ देना चिपक जाएगा, क्योंकि यह किताब आपको ऐसा सोचना सिखाएगी प्रोग्रामर हम आपको दिखाएंगे और आपको सिखाएंगे कि प्रोग्राम कैसे लिखना है व्यावहारिक एल्गोरिथम समस्याओं को हल करना, आपके अंदर आने के लिए कौशल तैयार करना एल्गोरिदम के साथ (और कार्यान्वित) करें, और विभिन्न डेटा संरचनाओं का उपयोग करें। यह आपको जितना असंभव लग सकता है, लेखन के मूल सिद्धांत पिछले 15 वर्षों में कंप्यूटर प्रोग्रामों में इतना अधिक परिवर्तन नहीं हुआ है। प्रोग्रामिंग भाषाएं बदलती हैं, प्रौद्योगिकियां आधुनिक होती हैं, एकीकृत होती हैं विकास का वातावरण अधिक से अधिक उन्नत हो जाता है लेकिन प्रोग्रामिंग के मूल सिद्धांत समान रहते हैं। कब शुरुआती लोग एल्गोरिथम के रूप में सोचना सीखते हैं, और फिर समस्या को विभाजित करना सीखते हैं सहज रूप से इसे हल करने के लिए चरणों की एक श्रृंखला में, साथ ही साथ जब वे सीखते हैं उपयुक्त डेटा संरचनाओं का चयन करें और उच्च गुणवत्ता वाली प्रोग्रामिंग लिखें कोड तब होता है जब वे प्रोग्रामर बन जाते हैं। एक बार जब आप इन कौशलों को हासिल कर लेते हैं, आप आसानी से नई भाषाएं और विभिन्न तकनीकों को सीख सकते हैं - जैसे वेब प्रोग्रामिंग, HTML5 और जावास्क्रिप्ट, मोबाइल विकास, डेटाबेस और SQL, XML, REST, ASP.NET, Java EE, Python, Ruby और सैकड़ों अन्य। किताब के बारे में यह पुस्तक विशेष रूप से आपको एक प्रोग्रामर की तरह सोचने के लिए सिखाने के लिए डिज़ाइन की गई है और सी # भाषा सिर्फ एक उपकरण है जिसे किसी अन्य आधुनिक द्वारा प्रतिस्थापित किया जा सकता है प्रोग्रामिंग भाषाएं, जैसे जावा, सी ++, पीएचपी या पायथन। यह एक पुस्तक है प्रोग्रामिंग पर, सी # पर एक किताब नहीं! अनुवाद में त्रुटियों के लिए कृपया हमें क्षमा करें! यह पुस्तक मूल रूप से बल्गेरियाई भाषा में . की एक बड़ी टीम द्वारा लिखी गई थी स्वयंसेवी सॉफ्टवेयर इंजीनियर और बाद में अंग्रेजी में अनुवादित। इनमे से कोई नहीं लेखक, अनुवादक, संपादक और अन्य योगदानकर्ता एक देशी अंग्रेजी हैं स्पीकर ताकि आपको कई गलतियाँ और सटीक अनुवाद मिलें। कृप्या, हमें क्षमा करें! इस परियोजना में 70 से अधिक लोगों ने भाग लिया है (ज्यादातर बल्गेरियाई): लेखक, संपादक, अनुवादक, सुधारक, बग प्रस्तुतकर्ता, आदि और अध्याय 1: प्रोग्रामिंग का परिचय "प्रोग्रामिंग का परिचय" अध्याय में, हम बुनियादी पर एक नज़र डालेंगे प्रोग्रामिंग में शब्दावली और हमारा पहला कार्यक्रम लिखें। हम करेंगे प्रोग्रामिंग क्या है और इसका क्या संबंध है, इसके साथ खुद को परिचित करें इसमें कंप्यूटर और प्रोग्रामिंग भाषाएं हैं। हम संक्षेप में मुख्य की समीक्षा करेंगे सॉफ्टवेयर विकास के चरणों में, C# भाषा, .NET . का परिचय दें प्लेटफ़ॉर्म और सॉफ़्टवेयर में उपयोग की जाने वाली विभिन्न Microsoft प्रौद्योगिकियाँ विकास। हम जांच करेंगे कि सी # में प्रोग्राम करने के लिए हमें कौन से सहायक उपकरण चाहिए और अपना पहला कंप्यूटर प्रोग्राम लिखने के लिए C# भाषा का उपयोग करें, इसे संकलित करें और कमांड लाइन, साथ ही साथ माइक्रोसॉफ्ट विजुअल स्टूडियो का उपयोग करके इसे चलाएं समन्वित विकास पर्यावरण। हम खुद से परिचित होंगे MSDN लाइब्रेरी - .NET फ्रेमवर्क के लिए प्रलेखन, जो हमारी मदद करेगा भाषा की क्षमताओं के हमारे अध्ययन में। अध्याय के लेखक पावेल डोनचेव हैं; संपादक हैं तेओडोर बोज़िकोव और स्वेतलिन नाकोव। अध्याय की सामग्री कुछ हद तक के काम पर आधारित है सी # के साथ कंप्यूटर प्रोग्रामिंग के 30 बुनियादी सिद्धांत "जावा के साथ प्रोग्रामिंग का परिचय" पुस्तक से लुचेसर सेकोव। अंग्रेजी में अनुवाद: अतानास वाल्चेव द्वारा (व्लादिमीर त्सेनेव और . द्वारा संपादित) हिस्टो राडकोव)। अध्याय 2: आदिम प्रकार और चर "आदिम प्रकार और चर" अध्याय में, हम आदिम की जांच करेंगे C# में प्रकार और चर - वे क्या हैं और उनके साथ कैसे काम करना है। सबसे पहले, हम डेटा प्रकारों पर ध्यान केंद्रित करेंगे - पूर्णांक प्रकार, वास्तविक फ़्लोटिंग-पॉइंट प्रकार, बूलियन, वर्ण प्रकार, तार और वस्तु प्रकार। हम जारी रखेंगे चर, वे क्या हैं और उनकी विशेषताएं क्या हैं, उन्हें कैसे घोषित किया जाए, कैसे उन्हें एक मान दिया गया है और वेरिएबल इनिशियलाइज़ेशन क्या है। हम परिचित करेंगे सी # में डेटा प्रकारों की मुख्य श्रेणियों के साथ - मूल्य और संदर्भ प्रकार। अंत में, हम शाब्दिक पर ध्यान देंगे कि वे क्या हैं और किस प्रकार के हैं शाब्दिक हैं। अध्याय के लेखक वेसेलिन जॉर्जीव और स्वेतलिन नाकोव हैं; संपादक है निकोले वासिलिव। पूरे अध्याय की सामग्री के काम पर आधारित है "परिचय टू ." पुस्तक से हिस्टो टोडोरोव और स्वेतलिन नाकोव जावा के साथ प्रोग्रामिंग"। अंग्रेजी में अनुवाद: लोरा बोरिसोवा द्वारा (द्वारा संपादित .) एंजेल एंजेलोव और हिस्टो राडकोव)। अध्याय 3: संचालिका और व्यंजक अध्याय "ऑपरेटर्स एंड एक्सप्रेशन्स" में, हम खुद से परिचित होंगे सी # में ऑपरेटरों और विभिन्न डेटा पर वे संचालन करते हैं प्रकार। हम ऑपरेटरों की प्राथमिकताओं को स्पष्ट करेंगे और खुद को परिचित करेंगे ऑपरेटरों के प्रकार, उनके द्वारा लिए गए तर्कों की गिनती के अनुसार और वे जो ऑपरेशन करते हैं। फिर, हम टाइपकास्टिंग की जांच करेंगे कि यह क्यों है आवश्यक है और इसके साथ कैसे काम करना है। अंत में, हम वर्णन और वर्णन करेंगे अभिव्यक्तियाँ और उनका उपयोग कैसे किया जाता है। अध्याय के लेखक डिलन दिमित्रोव और स्वेतलिन नाकोव हैं; संपादक है मारिन जॉर्जीव। पूरे अध्याय की सामग्री के काम पर आधारित है "जावा के साथ प्रोग्रामिंग का परिचय" पुस्तक से लचेज़र बोज़कोव। अंग्रेजी में अनुवाद: एंजेल एंजेलोव द्वारा (मार्टिन यान्कोव और हिस्ट्रो द्वारा संपादित) अध्याय 4: कंसोल इनपुट और आउटपुट "कंसोल इनपुट और आउटपुट" अध्याय में हम इससे परिचित होंगे डेटा इनपुट और आउटपुट के साधन के रूप में कंसोल। हम बताएंगे कि यह क्या है, इसका उपयोग कब और कैसे किया जाता है, अधिकांश प्रोग्रामिंग भाषाओं की अवधारणाएं क्या हैं कंसोल तक पहुँचने के लिए हैं। हम इनमें से कुछ से खुद को परिचित करेंगे उपयोगकर्ता सहभागिता के लिए C# में सुविधाएँ और मुख्य धाराओं की जाँच करेगा इनपुट-आउटपुट संचालन कंसोल.इन, कंसोल.आउट और कंसोल.त्रुटि, the क्लास कंसोल और डेटा को प्रिंट करने के लिए फॉर्मेट स्ट्रिंग्स का उपयोग विभिन्न प्रारूप। हम देखेंगे कि टेक्स्ट को एक नंबर (पार्सिंग) में कैसे बदलें, चूंकि यह सी # में नंबर दर्ज करने का तरीका है। अध्याय के लेखक इलियन मर्डनलिव हैं और संपादक स्वेतलिन नाकोव हैं। पूरे अध्याय की सामग्री काफी हद तक बोरिस वाल्कोव के काम पर आधारित है पुस्तक "जावा के साथ प्रोग्रामिंग का परिचय"। अंग्रेजी में अनुवाद: by लोरा बोरिसोवा (डायनको पेटकोव द्वारा संपादित)। अध्याय 5: सशर्त विवरण "सशर्त विवरण" अध्याय में हम सशर्त विवरण को शामिल करेंगे सी # में बयान, जिसका उपयोग हम विभिन्न क्रियाओं को निष्पादित करने के लिए कर सकते हैं किसी शर्त पर। हम सशर्त ऑपरेटरों के सिंटैक्स की व्याख्या करेंगे: यदि और यदि-अन्य उपयुक्त उदाहरणों के साथ और व्यावहारिक अनुप्रयोगों की व्याख्या करें चयन नियंत्रण ऑपरेटर स्विच का। हम सर्वोत्तम प्रथाओं पर ध्यान केंद्रित करेंगे प्रोग्रामिंग की एक बेहतर शैली प्राप्त करने के लिए इसका पालन किया जाना चाहिए जब नेस्टेड या अन्य प्रकार के सशर्त बयानों का उपयोग करना। अध्याय के लेखक स्वेतलिन नाकोव हैं और संपादक मारिन जॉर्जीव हैं। पूरे अध्याय की सामग्री से मारिन जॉर्जीव के काम पर आधारित है पुस्तक "जावा के साथ प्रोग्रामिंग का परिचय"। अंग्रेजी में अनुवाद: by जॉर्ज वाक्लिनोव (मोमचिल रोजेलोव द्वारा संपादित)। अध्याय 6: लूप्स अध्याय "लूप्स" में, हम लूप तंत्र की जांच करेंगे, इसके माध्यम से जिसे हम बार-बार कोड के एक स्निपेट को निष्पादित कर सकते हैं। हम चर्चा करेंगे कि कैसे सशर्त दोहराव (जबकि और करते-करते लूप) लागू किए जाते हैं और कैसे लूप के साथ काम करने के लिए। हम विभिन्न साधनों के उदाहरण देंगे एक लूप को परिभाषित करना, जिस तरह से उनका निर्माण किया जाता है और उनकी कुछ कुंजी अनुप्रयोग। अंत में, हम देखेंगे कि हम प्रत्येक के भीतर कई लूपों का उपयोग कैसे कर सकते हैं अन्य (नेस्टेड लूप)। अध्याय के लेखक स्टानिस्लाव ज़्लातिनोव हैं और संपादक स्वेतलिन नाकोव हैं। पूरे अध्याय की सामग्री रुम्याना टोपलस्का के काम पर आधारित है पुस्तक "जावा के साथ प्रोग्रामिंग का परिचय"। अंग्रेजी में अनुवाद: by एंजेल एंजेलोव (लोरा बोरिसोवा द्वारा संपादित) अध्याय 7: सरणियाँ अध्याय "एरे" में, हम अपने आप को एक साधन के रूप में सरणियों से परिचित कराएंगे एक ही प्रकार के तत्वों के अनुक्रम के साथ काम करने के लिए। हम करेंगे समझाएं कि वे क्या हैं, हम कैसे घोषित कर सकते हैं, सरणी बना सकते हैं और तत्काल बना सकते हैं और उनके तत्वों तक पहुंच कैसे प्रदान करें। हम एक आयामी की जांच करेंगे और बहुआयामी सरणी। हम पुनरावृति के विभिन्न तरीके सीखेंगे एक सरणी के माध्यम से, मानक इनपुट से पढ़ना और मानक पर लिखना आउटपुट हम उदाहरण के रूप में कई अभ्यास देंगे, जिनका उपयोग करके हल किया जा सकता है सरणियाँ, और आपको दिखाते हैं कि वे कितने उपयोगी हैं। अध्याय के लेखक हिस्टो जर्मनोव हैं और संपादक राडोस्लाव टोडोरोव हैं। अध्याय की सामग्री मारियान नेन्चेव के काम पर आधारित है पुस्तक "जावा के साथ प्रोग्रामिंग का परिचय"। अंग्रेजी में अनुवाद: by बोयन दिमित्रोव (राडोस्लाव टोडोरोव और ज़ेल्याज़को दिमित्रोव द्वारा संपादित)। C# के साथ कंप्यूटर प्रोग्रामिंग के 32 मूल सिद्धांत अध्याय 8: अंक प्रणाली अध्याय "अंक प्रणाली" में, हम के साधनों पर एक नज़र डालेंगे विभिन्न अंक प्रणालियों और के प्रतिनिधित्व के साथ काम करना उनमें संख्याएँ। हम इस बात पर विशेष ध्यान देंगे कि संख्याएँ किस प्रकार हैं दशमलव, बाइनरी और हेक्साडेसिमल अंक प्रणाली में दर्शाया गया है, क्योंकि वे कंप्यूटर, संचार और प्रोग्रामिंग में व्यापक रूप से उपयोग किए जाते हैं। हम कंप्यूटर में अंक डेटा को एन्कोड करने के तरीकों की भी व्याख्या करेगा और एन्कोडिंग के प्रकार, अर्थात् हस्ताक्षरित परिमाण, एक का पूरक, दो का पूरक और बाइनरी-कोडेड दशमलव। अध्याय के लेखक तेओडोर बोज़िकोव हैं और संपादक मिहैल स्टोयनोव हैं। पूरे अध्याय की सामग्री पेटार वेलेव और स्वेतलिन के काम पर आधारित है "जावा के साथ प्रोग्रामिंग का परिचय" पुस्तक से नाकोव। करने के लिए अनुवाद अंग्रेज़ी: अतानास वाल्चेव द्वारा (वेसेलिना रायकोवा द्वारा संपादित)। अध्याय 9: तरीके अध्याय "तरीके" में, हम सबरूटीन्स के बारे में विस्तार से जानेंगे प्रोग्रामिंग, जिसे सी # में विधियां कहा जाता है। हम बताएंगे कि कब और विधियों का उपयोग क्यों किया जाता है; दिखाएगा कि कैसे तरीके घोषित किए जाते हैं और क्या a विधि हस्ताक्षर है। हम सीखेंगे कि कस्टम विधि कैसे बनाई जाती है और कैसे इसे बाद में उपयोग (आह्वान) करने के लिए, और यह प्रदर्शित करेगा कि हम कैसे उपयोग कर सकते हैं विधियों में पैरामीटर और विधि से परिणाम कैसे वापस करें। अंत में, हम विधियों के साथ काम करते समय कुछ स्थापित प्रथाओं पर चर्चा करेंगे। इस सब विवरण में बताए गए उदाहरणों और अतिरिक्त अभ्यासों के साथ बैकअप लिया जाएगा। अध्याय के लेखक योर्डन पावलोव हैं; संपादक हैं राडोस्लाव टोडोरोव और निकोले वासिलिव। पूरे अध्याय की सामग्री के काम पर आधारित है "जावा के साथ प्रोग्रामिंग का परिचय" पुस्तक से निकोले वासिलिव। अंग्रेजी में अनुवाद: इवायलो डायनकोव द्वारा (व्लादिमीर एमियोरकोव और . द्वारा संपादित) फ्रांज फिशबैक)। अध्याय 10: पुनरावर्तन "पुनरावृत्ति" अध्याय में, हम अपने आप को पुनरावर्तन से परिचित कराएंगे और इसके अनुप्रयोग। रिकर्सन एक शक्तिशाली प्रोग्रामिंग तकनीक है जहां a विधि स्वयं को आमंत्रित करती है। रिकर्सन के माध्यम से हम जटिल हल कर सकते हैं कॉम्बीनेटरियल समस्याएं जहां हम आसानी से अलग हो सकते हैं संयोजन विन्यास। हम सही के कई उदाहरण प्रदर्शित करेंगे और गलत रिकर्सन उपयोग और हम आपको विश्वास दिलाएंगे कि यह कितना उपयोगी हो सकता है। अध्याय के लेखक राडोस्लाव इवानोव हैं और संपादक स्वेतलिन नाकोव हैं। पूरे अध्याय की सामग्री राडोस्लाव इवानोव के काम पर आधारित है और स्वेतलिन नाकोव "जावा के साथ प्रोग्रामिंग का परिचय" पुस्तक से। अंग्रेजी में अनुवाद: वास्या स्टेनकोवा द्वारा (योआन क्रूमोव द्वारा संपादित)। अध्याय 11: वस्तुओं का निर्माण और उपयोग करना "वस्तुओं को बनाना और उनका उपयोग करना" अध्याय में, हम मूल बातें जानेंगे ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग की अवधारणाएं - कक्षाएं और वस्तुएं - और हम यह समझाएगा कि .NET के मानक पुस्तकालयों से कक्षाओं का उपयोग कैसे किया जाता है रूपरेखा। हम कुछ सामान्य रूप से उपयोग किए जाने वाले सिस्टम क्लासेस पर ध्यान केंद्रित करेंगे और करेंगे उनके इंस्टेंस (ऑब्जेक्ट्स) बनाने और उनका उपयोग करने का तरीका दिखाएं। हम चर्चा करेंगे कि कैसे किसी ऑब्जेक्ट के एक्सेस गुण, कंस्ट्रक्टर को कैसे कॉल करें और कैसे काम करें कक्षाओं में स्थिर क्षेत्रों के साथ। अंत में, हम "नेमस्पेस" शब्द पर ध्यान देंगे - वे हमारी मदद कैसे करते हैं, उन्हें कैसे शामिल करें और उनका उपयोग कैसे करें। अध्याय के लेखक टीओडोर स्टोव हैं और संपादक स्टीफन स्टेव हैं। पूरे अध्याय की सामग्री टीओडोर स्टोव और स्टीफन के काम पर आधारित है "जावा के साथ प्रोग्रामिंग का परिचय" पुस्तक से स्टेव। करने के लिए अनुवाद अंग्रेज़ी: वास्या स्टेनकोवा द्वारा (टोडर मितेव द्वारा संपादित)। अध्याय 12: अपवाद हैंडलिंग "अपवाद प्रबंधन" अध्याय में हम अपवादों के बारे में जानेंगे ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग और विशेष रूप से C# में। हम सीखेंगे कि कैसे ट्राइ-कैच क्लॉज का उपयोग करके अपवादों को पकड़ें, उन्हें कैसे पास करें कॉलिंग विधियों और मानक, कस्टम या पकड़े गए अपवादों को कैसे फेंकना है थ्रो स्टेटमेंट का उपयोग करना। हम उनके कई उदाहरण देंगे उपयोग और अपवादों के प्रकार और अपवादों को देखेंगे पदानुक्रम वे .NET Framework में बनाते हैं। अंत में, हम देखेंगे अपवादों का उपयोग करने के लाभ और विशिष्ट परिस्थितियों में उन्हें कैसे लागू किया जाए। अध्याय के लेखक मिहैल स्टोयनोव हैं और संपादक राडोस्लाव किरिलोव हैं। पूरे अध्याय की सामग्री लुचेसर सेकोव, मिहेल के काम पर आधारित है स्टॉयनोव और स्वेतलिन नाकोव ने "प्रोग्रामिंग के साथ परिचय" पुस्तक से जावा" अंग्रेजी में अनुवाद: दिमितार बोनेव और जॉर्ज टोडोरोव द्वारा (संपादित .) डोरोटेया अगेन द्वारा)। अध्याय 13: स्ट्रिंग्स और टेक्स्ट प्रोसेसिंग "स्ट्रिंग्स और टेक्स्ट प्रोसेसिंग" अध्याय में, हम खुद को परिचित करेंगे स्ट्रिंग्स: उन्हें C# में कैसे लागू किया जाता है और हम टेक्स्ट को कैसे प्रोसेस कर सकते हैं? विषय। हम टेक्स्ट में हेर-फेर करने के लिए विभिन्न तरीकों से गुजरेंगे; तथा पारित मापदंडों के अनुसार सबस्ट्रिंग निकालना सीखें, कैसे करें खोजशब्दों के साथ-साथ विभाजक द्वारा एक स्ट्रिंग को विभाजित करने के तरीके की खोज करें पात्र। हम नियमित अभिव्यक्तियों पर उपयोगी जानकारी प्रदान करेंगे और हम सीखेंगे कि एक विशिष्ट पैटर्न से मेल खाने वाले डेटा को कैसे निकाला जाए। अंत में, हम करेंगे अधिक सुरुचिपूर्ण और सख्त प्राप्त करने के तरीकों और कक्षाओं पर एक नज़र डालें कंसोल पर पाठ सामग्री का स्वरूपण, मुद्रण के विभिन्न तरीकों के साथ संख्याएं और तिथियां। अध्याय के लेखक वेसेलिन जॉर्जीव हैं और संपादक राडोस्लाव टोडोरोव हैं। पूरे अध्याय की सामग्री मारियो पेशव के काम पर आधारित है पुस्तक "जावा के साथ प्रोग्रामिंग का परिचय"। अंग्रेजी में अनुवाद: by वेसलिन जॉर्जीव (टोडर मितेव और व्लादिमीर एमियोरकोव द्वारा संपादित)। सी # के साथ कंप्यूटर प्रोग्रामिंग के 34 बुनियादी सिद्धांत अध्याय 14: वर्गों को परिभाषित करना अध्याय "डिफाइनिंग क्लासेस" में, हम दिखाएंगे कि हम कस्टम को कैसे परिभाषित कर सकते हैं कक्षाएं और एक वर्ग के तत्व क्या हैं। हम घोषित करना सीखेंगे कक्षाओं में फ़ील्ड, कंस्ट्रक्टर और गुण और फिर से याद करेंगे कि क्या a विधि है, लेकिन विधियों और उनकी पहुंच के बारे में हमारे ज्ञान को व्यापक बनाएगी संशोधक हम निर्माणकर्ताओं की विशेषताओं पर ध्यान देंगे और हम करेंगे विस्तार से समझाएं कि प्रोग्राम ऑब्जेक्ट्स ढेर में कैसे मौजूद हैं (गतिशील स्मृति) और उनके क्षेत्रों को कैसे प्रारंभ किया जाता है। अंत में, समझाएगा कि कौन सा वर्ग स्थिर है तत्व - क्षेत्र (स्थिरांक सहित), गुण और विधियाँ - हैं और उनका उपयोग कैसे करें। इस अध्याय में, हम सामान्य प्रकारों का भी परिचय देंगे (जेनेरिक), प्रगणित प्रकार (गणना) और नेस्टेड वर्ग। अध्याय के लेखक हैं निकोले वासिलिव, स्वेतलिन नाकोव, मीरा बिवास और पावलिना हडजिवा। पूरे अध्याय की सामग्री के काम पर आधारित है "जावा के साथ प्रोग्रामिंग का परिचय" पुस्तक से निकोले वासिलिव। अंग्रेजी में अनुवाद: राडोस्लाव टोडोरोव, योआन क्रूमोव, तेओडोर रुसेव और . द्वारा स्टानिस्लाव व्लादिमीरोव (व्लादिमीर एमियोरकोव, पावेल बेनोव और नेंचो द्वारा संपादित) नेन्चेव)। यह पुस्तक का सबसे बड़ा अध्याय है, इसलिए बहुत सारे योगदानकर्ता इसे आपके लिए एक उच्च गुणवत्ता मानक के लिए तैयार करने के लिए इस पर काम किया। अध्याय 15: पाठ फ़ाइलें "टेक्स्ट फाइल्स" अध्याय में, हम स्वयं को के साथ काम करने से परिचित कराएंगे .NET Framework में पाठ फ़ाइलें। हम बताएंगे कि एक धारा क्या है, इसकी क्या है उद्देश्य क्या है और इसका उपयोग कैसे किया जाता है। हम वर्णन करेंगे कि टेक्स्ट फ़ाइल क्या है और कैसे करें पाठ फ़ाइलों में डेटा पढ़ें और लिखें और सर्वोत्तम पर प्रस्तुत और विस्तृत करेंगे पाठ फ़ाइलों के साथ काम करते समय अपवादों को पकड़ने और संभालने के लिए अभ्यास। स्वाभाविक रूप से, हम बहुत सारे . के साथ इस सब की कल्पना और व्यवहार में प्रदर्शन करेंगे उदाहरण अध्याय के लेखक राडोस्लाव किरिलोव हैं और संपादक स्टानिस्लाव ज़्लातिनोव हैं। पूरे अध्याय की सामग्री डेनियल एलेक्सीव के काम पर आधारित है पुस्तक "जावा के साथ प्रोग्रामिंग का परिचय"। अंग्रेजी में अनुवाद: by निकोले एंजेलोव (मार्टिन गेबोव द्वारा संपादित)। अध्याय 16: रैखिक डेटा संरचनाएं "रैखिक डेटा संरचना" अध्याय में, हम खुद को परिचित करेंगे प्रोग्रामिंग में और रैखिक के साथ डेटा के कुछ बुनियादी निरूपण डेटा संरचनाएं, क्योंकि बहुत बार, किसी दी गई समस्या को हल करने के लिए, हम तत्वों के अनुक्रम के साथ काम करने की आवश्यकता है। उदाहरण के लिए, इस पुस्तक को पढ़ने के लिए हमें लगातार हर एक पेज को पढ़ना है, उदा। हमें पार करना है इसके पृष्ठों के सेट का हर एक तत्व लगातार। हम देखने के लिए जा रहे हैं कैसे एक विशिष्ट समस्या के लिए कुछ डेटा संरचना अधिक कुशल है और दूसरे की तुलना में सुविधाजनक। फिर हम रैखिक संरचनाओं "सूची" की जांच करेंगे, "स्टैक" और "कतार" और उनके आवेदन और विवरण में जानेंगे इन संरचनाओं के कुछ कार्यान्वयन। प्रस्तावना 35 अध्याय के लेखक Tsvyatko Konov हैं और संपादक Dilyan Dimitrov and . हैं स्वेतलिन नाकोव। पूरे अध्याय की सामग्री काफी हद तक काम पर आधारित है Tsvyatko Konov और Svetlin Nakov की पुस्तक "परिचय से" से जावा के साथ प्रोग्रामिंग"। अंग्रेजी में अनुवाद: वास्या स्टेनकोवा द्वारा (संपादित .) इवायलो गेर्गोव द्वारा)। अध्याय 17: पेड़ और रेखांकन अध्याय "पेड़ और रेखांकन" में, हम तथाकथित पेड़ की तरह देखेंगे डेटा संरचनाएं, जो पेड़ और ग्राफ हैं। के गुणों को जानना ये संरचनाएं आधुनिक प्रोग्रामिंग के लिए महत्वपूर्ण हैं। इनमें से प्रत्येक संरचनाओं का उपयोग वास्तविक जीवन की समस्याओं के मॉडलिंग के लिए किया जाता है जिन्हें कुशलता से हल किया जा सकता है उनकी मदद से। हम विस्तार से जांच करेंगे कि पेड़ जैसी डेटा संरचनाएं क्या हैं और उनके प्राथमिक फायदे और नुकसान दिखाएं। इसके अलावा, हम प्रदान करेंगे नमूना कार्यान्वयन और अभ्यास, उनके व्यावहारिक उपयोग का प्रदर्शन- टी.आई. इसके अलावा, हम बाइनरी ट्री, बाइनरी सर्च ट्री और की जांच करेंगे संतुलित पेड़ और फिर डेटा संरचना "ग्राफ" की जांच करें, के प्रकार ग्राफ और उनका उपयोग। हम यह भी दिखाएंगे कि .NET Framework के कौन से हिस्से हैं बाइनरी सर्च ट्री का उपयोग करें अध्याय के लेखक वेसेलिन कोलेव हैं और संपादक इलियन मर्डानलिव हैं और स्वेतलिन नाकोव। पूरे अध्याय की सामग्री के काम पर आधारित है "जावा के साथ प्रोग्रामिंग का परिचय" पुस्तक से वेसेलिन कोलेव। अंग्रेजी में अनुवाद: क्रिस्टियन दिमित्रोव और टोडर मितेव द्वारा (द्वारा संपादित .) नेदजाती मेहमेद और डायनको पेटकोव)। अध्याय 18: डिक्शनरी, हैश टेबल और सेट "शब्दकोश, हैश टेबल और सेट" अध्याय में, हम और अधिक विश्लेषण करेंगे जटिल डेटा संरचनाएं जैसे शब्दकोश और सेट, और उनका कार्यान्वयन- हैश टेबल और संतुलित पेड़ों के साथ संबंध। हम विस्तार से बताएंगे क्या हैशिंग और हैश टेबल का मतलब है, और वे इतने महत्वपूर्ण भाग क्यों हैं प्रोग्रामिंग। हम "टकराव" की अवधारणा पर चर्चा करेंगे और वे कैसे कर सकते हैं हैश टेबल को लागू करते समय होता है। हम विभिन्न सुझाव भी देंगे उन्हें हल करने के लिए दृष्टिकोण। हम सार डेटा संरचना "सेट" को देखेंगे और समझाएं कि इसे एक शब्दकोश या संतुलित के साथ कैसे कार्यान्वित किया जा सकता है पेड़। हम ऐसे उदाहरण प्रदान करेंगे जो इन आंकड़ों के अनुप्रयोगों को स्पष्ट करते हैं रोजमर्रा के अभ्यास में संरचनाएं। अध्याय के लेखक मिहैल वाल्कोव हैं और संपादक त्सव्यात्को कोनोव और . हैं स्वेतलिन नाकोव। पूरे अध्याय की सामग्री आंशिक रूप से काम पर आधारित है "प्रोग्रामिंग का परिचय" पुस्तक से व्लादिमीर त्सनेव (त्सचेव) का जावा के साथ"। अंग्रेजी में अनुवाद: जॉर्ज मितेव और जॉर्ज के। जॉर्जीव द्वारा (मार्टिन गेबोव और इवायलो डायनकोव द्वारा संपादित) अध्याय 19: डेटा संरचनाएं और एल्गोरिथम जटिलता अध्याय "डेटा संरचनाएं और एल्गोरिथम जटिलता" में, हम तुलना करेंगे उनके प्रदर्शन के आधार पर हमने अब तक जो डेटा संरचनाएँ सीखी हैं: बुनियादी संचालन (जोड़, खोज, हटाना, आदि)। हम देंगे कुछ मामलों में सबसे उपयुक्त डेटा संरचनाओं के लिए सिफारिशें। हम बताएंगे कि हैश टेबल, ऐरे, ए का उपयोग करना कब बेहतर होता है गतिशील सरणी, हैश तालिका या संतुलित पेड़ द्वारा कार्यान्वित एक सेट। इनमें से प्रत्येक के लिए .NET Framework में एक कार्यान्वयन है संरचनाएं। हमें केवल यह सीखना है कि किसी विशेष डेटा का उपयोग कब करना है संरचना, ताकि हम कुशल और विश्वसनीय स्रोत कोड लिख सकें। अध्याय के लेखक निकोले नेद्यालकोव और स्वेतलिन नाकोव हैं; संपादक है वेसलिन कोलेव। पूरे अध्याय की सामग्री के काम पर आधारित है स्वेतलिन नाकोव और निकोले नेद्यालकोव "परिचय टू" पुस्तक से जावा के साथ प्रोग्रामिंग"। अंग्रेजी में अनुवाद: जॉर्ज हलाचेव और . द्वारा तिहोमिर इलिव (मार्टिन यान्कोव द्वारा संपादित)। अध्याय 20: वस्तु-उन्मुख प्रोग्रामिंग सिद्धांत "ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग प्रिंसिपल्स" अध्याय में, हम परिचित होंगे ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) के सिद्धांतों के साथ: वर्ग विरासत, इंटरफेस कार्यान्वयन, डेटा और व्यवहार अमूर्तता, डेटा एनकैप्सुलेशन और कार्यान्वयन विवरण छिपाना, बहुरूपता और आभासी तरीके। हम सामंजस्य के सिद्धांतों के बारे में विस्तार से बताएंगे और युग्मन। हम वस्तु-उन्मुख मॉडलिंग और वस्तु की भी संक्षेप में रूपरेखा तैयार करेंगे एक विशिष्ट व्यावसायिक समस्या के आधार पर मॉडल निर्माण और पता चल जाएगा यूएमएल और वस्तु उन्मुख मॉडलिंग में इसकी भूमिका। अंत में, हम संक्षेप में चर्चा करेंगे डिज़ाइन पैटर्न और आमतौर पर उपयोग किए जाने वाले डिज़ाइन पैटर्न के लिए उदाहरण प्रदान करते हैं अभ्यास। अध्याय के लेखक मिहैल स्टोयनोव हैं और संपादक मिहैल वाल्कोव हैं। पूरे अध्याय की सामग्री मिखाइल स्टॉयनोव के काम पर आधारित है पुस्तक "जावा के साथ प्रोग्रामिंग का परिचय"। अंग्रेजी में अनुवाद: by वास्या स्टेनकोवा और मोमचिल रोगेलोव (इवान नेनचोव्स्की द्वारा संपादित)