अभिकलन
कम्प्यूटिंग किसी भी लक्ष्य-उन्मुख की एक ऐसी गतिविधि है, जिसके लिए कंप्यूटिंग मशीनरी की आवश्यकता होती है, इससे लाभ या निर्माण होता है। इसमें कलन विधि प्रक्रियाओं का अध्ययन, प्रयोग और हार्डवेयर एवं सॉफ़्टवेयर दोनों का विकास सम्मिलित होता है। कंप्यूटिंग में वैज्ञानिक, अभियांत्रिकी, गणितीय, तकनीकी और सामाजिक पहलू हैं। प्रमुख कंप्यूटिंग विषयों में कंप्यूटर अभियांत्रिकी, कंप्यूटर विज्ञान , साइबर सुरक्षा , डेटा विज्ञान, सूचना प्रणाली, सूचना प्रौद्योगिकी और सॉफ्टवेयर अभियांत्रिकी सम्मिलित हैं।[2]
"कंप्यूटिंग" शब्द भी गिनती और गणना का समानार्थक है। पहले के समय में इसका उपयोग यांत्रिक कंप्यूटर मशीनों द्वारा की जाने वाली क्रिया के संदर्भ में और उससे पहले, मानव कंप्यूटरों के लिए किया जाता था।[3]
इतिहास
कंप्यूटिंग का इतिहास कंप्यूटिंग हार्डवेयर और आधुनिक कंप्यूटिंग प्रौद्योगिकी के इतिहास से अधिक लंबा है, इसमें मेंज की सहायता के साथ या बिना पेन और पेपर के तरीकों का इतिहास सम्मिलित है। कम्प्यूटिंग संख्याओं के प्रतिनिधित्व से घनिष्ठ रूप से जुड़ा हुआ है, यद्यपि कंप्यूटिंग के लिए आवश्यक गणितीय अवधारणाएं अंक प्रणालीयों से पहले उपस्थित थीं। इन अवधारणाओं में एक से एक पत्राचार, गिनती का आधार, एक मानक की तुलना माप के लिए प्रयुक्त और 3-4-5 समकोण त्रिभुज एक समकोण सुनिश्चित करने के लिए उपकरण भी सम्मिलित हैं।।[citation needed]
गणना में उपयोग के लिए सबसे पहला ज्ञात उपकरण अबेकस है, और यह माना जाता है कि इसका आविष्कार लगभग 2400 ईसा पूर्व बेबीलोन में हुआ था।[citation needed] इसकी मूल शैली कंकड़ के साथ रेत में खींची गई रेखाओं द्वारा थी। अधिक आधुनिक परिकलन के अबासी का उपयोग आज भी गणना उपकरण के रूप में किया जाता है। यह पहली ज्ञात गणना सहायता थी जो - 2,000 वर्षों तक ग्रीक विधियों से पहले।[4][better source needed]
कंप्यूटिंग में अंकीय इलेक्ट्रॉनिक्स का उपयोग करने का पहला रिकॉर्ड किया गया, प्रस्ताव सी.ई. व्यान-विलियम्स द्वारा 1931 का पेपर भौतिक घटनाओं की उच्च गति स्वचालित गणना के लिए थायराट्रॉन का उपयोग था।[5] क्लाउड शैनन के 1938 के पेपर रिले और स्विचिंग परिपथ का प्रतीकात्मक विश्लेषण ने तब बूलियन बीजीय संचालन के लिए इलेक्ट्रॉनिक्स का उपयोग करने का विचार पेश किया।
1925 में जूलियस एडगर लिलिएनफेल्ड द्वारा एक फील्ड-इफेक्ट ट्रांजिस्टर की अवधारणा प्रस्तावित की गई थी। जॉन बार्डीन और वाल्टर ब्रेटन ने बेल लैब्स में विलियम शॉक्ले के अधीन काम करते हुए, 1947 में पहला काम करने वाला ट्रांजिस्टर, बिंदु-संपर्क ट्रांजिस्टर बनाया।[6][7] 1953 में मैनचेस्टर विश्वविद्यालय ने पहला ट्रांजिस्टरयुक्त कंप्यूटर बनाया, जिसे ट्रांजिस्टर मैनचेस्टर कंप्यूटर कहा जाता है।[8] यद्यपि प्रारम्भ मे जंक्शन ट्रांजिस्टर अपेक्षाकृत भारी उपकरण थे जिनका बड़े पैमाने पर उत्पादन करना जटिल था, जो उन्हें कई विशिष्ट अनुप्रयोगों तक सीमित कर देता था।[9] मेटल-ऑक्साइड-सिलिकॉन फील्ड-इफेक्ट ट्रांजिस्टर MOSFET या MOS ट्रांजिस्टर का आविष्कार मोहम्मद अटाला और डॉन कहंग ने 1959 में बेल लैब्स में किया था।[10][11] यह पहला सही मायने में कॉम्पैक्ट ट्रांजिस्टर था जिसे व्यापक उपयोग के लिए छोटा और बड़े पैमाने पर उत्पादित किया जा सकता था।[9] MOSFET ने उच्च-घनत्व वाले एकीकृत परिपथ चिप्स का निर्माण संभव बनाया,[12][13] जिससे कंप्यूटर क्रांति [14] या माइक्रो कंप्यूटर क्रांति के रूप में जाना जाता है।[15]
कंप्यूटर
कंप्यूटर एक ऐसी इलेक्ट्रोनिक मशीन है जो निर्देशों के समूह के अनुसार डेटा (कंप्यूटिंग) में कुशलतापूर्वक प्रयोग करती है जिसे कंप्यूटर प्रोग्राम कहा जाता है। प्रोग्राम का निष्पादन योग्य रूप होता है जिसे कंप्यूटर सीधे निर्देशों को निष्पादित करने के लिए उपयोग कर सकता है। अपने मानव-पठनीय स्रोत सांकेतिक रूप में एक ही कार्यक्रम, एक प्रोग्रामर को कलनविधि के रूप में ज्ञात चरणों के अनुक्रम का अध्ययन और विकास करने में सक्षम बनाता है। क्योंकि निर्देशों को विभिन्न प्रकार के कंप्यूटरों में निष्पादित किया जा सकता है, स्रोत निर्देशों का एक संग्रह सीपीयू प्रकार के अनुसार मशीन निर्देशों में परिवर्तित हो जाता है।।[citation needed]
निष्पादन प्रक्रिया कंप्यूटर प्रोग्राम में निर्देशों को पूरा करती है। निर्देश कंप्यूटर द्वारा की गई गणनाओं को व्यक्त करते हैं। वे निष्पादन मशीन पर सरल क्रियाओं के अनुक्रमों को प्रेरित करते हैं। वे क्रियाएं निर्देशों की प्रोग्रामिंग भाषाओं के औपचारिक शब्दार्थ के अनुसार प्रभाव उत्पन्न करती हैं।
कंप्यूटर हार्डवेयर
कंप्यूटर हार्डवेयर में कंप्यूटर के भौतिक भाग सम्मिलित हैं, जिसमें सेंट्रल प्रोसेसिंग यूनिट, मेमोरी और इनपुट / आउटपुट सम्मिलित हैं। कंप्यूटर हार्डवेयर के क्षेत्र में कम्प्यूटेशनल तर्क और कंप्यूटर संरचना प्रमुख विषय हैं।[citation needed]
कंप्यूटर सॉफ्टवेयर
कंप्यूटर सॉफ्टवेयर, या सिर्फ सॉफ्टवेयर, कंप्यूटर प्रोग्राम और संबंधित डेटा का एक संग्रह है, जो कंप्यूटर को निर्देश प्रदान करता है। सॉफ्टवेयर एक या एक से अधिक कंप्यूटर प्रोग्राम और कंप्यूटर के भंडारण में रखे डेटा को संदर्भित करता है। यह प्रोग्रामों प्रक्रियाओं कलन विधि का समूह है जो साथ ही डेटा प्रोसेसिंग प्रणाली के संचालन से संबंधित इसके दस्तावेज भी हैं।[citation needed] प्रोग्राम सॉफ़्टवेयर उस कंप्यूटर प्रोग्राम का कार्य करता है जिसे वह प्रारम्भ करता है, या तो सीधे कंप्यूटर हार्डवेयर को निर्देश (कंप्यूटर विज्ञान) प्रदान करके या सॉफ़्टवेयर के किसी अन्य भाग में इनपुट के रूप में सेवा करके शब्दावली को पुराने शब्द कंप्यूटर हार्डवेयर अर्थात् भौतिक उपकरण के विपरीत बनाया गया था। हार्डवेयर के विपरीत सॉफ्टवेयर अमूर्त है।[16] सॉफ़्टवेयर का उपयोग कभी-कभी अधिक संकीर्ण अर्थों में भी किया जाता है, जिसका अर्थ केवल एप्लिकेशन सॉफ़्टवेयर है।
सिस्टम सॉफ्टवेयर
सिस्टम सॉफ़्टवेयर, या सिस्टम सॉफ़्टवेयर, कंप्यूटर हार्डवेयर को संचालित करने और नियंत्रित करने के लिए और एप्लिकेशन सॉफ़्टवेयर चलाने के लिए एक प्लेटफ़ॉर्म प्रदान करने के लिए डिज़ाइन किया गया कंप्यूटर सॉफ़्टवेयर है। सिस्टम सॉफ्टवेयर में ऑपरेटिंग सिस्टम, यूटिलिटी सॉफ्टवेयर, डिवाइस ड्राइवर, खिड़की प्रणाली और फर्मवेयर सम्मिलित हैं। अधिकांश उपयोग किए जाने वाले विकास उपकरण, जैसे कि कंपाइलर, लिंकर (कंप्यूटिंग) और डिबगिंग को सिस्टम सॉफ्टवेयर के रूप में वर्गीकृत किया जाता है।[17] सिस्टम सॉफ्ट्वेयर और मिडलवेयर कंप्यूटर की क्षमताओं का प्रबंधन और एकीकरण करते हैं, लेकिन सामान्य रूप से एप्लिकेशन सॉफ़्टवेयर के विपरीत उपयोगकर्ता को लाभ पहुंचाने वाले कार्यों के प्रदर्शन में उन्हें सीधे प्रारम्भ नहीं करते हैं।
एप्लीकेशन सॉफ्टवेयर
एप्लिकेशन सॉफ़्टवेयर, जिसे एप्लिकेशन या ऐप के रूप में भी जाना जाता है कंप्यूटर सॉफ्टवेयर है, जिसे उपयोगकर्ता को विशिष्ट कार्यों को करने में मदद करने के लिए बनाया गया है। उदाहरणों में उद्यम सॉफ्टवेयर , अकाउंटिंग सॉफ्टवेयर, ऑफिस सूट, ग्राफिक्स सॉफ्टवेयर और मीडिया प्लेयर (एप्लिकेशन सॉफ्टवेयर) सम्मिलित हैं। कई एप्लिकेशन प्रोग्राम मुख्य रूप से दस्तावेजों से संबंधित होते हैं।[citation needed] ऐप्स को कंप्यूटर और उसके सिस्टम सॉफ़्टवेयर के साथ उत्पाद किया जा सकता है, या अलग से प्रकाशित किया जा सकता है। कुछ उपयोगकर्ता बंडल किए गए ऐप्स से संतुष्ट हैं और उन्हें कभी भी अतिरिक्त एप्लिकेशन इंस्टॉल करने की आवश्यकता नहीं है। सिस्टम सॉफ्टवेयर हार्डवेयर का प्रबंधन करता है और एप्लिकेशन कार्य करता है, जो बदले में उपयोगकर्ता की सहायता करता है।
एप्लिकेशन सॉफ़्टवेयर किसी विशेष कंप्यूटिंग मंच या सिस्टम सॉफ़्टवेयर की शक्ति को किसी विशेष उद्देश्य पर लागू करता है। कुछ ऐप, जैसे कि माइक्रोसॉफ्ट ऑफिस, कई अलग-अलग प्लेटफॉर्म के लिए कई संस्करणों में विकसित किए गए हैं; दूसरों की आवश्यकताएं कम होती हैं और आमतौर पर उन्हें उनके द्वारा चलाए जाने वाले प्लेटफॉर्म द्वारा संदर्भित किया जाता है। उदाहरण के लिए, Microsoft Windows के लिए भौगोलिक एप्लिकेशन या शिक्षा के लिए एंड्रॉइड एप्लिकेशन या लिनक्स गेमिंग एप्लिकेशन जो केवल एक प्लेटफॉर्म पर चलते हैं और एप्लिकेशन की लोकप्रियता के कारण उस प्लेटफॉर्म की वांछनीयता को बढ़ाते हैं, जिन्हें किलर एप्लिकेशन के रूप में जाना जाता है।[citation needed]
कंप्यूटर नेटवर्क
कंप्यूटर नेटवर्क, जिसे अधिकांश केवल एक नेटवर्क के रूप में संदर्भित किया जाता है, हार्डवेयर घटकों और संचार माध्यमों के द्वारा परस्पर जुड़े कंप्यूटरों का एक संग्रह है, जो संसाधनों और सूचनाओं को साझा करने की अनुमति देता है।[18] जब उपकरण में कम से कम प्रक्रिया रिमोट उपकरण में रहने वाली कम से कम एक प्रक्रिया से डेटा भेजने या प्राप्त करने में सक्षम होती है, तो दो उपकरणों को नेटवर्क में कहा जाता है। नेटवर्क को विभिन्न प्रकार की विशेषताओं के अनुसार वर्गीकृत किया जा सकता है जैसे कि डेटा के परिवहन के लिए उपयोग किया जाने वाला माध्यम, संचार प्रोटोकॉल का उपयोग, स्केल, नेटवर्क टोपोलॉजी और संगठनात्मक क्षेत्र।
संचार प्रोटोकॉल एक कंप्यूटर नेटवर्क में सूचनाओं के आदान-प्रदान के लिए नियमों और डेटा स्वरूपों को परिभाषित करते हैं,जो कंप्यूटर नेटवर्क प्रोग्रामिंग के लिए आधार प्रदान करते हैं। एक प्रसिद्ध संचार प्रोटोकॉल ईथरनेट है, हार्डवेयर और लिंक परत मानक जो स्थानीय क्षेत्र नेटवर्क में सर्वव्यापी है। अन्य सामान्य प्रोटोकॉल इंटरनेट प्रोटोकॉल समूह है, जो इंटरनेटवर्किंग के लिए प्रोटोकॉल के एक समूह को परिभाषित करता है, अर्थात कई नेटवर्क के बीच डेटा संचार के लिए, होस्ट-टू-होस्ट डेटा ट्रांसफर और एप्लिकेशन-विशिष्ट डेटा ट्रांसमिशन प्रारूप।[citation needed]
कंप्यूटर नेटवर्किंग को कभी-कभी विद्युत अभियन्त्रण , दूरसंचार , कंप्यूटर विज्ञान, सूचना प्रौद्योगिकी या कंप्यूटर इंजीनियरिंग का उप-विषय भी माना जाता है, क्योंकि यह इन विषयों के सैद्धांतिक और व्यावहारिक अनुप्रयोग पर निर्भर करता है।[citation needed]
इंटरनेट
इंटरनेट इंटरकनेक्टेड कंप्यूटर नेटवर्क की एक वैश्विक प्रणाली है जो अरबों उपयोगकर्ताओं की सेवा के लिए मानक इंटरनेट प्रोटोकॉल सूट (टीसीपी/आईपी) का उपयोग करती है। इसमें लाखों निजी, सार्वजनिक, शैक्षणिक, व्यावसायिक और सरकारी नेटवर्क शामिल हैं, जो स्थानीय से लेकर वैश्विक तक के दायरे में हैं। ये नेटवर्क इलेक्ट्रॉनिक, वायरलेस और ऑप्टिकल नेटवर्किंग प्रौद्योगिकियों की एक विस्तृत श्रृंखला से जुड़े हुए हैं। इंटरनेट में सूचना संसाधनों और सेवाओं की एक विस्तृत श्रृंखला है, जैसे वर्ल्ड वाइड वेब के इंटर-लिंक्ड हाइपरटेक्स्ट दस्तावेज़ और ईमेल का समर्थन करने के लिए सूचना आधारभूत संरचना।[citation needed]
कंप्यूटर प्रोग्रामिंग
कंप्यूटर प्रोग्रामिंग कंप्यूटर प्रोग्राम के सोर्स कोड और प्रलेखन को लिखने, परीक्षण करने, डिबग करने और बनाए रखने की प्रक्रिया है। यह स्रोत कोड एक प्रोग्रामिंग भाषा में लिखा गया है, जो एक कृत्रिम भाषा है जो अक्सर प्राकृतिक भाषा ओं की तुलना में अधिक प्रतिबंधात्मक होती है, लेकिन कंप्यूटर द्वारा आसानी से अनुवादित होती है। प्रोग्रामिंग का उपयोग मशीन से कुछ वांछित व्यवहार (अनुकूलन) को लागू करने के लिए किया जाता है।[citation needed] उच्च गुणवत्ता वाले सोर्स कोड को लिखने के लिए कंप्यूटर साइंस डोमेन और उस डोमेन दोनों का ज्ञान होना आवश्यक है जिसमें एप्लिकेशन का उपयोग किया जाएगा। इस प्रकार उच्चतम गुणवत्ता वाला सॉफ़्टवेयर अक्सर डोमेन विशेषज्ञों की एक टीम द्वारा विकसित किया जाता है, प्रत्येक विकास के किसी न किसी क्षेत्र में विशेषज्ञ होता है।[citation needed] हालाँकि, प्रोग्रामर शब्द हैकर (शौकिया) से लेकर हैकर (प्रोग्रामर उपसंस्कृति) से लेकर पेशेवर तक कार्यक्रम की गुणवत्ता की एक श्रृंखला पर लागू हो सकता है। एक नए किलर एप्लिकेशन को लॉन्च करने के लिए अवधारणा के प्रमाण को उत्पन्न करने के लिए आवश्यक अधिकांश या सभी कंप्यूटर प्रोग्रामिंग करना एक एकल प्रोग्रामर के लिए भी संभव है| हत्यारा आवेदन।[citation needed]
कंप्यूटर प्रोग्राम
एक प्रोग्रामर, कंप्यूटर प्रोग्रामर या कोडर वह व्यक्ति होता है जो कंप्यूटर सॉफ्टवेयर लिखता है। कंप्यूटर प्रोग्रामर शब्द कंप्यूटर प्रोग्रामिंग के एक क्षेत्र में एक विशेषज्ञ या एक सामान्यवादी को संदर्भित कर सकता है जो कई प्रकार के सॉफ़्टवेयर के लिए कोड लिखता है। जो प्रोग्रामिंग के लिए औपचारिक दृष्टिकोण का अभ्यास या दावा करता है उसे प्रोग्रामर विश्लेषक के रूप में भी जाना जा सकता है।[citation needed] एक प्रोग्रामर की प्राथमिक कंप्यूटर भाषा (सी (प्रोग्रामिंग भाषा) , सी ++, जावा (प्रोग्रामिंग भाषा) , लिस्प (प्रोग्रामिंग भाषा) , पायथन प्रोग्रामिंग भाषा , आदि) अक्सर उपरोक्त शीर्षकों से पहले होती है, और जो अक्सर वेब वातावरण में काम करते हैं वेब के साथ उनके शीर्षकों को उपसर्ग करें। प्रोग्रामर शब्द का उपयोग सॉफ्टवेयर डेवलपर , सॉफ्टवेयर इंजीनियर , कंप्यूटर वैज्ञानिक या सॉफ्टवेयर विश्लेषक के संदर्भ में किया जा सकता है। हालांकि, इन व्यवसायों के सदस्यों के पास प्रोग्रामिंग से परे अन्य सॉफ्टवेयर इंजीनियरिंग कौशल हैं।[19]
कंप्यूटर उद्योग
कंप्यूटर उद्योग कंप्यूटर सॉफ्टवेयर विकसित करने, कंप्यूटर हार्डवेयर और कम्प्यूटर नेट्वर्किंग इन्फ्रास्ट्रक्चर को डिजाइन करने, कंप्यूटर घटकों के निर्माण और सिस्टम प्रशासक और रखरखाव सहित सूचना प्रौद्योगिकी सेवाएं प्रदान करने में शामिल व्यवसायों से बना है।[citation needed]
सॉफ्टवेयर उद्योग में सॉफ्टवेयर विकास, सॉफ्टवेयर रखरखाव और सॉफ्टवेयर के सॉफ्टवेयर प्रकाशक में लगे व्यवसाय शामिल हैं। उद्योग में सॉफ्टवेयर सेवा (अर्थशास्त्र) भी शामिल है, जैसे प्रशिक्षण , सॉफ्टवेयर प्रलेखन और परामर्श।[citation needed]
कंप्यूटिंग के उप-विषय
कंप्यूटर इंजीनियरिंग
कंप्यूटर इंजीनियरिंग एक अकादमिक अनुशासन है जो कंप्यूटर हार्डवेयर और सॉफ्टवेयर विकसित करने के लिए आवश्यक इलेक्ट्रिकल इंजीनियरिंग और कंप्यूटर विज्ञान के कई क्षेत्रों को एकीकृत करता है।[20] कंप्यूटर इंजीनियरों के पास आमतौर पर केवल सॉफ्टवेयर इंजीनियरिंग या इलेक्ट्रॉनिक इंजीनियरिंग के बजाय इलेक्ट्रॉनिक इंजीनियरिंग (या इलेक्ट्रिकल इंजीनियरिंग), सॉफ्टवेर डिज़ाइन और हार्डवेयर-सॉफ्टवेयर एकीकरण में प्रशिक्षण होता है। कंप्यूटर इंजीनियर अलग-अलग माइक्रोप्रोसेसर , निजी कंप्यूटर और सुपर कंप्यूटर के डिजाइन से लेकर सर्किट डिज़ाइन तक, कंप्यूटिंग के कई हार्डवेयर और सॉफ्टवेयर पहलुओं में शामिल हैं। इंजीनियरिंग के इस क्षेत्र में न केवल अपने स्वयं के डोमेन के भीतर हार्डवेयर का डिज़ाइन शामिल है, बल्कि हार्डवेयर और उस संदर्भ के बीच की बातचीत भी शामिल है जिसमें यह संचालित होता है।[21]
सॉफ्टवेयर इंजीनियरिंग
सॉफ्टवेयर अभियांत्रिकी (एसई) सॉफ्टवेयर के डिजाइन, विकास, संचालन और रखरखाव और इन दृष्टिकोणों के अध्ययन के लिए एक व्यवस्थित, अनुशासित और मात्रात्मक दृष्टिकोण का अनुप्रयोग है। यानी सॉफ्टवेयर के लिए इंजीनियरिंग का अनुप्रयोग।[22][23][24] यह किसी समस्या के समाधान की कल्पना, मॉडल और पैमाने के लिए अंतर्दृष्टि का उपयोग करने का कार्य है। शब्द का पहला संदर्भ 1968 नाटो सॉफ्टवेयर इंजीनियरिंग सम्मेलन है, और उस समय कथित सॉफ्टवेयर संकट के बारे में सोचा गया था।[25][26][27] सॉफ्टवेयर विकास, एक व्यापक रूप से इस्तेमाल किया जाने वाला और अधिक सामान्य शब्द, जरूरी नहीं कि इंजीनियरिंग प्रतिमान को समाहित करे। एक इंजीनियरिंग अनुशासन के रूप में सॉफ्टवेयर इंजीनियरिंग की आम तौर पर स्वीकृत अवधारणाओं को गाइड टू द ज्ञान का सॉफ्टवेयर इंजीनियरिंग निकाय (SWEBOK) में निर्दिष्ट किया गया है। SWEBOK ISO/IEC TR 19759:2015 में अंतरराष्ट्रीय स्तर पर स्वीकृत मानक बन गया है।[28]
कंप्यूटर विज्ञान
कंप्यूटर विज्ञान या कंप्यूटिंग विज्ञान (संक्षिप्त सीएस या कॉम्प विज्ञान) गणना और इसके अनुप्रयोगों के लिए विज्ञान और व्यावहारिक दृष्टिकोण है। एक कंप्यूटर वैज्ञानिक गणना के सिद्धांत और कम्प्यूटेशनल सिस्टम के डिजाइन में माहिर हैं।[29] इसके उपक्षेत्रों को कंप्यूटर प्रणाली में इसके कार्यान्वयन और अनुप्रयोग के लिए व्यावहारिक तकनीकों और विशुद्ध रूप से सैद्धांतिक क्षेत्रों में विभाजित किया जा सकता है। कुछ, जैसे कि कम्प्यूटेशनल जटिलता सिद्धांत , जो कम्प्यूटेशनल समस्या ओं के मौलिक गुणों का अध्ययन करता है, अत्यधिक सारगर्भित हैं, जबकि अन्य, जैसे कंप्यूटर ग्राफिक्स (कंप्यूटर विज्ञान) , वास्तविक दुनिया के अनुप्रयोगों पर जोर देते हैं। अन्य कम्प्यूटेशंस को लागू करने में चुनौतियों पर ध्यान केंद्रित करते हैं। उदाहरण के लिए, प्रोग्रामिंग भाषा सिद्धांत अध्ययन गणनाओं के विवरण के लिए दृष्टिकोण करता है, जबकि कंप्यूटर प्रोग्रामिंग का अध्ययन प्रोग्रामिंग भाषाओं और जटिल प्रणालियों के उपयोग की जांच करता है। मानव -कंप्यूटर संपर्क का क्षेत्र कंप्यूटर और गणनाओं को उपयोगी, प्रयोग करने योग्य और मनुष्यों के लिए सार्वभौमिक रूप से सुलभ बनाने में चुनौतियों पर केंद्रित है।[citation needed]
साइबर सुरक्षा
साइबर सुरक्षा का क्षेत्र कंप्यूटर सिस्टम और नेटवर्क की सुरक्षा से संबंधित है। इसमें सूचना गोपनीयता , आईटी सेवाओं के सेवा के इनकार को रोकना और हार्डवेयर, सॉफ्टवेयर और डेटा की चोरी और क्षति को रोकना शामिल है।[30]
डेटा विज्ञान
डेटा विज्ञान एक ऐसा क्षेत्र है जो डेटा की बढ़ती मात्रा और उपलब्धता द्वारा संचालित डेटा से जानकारी और अंतर्दृष्टि निकालने के लिए वैज्ञानिक और कंप्यूटिंग टूल का उपयोग करता है।[31] डेटा माइनिंग , बिग डेटा, आंकड़े और मशीन लर्निंग सभी डेटा साइंस से जुड़े हुए हैं।[32]
सूचना प्रणाली
सूचना प्रणाली (आईएस) हार्डवेयर और सॉफ्टवेयर के पूरक नेटवर्क का अध्ययन है (सूचना प्रौद्योगिकी देखें) जिसका उपयोग लोग और संगठन डेटा (कंप्