Jump to content

Информатика

Страница полузащищена
(Перенаправлено с «Учёные-компьютерщики» )

Информатика – это изучение вычислений , информации и автоматизации . [1] [2] [3] Информатика охватывает теоретические дисциплины (такие как алгоритмы , теория вычислений и теория информации ) и прикладные дисциплины (включая проектирование и внедрение аппаратного и программного обеспечения ). [4] [5] [6]

Алгоритмы и структуры данных занимают центральное место в информатике. [7] Теория вычислений касается абстрактных моделей вычислений и общих классов задач , которые можно решить с их помощью. Области криптографии и компьютерной безопасности включают изучение средств безопасной связи и предотвращения уязвимостей безопасности . Компьютерная графика и вычислительная геометрия занимаются созданием изображений. Теория языка программирования рассматривает различные способы описания вычислительных процессов, а теория баз данных касается управления хранилищами данных. Взаимодействие человека и компьютера исследует интерфейсы, через которые взаимодействуют люди и компьютеры, а разработка программного обеспечения фокусируется на дизайне и принципах разработки программного обеспечения. Такие области, как операционные системы , сети и встроенные системы, исследуют принципы и конструкцию сложных систем . Компьютерная архитектура описывает построение компьютерных компонентов и компьютерного оборудования. Искусственный интеллект и машинное обучение направлены на синтез целенаправленных процессов, таких как решение проблем, принятие решений, адаптация к окружающей среде, планирование и обучение встречаются у людей и животных. В рамках искусственного интеллекта компьютерное зрение направлено на понимание и обработку изображений и видеоданных, а обработка естественного языка направлена ​​на понимание и обработку текстовых и лингвистических данных.

Фундаментальная задача информатики — определить, что можно, а что нельзя автоматизировать. [2] [8] [3] [9] [10] Премия Тьюринга обычно считается высшей наградой в области информатики. [11] [12]

История

Готфрид Вильгельм Лейбниц (1646–1716) разработал логику в двоичной системе счисления и был назван «основателем информатики». [13]
Чарльза Бэббиджа иногда называют «отцом вычислительной техники». [14]
Ада Лавлейс опубликовала первый алгоритм, предназначенный для обработки на компьютере. [15]

Самые ранние основы того, что впоследствии стало информатикой, возникли еще до изобретения современного цифрового компьютера . Машины для решения фиксированных числовых задач, такие как счеты , существовали с древних времен и помогали в таких вычислениях, как умножение и деление. Алгоритмы выполнения вычислений существовали с древности, еще до появления сложной вычислительной техники. [16]

Вильгельм Шикард спроектировал и сконструировал первый работающий механический калькулятор в 1623 году. [17] В 1673 году Готфрид Лейбниц продемонстрировал цифровой механический калькулятор, получивший название « Ступенчатый счётчик» . [18] Лейбница можно считать первым ученым-компьютерщиком и теоретиком информации по разным причинам, включая тот факт, что он задокументировал двоичную систему счисления. В 1820 году Томас де Кольмар основал механических калькуляторов . индустрию [примечание 1] когда он изобрел свой упрощенный арифмометр , первую вычислительную машину, достаточно мощную и надежную, чтобы ее можно было использовать ежедневно в офисе. Чарльз Бэббидж начал разработку первого автоматического механического калькулятора , своей «Разностной машины» , в 1822 году, что в конечном итоге дало ему идею первого программируемого механического калькулятора , его «Аналитической машины» . [19] Он начал разработку этой машины в 1834 году и «менее чем за два года набросал многие существенные особенности современного компьютера». [20] «Решающим шагом стало внедрение системы перфокарт, заимствованной из жаккардового ткацкого станка ». [20] что делает его бесконечно программируемым. [примечание 2] В 1843 году, во время перевода французской статьи об аналитической машине, Ада Лавлейс в одной из многих включенных ею заметок написала алгоритм вычисления чисел Бернулли , который считается первым опубликованным алгоритмом, специально предназначенным для реализации. на компьютере. [21] Примерно в 1885 году Герман Холлерит изобрел табулятор использовались перфокарты , в котором для обработки статистической информации ; со временем его компания стала частью IBM . Вслед за Бэббиджем, хотя и не зная о его более ранних работах, Перси Ладгейт в 1909 году опубликовал [22] вторая из двух конструкций механических аналитических машин в истории. В 1914 году испанский инженер Леонардо Торрес Кеведо опубликовал свои «Очерки по автоматике» . [23] и разработал, вдохновленный Бэббиджем, теоретическую электромеханическую вычислительную машину, которой должна была управлять программа, доступная только для чтения. В статье также представлена ​​идея арифметики с плавающей запятой . [24] [25] В 1920 году, чтобы отпраздновать 100-летие изобретения арифмометра , Торрес представил в Париже электромеханический арифмометр , прототип, продемонстрировавший возможность создания электромеханической аналитической машины. [26] на котором можно было вводить команды и автоматически распечатывать результаты. [27] В 1937 году, через сто лет после несбыточной мечты Бэббиджа, Говард Эйкен убедил компанию IBM, которая производила все виды оборудования для перфокарт, а также занималась калькуляторами. [28] разработать свой гигантский программируемый калькулятор ASCC/Harvard Mark I , основанный на аналитической машине Бэббиджа, которая сама использовала карты и центральный вычислительный блок. Когда машина была закончена, некоторые назвали ее «сбывшейся мечтой Бэббиджа». [29]

В 1940-х годах, с разработкой новых и более мощных вычислительных машин, таких как компьютер Атанасова-Берри и ENIAC , термин «компьютер» стал относиться к машинам, а не к их человеческим предшественникам. [30] Когда стало ясно, что компьютеры можно использовать не только для математических расчетов, область информатики расширилась и стала изучать вычисления в целом. В 1945 году IBM основала Лабораторию научных вычислений Уотсона в Колумбийском университете в Нью-Йорке . Отреставрированный дом братства в Вест-Сайде Манхэттена стал первой лабораторией IBM, посвященной чистой науке. Эта лаборатория является предшественником исследовательского подразделения IBM, которое сегодня управляет исследовательскими центрами по всему миру. [31] В конечном итоге тесные отношения между IBM и Колумбийским университетом сыграли важную роль в появлении новой научной дисциплины: в 1946 году Колумбия предложила один из первых академических курсов по информатике. [32] Информатика начала формироваться как отдельная академическая дисциплина в 1950-х и начале 1960-х годов. [33] [34] Первая в мире программа компьютерных наук, Кембриджский диплом по компьютерным наукам , началась в Компьютерной лаборатории Кембриджского университета в 1953 году. Первый факультет компьютерных наук в Соединенных Штатах был основан в Университете Пердью в 1962 году. [35] С тех пор, как стали доступны практические компьютеры, многие приложения вычислений стали самостоятельными областями исследования.

