Informatyka zajmuje się teoretycznymi podstawami informacji, algorytmami i architekturami układów ją przetwarzających oraz praktycznymi technikami ich stosowania.
Informatyka (niem.Informatik,ang.computer science, computing, computer engineering, IT, ICT)[1] –nauka ścisła oraztechniczna zajmująca się przetwarzaniem informacji, w tym równieżtechnologiami przetwarzania informacji oraz technologiami wytwarzaniasystemów przetwarzających informacje[2]. Zajmuje się rozwiązywaniem problemów obliczeniowych, opisem procesówalgorytmicznych oraz tworzeniemprogramów komputerowych i częściowo sprzętu komputerowego (z wyłączeniem zagadnień materialnych i energetycznych)[3][4][5]. Informatyka początkowo stanowiła częśćmatematyki, z czasem wyodrębniła się do oddzielnej dyscypliny. W języku polskim termin „informatyka” zaproponował w październiku 1968 r.Romuald Marczyński (w Zakopanem, na ogólnopolskiej konferencji podczas wykładu zatytułowanego„Informatyka, czyli maszyny matematyczne i przetwarzanie informacji”)[6], na wzór francuskiegoinformatique i niemieckiegoInformatik.
Termininformatics nie mógł zostać wprowadzony do słownictwa amerykańskiego z uwagi na problemy prawne – istniało tam przedsiębiorstwo o nazwieInformatics Inc(inne języki), co zablokowało chęć zmiany nazwyACM naSociety for Informatics. Wówczas popularny był już tam termincomputer science – dosłownie: „nauka o komputerze” – co może być mylące, stąd spotykał się często z krytyką środowisk akademickich[7]. Proponowano wiele alternatywnych nazw, m.in.Computer Studies, Computics, Computing Science, Computation Science, Information engineering, Information Technology. Association for Computing Machinery będące najważniejszą organizacją branżową przyjął termincomputing na nazwę ogólnej dyscypliny. Częściowo powrócono jednak później docomputer science ze względu na to, że termin ten się silnie zakorzenił. Współcześnie określeniecomputing odnosi się do całej dyscypliny, acomputer science to jej część w której obowiązuje rygor naukowy, podczas gdyinformatyka techniczna skupia się na aspektach praktycznych i traktowana jest jako nauka inżynierska. W informatyce technicznej można wyróżnić szereg specjalności, takich jakinżynieria komputerowa (computer engineering, technische Informatik[8]) związana z tworzeniem sprzętu komputerowego i oprogramowania wbudowanego,technologia informacyjna (information technology), współcześnie najczęściej spotykana w tworzeniu oprogramowania dla zastosowań biznesowych,inżynieria oprogramowania (software engineering), odnosząca się ogólnie do programowania, lecz ściśle związana z zarządzaniem procesem wytwarzania oprogramowania. SE i IT są czasem na wzór niemiecki zbiorczo nazywane informatyką praktyczną (niem.praktische Informatik)[9][10].
Przetwarzanie informacji jest różnie interpretowane, przez co istnieją różne definicje informatyki.Uniwersytet Edynburski definiuje ją jako naukę o systemach obliczeniowych, w której centralną notacją jest transformacja informacji[2]. WedługPetera J. Denninga podstawowym pytaniem leżącym u podstaw informatyki jest:„Co można zautomatyzować?”[11]. Według teorii Stuarta C. Shapiro, informatyka jest nauką przyrodniczą, która bada procedury. Adam Olszewski wyróżnił pięć rodzajów obiektów, które są przedmiotem zainteresowania informatyki: funkcje efektywnie obliczalne,algorytmy,programy komputerowe, realizacje i maszyny[12]. W roku 2005, wACMComputing Curricula[13] przedstawiono następujący opis:
Ogólnie rzecz biorąc, możemy zdefiniować informatykę (computing) jako jakąkolwiek zorientowaną na cel działalność wymagającą, korzystającą z lub tworzącą maszyny obliczeniowe. W związku z tym informatyka obejmuje projektowanie i budowanie systemów sprzętu i oprogramowania do szerokiego zakresu celów; przetwarzanie, strukturyzację i zarządzanie różnymi rodzajami informacji; obliczeniowe badania naukowe; sprawianie, by systemy komputerowe zachowywały się inteligentnie; (...) Lista jest praktycznie nieskończona, a możliwości są ogromne.
Początkowo towarzystwa ACM i IEEE CS publikowały własne oddzielne zalecenia dotyczące programów studiów. Z czasem postanowiono utworzyć wspólną dyscyplinę oraz wspólne zalecenia dotyczące programów kształcenia. W pracach nad ujednoliceniem programów studiów uczestniczyły organizacje: ACM, IEEE Computer Society, Association for Information Systems, ACM SIG Information Technology Education, British Computer Society, International Federation for Information Processing, ABET and CSAB. Wyróżniono 5 głównych specjalizacji[15]:inżynieria komputerowa (ang.computer engineering, CE), informatyka naukowa (ang.computer science, CS),systemy informacyjne (ang.information systems, IS),technologia informacji (ang.information technology, IT),inżynieria oprogramowania (ang.software engineering, SE). W 2020 podobna grupa organizacji przygotowała programy studiów dla kolejnych 2 specjalizacji:cyberbezpieczeństwo (ang.cybersecurity) orazdanologię (ang.data Science). W Niemczech zwyczajowo dzieli się natomiast na informatykę teoretyczną, techniczną, praktyczną oraz realizacje i stosowaną.
Teoretyczna informatyka (ang. theoretical computer science) ma ducha matematycznego i abstrakcyjnego, ale motywację czerpie z praktycznych i codziennych obliczeń. Jej celem jest zrozumienie natury obliczeń, w konsekwencji czego wprowadza ich coraz bardziej efektywne metody. Jest ona częściąmatematyki i informatyki, która grupuje matematyczne podstawy informatyki. Jej najważniejsze obszary to teoria obliczeń, teoria informacji oraz algorytmika. Informatyka teoretyczna stara się odpowiedzieć na fundamentalne pytania w informatyce np.P versus NP problem i stanowi trzon dla bardziej praktycznych dziedzin.
Algorytmika to więcej niż dział informatyki. Tkwi ona w centrum wszystkich działów informatyki.
Teoria obliczeń dzieli się na trzy główne części:teorię automatów,teorię obliczalności orazteorię złożoności. Teoria automatów zajmuje się definicjami i własnościamimodeli obliczeń, matematycznymi modelami maszyn liczących. W uproszczeniu zajmuje się ona odpowiedzią na pytanie czym jest komputer, teoria obliczalności zajmuje się odpowiedzią na pytanie, które problemy dają się rozwiązać przy pomocykomputera, a teoria złożoności – odpowiedzią na pytanie jak szybko da się to zrobić[18][19]. Przykładowymi zagadnieniami sąMaszyna Turinga czyHipoteza Churcha-Turinga.Języki formalne stanowią podstawę badań nad językami komputerowymi, jak i naturalnymi wlingwistyce.Systemy formalne są tworzone i badane zarówno jako samodzielne abstrakcyjne twory, jak i systemy opisu rzeczywistości.
Informatyka kwantowa to gałąź informatyki łącząca ją zmechaniką kwantową, w której do przetwarzania informacji wykorzystywane są własnościukładów kwantowych[20]. Elementarnym nośnikieminformacji kwantowej jestkubit, kwantowy odpowiednik bitu. Stan kubitu opisany jest przez dowolnąkombinację liniową stanów bazowych. W najbardziej popularnym modelu kwantowego przetwarzania informacji, operacje na kubitach są reprezentowane za pomocąbramek kwantowych. Najbardziej spektakularny sukces informatyki kwantowej tokwantowa kryptografia. Natomiast najbardziej obiecującym kierunkiem badań są prace dotyczące ideikwantowego komputera. Dynamiczny rozwój technologii w ostatnich latach spowodował, że gałąź ta wyłamuje się poza czysto-teoryczne rozważania. Stworzono pewne realizacje bramek kwantowych, a na targach CES w 2018 roku amerykańskie przedsiębiorstwo informatyczneIBM zaprezentowała swój działający, 50-kubitowy komputer kwantowy[21].
Inżynieria komputerowa (ang.computer engineering, niem. Technishe Informatik) – zajmuje się tworzeniem systemów komputerowych. Do jej zadań należy projektowanie, wytwarzanie, integracja i eksploatacja sprzętu cyfrowego, w tym urządzeń sieciowych. Początkowo zajmowała się głównie tworzeniem procesorów, a współcześnie ważną jej rolę stanowi także tworzenie sprzętu i sterowników dla systemów wbudowanych, które wraz z pojawieniem się koncepcjiIoT mają coraz większe znaczenie[26]. Do jej zagadnień należyarchitekturą i organizacjąsystemów komputerowych napoziomie sprzętowym orazoprogramowania sprzętowego.
Obliczenia równoległe to obszar badający możliwośćobliczeń, w której wieleinstrukcji jest wykonywanych jednocześnie. Taka forma przetwarzania danych była wykorzystywana przez wiele lat, głównie przy wykorzystaniusuperkomputerów, a szczególne zainteresowanie zyskała w ostatnich latach, z uwagi na fizyczne ograniczenia uniemożliwiające dalsze zwiększanieczęstotliwości taktowania procesorów. Obliczenia równoległe stały się dominującym wzorcem warchitekturze komputerowej, głównie za sprawą upowszechnieniaprocesorów wielordzeniowych. Ze względu na skalę można wyróżnić obliczenia równoległe na poziomie: bitów, instrukcji, danych i zadań.Współbieżność jest właściwością systemów, w których obliczenia wykonuje się jednocześnie i potencjalnie korzystają ze wspólnych zasobów i/lub wchodzą w interakcje ze sobą. Opracowano wiele modeli obliczeń równoległych, w tymsieci Petriego,rachunek procesowy (ang. process calculus) imodel maszyny dostępu równoległego (ang.parallel random-access machine, PRAM). Kiedy wiele komputerów jest podłączonych do sieci podczas korzystania ze współbieżności, jest to nazywanesystemem rozproszonym. w którym to komputery mają własną pamięć, a informacje są wymieniane, by osiągnąć wspólne cele.
Oprogramowanie niskopoziomowe pisze się wjęzykach niskiego poziomu. Są to głównie językiasemblera, stanowią symboliczny zapisinstrukcji procesora i danych, który w prosty sposób odpowiada zapisowi binarnemu. Języki asemblerowe wprowadzone w celu czytelnej dla człowieka reprezentacjijęzyków maszynowych komputerów. W przeciwieństwie do języków wysokiego poziomu, typowe języki asemblerowe charakteryzują się strukturą liniową (wierszową). Każdy wiersz tekstu może zawierać pojedynczą instrukcję procesora lubdyrektywę asemblera[33].
Sieci komputerowe to gałąź informatyki mająca na celu tworzenie sieci między komputerami nazywanych węzłami, umożliwiając im współdzielenie zasobów. W sieciach komputerowych urządzenia komputerowe wymieniają się danymi za pomocąwarstw sieciowych. Wmodelu OSI wyróżnia się warstwę aplikacji, prezentacji, sesji, transportową, sieciową,łącza danych i fizyczną, a wmodelu TCP/IP – będącym podstawą strukturyinternetu – wyróżnia się warstwy aplikacji, transportową, internetową i dostępu do sieci. Te łącza danych są ustanawiane za pomocą mediów kablowych, takich jakskrętka lubkable światłowodowe, oraz mediów bezprzewodowych, takich jak np.Wi-Fi[34]. Jednymi z podstawowych zagadnień sieci są protokoły oraz urządzenia sieciowe. Do najpopularniejszych urządzeń sieciowych należykarta sieciowa,router,koncentrator,przełącznik,punkt dostępowy, most, ekspander zasięgu Wi-Fi (repeater Wi-Fi), adaptery PowerLine,serwery wydruku, kamery IP, bramki VoIP orazy telefony IP[35]. Protokołem komunikacyjnym nazywa się zbiór ścisłych reguł i kroków postępowania, które są automatycznie wykonywane przez urządzenia sieciowe w celu nawiązania łączności i wymiany danych. Definiują one syntaksę, semantykę, synchronizację komunikacji oraz możliwe metody naprawiania błędów. Protokoły te mogą zostać wdrożone za pomocą hardware'u, oprogramowania lub obu jednocześnie[36].
Systemy operacyjny pełnią szczególną rolę w informatyce. Jest tooprogramowanie zarządzającesystemem komputerowym, tworząceśrodowisko do uruchamiania i kontrolizadań. Najważniejszym elementem systemu operacyjnych jest jegojądro wykonujące i kontrolujące zadania m.in.planisty czasu procesora, ustalającego które zadanie i jak długo będzie wykonywane czy przełącznika zadań, odpowiedzialnego za przełączanie pomiędzy uruchomionymi zadaniami. System operacyjny posiada także swojąpowłokę, czyli specjalnyprogram komunikujący użytkownika z systemem operacyjnym orazsystem plików – sposób ustrukturyzowanego zapisu danych nanośniku. Osoby administrujące systemami nazwa sięadministratorami (pot. adminami). Współcześnie najważniejszą rodziną systemów operacyjnych jestGNU/Linux orazWindows.
Grafika komputerowa to dział informatyki zajmujący się cyfrową syntezą i manipulacją treści wizualnych. Ze względu na reprezentację danych dzieli się nagrafikę rastrową iwektorową, a ze względu na charakter danych nagrafikę dwuwymiarową,trójwymiarową iruchomą. Obejmuje także obecnie szybko rozwijające sięprzetwarzenie obrazów. Grafikę komputerową można także podzielić na teoretyczną skupiającą się algorytmach graficznych i praktyczną, skupiającą sięmanipulacji obrazem czy modelowaniu 3D np. w programieBlender. Grafika komputerowa stanowi podstawę współczesnychgier,animacji,symulacji czywizualizacji komputerowych. Renderowanie polega na analizie stworzonego wcześniej modelu danej sceny oraz utworzenie na jej podstawie dwuwymiarowego obrazu wyjściowego w formie statycznej lub animacji. Podczas renderowania rozpatrywane są m.in. odbicia, cienie, załamania światła, wpływy atmosfery (w tym mgła), efekty wolumetryczne itp.
Inżynieria oprogramowania, takżeinżynieria systemów informatycznych – zajmuje się procesem i metodykami tworzeniasystemów informatycznych: od analizy i określenia wymagań, przez projektowanie i wdrożenie, aż do ewolucji gotowego oprogramowania. Termininżynieria oprogramowania po raz pierwszy został użyty w przełomie lat 1950/60 (ale oficjalnie za narodziny tej dyscypliny podaje się lata 1968 i 1969, w których miały miejsce dwie konferencje sponsorowane przezNATO, odpowiednio wGarmisch iRzymie). Wyróżniafazy produkcji oprogramwania: specyfikacji, projektowania,implementacji, integracji i ewoluacji, a także dostarcza systematycznychmetodyk jego tworzenia, jak m.in.model kaskadowy,prototypowy czyzwinny, w tymscrum. Wprowadza takie pojęcia jak np.cykl życia programu czymetryka oprogramowania. Wyróżnia się także jej specjalizacje np. inżynieria systemów mobilnych, inżynieria systemów baz danych, inżynieria systemów wbudowanych czy inżynieria gier komputerowych. Wzorcem projektowym (ang. design pattern) nazywa się uniwersalne, sprawdzone w praktyce rozwiązanie często pojawiających się, powtarzalnych problemów projektowych. Pokazuje powiązania i zależności pomiędzy klasami oraz obiektami i ułatwia tworzenie, modyfikację oraz utrzymanie kodu źródłowego. Jest opisem rozwiązania, a nie jego implementacją. Architekturą oprogramowania nazwywa podstawową organizację systemu wraz z jego komponentami, wzajemnymi powiązaniami, środowiskiem pracy i regułami ustanawiającymi sposób jego budowy i rozwoju. Metody formalne – tworzenie specyfikacji, projektowania i weryfikacjioprogramowania lub systemów informatycznych w języku formalnym. Metody formalne najlepiej opisać jako zastosowanie dość szerokiej gamy podstaw teoretycznych informatyki, w szczególnościrachunku logicznego,języków formalnych, teorii automatów, systemu dynamiki zdarzeń dyskretnych i semantyki programów, a także systemów typów itypów danych algebraicznych do specyfikacji i weryfikacji problemów w oprogramowaniu i sprzęcie.
Danologia (ang.Data science) wykorzystuje metody naukowe, procesy, algorytmy, narzędzia i systemy informatyczne do wydobywania wiedzy i spostrzeżeń z wielu danych strukturalnych i nieustrukturyzowanych, tzw.Big data. Eksploracją danych (ang.data mining) nazywa się jeden z procesów uzyskiwania wiedzy zbaz danych. Idea eksploracji danych polega na wykorzystaniu szybkości komputera do znajdowania ukrytych dla człowieka (właśnie z uwagi na ograniczone możliwości czasowe) prawidłowości wdanych zgromadzonych whurtowniach danych. Big data to termin odnoszący się do dużych, zmiennych i różnorodnychzbiorów danych, których przetwarzanie i analiza jest trudna, ale jednocześnie wartościowa. Obecne użycie terminubig data zwykle odnosi się do użycia analizy predykcyjnej, analizy zachowania użytkownika lub niektórych innych zaawansowanych metod analizy danych, które wydobywają wartość z danych, a rzadko do określonego rozmiaru zestawu danych. Baza danych to zorganizowanyzbiór danych, ogólnie przechowywanych i dostępnych z systemu komputerowego. Tam, gdzie bazy danych są bardziej złożone, często są opracowywane przy użyciu formalnych technik projektowania i modelowania.System zarządzania bazą danych (DBMS) to oprogramowanie, które współdziała z użytkownikami końcowymi, aplikacjami i samą bazą danych w celu przechwytywania i analizy danych. Oprogramowanie DBMS obejmuje dodatkowo podstawowe narzędzia do zarządzania bazą danych.
Systemy informatyczne (ang. information processing systems) może opisać jako zbiór powiązanych ze sobą elementów, które przetwarzają informacje, najczęściej z wykorzystaniem sprzętu i oprogramowania komputerowego.
Sztuczna inteligencja (SI, ang.Artificial intelligence, AI) to obszar informatyki zajmujący się komputerowym symulowanieminteligencji – tworzeniem modeli zachowań inteligentnych oraz systemów komputerowych symulujących te zachowania[39][40]. Szczególnym zainteresowaniem darzy się problemy które nie są bezpośrednio algorytmizowalne, jakrozpoznawanie obrazów,tłumaczenie maszynowe czyrozpoznawanie mowy. Sztuczna inteligencja jest związana zlogiką rozmytą,algorytmami ewolucyjnymi,sieciami neuronowymi,robotyką isztucznym życiem. SI bywa nazywane także inteligencją obliczeniową (ang.Computational Intelligence,CI). Uczeniem maszynowym (ang.Machine learning,ML) nazwa się analizę procesów uczenia się oraz tworzeniem systemów, które doskonalą swoje działanie na podstawie doświadczeń z przeszłości. Jedną z wiodących technologii jestTensorFlow[41]. Systemy te posiadają zdolność do samouczenia się i nazywa się je systemami samouczącymi. Podstawowymi metodami ML są symboliczne uczenie się (nazywane także indukcyjnym, ang.symbolic/inductive learning) orazsztuczne sieci neuronowe (ang.artificial neural networks)[42]. Nazywa się tak połączone grupy węzłów, podobne do rozległej sieci neuronów w ludzkim mózgu. Głębokie sieci neuronowe (także głębokie uczenie maszynowe, ang.deep learning lubdifferential programming) to podkategoria uczenia maszynowego – nazywa się tak metody oparte na sztucznych sieciach neuronowych z uczeniem reprezentatywnym (ang. feature learning lub representation learning). Uczenie się może byćnadzorowane,częściowo nadzorowane lubnienadzorowane[43]. Sztuczne życie (ang.artificial life, AL, niem. Künstliches Leben, KL) to kierunek badań, zorientowany na zrozumienie i wykorzystanie istoty życia. Pomysłodawcą i ojcem chrzestnym tego podejścia był amerykański matematyk i informatykChristopher Langton, który zaproponował je w 1986 roku. Dziedzina obejmuje między innymi: tworzenie różnorodnych modeli życia oraz prowadzenie symulacji w środowisku programowym, sprzętowym i biochemicznym, symulacje ewolucji biologicznej oraz innych procesów biologicznych za pomocą metod informatycznych, badania i symulacje układów niebiologicznych, zachowujących się podobnie jak układy biologiczne (np.automatów komórkowych),algorytmy ewolucyjne i ewolucję programów komputerowych.
Systemy wbudowane to systemy komputerowe specjalnego przeznaczenia, który staje się integralną częścią obsługiwanego przez niegosprzętu komputerowego (hardware). System wbudowany musi spełniać określone wymagania ściśle zdefiniowane pod kątem zadań, które ma wykonywać. Każdy system wbudowany oparty jest namikroprocesorze (lubmikrokontrolerze) zaprogramowanym do wykonywania ograniczonej liczby zadań lub nawet wyłącznie do jednego zadania. W systemach wbudowanych najpopularniejszymimodelami programowymi procesorów sąRISC oparte na zasadacharchitektury harvardzkiej lubARM. W systemach czasu rzeczywistego wynik i efekt działania jest zależny od chwili wypracowania tego wyniku. Systemy wbudowane współcześnie znajdują zastosowania np. w autonomicznych pojazdach, w internecie rzeczy czy w urządzeniach rozrywkowych.
Rozpoznawanie wzorców (ang.pattern recognition) to pole badawcze w obrębie uczenia maszynowego. Może być definiowane jako działanie polegające na pobieraniu surowychdanych i podejmowaniu dalszych czynności zależnych od kategorii do której należą te dane. W rozpoznawaniu wzorców dąży się do klasyfikacji danych (wzorców) w oparciu o wiedzę aprioryczną lub o informacje uzyskane na drodze statystycznej analizy danych służącej wydobywaniu cech obiektów. Klasyfikowane wzorce to zazwyczaj grupy wyników pomiaru lub obserwacji definiujące położenie odpowiadających im punktów w wielowymiarowej przestrzeni cech.
Sygnały cyfrowe to strumienie bitów informacji, ich przetwarzanie polega na wykonaniu na nich pewnych operacji oraz ich interpretacja. Do głównych zastosowań należy przetwarzanie dźwięku, kompresja dźwięku, segmentacja obrazów, kodowanie wideo, przetwarzanie mowy, rozpoznawanie mowy oraz telekomunikacja cyfrowa.
Gry komputerowe to rodzajoprogramowania komputerowego przeznaczonego do celów rozrywkowych lub edukacyjnych, wymagające od użytkownika (gracza) rozwiązywania zadań logicznych lub zręcznościowych. Gry komputerowe mogą być uruchamiane na komputerach osobistych,specjalnych automatach,konsolach do gry,telewizorach, telefonach komórkowych oraz innych urządzeniach mobilnych. Gry, podobnie jaksymulacje komputerowe mają wirtualizować pewien fragment rzeczywistości. Zaawansowane gry i symulacje są pisane w czystych językach programowania, najczęściej obiektowych – jakSimula czyC++ lub są oparte na silnikach jakUnity. Dla mniej wymagających symulacji powstały także uniwersalne programy.
Aplikacja internetowa (ang. web application), zwana również aplikacją webową – program komputerowy, który pracuje na serwerze i komunikuje się poprzez sieć komputerową z hostem użytkownika komputera z wykorzystaniem przeglądarki internetowej użytkownika, będącego w takim przypadku interaktywnym klientem aplikacji internetowej. Od komputerów mobilnych (np.smartfony,tablety) oczekuje się, że mogą być swobodnie transportowane podczas normalnego użytkowania, oraz pozwalają na przesyłanie danych, głosu i wideo. System mobilny, takżeprzetwarzanie mobilne (ang.mobile computing) obejmuje komunikację mobilną orazsprzęt i oprogramowanie mobilne. Kwestie komunikacyjne obejmująsieci ad hoc, infrastrukturę sieci, a także właściwości komunikacyjne,protokoły, formaty danych i konkretne technologie. Typowy sprzęt mobilny zawiera często różnesensory, np.akcelerometry, które są w stanie wykrywać i odbierać sygnały. Najważniejsze mobilne systemy operacyjne toiOS orazAndroid Linux, gdzie dominują językiJava iKotlin[44].
Bioinformatyka (z niem. Bioinformatik) – interdyscyplinarna dziedzina obejmujmująca rozwój metod obliczeniowych służących do badania struktury, funkcji i ewolucjigenów,genomów ibiałek. Ponadto odpowiada za rozwój metod wykorzystywanych do zarządzania i analizy informacji biologicznej gromadzonej w toku badań genomicznych oraz badań prowadzonych z zastosowaniem wysokoprzepustowych technik eksperymentalnych[47].
Chemioinformatyka (z niem. Chemoinformatik), takżeinformatyka chemiczna to nauka zajmująca się wykorzystaniem informatyki do rozwiązywania różnorodnych problemów chemicznych jak np. teoria grafów chemicznych czy badania przestrzeni chemicznej[48][49]. Te techniki, nazywane często metodamiin silico, wykorzystywane są do przeprowadzania obliczeń w blisko związanej z nią chemii obliczeniowej oraz w chemii kwantowej i procesie projektowania leków. Nauka ta znajduje zastosowanie w wielu gałęziach przemysłu chemicznego do analizy i przetwarzania danych chemicznych.
Informatyka medyczna – zajmuje się zbieraniem, przetwarzaniem, przechowywaniem, udostępnianiem i przesyłaniem danych medycznych oraz metodami tworzenia urządzeń i systemów informatycznych wykorzystywanych wmedycynie. Informatyka medyczna znajduje zastosowania między innymi w systemach wspomagania diagnostyki (np.IBM Watson for Oncology)[50], oprogramowaniu robotów medycznych, systemach rejestracji, przetwarzania i analizy sygnałów i obrazów medycznych oraz systemach teleinformatycznych dla telemedycyny[51].
Neuroinformatyka (z niem.Neuroinformatik) znajduje zastosowania wkognitywistyce, przy badaniu przetwarzania informacji przez systemy nerwowe w celu zastosowania ich w systemach technicznych, m.in. w tworzeniumodeli obliczeniowych, narzędzi analitycznych i baz danych do udostępniania, integracji i analizy danych eksperymentalnych oraz rozwoju teorii na temat funkcji układu nerwowego. W kontekście INCF neuroinformatyka odnosi się do informacji naukowych na temat podstawowych danych eksperymentalnych, ontologii, metadanych, narzędzi analitycznych i modeli obliczeniowych układu nerwowego.Informatyka kognitywna także odnosi się do zastosowań w kognitywistyce[52]. Jednym z najbardziej znanych specjalistów kognitywstyki w Polsce jestWłodzisław Duch. Kolejnym powiązanym obszarem jestinformatyka afektywna.
Informatyka mechaniczna, także mechainformatyka (z niem.Maschinenbauinformatik) – zastosowania informatyki w mechanice. Zajmuje się m.in. informatycznymi aspektami druku 3D, programowania CNC, mechaniki komputerowej, oraz oprogramowaniem do projektowania CAD.
Informatyka materiałowa – zastosowania informatyki w materiałoznawstwie i inżynierii materiałowej.
W ramach I etapu edukacji (klasy I-III) uczniowie mają zajęcia zedukacji informatycznej w ramach edukacji wczesnoszkolnej. Klasy IV-VIII (II etap edukacyjny) realizują przedmiotinformatyka[53]. Najważniejszym celem kształcenia informatycznego uczniów jest rozwój umiejętności myślenia obliczeniowego (z ang.computational thinking), skupionego na kreatywnym rozwiązywaniu problemów z różnych dziedzin ze świadomym i bezpiecznym wykorzystaniem przy tym metod i narzędzi wywodzących się z informatyki[54]. Takie podejście, rozpoczęte w szkole podstawowej, jest kontynuowane w liceum ogólnokształcącym i technikum zarówno w zakresie podstawowym, jak i rozszerzonym. Przedmiot informatyka jest realizowany przez wszystkich uczniów w każdej klasie, począwszy od klasy I szkoły podstawowej i jest kontynuowany w liceum ogólnokształcącym i technikum[54].
Informatyka jest wykładana nauniwersytetach oraz napolitechnikach. Na politechnikach programy studiów są nastawione na zagadnienia inżynierskie, a na uniwersytetach na zagadnienia naukowe. Istnieją także programy studiów nastawione na praktyczne zastosowania. Z uwagi na ograniczoną liczbę miejsc oraz fakt że informatyka jest chętnie wybieranym kierunkiem studiów, obowiązują na nią stosunkowo wysokie progi punktowe. W roku akademickim 2018/2019 zgłosiło się 42759 chętnych[55]. W najlepszych uczelniach w kraju w pierwszej kolejności są przyjmowani finaliściOlimpiady Informatycznej. Spośród najlepszych jest wyłaniana reprezentacja Polski na różne międzynarodowe konkursy informatyczne np.Akademickie mistrzostwa świata w programowaniu zespołowym[56].
↑CSAB, Inc. [online], www.csab.org [dostęp 2020-01-14].strona główna serwisu
↑The Joint Task Force for ComputingT.J.T.F.C.CurriculaThe Joint Task Force for ComputingT.J.T.F.C.,A volume of the Computing Curricula Series [online], web.archive.org, 2015 [dostęp 2020-04-17] [zarchiwizowane zadresu 2014-10-21].
↑Michael A.M.A.NielsenMichael A.M.A.,Isaac L.I.L.ChuangIsaac L.I.L.,Quantum Computation and Quantum Information (10th anniversary ed.), 2012,ISBN 978-0-511-99277-3. Brak numerów stron w książce
↑Katalog Niemieckiej BibliotekiK.N.B.NarodowejKatalog Niemieckiej BibliotekiK.N.B.,Kontrola Autorytatywna [online], portal.dnb.de [dostęp 2020-03-31].
↑University of BritishU.B.ColumbiaUniversity of BritishU.B.,Faculty of ComputerF.C.ScienceFaculty of ComputerF.C.,Computational Intelligence and Knowledge [online].
↑P.L.N.P.L.N.RajuP.L.N.P.L.N.,Fundamentals of Geographic Information Systems. Brak numerów stron w książce
↑Kirk D. Borne. Astroinformatics: data-oriented astronomy research and education. „Earth Science Informatics”. 3 (1–2), s. 5–17, 2010-05-12.DOI:10.1007/s12145-010-0055-2. (ang.).
↑StefanS.JackowskiStefanS.,Jak zmieniał się Wydział Matematyki, Informatyki i Mechaniki Uniwersytetu Warszawskiego w latach 1991–2016. Brak numerów stron w książce