Рачунарство
![Computer simulation](http://upload.wikimedia.org/wikipedia/commons/thumb/4/42/GalvesLocherbach_-_Low_resolution.gif/250px-GalvesLocherbach_-_Low_resolution.gif)
![Early vacuum tube Turing complete computer](http://upload.wikimedia.org/wikipedia/commons/thumb/e/e5/ENIAC-changing_a_tube.jpg/250px-ENIAC-changing_a_tube.jpg)
![The Rasberry Pi](http://upload.wikimedia.org/wikipedia/commons/thumb/1/10/Raspberry_Pi_4_Model_B_-_Top.jpg/250px-Raspberry_Pi_4_Model_B_-_Top.jpg)
Рачунарство је наука која се бави проучавањем теоретских основа информације и рачунања, те њиховим имплементацијама и применама у рачунарским системима. Рачунарство има многа потпоља; неки наглашавају рачунање и специфичне резултате (као што је рачунарска графика), док други наглашавају својства рачунских проблема, (као што је теорија комплексности). Трећи су усредсређени на изазове у остварењу рачунања. На пример, теорија програмских језика проучава приступе у опису рачунања, док рачунарско програмирање примењује специфичне програмске језике за решавање специфичних рачунских проблема са решењима. Даље потпоље, интеракција човека и рачунара, се фокусира на изазове у изради рачунара и чињењу рачунања корисним, користивим и универзално приступачним свим људима.
Дефиниције
[уреди | уреди извор]ACM Рачунарски курикулуми 2005[4] и 2020 дефинишу „рачунарство” на следећи начин:
„На општи начин, рачунарство се може дефинисати тако да подразумева било коју циљно оријентисану активност која захтева, користи или ствара рачунаре. Дакле, рачунарство укључује пројектовање и изградњу хардверских и софтверских система за широк спектар сврха; обрада, структурирање и управљање разним врстама информација; извођење научних студија помоћу рачунара; чинећи да се рачунарски системи понашају интелигентно; стварање и коришћење комуникационих и забавних медија; проналажење и прикупљање информација релевантних за било коју одређену сврху итд. Листа је готово бескрајна, а могућности су огромне.”
Историја
[уреди | уреди извор]![](http://upload.wikimedia.org/wikipedia/commons/thumb/f/ff/Babbage_Difference_Engine_%28Being_utilised%29.jpg/220px-Babbage_Difference_Engine_%28Being_utilised%29.jpg)
Почетак рачунарства
[уреди | уреди извор]Рачунарство је настало у 19. веку размишљањем Чарлса Бебиџа, који је замислио машину која би узимала податке, обрађивала их на неки начин и приказивала резултате кориснику. Машину је замислио као механички уређај, иако рачунари данас не раде на том принципу, постоји повезаност модерних рачунара с његовим пионирским идејама.
- Бинарни систем – данас скоро сваки рачунар користи бинарни бројни систем, који се састоји само од јединица и нула, што је за рачунар једноставно: 1 – има струје, 0 – нема струје. Систем који има десет цифара (0 – 9) зове се декадни, а постоје претпоставке да су Вавилонци користили хексадецимални систем (систем од шеснаест цифара). Бабиџе је имао идеју кориштења бушених картица за свој рачунар, а управо то се и користило за похрањивање података док се није открило магнетно записивање.
- Основна идеја – улазно/излазни систем којим се даје рачунару да обради податке, саопштава на који начин да их обради. Након што обављања задатка резултати бивају приказани на неком од излазних уређаја.
Први функционални рачунар, у данашњем смислу, направио је немачки изумитељ Конрад Цузе 1941. године. Програмски код машина је примала путем бушених картица и имала само ограничену могућност програмирања. Рачунар је радио помоћу електричних релеја и имао је одвојену радну меморију и улазно/излазни систем. У то време рачунари су били огромни, величине једне просечне куће, те су се најчешће користили за војне сврхе. За графички приказ хронологије рачунарства погледати: Хронологија хисторије рачунарства.
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/1e/Computer_server_rack.jpg/220px-Computer_server_rack.jpg)
Подела по генерацијама
[уреди | уреди извор]Рачунари се по историјском развоју, такође, деле на генерације, сходно технолошком напретку. Сваку новију генерацију обележава битно мање заузимање простора и већа брзина извршавања, боља поузданост и слично.
- Прва генерација рачунара
- 1937. до 1958. - темељна јединица израде рачунара је електронска цев.
- Друга генерација рачунара
- 1959. do 1963. - temeljna jedinica izrade računara je tranzistor.
- Трећа генерација рачунара
- 1964. до 1971. - темељна јединица израде рачунара је интегрисано коло.
- Четврта генерација рачунара
- Пета генерација рачунара
- Данашњи и будући рачунари, засновани на вештачкој интелигенцији (АИ).
Пионири рачунарства
[уреди | уреди извор]Рачунар
[уреди | уреди извор]Рачунар је машина која рукује подацима по упутству скупа наредби које се називају рачунарски програм. Програм има извршну форму коју рачунар користи за директно извршавање наредби. Исти програм у свом људски читљивом изворном коду омогућује програмеру да направи редослед корака који се називају алгоритам.
Извршни процес обавља наредбе у рачунарском програму. Наредбе изражавају рачунања које рачунар обавља, које потом покрећу низ радњи.
Рачунарски софтвер и хардвер
[уреди | уреди извор]Рачунарски софтвер јесте скуп рачунарских програма и сродних података који пружају наредбе рачунару шта и како треба да уради одређени задатак. Софтвер се односи на један или више рачунарских програма и података који се чувају у похрани рачунара за неке сврхе. Програмски софтвер обавља функцију програма директним давањем инструкција за хардвер рачунара или служи као улаз за неки други део софтвера.
Апликативни софтвер
[уреди | уреди извор]Апликативни софтвер јесте рачунарски софтвер направљен за обављање одређених задатака. Примери укључују пословни софтвер, рачуноводствени софтвер, уредске пакете, графички софтвер и софтвере за репродуковање медија (као што су слике, звук, филмови). Апликације могу доћи у пакету са рачунаром и његовим системским софтвером или се могу добавити одвојено.
Апликативни софтвер није исто што и системски софтвер, који управља управља хардверским могућностима рачунара и служи апликативном софтверу.
Системски софтвер
[уреди | уреди извор]Системски софтвер јесте рачунарски софтвер направљен за управљање и контролу рачунарског хардвера и за пружање платформе за покретање апликативног софтвера. Системски софтвер укључује оперативне системе, услужни софтвер, управљачке програме уређаја, прозорске системе и фирмвер. Развојни алати као што су компајлери, линкери и дебугери[5] сврставају се у системски софтвер.
Рачунарска мрежа
[уреди | уреди извор]Рачунарска мрежа јест скуп међусобно повезаних хардверских уређаја и рачунара комуникацијским каналима који омогућавају размену ресурса и информација.
Мреже се могу поделити на више начина, као што су врста медија кориштена за пренос података, врста комуникацијског протокола који се користи, величина мреже, топологија и организацијски опсег.
Комуникацијски протоколи одређују правила и формате података за размену информација у рачунарској мрежи и дају основу за мрежно програмирање. Познати комуникацијски протоколи су Етернет, хардверски стандард који је свеприсутан у локалним мрежама и Сет интернет протокола који одређује скуп протокола за мрежно умрежавање.
Умрежавање рачунара понекад се сматра поддисциплинама електротехнике, телекомуникација, рачунарске науке, информатичке технологије или рачунарског инжењерства, јер се ослања на теоријску и практичну примјену ових дисциплина.
Интернет
[уреди | уреди извор]Интернет је светски систем међусобно повезаних рачунарских мрежа који користе стандардни пакет интернетских протокола (ТЦП/ИП) за сервирање милијарди корисника који се састоји од милиона приватних, јавних, академских, пословних и владиних мрежа од локалног до светског опсега, које су повезане низом електронских, бежичних и оптичких мрежних технологија. Интернет садржи велику палету информативних ресурса и услуга, попут међусобно повезаних хипертекст докумената на World Wide Web мрежи и инфраструктуре е-поште.
Рачунарско програмирање
[уреди | уреди извор]Програмирање рачунара је процес писања, тестирања, уклањања грешака и одржавања изворног кода и документације рачунарских програма. Изворни код написан је програмским језиком, који као вештачки језик је често рестриктиван и захтевнији од природних језика, али је лако разумљив рачунару. Сврха програмирања је остварити жељено понашање рачунара.
Рачунарски програмер
[уреди | уреди извор]Рачунарски програмер или кодер је особа која пише рачунарски софтвер. Појам рачунарски програмер може се односити на стручњака за једно подручје рачунарског програмирања или на стручњака који пише код за многе врсте софтвера. Израз програмер може се користити за означавање софтверског програмера, софтверског инжењера, рачунарског научника или софтверског аналитичара. Обично људи у овим професијама[6] поседују и друге софтверске инжењерске вјештине, осим програмирања.
Рачунарска индустрија
[уреди | уреди извор]Рачунарску индустрију чине све фирме које су укључене у развој рачунарског софтвера, дизајн рачунарског хардвера и инфраструктуре рачунарских мрежа, производњу рачунарских компоненти и пружање услуга информационе технологије, укључујући администрацију и одржавање система.
Софтверска индустрија
[уреди | уреди извор]Софтверска индустрија укључује фирме које се баве развојем, одржавањем и објавом софтвера. Ова индустрија такођер укључује софтверске услуге, као што су обука, документација и саветовање.
Поддисциплине рачунарства
[уреди | уреди извор]Рачунарски инжењеринг
[уреди | уреди извор]Рачунарски инжењеринг је дисциплина која обједињује неколико подручја електротехнике и рачунарске науке потребних за развој рачунарског хардвера и софтвера. Рачунарски инжењери су обично обучени у пољима електронског инжењерства (или електротехнике), дизајна софтвера и хардверско-софтверске интеграције. Рачунарски инжењери укључени су у бројне хардверске и софтверске аспекте рачунарства, од дизајна појединачних микропроцесора, личних рачунара и суперрачунара.[7]
Софтверски инжењеринг
[уреди | уреди извор]Софтверски инжењеринг је примена систематског, дисциплинираног, мерљивог приступа дизајну, развоју, раду и одржавању софтвера, односно примена инжењеринга на софтвер.[8] Развој софтвера је доста коришћенији и генералнији појам који нужно не укључује инжењерску парадигму. Прихваћени појмови софтверског инжењеринга као инжењерске дисциплине наведени су у SWEBOK (енгл. Software Engineering Body of Knowledge) који је постао међународно прихваћен стандард ISO/IEC TR 19759: 2015.[9]
Рачунарска наука
[уреди | уреди извор]Рачунарска наука јесте научни и практични приступ рачунању и његовој примени. Рачунарски научник се специјализује за теорију рачунања и дизајн рачунарских система.[10]
Потпоља науке се деле на практичне технике за његову примену и примену у рачунарским системима и чисто теоријска подручја. Неки, попут теорије комплексности рачунања, који проучава основна својства рачунских проблема, врло су апстрактни, док други, попут рачунарске графике, наглашавају апликације у стварном свету. На пример, теорија програмских језика проучава приступе опису рачунања, док сама студија рачунарског програмирања истражује различите аспекте употребе програмских језика и сложених система. Интеракција између човека и рачунара фокусира се на изазове у кориштењу рачунара и рачунања који ће бити приступачни и употребљиви људима.
Информациони системи
[уреди | уреди извор]Информациони системи су интегрисани скуп компоненти за сакупљање, чување, обраду и преношење информација.[11][12]
Ова дисциплина спаја пословање и рачунарске науке користећи теоретске темеље информација и рачунања како би проучавали различите пословне моделе и сродне алгоритмичке процесе у оквиру рачунарске науке.[13][14][15][16]
Информациона технологија
[уреди | уреди извор]Информациона технологија (ИТ) јесте примена рачунара и телекомуникацијске опреме за похрану, дохваћање, пренос и манипулацију подацима, често у контексту пословања или подузетне активности.[17] Израз се уобичајено користи као синоним за рачунаре и рачунарске мреже, али обухвата и друге технологије дистрибуције информација као што су телевизија и телефони. Сродне индустрије информационој технологији су индустрије рачунарског хардвера, софтвера, електронике, полупроводника, интернета, телекомуникацијске опреме, е-трговине и рачунарских услуга.
Системска администрација
[уреди | уреди извор]Системски администратор је особа запослена за одржавање и управљање рачунарским системом или мрежом. Дужности администратора система су опсежне и могу се значајно разликовати од једне до друге организације. Системски администратори су обично задужени за инсталирање, подршку и одржавање сервера или других рачунарских система, те планирају или одговарају на прекиде у раду и друге проблеме. Остале дужности могу укључивати писање скрипти или основно програмирање, управљање пројектима везаним за рачунарске системе, надгледање или обучавање рачунарских оператора или саветовање за рачунарске проблеме изван знања особља техничке подршке.
Референце
[уреди | уреди извор]- ^ „Computing Classification System”. dl.acm.org.
- ^ Cellan-Jones, Rory (5. 5. 2011). „A£15 computer to inspire young programmers”. BBC News.
- ^ Price, Peter (3. 6. 2011). „Can a £15 computer solve the programming gap?”. BBC Click. Приступљено 2. 7. 2011.
- ^ The Joint Task Force for Computing Curricula 2005. „Computing Curricula 2005: The Overview Report” (PDF). Архивирано из оригинала (PDF) 2014-10-21. г.
- ^ Rouse, Margaret (март 2019). „system software”. WhatIs.com. TechTarget.
- ^ 5 Skills Developers Need Beyond Writing Code
- ^ Trinity College Dublin. „What is Computer System Engineering”. Приступљено 2006-04-21., "Computer engineers need not only to understand how computer systems themselves work, but also how they integrate into the larger picture. Consider the car. A modern car contains many separate computer systems for controlling such things as the engine timing, the brakes and the air bags. To be able to design and implement such a car, the computer engineer needs a broad theoretical understanding of all these various subsystems & how they interact.
- ^ ACM (2006). „Computing Degrees & Careers”. ACM. Архивирано из оригинала 2011-06-17. г. Приступљено 2010-11-23.
- ^ „Software Engineering -- Guide to the software engineering body of knowledge (SWEBOK)”. International Organization for Standardization. ISO/IEC TR 19759:2015. Приступљено 21. 5. 2019.
- ^ „WordNet Search - 3.1”. Wordnetweb.princeton.edu. Приступљено 2012-05-14.
- ^ „Definition of Application Landscape”. Software Engineering for Business Information Systems (sebis). 21. 1. 2009. Архивирано из оригинала 5. 3. 2011. г. Приступљено 14. 1. 2011.
- ^ Archibald, J.A. (мај 1975). „Computer Science education for majors of other disciplines”. AFIPS Joint Computer Conferences: 903—906. „Computer science spreads out over several related disciplines, and shares with these disciplines certain sub-disciplines that traditionally have been located exclusively in the more conventional disciplines”
- ^ Hoganson, Ken (децембар 2001). „Alternative curriculum models for integrating computer science and information systems analysis, recommendations, pitfalls, opportunities, accreditations, and trends”. Journal of Computing Sciences in Colleges. 17 (2): 313—325. ISSN 1937-4771. „Information Systems grew out of the need to bridge the gap between business management and computer science ...”
- ^ Davis, Timothy; Geist, Robert; Matzko, Sarah; Westall, James (март 2004). „τ'εχνη: A First Step”. Technical Symposium on Computer Science Education: 125—129. ISBN 1-58113-798-2. „In 1999, Clemson University established a (graduate) degree program that bridges the arts and the sciences... All students in the program are required to complete graduate level work in both the arts and computer science”
- ^ Hoganson, Ken (децембар 2001). „Alternative curriculum models for integrating computer science and information systems analysis, recommendations, pitfalls, opportunities, accreditations, and trends”. Journal of Computing Sciences in Colleges. 17 (2): 313—325. ISSN 1937-4771. „The field of information systems as a separate discipline is relatively new and is undergoing continuous change as technology evolves and the field matures”
- ^ Khazanchi, Deepak; Bjorn Erik Munkvold (лето 2000). „Is information system a science? an inquiry into the nature of the information systems discipline”. ACM SIGMIS Database. 31 (3): 24—42. ISSN 0095-0033. doi:10.1145/381823.381834. „From this we have concluded that IS is a science, i.e., a scientific discipline in contrast to purportedly non-scientific fields”
- ^ „Free on-line dictionary of computing (FOLDOC)”. Архивирано из оригинала 15. 4. 2013. г. Приступљено 9. 2. 2013.
Спољашње везе
[уреди | уреди извор]- „The NIST Definition of Cloud Computing” (PDF). U.S. Department of Commerce. септембар 2011.