Этимология и сфера применения

Хотя впервые он был предложен в 1956 г. [36] термин «информатика» появляется в статье 1959 года в журнале Communications of the ACM . [37] в котором Луис Фейн выступает за создание Высшей школы компьютерных наук, аналогичной созданию Гарвардской школы бизнеса в 1921 году. [38] Луи оправдывает свое название, утверждая, что, как и наука управления , предмет носит прикладной и междисциплинарный характер, обладая при этом характеристиками, типичными для академической дисциплины. [37] Его усилия, а также усилия других специалистов, таких как численный аналитик Джордж Форсайт , были вознаграждены: университеты продолжали создавать такие факультеты, начиная с Purdue в 1962 году. [39] Несмотря на свое название, значительная часть информатики не предполагает изучение самих компьютеров. По этой причине было предложено несколько альтернативных названий. [40] Некоторые факультеты крупных университетов предпочитают термин «информатика» , чтобы подчеркнуть именно эту разницу. Датский учёный Питер Наур предложил термин даталогия . [41] чтобы отразить тот факт, что научная дисциплина вращается вокруг данных и их обработки, но не обязательно с использованием компьютеров. Первым научным учреждением, использовавшим этот термин, был факультет даталогии Копенгагенского университета, основанный в 1969 году, а первым профессором даталогии стал Питер Наур. Этот термин используется в основном в скандинавских странах. Альтернативный термин, также предложенный Науром, — наука о данных ; теперь это используется для междисциплинарной области анализа данных, включая статистику и базы данных.

На заре компьютерных технологий в Сообщениях ACM был предложен ряд терминов для практиков в области вычислений : инженер -турингист , туролог , специалист по блок-схемам , прикладной метаматематик и прикладной эпистемолог . [42] Три месяца спустя в том же журнале был предложен комптолог , а в следующем году — гиполог . [43] термин компьютерика . Также был предложен [44] В Европе часто используются термины, полученные из сокращенных переводов выражений «автоматическая информация» (например, «informazioneautoma» на итальянском языке) или «информация и математика», например, информатика (французский), Informatik (немецкий), информатика (итальянский, голландский). ), информатика (испанский, португальский), информатика ( славянские языки и венгерский ) или плирофорики ( πληροφορική , что означает информатика) на греческом языке . Подобные слова были приняты и в Великобритании (например , в Школе информатики Эдинбургского университета ). [45] «Однако в США информатика связана с прикладными вычислениями или вычислениями в контексте другой области». [46]

Фольклорная цитата, часто приписываемая Эдсгеру Дейкстре (но почти наверняка не впервые сформулированная им) , гласит, что «информатика связана с компьютерами не больше, чем астрономия с телескопами». [примечание 3] Проектирование и внедрение компьютеров и компьютерных систем обычно считается областью других дисциплин, помимо информатики. Например, изучение компьютерного оборудования обычно считается частью компьютерной инженерии , а изучение коммерческих компьютерных систем и их развертывания часто называют информационными технологиями или информационными системами . Однако между представителями различных компьютерных дисциплин происходит обмен идеями. Исследования в области информатики также часто пересекаются с другими дисциплинами, такими как когнитивная наука , лингвистика , математика , физика , биология , науки о Земле , статистика , философия и логика .

Некоторые считают, что информатика имеет гораздо более тесную связь с математикой, чем многие научные дисциплины, при этом некоторые наблюдатели говорят, что информатика - это математическая наука. [33] Ранняя информатика находилась под сильным влиянием работ таких математиков, как Курт Гёдель , Алан Тьюринг , Джон фон Нейман , Рожа Петер и Алонсо Черч , и между этими двумя областями продолжает происходить полезный обмен идеями в таких областях, как математическая логика , категории. теория , теория предметной области и алгебра . [36]

Отношения между информатикой и разработкой программного обеспечения являются спорным вопросом, который еще больше запутывается спорами о том, что означает термин «инженерия программного обеспечения» и как определяется информатика. [47] Дэвид Парнас , опираясь на взаимосвязь между другими инженерными и научными дисциплинами, утверждал, что основным направлением информатики является изучение свойств вычислений в целом, в то время как основным направлением разработки программного обеспечения является разработка конкретных вычислений для достижения практических целей. цели, что делает две отдельные, но взаимодополняющие дисциплины. [48]

Академические, политические и финансовые аспекты информатики, как правило, зависят от того, сформирован ли факультет с математическим уклоном или с инженерным уклоном. Факультеты информатики с упором на математику и числовой ориентацией рассматривают возможность согласования с вычислительной наукой . Оба типа кафедр, как правило, прилагают усилия к тому, чтобы соединить образовательные, если не все, исследования.

Философия

Эпистемология информатики

Несмотря на слово «наука» в названии, ведутся споры о том, является ли информатика научной дисциплиной. [49] математика, [50] или инженерия. [51] Аллен Ньюэлл и Герберт А. Саймон утверждали в 1975 году:

Информатика — это эмпирическая дисциплина. Мы бы назвали ее экспериментальной наукой, но, как и в астрономии, экономике и геологии, некоторые из ее уникальных форм наблюдения и опыта не вписываются в узкий стереотип экспериментального метода. Тем не менее, это эксперименты. Каждая новая машина – это эксперимент. На самом деле построение машины ставит вопрос перед природой; и мы прислушиваемся к ответу, наблюдая за работой машины и анализируя ее всеми доступными аналитическими и измерительными средствами. [51]

