కంప్యూటరు శాస్త్రం
కంప్యూటర్ శాస్త్రం అనగా సమాచారం గురించి, గణన గురించిన సైద్ధాంతిక పరిశోధన మరియు దానిని కంప్యూటర్లలో అమలు పరచడం మరియు నిర్వహణ. కంప్యూటర్ శాస్త్రంలో ఎన్నో విధాలయినటువంటి ఉప విభాగాలున్నాయి. వాటిలో కొన్ని ప్రత్యేకమైన ఫలితాలపై చొరవ చూపిస్తే (ఉదా: కంప్యూటర్ గ్రాఫిక్సు), మరికొన్ని సంక్లిష్టమైన గణిత సంబంధిత ఫలితాలకోసం అణ్వేషిస్తాయి. ఇంకా కొన్ని గణితాన్ని అమలు చేయడంలో గల సవాళ్ళపై దృష్టి సారిస్తాయి. ఉదాహరణకి ప్రోగ్రామింగ్ భాషాసిద్ధాంతం గణనపరమైన విషయాల గురించి విశదీకరిస్తే, కంప్యూటర్ భాషీకణం(computer programming) ఒక ప్రత్యేకమైన ప్రోగ్రామింగ్ భాషతో నిర్దిష్టమైన గణన సంబంధిత సమస్యలను పరిష్కరిస్తుంది.
ఆధునిక బీజ కంప్యూటర్ కనిపెట్టక ముందే చాలా తతంగం జరిగింది. గణన కోసం అబాకస్ లాంటి వాటిని ఉపయోగించేవారు. విల్హెల్మ్ షికార్డ్ 1963 లో మొదటి క్యాలిక్యులేటర్ ను నిర్మించాడు. తర్వాత చార్లెస్ బాబేజ్ విక్టోరియా రాణి కాలంలో డిఫరెన్సు ఇంజన్ను నిర్మించాడు. దాదాపు 1900వ సంవత్సరంలో ఐ.బి.యం కంపనీ వారు పంచ్ కార్డ్ మెషీన్లను తయారుచేసి అమ్మేవారు. అయినప్పటికీ ఈ యంత్రాలన్నీ ఒకేసారి ఒకటికన్నా ఎక్కువ పనులు చేసేవి కావు. 1920 కన్నా ముందు "కంప్యూటర్" అనే పదం గణించే ఉద్యోగినుద్దేషించి వాడబడేది. మొదటి తరం కంప్యూటర్ శాస్త్రపరిశోధకులైన కర్ట్ గోడెల్, అలోంజో చర్చ్ మరియు అలన్ ట్యూరింగ్ ఒక గుమాస్తా ఎలా పనిచేస్తాడో గమనించారు. ఒక గుమాస్తా సృజనాత్మకత ఏదీ లేకుండా గంటలకు గంటలు ఇవ్వబడిన సూచనల ప్రకారం పని చేయడం వారిని ఆకర్షించింది. ఈ విధమైన పనులకు స్వయంచాలిత యంత్రాలను ఉపయోగించినట్టైతే మానవ తప్పిదాలను నివారించవచ్చనే ఆలోచన వచ్చింది. ఈ పరిశీలన వారిని "గణన యంత్రాలను" నిర్మించేందుకు పురికొల్పింది. వారియొక్క సూక్ష్మబుద్ధి సకల విధాలైన గణిత సంబధిత పనులను చేసేటటువంటి యంత్రాలను తయారు చేయవచ్చనే యూనివర్సల్ కంప్యూటర్ సిద్ధాంతానికి రూపకల్పన చేసింది. యూనివర్సల్ కంప్యూటర్ సిద్ధాంతమే ఆధునిక కంప్యూటర్ శాస్త్రానికి పునాది వేసింది. 1940 ల తర్వాత మరింత శక్తివంతమైన గణన యంత్రాలను తయారు చేయడం మొదలు పెట్టారు. క్రమేణా కంప్యూటర్ అనే పదం మనుషులను కాక యంత్రాలను సూచించే పదంగా పరివర్తన చెందింది. కంప్యూటర్లు కేవలం గణిత సంబంధితమైన పనులకే పరిమితంకావని తెలుసుకున్న తరువాత కంప్యూటర్ శాస్త్రం దినదినాభివృద్ధి చెందడం మొదలు పెట్టింది. 1960 లో కంప్యూటర్ శాస్త్రం విశ్వ విద్యాలయాలలో ఒక అధ్యయన విభాగంగా రూపు దిద్దుకొని పట్టభద్రులను తయారు చేయడం మొదలైంది. కంప్యూటర్ల లభ్యత బాగా పెరగడంతో వివిధ రకాలైన కంప్యూటర్ అప్లికేషన్లకు ప్రత్యేకమైన బోధనా తరగతులు ప్రారంభించ బడ్డాయి.
తులనాత్మకంగా కంప్యూటర్ శాస్త్రం తక్కువ చరిత్ర కలిగినదే అయినప్పటికీ, సమాజంలో కొన్ని సమూలమైన మార్పులకు కారణభూతమైంది. అవి:
పేరును చూసి కంప్యూటర్ శాస్త్రం అంటే కంప్యూటర్ గూర్చి పరిశోధన అనుకుంటే పప్పులో కాలేసినట్టే. నిజానికి, ప్రముఖ కంప్యూటర్ శాస్త్రవేత్త ఎజర్ దిక్స్త్రాల్ చెప్పిన విధంగా, ""సౌర శాస్త్రం దూర దర్శిని గూర్చి ఎంత పరిశోధిస్తుందో కంప్యూటర్ శాస్త్రం కంప్యూటర్ గూర్చి అంతే పరిశోధిస్తుంది"". కంప్యూటర్ తయారీ మరియు అనుసంధాన పరమైన విషయాలు సాధారణంగా కంప్యూటర్ శాస్త్రానికి చెందని విభాగాలు చూసుకుంటాయి. ఉదాహరణకి కంప్యూటర్ హార్డువేర్ కంప్యూటర్ ఇంజనేరింగ్కి సంబంధించితే, వ్యాపారత్మకమైన కంప్యూటర్ నిర్వహణ ఇన్ఫర్మేషన్ టెక్నాలజీ కిందికి వస్తుంది. అసలు కంప్యూటర్ శాస్త్రమే శాస్త్రీయమైనది కాదని కుడా విమర్శలున్నాయి. స్టాన్ కెల్లీ బూటిల్ మాటల ప్రకారం ""కుళాయి రిపేరుకి హైడ్రో డైనమిక్సు ఎంత అవసరమో కంప్యూటర్ కి సైన్సు కూడా అంతే అవసరం."" ఎవరేమన్నప్పటికీ, కంప్యూటర్ ఆధారిత విభాగాలకు చెందిన ఎన్నో భావనలతో కంప్యూటర్ శాస్త్రం సంకరం చెందిదన్న విషయం మాత్రం నిజం. కంప్యూటర్ శాస్త్ర పరిశోధన అక్కడితో ఆగిపోక, ఎన్నో ఇతర విభాగాలకు ద్వారాలు తెరిచింది. ఉదా: ఆర్టిఫీషియల్ ఇంటెలిజెన్సు, , భౌతిక శాస్త్రం(క్వాంటం కంప్యూటింగ్) మరియు భాషా శాస్త్రం.
మరికొందరి దృష్టిలో కంప్యూటర్ శాస్త్రం గణిత శాస్త్రంతో ఎక్కువగా పెనవేసుకోబడింది.. ఆది దశలో కంప్యూటర్ శాస్త్రంపై కర్ట్ గోడెల్ మొదలైన గణిత శాస్త్ర వేత్తల ప్రభావం పడ్డ కారణంగా ఈ రెండు విభాగాల భావజాలం , , , మరియు బీజ గణితం వంటి విషయాలలో ఇచ్చి పుచ్చుకోవడం జరుగుతుంది. కంప్యూటర్ శాస్త్రం మరియు సాఫ్టువేరు ఇంజనీరింగుల మధ్య సంబంధం మొదటినుండి వివాదాస్పదమే అయినా, సాఫ్టువేర్ ఇంజనీరింగ్ అంటే ఏమిటి అనే అలాగే కంప్యూటర్ సైన్సు యొక్క దాన్ని మరింత జటిలం చేసింది. సాఫ్టువేర్ ఇంజనీరింగ్ కంప్యూటర్ సైన్సు యొక్క ఉప విభాగమని కొంతమంది నమ్మకం. ఇంజనీరింగ్, సైన్సుల మధ్య ఉన్న సంబంధాన్ని పసిగట్టిన వారికి మాత్రం "కంప్యూటర్ సైన్సు గణన పద్ధతులపై అధ్యయనం చేస్తే, కంప్యూటర్ ఇంజనీరింగ్ ఈ పద్ధతులను వివిధ విభాగాలకు ఎలా అనువర్తింపజేయాలనే విషయంపై దృష్టి సారించాలని" అర్థం అవుతుంది. ఈ భావాన్ని మరికొందరితో కలిసి వ్యప్తిలోకి తీసుకుని వచ్చారు. మరికొందరైతే సాఫ్టువేరు అసలు ఇంజనీరింగే కాదని అంటారు.
కంప్యూటర్ శాస్త్రం గణన వ్యవస్థల గురించిన సిద్ధాంతాలను, వాటి నిరూపణలకై శోధిస్తుంది. అంకితమైన విభాగం యొక్క విధానాలను గూర్చి పరిశోధించి, సార్వ జనీనమైన ప్రమాణాలను ఆవిష్కరిసస్తుంది కాబట్టి దీన్ని ఒక శాస్త్రంగా భావించవచ్చు. అన్ని శాస్త్రాల వలెనే, ఈ సిద్ధాంతాలను ఉపయోగించి ఉపయుక్తమైన ఇంజనీరింగ్ అప్లికేషన్లను తయారు చేయుటకు, తద్వారా మరిన్ని క్రొత్త ఆవిష్కరణలకు పునాదులు వేయడానికి ఉపయోగించవచ్చు.ఉదాహరణకి సి,సి ++,జావా భాషలు చాల ప్రముఖమైనవి .
ప్రత్యేకమైన సమస్యలను సాధించడానికి వాడే పద్ధతులకు ఈ వాక్యాన్ని వాడతారు. మరిన్ని వివరాలకు ప్రధాన వ్యాసాన్ని చూడండి
కొన్ని విశ్వవిద్యాలయాలలో కంప్యూటరు శాస్త్రాన్ని థీయరిటికల్ (?) స్టడీ ఆఫ్ కంప్యుటేషన్ గా మరియు అల్గారిదమిక్ రీజనింగుగా భోధిస్తారు. ఈ బోధనలో మామూలుగా థీయరీ ఆఫ్ కంప్యుటేషన్, అల్గారిథంల విశ్లేషణ, ఫార్మల్ పద్ధతులు, కాంకరెన్స్, డాటాబేసులు, కంప్యూటరు గ్రాఫిక్సు, సిస్టం విశ్లేషణ వంటి కోర్సులు చెపుతారు. ఇంకా కంప్యూటరు ప్రోగ్రామింగు కూడా చెపుతారు, కానీ దీనిని ఇతర విభాగాలకు సహాయకారిగా ఎక్కువగా భావిస్తారు, ఉన్నత కోర్సుగా కాకుండా! ఇక కొన్ని కాలేజీలు, విశ్వవిద్యాలయాలు మరియు సెకండరీ స్కూళ్ళు కంప్యూటరు శాస్త్రాన్ని వృత్తి విద్యగా చెపుతారు, ఈ కోర్సులలో కంప్యూటరు థీయరీ అల్గారిథంల పై కాకుండా కంప్యూటరు ప్రోగ్రామింగుపై ఎక్కువగా దృష్టి కేంద్రీకరిస్తారు. ఈ సిలబసు కంప్యూటరు విద్యను సాఫ్టువేర్ ఇండస్ట్రీకి ఉపయోగపడే ఉద్యోగులను తయారు చేయడంపైననే ఎక్కువగా దృష్టి కేంద్రీకరిస్తుంది. కంప్యూటరు శాస్త్రము యొక్క ప్రాక్టికల్ విషయాలను సాధారణంగా సాఫ్టువేర్ ఇంజినీరింగ్ అని పిలుస్తారు. కాకపోతే దేనిని సాఫ్టువేర్ ఇంజినీరింగు అన వచ్చు అనే విషయము పై ఏకాభిప్రాయము లేదు. ఉదాహరణకు చూడండి పీటర్ జే. జెన్నింగ్ "కంప్యూటరు సిలబస్‌లో గొప్ప సూత్రాలు ", టెక్నికల్ సింపోసియం ఆన్ కంప్యూటర్ సైన్సు ఎడుకేషన్, 2004.