С тех пор утверждалось, что информатику можно классифицировать как эмпирическую науку, поскольку она использует эмпирическое тестирование для оценки правильности программ , но остается проблема с определением законов и теорем информатики (если таковые существуют) и определением характер экспериментов в информатике. [51] Сторонники классификации информатики как инженерной дисциплины утверждают, что надежность вычислительных систем исследуется так же, как мосты в гражданском строительстве и самолеты в аэрокосмической технике . [51] Они также утверждают, что в то время как эмпирические науки наблюдают за тем, что существует в настоящее время, информатика наблюдает за тем, что возможно существовать, и хотя ученые открывают законы на основе наблюдения, в информатике не найдено никаких правильных законов, и вместо этого она занимается созданием явлений. [51]

Сторонники классификации информатики как математической дисциплины утверждают, что компьютерные программы являются физической реализацией математических объектов и программ, которые можно дедуктивно обосновать с помощью математических формальных методов . [51] Ученые-компьютерщики Эдсгер В. Дейкстра и Тони Хоар рассматривают инструкции для компьютерных программ как математические предложения и интерпретируют формальную семантику языков программирования как математические аксиоматические системы . [51]

Парадигмы информатики

Ряд ученых-компьютерщиков выступали за различие трех отдельных парадигм в информатике. Питер Вегнер утверждал, что этими парадигмами являются наука, технология и математика. [52] Рабочая группа Питера Деннинга утверждала, что это теория, абстракция (моделирование) и дизайн. [33] Амнон Х. Иден описал их как «рационалистическую парадигму» (которая рассматривает информатику как раздел математики, который преобладает в теоретической информатике и в основном использует дедуктивные рассуждения ), «технократическую парадигму» (которую можно найти в инженерии). подходы, особенно в области разработки программного обеспечения) и «научная парадигма» (которая подходит к компьютерным артефактам с эмпирической точки зрения естественных наук , [53] можно идентифицировать в некоторых отраслях искусственного интеллекта ). [54] Информатика фокусируется на методах проектирования, спецификации, программирования, проверки, внедрения и тестирования компьютерных систем, созданных человеком. [55]

Поля

Как дисциплина информатика охватывает широкий спектр тем: от теоретических исследований алгоритмов и пределов вычислений до практических вопросов реализации вычислительных систем в аппаратном и программном обеспечении. [56] [57] CSAB , ранее называвшийся Советом по аккредитации компьютерных наук, который состоит из представителей Ассоциации вычислительной техники (ACM) и Компьютерного общества IEEE (IEEE CS). [58] — определяет четыре области, которые он считает решающими для дисциплины информатики: теория вычислений , алгоритмы и структуры данных , методология и языки программирования , а также компьютерные элементы и архитектура . В дополнение к этим четырем областям CSAB также определяет такие области, как разработка программного обеспечения, искусственный интеллект, компьютерные сети и связь, системы баз данных, параллельные вычисления, распределенные вычисления, взаимодействие человека и компьютера, компьютерная графика, операционные системы, а также числовые и символьные вычисления . являются важными областями информатики. [56]

Теоретическая информатика

Теоретическая информатика является математической и абстрактной по духу, но ее мотивация черпается из практических и повседневных вычислений. Он направлен на понимание природы вычислений и, как следствие этого понимания, на предоставление более эффективных методологий.

Теория вычислений

По мнению Питера Деннинга , фундаментальный вопрос, лежащий в основе информатики, звучит так: «Что можно автоматизировать?» [3] Теория вычислений сосредоточена на ответах на фундаментальные вопросы о том, что можно вычислить и какое количество ресурсов требуется для выполнения этих вычислений. Пытаясь ответить на первый вопрос, теория вычислимости исследует, какие вычислительные задачи можно решить с помощью различных теоретических моделей вычислений . Второй вопрос решает теория сложности вычислений , которая изучает временные и пространственные затраты, связанные с различными подходами к решению множества вычислительных задач.

Знаменитый P = NP? проблема, одна из задач премии тысячелетия , [59] является открытой проблемой теории вычислений.

Теория автоматов Формальные языки Теория вычислимости Теория сложности вычислений
Модели вычислений Теория квантовых вычислений Теория логических цепей Клеточные автоматы

Теория информации и кодирования

Теория информации, тесно связанная с вероятностью и статистикой , связана с количественной оценкой информации. Он был разработан Клодом Шенноном, чтобы найти фундаментальные ограничения на операции обработки сигналов , такие как сжатие данных, а также на надежное хранение и передачу данных. [60] Теория кодирования — это изучение свойств кодов (систем преобразования информации из одной формы в другую) и их пригодности для конкретного применения. Коды используются для сжатия данных , криптографии , обнаружения и исправления ошибок , а в последнее время также для сетевого кодирования . Коды изучаются с целью разработки эффективных и надежных методов передачи данных . [61]

Теория кодирования Пропускная способность канала Алгоритмическая теория информации Теория обнаружения сигналов Колмогоровская сложность

Структуры данных и алгоритмы

Структуры данных и алгоритмы — это исследования широко используемых вычислительных методов и их вычислительной эффективности.

На 2 )
Анализ алгоритмов Разработка алгоритма Структуры данных Комбинаторная оптимизация Вычислительная геометрия Рандомизированные алгоритмы

Теория языка программирования и формальные методы

Теория языков программирования — это раздел информатики, который занимается проектированием, реализацией, анализом, характеристикой и классификацией языков программирования и их индивидуальных особенностей . Она относится к дисциплине информатики и зависит как от математики , разработки программного обеспечения, так и от лингвистики . Это активная исследовательская область, в которой издается множество специализированных академических журналов.

Формальные методы — это особый вид математически обоснованного метода спецификации , разработки и проверки программных и аппаратных систем. [62] Использование формальных методов проектирования программного и аппаратного обеспечения мотивировано ожиданием того, что, как и в других инженерных дисциплинах, выполнение соответствующего математического анализа может способствовать надежности и устойчивости проекта. Они образуют важную теоретическую основу для разработки программного обеспечения, особенно там, где речь идет о безопасности. Формальные методы являются полезным дополнением к тестированию программного обеспечения, поскольку они помогают избежать ошибок, а также могут служить основой для тестирования. Для промышленного использования требуется поддержка инструмента. Однако высокая стоимость использования формальных методов означает, что они обычно используются только при разработке высокоинтегральных и жизненно важных систем , где безопасность имеет первостепенное значение. Формальные методы лучше всего описать как применение довольно широкого спектра теоретических основ информатики , в частности, логических исчислений, формальных языков , теории автоматов и семантики программ , а также систем типов и алгебраических типов данных для решения проблем, связанных со спецификацией программного и аппаратного обеспечения и проверка.

Формальная семантика Теория типов Дизайн компилятора Языки программирования Формальная проверка Автоматизированное доказательство теорем

Прикладная информатика

Компьютерная графика и визуализация

Компьютерная графика — это исследование цифрового визуального контента, которое включает в себя синтез и манипулирование данными изображения. Исследование связано со многими другими областями информатики, включая компьютерное зрение , обработку изображений и вычислительную геометрию , и широко применяется в области спецэффектов и видеоигр .

2D компьютерная графика Компьютерная анимация Рендеринг Смешанная реальность Виртуальная реальность Твердотельное моделирование

Обработка изображения и звука

Информация может принимать форму изображений, звука, видео или других мультимедиа. Биты информации могут передаваться посредством сигналов . Ее обработка — центральное понятие информатики , европейский взгляд на вычисления , изучающий алгоритмы обработки информации независимо от типа носителя информации — электрического, механического или биологического. Эта область играет важную роль в теории информации , телекоммуникациях , информационной инженерии находит применение в вычислениях медицинских изображений и синтезе речи и, среди прочего, . Какова нижняя граница сложности алгоритмов быстрого преобразования Фурье ? является одной из нерешенных проблем теоретической информатики .

Алгоритмы БПФ Обработка изображений Распознавание речи Сжатие данных Вычисление медицинских изображений Синтез речи

Вычислительная наука, финансы и инженерия

Научные вычисления (или вычислительная наука ) — это область исследования, связанная с построением математических моделей и методов количественного анализа , а также с использованием компьютеров для анализа и решения научных проблем. Основным применением научных вычислений является моделирование различных процессов, включая вычислительную гидродинамику , физические, электрические и электронные системы и схемы, а также общества и социальные ситуации (особенно военные игры), а также их среду обитания, среди многих других. Современные компьютеры позволяют оптимизировать такие конструкции, как целые самолеты. В проектировании электрических и электронных схем примечательны SPICE, [63] а также программное обеспечение для физической реализации новых (или модифицированных) конструкций. Последний включает в себя необходимое программное обеспечение для проектирования интегральных схем . [64]

Численный анализ Вычислительная физика Вычислительная химия Биоинформатика Нейроинформатика Психоинформатика Медицинская информатика Вычислительная инженерия Вычислительное музыковедение

Социальные вычисления и взаимодействие человека с компьютером

Социальные вычисления — это область, которая занимается пересечением социального поведения и вычислительных систем. Исследования взаимодействия человека и компьютера разрабатывают теории, принципы и рекомендации для дизайнеров пользовательского интерфейса.

Программная инженерия

Программная инженерия — это изучение проектирования, внедрения и модификации программного обеспечения с целью обеспечения его высокого качества, доступности, удобства обслуживания и быстрого создания. Это системный подход к разработке программного обеспечения, включающий применение инженерных практик к программному обеспечению. Программная инженерия занимается организацией и анализом программного обеспечения — она занимается не только созданием или производством нового программного обеспечения, но и его внутренней организацией и обслуживанием. Например, тестирование программного обеспечения , системное проектирование , технический долг и процессы разработки программного обеспечения .

Искусственный интеллект

Искусственный интеллект (ИИ) направлен или необходим для синтеза целенаправленных процессов, таких как решение проблем, принятие решений, адаптация к окружающей среде, обучение и общение, присущие людям и животным. С момента своего возникновения в кибернетике и на Дартмутской конференции (1956 г.) исследования искусственного интеллекта обязательно носили междисциплинарный характер, опираясь на такие области знаний, как прикладная математика , символическая логика , семиотика , электротехника , философия разума , нейрофизиология и социальные исследования. интеллект . В массовом сознании ИИ ассоциируется с разработкой роботов , но основной областью практического применения является встраиваемый компонент в областях разработки программного обеспечения , которые требуют вычислительного понимания. Отправной точкой в ​​конце 1940-х годов стал Алана Тьюринга вопрос « Могут ли компьютеры думать? », и этот вопрос фактически остается без ответа, хотя тест Тьюринга до сих пор используется для оценки производительности компьютеров в масштабе человеческого интеллекта. Но автоматизация оценочных и прогнозирующих задач становится все более успешной в качестве замены человеческого мониторинга и вмешательства в области компьютерных приложений, включающих сложные данные реального мира.

Теория вычислительного обучения Компьютерное зрение Нейронные сети Планирование и составление расписания
Обработка естественного языка Вычислительная теория игр Эволюционные вычисления Автономные вычисления
Представление и рассуждение Распознавание образов Робототехника Роевой интеллект

Компьютерные системы

Компьютерная архитектура и организация

Компьютерная архитектура, или организация цифрового компьютера, — это концептуальный проект и фундаментальная операционная структура компьютерной системы. Основное внимание уделяется тому, как центральный процессор работает внутри и обращается к адресам в памяти. [65] Компьютерные инженеры изучают вычислительную логику и проектирование компьютерного оборудования , от отдельных компонентов процессора , микроконтроллеров , персональных компьютеров до суперкомпьютеров и встроенных систем . Термин «архитектура» в компьютерной литературе восходит к работе Лайла Р. Джонсона и Фредерика П. Брукса-младшего , членов отдела машинной организации главного исследовательского центра IBM в 1959 году.

Процессорный блок Микроархитектура Многопроцессорность Дизайн процессора
Повсеместные вычисления Архитектура систем Операционные системы Ввод/вывод
Встроенная система Вычисления в реальном времени Надежность Устный переводчик

Параллельные, параллельные и распределенные вычисления

Параллелизм — это свойство систем, в которых несколько вычислений выполняются одновременно и потенциально взаимодействуют друг с другом. [66] Для общих параллельных вычислений был разработан ряд математических моделей, включая сети Петри , исчисление процессов и модель параллельной машины произвольного доступа . [67] Когда несколько компьютеров подключены к сети при одновременном использовании, это называется распределенной системой. Компьютеры в этой распределенной системе имеют собственную память, и можно обмениваться информацией для достижения общих целей. [68]

Компьютерные сети

Эта отрасль информатики направлена ​​на управление сетями между компьютерами по всему миру.

Компьютерная безопасность и криптография

Компьютерная безопасность — это отрасль компьютерных технологий, целью которой является защита информации от несанкционированного доступа, нарушения или изменения при сохранении доступности и удобства использования системы для ее предполагаемых пользователей.

Историческая криптография – это искусство написания и расшифровки секретных сообщений. Современная криптография — это научное исследование проблем, связанных с распределенными вычислениями, которые могут быть атакованы. [69] Технологии, изучаемые в современной криптографии, включают симметричное и асимметричное шифрование , цифровые подписи , криптографические хеш-функции , протоколы согласования ключей , блокчейн , доказательства с нулевым разглашением и искаженные схемы .

Базы данных и интеллектуальный анализ данных

База данных предназначена для простой организации, хранения и извлечения больших объемов данных. Цифровые базы данных управляются с помощью систем управления базами данных для хранения, создания, обслуживания и поиска данных с помощью моделей баз данных и языков запросов . Интеллектуальный анализ данных — это процесс обнаружения закономерностей в больших наборах данных.

Открытия

Философ вычислительной техники Билл Рапапорт отметил три великих открытия в области компьютерных наук : [70]

Всю информацию о любой вычислимой задаче можно представить, используя только 0 и 1 (или любую другую бистабильную пару, которая может переключаться между двумя легко различимыми состояниями, такими как «включено/выключено», «намагничено/размагничено», «высокий уровень»). -напряжение/низкое напряжение» и т.д.).
  • Идея Алана Тьюринга : есть только пять действий , которые компьютер должен выполнить, чтобы сделать «что-либо».
Любой алгоритм можно выразить на языке компьютера, состоящем всего из пяти основных инструкций: [71]
  • переместиться влево на одно место;
  • переместиться вправо на одно место;
  • прочитать символ в текущем месте;
  • напечатайте 0 в текущем местоположении;
  • напечатайте 1 в текущем местоположении.
  • Идея Коррадо Бема и Джузеппе Якопини: есть только три способа объединения этих действий (в более сложные), которые необходимы для того, чтобы компьютер мог делать «что угодно». [72]
Для объединения любого набора базовых инструкций в более сложные необходимы всего три правила:
  • последовательность : сначала сделай это, потом сделай то;
  • выбор : ЕСЛИ то-то и то-то, ТО сделайте это, ИНАЧЕ сделайте то;
  • повторение : ПОКА происходит то-то и то-то, ДЕЛАЙТЕ это.
Три правила прозрения Бема и Якопини можно еще больше упростить с помощью goto (что означает, что он более элементарен, чем структурное программирование ).

Парадигмы программирования

Языки программирования могут использоваться для решения разных задач разными способами. Общие парадигмы программирования включают:

  • Функциональное программирование — стиль построения структуры и элементов компьютерных программ, который рассматривает вычисления как оценку математических функций и избегает состояния и изменяемых данных. Это парадигма декларативного программирования, что означает, что программирование выполняется с использованием выражений или объявлений вместо операторов. [73]
  • Императивное программирование — парадигма программирования, в которой используются операторы, изменяющие состояние программы. [74] Подобно тому, как повелительное наклонение в естественных языках выражает команды, повелительное наклонение программы состоит из команд, которые должен выполнить компьютер. Императивное программирование фокусируется на описании того, как работает программа.
  • Объектно-ориентированное программирование — парадигма программирования, основанная на концепции «объектов», которая может содержать данные в форме полей, часто называемых атрибутами; и код в форме процедур, часто называемых методами. Особенностью объектов является то, что процедуры объекта могут получать доступ к полям данных объекта, с которым они связаны, и часто изменять их. Таким образом, объектно-ориентированные компьютерные программы состоят из объектов, которые взаимодействуют друг с другом. [75]
  • Сервис-ориентированное программирование — парадигма программирования, в которой «сервисы» используются в качестве единицы компьютерной работы для разработки и реализации интегрированных бизнес-приложений и критически важных программ.

Многие языки поддерживают несколько парадигм, поэтому различие больше зависит от стиля, чем от технических возможностей. [76]

Исследовать

Конференции являются важными мероприятиями для исследований в области компьютерных наук. Во время этих конференций исследователи из государственного и частного секторов представляют свои последние работы и встречаются. В отличие от большинства других академических областей, в информатике престиж статей на конференциях выше, чем журнальных публикаций. [77] [78] Одно из предлагаемых объяснений этого состоит в том, что быстрое развитие этой относительно новой области требует быстрого обзора и распространения результатов, и с этой задачей лучше справляются конференции, чем журналы. [79]

См. также

Примечания

  1. ^ В 1851 году
  2. ^ «Внедрение перфокарт в новый движок было важно не только как более удобная форма управления, чем барабаны, или потому, что программы теперь могли иметь неограниченный размер, сохраняться и повторяться без опасности внесения ошибок в настройку ручная машина была важна еще и потому, что она помогла Бэббиджу осознать, что он изобрел что-то действительно новое, нечто гораздо большее, чем сложная вычислительная машина». Брюс Коллиер , 1970 год.
  3. ^ См. запись« Информатика » в Wikiquote для истории этой цитаты.
  4. ^ Слово «что угодно» написано в кавычках, потому что есть вещи, которые компьютеры сделать не могут. Один из примеров: ответить на вопрос, завершится ли произвольная данная компьютерная программа в конечном итоге или будет работать вечно ( проблема остановки ).

Ссылки

  1. ^ «Что такое информатика?» . Кафедра компьютерных наук Йоркского университета . Архивировано из оригинала 11 июня 2020 года . Проверено 11 июня 2020 г.
  2. ^ Jump up to: а б Что можно автоматизировать? Информатика и инженерные исследования . Серия информатики. МТИ Пресс. 1980. ISBN  978-0262010603 . Архивировано из оригинала 9 января 2021 года.
  3. ^ Jump up to: а б с Деннинг, П.Дж.; Комер, Делавэр; Грис, Д.; Малдер, MC; Такер, А.; Тернер, Эй Джей; Янг, PR (февраль 1989 г.). «Информатика как дисциплина» . Компьютер . 22 (2): 63–70. дои : 10.1109/2.19833 . ISSN   1558-0814 . Архивировано из оригинала 3 марта 2022 года . Проверено 3 марта 2022 г. Дисциплина информатики — это систематическое изучение алгоритмических процессов, которые описывают и преобразуют информацию, их теории, анализа, проектирования, эффективности, реализации и применения. Фундаментальный вопрос, лежащий в основе всех вычислений: «Что можно (эффективно) автоматизировать?»
  4. ^ «Поиск в WordNet — 3.1» . Поиск в Ворднете . Wordnetweb.princeton.edu. Архивировано из оригинала 18 октября 2017 года . Проверено 14 мая 2012 г.
  5. ^ «Определение информатики | Dictionary.com» . www.dictionary.com . Архивировано из оригинала 11 июня 2020 года . Проверено 11 июня 2020 г.
  6. ^ «Что такое информатика? | Бакалавриат по информатике в UMD» . undergrad.cs.umd.edu . Архивировано из оригинала 27 ноября 2020 года . Проверено 15 июля 2022 г.
  7. ^ Харель, Дэвид (2014). Алгоритмика. Дух вычислений . Шпрингер Берлин. ISBN  978-3-642-44135-6 . OCLC   876384882 . Архивировано из оригинала 17 июня 2020 года . Проверено 17 июня 2020 г.
  8. ^ Паттон, Ричард Д.; Паттон, Питер К. (2009), Ноф, Шимон Ю. (ред.), «Что можно автоматизировать? Что нельзя автоматизировать?» , Справочник Springer по автоматизации , Справочники Springer, Берлин, Гейдельберг: Springer, стр. 305–313, doi : 10.1007/978-3-540-78831-7_18 , ISBN  978-3-540-78831-7 , заархивировано из оригинала 11 января 2023 г. , получено 3 марта 2022 г.
  9. ^ Форсайт, Джордж (5–10 августа 1969 г.). «Информатика и образование». Материалы Конгресса ИФИП 1968 г. Вопрос «Что можно автоматизировать?» – один из самых вдохновляющих философских и практических вопросов современной цивилизации.
  10. ^ Кнут, Дональд Э. (1 августа 1972 г.). «Джордж Форсайт и развитие информатики» . Коммуникации АКМ . 15 (8): 721–726. дои : 10.1145/361532.361538 . ISSN   0001-0782 . S2CID   12512057 .
  11. ^ Хэнсон, Вики Л. (23 января 2017 г.). «Празднование 50-летия премии Тьюринга» . Коммуникации АКМ . 60 (2): 5. дои : 10.1145/3033604 . ISSN   0001-0782 . S2CID   29984960 .
  12. ^ Скотт, Эрик; Мартинс, Марселла Скочиньски Рибейро; Яфрани, Мохамед Эль; Волц, Ванесса; Уилсон, Деннис Дж. (5 июня 2018 г.). «ACM отмечает 50-летие премии Тьюринга ACM AM и величайших достижений в области вычислений» . ACM SIGEVOlution . 10 (3): 9–11. дои : 10.1145/3231560.3231563 . ISSN   1931-8499 . S2CID   47021559 .
  13. ^ «2021: 375 лет со дня рождения Лейбница, отца информатики» . люди.idsia.ch . Архивировано из оригинала 21 сентября 2022 года . Проверено 4 февраля 2023 г.
  14. ^ «Институт Чарльза Бэббиджа: кем был Чарльз Бэббидж?» . cbi.umn.edu . Архивировано из оригинала 9 января 2007 года . Проверено 28 декабря 2016 г.
  15. ^ «Ада Лавлейс | Двигатель Бэббиджа | Музей истории компьютеров» . www.computerhistory.org . Архивировано из оригинала 25 декабря 2018 года . Проверено 28 декабря 2016 г.
  16. ^ «История информатики» . cs.uwaterloo.ca . Архивировано из оригинала 29 июля 2017 года . Проверено 15 июля 2022 г.
  17. ^ «Вильгельм Шикард – Ein Computerpionier» (PDF) (на немецком языке). Архивировано из оригинала (PDF) 19 сентября 2020 г. Проверено 4 декабря 2016 г.
  18. ^ Китс, Фиона (25 июня 2012 г.). «Краткая история вычислительной техники» . Репозиторий . Королевское общество. Архивировано из оригинала 29 июня 2012 года . Проверено 19 января 2014 г.
  19. ^ «Музей науки, аналитическая машина Бэббиджа, 1834–1871 (пробная модель)» . Архивировано из оригинала 30 августа 2019 года . Проверено 11 мая 2020 г.
  20. ^ Jump up to: а б Хайман, Энтони (1982). Чарльз Бэббидж: пионер компьютера . Издательство Оксфордского университета . ISBN  978-0691083032 .
  21. ^ «Выбор и адаптация из заметок Ады, найденных в книге «Ада, волшебница чисел», Бетти Александра Тул, Эд.Д. Strawberry Press, Mill Valley, CA» . Архивировано из оригинала 10 февраля 2006 года . Проверено 4 мая 2006 года .
  22. ^ «Коллекция Джона Гэбриэла Бирна по компьютерным наукам» (PDF) . Архивировано из оригинала 16 апреля 2019 года . Проверено 8 августа 2019 г.
  23. ^ Торрес Кеведо, Л. (1914). «Очерки по автоматике - ее определение. Теоретическое расширение ее применения». Журнал Академии Точных Наук , 12, с. 391–418.
  24. ^ Торрес Кеведо, Леонардо. Автомат: Дополнение к теории машин, (pdf) , стр. 575–583, Журнал общественных работ, 19 ноября 1914 г.
  25. ^ Рональд Т. Кнезель. Числа и компьютеры , Springer, стр. 84–85, 2017 г. ISBN   978-3319505084
  26. ^ Рэнделл, Брайан. Цифровые компьютеры, История происхождения, (pdf) , с. 545, Цифровые компьютеры: происхождение, Энциклопедия информатики, январь 2003 г.
  27. ^ Рэнделл 1982 , с. 6, 11–13.
  28. ^ «В этом смысле Эйкену была нужна IBM, технология которой включала использование перфокарт, накопление числовых данных и передачу числовых данных из одного регистра в другой», Бернард Коэн , стр.44 (2000)
  29. ^ Брайан Рэнделл , с. 187, 1975 г.
  30. ^ Ассоциация вычислительной техники (ACM) была основана в 1947 году.
  31. ^ «Архивы IBM: 1945 год» . IBM.com. 23 января 2003 г. Архивировано из оригинала 5 января 2019 г. Проверено 19 марта 2019 г.
  32. ^ «IBM100 – Истоки информатики» . IBM.com. 15 сентября 1995 года. Архивировано из оригинала 5 января 2019 года . Проверено 19 марта 2019 г.
  33. ^ Jump up to: а б с Деннинг, П.Дж.; Комер, Делавэр; Грис, Д.; Малдер, MC; Такер, А.; Тернер, Эй Джей; Янг, PR (февраль 1989 г.). «Информатика как дисциплина» . Компьютер . 22 (2): 63–70. дои : 10.1109/2.19833 . ISSN   1558-0814 . Архивировано из оригинала 3 марта 2022 года . Проверено 3 марта 2022 г.
  34. ^ «Некоторая статистика EDSAC» . Кембриджский университет. Архивировано из оригинала 3 сентября 2007 года . Проверено 19 ноября 2011 г.
  35. ^ «Пионер компьютерных наук Сэмюэл Д. Конте умер в возрасте 85 лет» . Пердью Информатика. 1 июля 2002 года. Архивировано из оригинала 6 октября 2014 года . Проверено 12 декабря 2014 г.
  36. ^ Jump up to: а б Тедре, Матти (2014). Наука информатики: формирование дисциплины . Тейлор и Фрэнсис / CRC Press.
  37. ^ Jump up to: а б Луи Файн (1960). «Роль университета в компьютерах, обработке данных и смежных областях» . Коммуникации АКМ . 2 (9): 7–14. дои : 10.1145/368424.368427 . S2CID   6740821 .
  38. ^ «Устная история Стэнфордского университета» . Стэнфордский университет. Архивировано из оригинала 4 апреля 2017 года . Проверено 30 мая 2013 г.
  39. ^ Дональд Кнут (1972). «Джордж Форсайт и развитие информатики» . Комм. АКМ . Архивировано 20 октября 2013 г. в Wayback Machine.
  40. ^ Матти Тедре (2006). «Развитие информатики: социокультурная перспектива» (PDF) . п. 260. Архивировано (PDF) из оригинала 9 октября 2022 года . Проверено 12 декабря 2014 г.
  41. ^ Питер Наур (1966). «Наука даталогия» . Коммуникации АКМ . 9 (7): 485. дои : 10.1145/365719.366510 . S2CID   47558402 .
  42. ^ Вайс, Э.А.; Корли, Генри П.Т. «Письма в редакцию» . Коммуникации АКМ . 1 (4): 6. дои : 10.1145/368796.368802 . S2CID   5379449 .
  43. ^ Сообщения ACM 2 (1): стр. 4
  44. ^ Компьютер IEEE 28 (12): стр. 136.
  45. ^ П. Мунье-Кун, Вычисления во Франции, от Второй мировой войны до Plan Calcul. Возникновение науки . Париж, ПУПС, 2010, гл. 3 и 4.
  46. ^ Грот, Деннис П. (февраль 2010 г.). «Почему степень информатики?» . Коммуникации АКМ . Cacm.acm.org. Архивировано из оригинала 11 января 2023 года . Проверено 14 июня 2016 г.
  47. ^ Тедре, М. (2011). «Компьютерные технологии как наука: обзор конкурирующих точек зрения». Разум и машины . 21 (3): 361–387. дои : 10.1007/s11023-011-9240-4 . S2CID   14263916 .
  48. ^ Парнас, Д.Л. (1998). «Программы разработки программного обеспечения не являются программами информатики». Анналы программной инженерии . 6 : 19–37. дои : 10.1023/А:1018949113292 . S2CID   35786237 . , с. 19: «Вместо того, чтобы рассматривать разработку программного обеспечения как подобласть информатики, я рассматриваю ее как элемент набора: гражданское строительство, машиностроение, химическое машиностроение, электротехника, [...]»
  49. ^ Лук, РВП (2020). «Понимание того, как информатика может стать наукой». Наука и философия . 8 (2): 17–47. дои : 10.23756/sp.v8i2.531 .
  50. ^ Кнут, DE (1974). «Информатика и ее связь с математикой». Американский математический ежемесячник . 81 (4): 323–343. дои : 10.2307/2318994 . JSTOR   2318994 .
  51. ^ Jump up to: а б с д и ж г «Философия информатики» . Философия информатики (Стэнфордская энциклопедия философии) . Лаборатория метафизических исследований Стэнфордского университета. 2021. Архивировано из оригинала 16 сентября 2021 года . Проверено 16 сентября 2021 г.
  52. ^ Вегнер, П. (13–15 октября 1976 г.). Исследовательские парадигмы в информатике. Материалы 2-й международной конференции по программной инженерии . Сан-Франциско, Калифорния, США: Издательство IEEE Computer Society, Лос-Аламитос, Калифорния.
  53. ^ Деннинг, Питер Дж. (2007). «Информатика – это естественная наука». Коммуникации АКМ . 50 (7): 13–18. дои : 10.1145/1272516.1272529 . S2CID   20045303 .
  54. ^ Иден, АХ (2007). «Три парадигмы информатики» (PDF) . Разум и машины . 17 (2): 135–167. CiteSeerX   10.1.1.304.7763 . дои : 10.1007/s11023-007-9060-8 . S2CID   3023076 . Архивировано из оригинала (PDF) 15 февраля 2016 г.
  55. ^ Тернер, Раймонд; Ангиус, Никола (2019). «Философия информатики» . В Залте, Эдвард Н. (ред.). Стэнфордская энциклопедия философии . Архивировано из оригинала 14 октября 2019 года . Проверено 14 октября 2019 г.
  56. ^ Jump up to: а б «Информатика как профессия» . Совет по аккредитации компьютерных наук. 28 мая 1997 года. Архивировано из оригинала 17 июня 2008 года . Проверено 23 мая 2010 г.
  57. ^ Комитет по основам информатики: проблемы и возможности, Национальный исследовательский совет (2004 г.). Информатика: размышления о поле, размышления о поле . Пресса национальных академий. ISBN  978-0-309-09301-9 . Архивировано из оригинала 18 февраля 2011 года . Проверено 31 августа 2008 г.
  58. ^ «CSAB Ведущее компьютерное образование» . КСАБ. 3 августа 2011 года. Архивировано из оригинала 20 января 2019 года . Проверено 19 ноября 2011 г.
  59. Институт математики Клея P = NP. Архивировано 14 октября 2013 г., в Wayback Machine.
  60. ^ П. Коллинз, Грэм (14 октября 2002 г.). «Клод Э. Шеннон: основатель теории информации» . Научный американец . Архивировано из оригинала 16 января 2014 года . Проверено 12 декабря 2014 г.
  61. ^ Ван-Нам Хюинь; Владик Крейнович; Сонгсак Шрибунчитта; 2012. Анализ неопределенностей в эконометрике с приложениями . Springer Science & Business Media. п. 63. ISBN   978-3-642-35443-4 .
  62. ^ Филип А. Лапланте, (2010). Энциклопедия программной инженерии Трехтомник (печать). ЦРК Пресс. п. 309. ISBN   978-1-351-24926-3 .
  63. ^ Мухаммад Х. Рашид, (2016). SPICE для силовой электроники и электроэнергетики . ЦРК Пресс. п. 6. ISBN   978-1-4398-6047-2 .
  64. ^ «Что такое интегральная схема (ИС)? Важнейший компонент современной электроники» . WhatIs.com . Архивировано из оригинала 15 ноября 2021 года . Проверено 15 ноября 2021 г.
  65. ^ А. Тистед, Рональд (7 апреля 1997 г.). «Компьютерная архитектура» (PDF) . Чикагский университет. Архивировано (PDF) из оригинала 9 октября 2022 г.
  66. ^ Цзякунь Ван, (2017). Встроенные системы реального времени . Уайли. п. 12. ISBN   978-1-119-42070-5 .
  67. ^ Гордана Додиг-Црнкович; Рафаэла Джованьоли, (2013). Вычислительная природа: перспектива столетия Тьюринга . Springer Science & Business Media. п. 247. ISBN   978-3-642-37225-4 .
  68. ^ Саймон Элиас Бибри (2018). Умные устойчивые города будущего: неиспользованный потенциал анализа больших данных и контекстно-зависимых вычислений для продвижения устойчивого развития . Спрингер. п. 74. ISBN   978-3-319-73981-6 .
  69. ^ Кац, Джонатан (2008). Введение в современную криптографию . Иегуда Линделл. Бока-Ратон: Чепмен и Холл/CRC. ISBN  978-1-58488-551-1 . OCLC   137325053 . Архивировано из оригинала 6 мая 2022 года . Проверено 17 ноября 2021 г.
  70. ^ Рапапорт, Уильям Дж. (20 сентября 2013 г.). «Что такое вычисление?» . Государственный университет Нью-Йорка в Буффало. Архивировано из оригинала 14 февраля 2001 года . Проверено 31 августа 2013 г.
  71. ^ Б. Джек Коупленд, (2012). Электронный мозг Алана Тьюринга: борьба за создание ACE, самого быстрого компьютера в мире . ОУП Оксфорд. п. 107. ISBN   978-0-19-960915-4 .
  72. ^ Чарльз В. Герберт, (2010). Введение в программирование с использованием Алисы 2.2 . Cengage Обучение. п. 122. ISBN   0-538-47866-7 .
  73. ^ Доктор Резаул Карим; Шридхар Алла, (2017). Scala и Spark для анализа больших данных: изучите концепции функционального программирования, потоковой передачи данных и машинного обучения . Packt Publishing Ltd. с. 87. ISBN   978-1-78355-050-0 .
  74. ^ Лекс Шиэн, (2017). Изучение функционального программирования на Go: измените свой подход к созданию приложений с помощью функционального программирования на Go . Packt Publishing Ltd. с. 16. ISBN   978-1-78728-604-7 .
  75. ^ Эвелио Падилья, (2015). Системы автоматизации подстанций: проектирование и внедрение . Уайли. п. 245. ISBN   978-1-118-98730-8 .
  76. ^ «Мультипарадигмальный язык программирования» . Веб-документы MDN . Фонд Мозилла . Архивировано из оригинала 21 августа 2013 года.
  77. ^ Мейер, Бертран (апрель 2009 г.). «Точка зрения: оценка исследований в области информатики» . Коммуникации АКМ . 25 (4): 31–34. дои : 10.1145/1498765.1498780 . S2CID   8625066 .
  78. ^ Паттерсон, Дэвид (август 1999 г.). «Оценка ученых-компьютерщиков и инженеров для продвижения по службе и пребывания в должности» . Ассоциация компьютерных исследований. Архивировано из оригинала 22 июля 2015 года . Проверено 19 июля 2015 г.
  79. ^ Фортнау, Лэнс (август 2009 г.). «Точка зрения: время компьютерным наукам повзрослеть» . Коммуникации АКМ . 52 (8): 33–35. дои : 10.1145/1536616.1536631 .

Дальнейшее чтение

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: bc5db33639fa06169a2c65b6c4f9fb3a__1722685560
URL1:https://arc.ask3.ru/arc/aa/bc/3a/bc5db33639fa06169a2c65b6c4f9fb3a.html
Заголовок, (Title) документа по адресу, URL1:
Computer science - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)