Информатика
Информатика |
---|
![]() |
Информатика - это изучение вычислений , информации и автоматизации . [ 1 ] [ 2 ] [ 3 ] Компьютерная наука охватывает теоретические дисциплины (такие как алгоритмы , теория вычислений и теория информации ) в прикладных дисциплинах (включая проектирование и реализацию аппаратного и программного обеспечения ). [ 4 ] [ 5 ] [ 6 ]
Алгоритмы и структуры данных являются центральными для компьютерных наук. [ 7 ] Теория вычислений касается абстрактных моделей вычислений и общих классов проблем , которые могут быть решены с использованием их. Поля криптографии и компьютерной безопасности включают в себя изучение средств для безопасной связи и предотвращение уязвимостей безопасности . Компьютерная графика и вычислительная геометрия Адрес с генерацией изображений. Теория языка программирования рассматривает различные способы описания вычислительных процессов, а теория баз данных касается управления хранилищами данных. Взаимодействие человека с человеком исследует интерфейсы, через которые взаимодействуют люди и компьютеры, а разработка программного обеспечения фокусируется на проектировании и принципах разработки программного обеспечения. Такие области, как операционные системы , сети и встроенные системы, исследуют принципы и проектирование сложных систем . Компьютерная архитектура описывает конструкцию компьютерных компонентов и компьютерного оборудования. Искусственный интеллект и машинное обучение направлены на синтезирование целенаправленных процессов, таких как решение проблем, принятие решений, экологическая адаптация, Планирование и обучение найдены у людей и животных. В рамках искусственного интеллекта компьютерное зрение направлено на понимание и обработку изображений и видеоданных, в то время как обработка естественного языка направлена на понимание и обработку текстовых и лингвистических данных.
Основная проблема информатики - это определение того, что может и не может быть автоматизировано. [ 2 ] [ 8 ] [ 3 ] [ 9 ] [ 10 ] Награда Тьюринга , как правило, признана самым высоким различием в информатике. [ 11 ] [ 12 ]
История
История вычислений |
---|
![]() |
Аппаратное обеспечение |
Программное обеспечение |
Информатика |
Современные концепции |
По стране |
Временная шкала вычислений |
Глоссарий информатики |



Самые ранние основы того, что станет информатикой, предшествует изобретению современного цифрового компьютера . Машины для расчета фиксированных численных задач, таких как ABACUS, существовали, поскольку древность, помогая в таких вычислениях, как умножение и деление. Алгоритмы для выполнения вычислений существовали с момента древности, даже до разработки сложного вычислительного оборудования. [ 16 ]
Вильгельм Шикард спроектировал и построил первый рабочий механический калькулятор в 1623 году. [ 17 ] В 1673 году Готфрид Лейбниц продемонстрировал цифровой механический калькулятор, называемый Stepped Reckoner . [ 18 ] Лейбниц можно считать первым компьютерным ученым и теоретиком информации по различным причинам, включая тот факт, что он задокументировал систему бинарных чисел. В 1820 году Томас де Колмар запустил индустрию механического калькулятора [ Примечание 1 ] Когда он изобрел свой упрощенный арифмометр , первая вычисляющая машина достаточно сильна и достаточно надежная, чтобы использовать ежедневно в офисной среде. Чарльз Бэббидж начал конструкцию первого автоматического механического калькулятора , его различий в 1822 году, который в конечном итоге дал ему представление о первом программируемом механическом калькуляторе , его аналитическом двигателе . [ 19 ] Он начал разрабатывать эту машину в 1834 году, и «менее чем за два года он набросал многие из важных особенностей современного компьютера». [ 20 ] «Важным шагом было принятие системы перфорированных карт, полученных из Жаккарда -ткацкого станка » [ 20 ] делая его бесконечно программируемым. [ Примечание 2 ] В 1843 году, во время перевода французской статьи по аналитическому двигателю, написала Ада Лавилс , в одном из многих примечаний, которые она включила, алгоритм для вычисления чисел Бернулли , который считается первым опубликованным алгоритмом, когда -либо специально адаптированным для реализации на компьютере. [ 21 ] Около 1885 года Герман Холлерит изобрел табулятор , который использовал перфорированные карты для обработки статистической информации; В конце концов его компания стала частью IBM . После Бэббиджа, хотя и не зная о своей предыдущей работе, Percy Ludgate в 1909 году опубликовал [ 22 ] 2 -й из двух конструкций для механических аналитических двигателей в истории. В 1914 году испанский инженер Леонардо Торрес Кьюведо опубликовал свои очерки об автоматике , [ 23 ] и спроектирован, вдохновленный Babbage, теоретической электромеханической расчетной машиной, которая должна была управлять программой только для чтения. В статье также представила идея арифметики с плавающей точкой . [ 24 ] [ 25 ] В 1920 году, чтобы отпраздновать 100 -летие изобретения арифмометра, Торрес представлен в Париже, электромеханический арифмометр , прототип, который продемонстрировал осуществимость электромеханического аналитического двигателя, [ 26 ] на какие команды могут быть напечатаны, а результаты напечатаны автоматически. [ 27 ] В 1937 году, через сто лет после невозможной мечты Баббиджа, Говард Айкен убедил IBM, который делал всевозможные перфорированные карточные оборудование, а также занимался калькулятором. [ 28 ] Чтобы разработать свой гигантский программируемый калькулятор, ASCC/Harvard Mark I , основанный на аналитическом двигателе Babbage, который сам использовал карты и центральную вычислительную единицу. Когда машина была закончена, некоторые приветствовали ее как «мечта Баббиджа». [ 29 ]
В течение 1940 -х годов, с разработкой новых и более мощных компьютерных машин, таких как компьютер Atanasoff -Berry и ENIAC , термин компьютер стал ссылаться на машины, а не на их человеческие предшественники. [ 30 ] Поскольку стало ясно, что компьютеры могут быть использованы не только для математических расчетов, область информатики расширилась для изучения вычислений в целом. В 1945 году IBM основала Лабораторию научных компьютеров Уотсона в Колумбийском университете в Нью -Йорке . Отремонтированный дом братства на западной стороне Манхэттена был первой лабораторией IBM, посвященной чистой науке. Лаборатория является предшественником исследовательского отделения IBM, который сегодня управляет исследовательскими учреждениями по всему миру. [ 31 ] В конечном счете, тесные отношения между IBM и Колумбийским университетом сыграли важную роль в появлении новой научной дисциплины, когда Колумбия предлагала один из первых курсов по академической кредитной стадии в области компьютерных наук в 1946 году. [ 32 ] Информатика начала создаваться в качестве отдельной академической дисциплины в 1950 -х и начале 1960 -х годов. [ 33 ] [ 34 ] Первая в мире программа степени компьютерных наук, диплом Кембриджа в области компьютерных наук , началась в Кембриджской компьютерной лаборатории Университета Кембриджа в 1953 году. Первый факультет компьютерных наук в Соединенных Штатах был сформирован в Университете Пердью в 1962 году. [ 35 ] Поскольку практические компьютеры стали доступны, многие приложения вычислений стали отдельными областями изучения в своих собственных правах.
Этимология и масштаб
Хотя впервые предложено в 1956 году, [ 36 ] Термин «компьютерная наука» появляется в статье 1959 года в связи с коммуникациями ACM , [ 37 ] в котором Луи Фейн выступает за создание аспирантуры в области компьютерных наук, аналогичных созданию Гарвардской бизнес -школы в 1921 году. [ 38 ] Луи оправдывает это имя, утверждая, что, как и наука управления , предмет применяется и междисциплинарный характер, при этом характеристики, типичные для академической дисциплины. [ 37 ] Его усилия и другие люди, такие как числовой аналитик Джордж Форсайт , были вознаграждены: университеты продолжали создавать такие отделы, начиная с Пердью в 1962 году. [ 39 ] Несмотря на свое название, значительный объем информатики не включает в себя изучение самих компьютеров. Из -за этого было предложено несколько альтернативных имен. [ 40 ] Некоторые департаменты крупных университетов предпочитают термин «Компьютерная наука» , чтобы точно подчеркнуть эту разницу. Датский ученый Питер Наур предложил термин Datalogy , [ 41 ] Чтобы отразить тот факт, что научная дисциплина вращается вокруг данных и обработки данных, а не обязательно вовлеченных компьютеров. Первым научным учреждением, которое использовало этот термин, стал факультет данных DataLogy в Университете Копенгагена, основанный в 1969 году, и Питер Наур был первым профессором в области данных. Термин используется в основном в скандинавских странах. Альтернативный термин, также предложенный Naur, - это наука о данных ; В настоящее время это используется для междисциплинарной области анализа данных, включая статистику и базы данных.
В первые дни вычислений были предложены ряд терминов для практиков сферы вычислений, были предложены в связи с ACM - Тюрингинером , турологом , проточной картами , прикладным мета-математиком и прикладным эпистемологом . [ 42 ] Три месяца спустя в том же журнале комполог был предложен , за которым последовал в следующем году гиполог . [ 43 ] Термин . также был предложен [ 44 ] В Европе термины, полученные из контрактных переводов выражения «автоматическая информация» (например, «Информация Automatica» на итальянском языке) или «Информация и математика» часто используются, например, Informatique (французский), Informatik (немецкий), informatica (итальянский, голландский ), Informática (испанская, португальская), Informatika ( славянские языки и венгерские ) или Pliroforiki ( πληροφορική , что означает информатику) в греческом . Подобные слова также были приняты в Великобритании (как в Школе информатики, Эдинбургский университет ). [ 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 Computer Society (IEEE CS) [ 58 ] - Определяет четыре области, которые он считает важной для дисциплины информатики: теория вычислений , алгоритмы и структуры данных , методология и языки программирования , а также компьютерные элементы и архитектура . В дополнение к этим четырем областям, CSAB также идентифицирует такие области, как программная инженерия, искусственный интеллект, компьютерные сети и коммуникацию, системы баз данных, параллельные вычисления, распределенные вычисления, взаимодействие человека с компанией, компьютерная графика, операционные системы, а также численные и символические вычисления в Быть важными областями информатики. [ 56 ]
Теоретическая информатика
Теоретическая информатика является математической и абстрактной по духу, но она получает свою мотивацию от практических и повседневных вычислений. Он направлен на понимание природы вычислений и, как следствие этого понимания, обеспечивает более эффективные методологии.
Теория вычислений
По словам Питера Деннинга, фундаментальный вопрос, лежащий в основе информатики: «Что может быть автоматизировано?» [ 3 ] Теория вычислений сосредоточена на ответе на основы фундаментальных вопросов о том, что можно вычислять и какое количество ресурсов требуется для выполнения этих вычислений. Стремясь ответить на первый вопрос, теория вычисления изучает, какие вычислительные задачи решаются для различных теоретических моделей вычислений . Второй вопрос решается с помощью теории вычислительной сложности , которая изучает время и пространственные затраты, связанные с различными подходами к решению множества вычислительных задач.
Знаменитый p = np? Проблема, одна из призовых проблем тысячелетия , [ 59 ] является открытой проблемой в теории вычислений.
![]() |
![]() |
![]() | |
Теория автоматов | Формальные языки | Теория вычисления | Теория вычислительной сложности |
![]() |
![]() |
![]() |
![]() |
Модели вычислений | Квантовая теория вычислений | Теория логической схемы | Cellular Automata |
Теория информации и кодирования
Теория информации, тесно связанная с вероятностью и статистикой , связана с количественной оценкой информации. Это было разработано Клодом Шенноном для поиска фундаментальных ограничений на операции обработки сигналов , такие как сжатие данных и надежное хранение и передачу данных. [ 60 ] Теория кодирования - это изучение свойств кодов (системы для преобразования информации из одной формы в другую) и их пригодность для конкретного применения. Коды используются для сжатия данных , криптографии , обнаружения ошибок и коррекции , а в последнее время также для сетевого кодирования . Коды изучаются с целью разработки эффективных и надежных передачи данных методов . [ 61 ]
![]() |
![]() |
![]() |
![]() |
![]() |
Теория кодирования | Пропускная способность канала | Алгоритмическая теория информации | Теория обнаружения сигналов | Колмогоров Сложность |
Структуры данных и алгоритмы
Структуры данных и алгоритмы являются исследованиями обычно используемых вычислительных методов и их вычислительной эффективности.
На 2 ) | ![]() |
![]() |
![]() |
![]() |
![]() |
Анализ алгоритмов | Алгоритм дизайн | Структуры данных | Комбинаторная оптимизация | Вычислительная геометрия | Рандомизированные алгоритмы |
Теория языка программирования и формальные методы
Теория языка программирования - это ветвь информатики, которая занимается дизайном, реализацией, анализом, характеристикой и классификацией языков программирования и их индивидуальными функциями . Он попадает в дисциплину компьютерных наук, как в зависимости от математики, так и в зависимости от математики, разработки программного обеспечения и лингвистики . Это активная область исследований с многочисленными специальными академическими журналами.
Формальные методы представляют собой конкретный тип математического метода для спецификации , разработки и проверки программных и аппаратных систем. [ 62 ] Использование формальных методов для разработки программного и оборудования мотивируется ожиданием того, что, как и в других инженерных дисциплинах, выполнение соответствующего математического анализа может способствовать надежности и надежности дизайна. Они формируют важную теоретическую основу для разработки программного обеспечения, особенно в тех случаях, когда участвует безопасность или безопасность. Формальные методы являются полезным дополнением к тестированию программного обеспечения, поскольку они помогают избежать ошибок, а также могут дать основу для тестирования. Для промышленного использования требуется поддержка инструментов. Тем не менее, высокая стоимость использования формальных методов означает, что они обычно используются только в разработке высокопоставленных и критически важных систем , где безопасность или безопасность имеют первостепенное значение. Формальные методы лучше всего описывать как применение довольно широкого разнообразия теоретических основных основ, в частности, логических расчетов, формальных языков , теории автоматов и семантики программы , а также типов систем и алгебраических типов данных для проблем в спецификации программного обеспечения и оборудования и оборудования и оборудования. проверка.
![]() |
![]() |
![]() |
![]() |
![]() | |
Формальная семантика | Теория типа | Компилятор дизайн | Языки программирования | Формальная проверка | Автоматизированная теорема доказывает |
Прикладная информатика
Компьютерная графика и визуализация
Компьютерная графика - это изучение цифрового визуального содержания и включает в себя синтез и манипулирование данными изображений. Исследование связано со многими другими областями в области компьютерных наук, включая компьютерное зрение , обработку изображений и вычислительную геометрию , и в значительной степени применяется в областях спецэффектов и видеоигр .
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
2D компьютерная графика | Компьютерная анимация | Рендеринг | Смешанная реальность | Виртуальная реальность | Твердое моделирование |
Обработка изображений и звука
Информация может принимать форму изображений, звука, видео или других мультимедиа. Биты информации могут транслироваться через сигналы . Его обработка является центральным понятием информатики, европейской точки зрения на вычисления, которая изучает алгоритмы обработки информации независимо от типа информационного носителя - будь то электрический, механический или биологический. Эта область играет важную роль в теории информации , телекоммуникации , информационной инженерии и имеет приложения в области медицинских имидных вычислений и синтеза речи , среди прочего. Какова нижняя граница на сложности алгоритмов быстрого преобразования Фурье ? является одной из нерешенных проблем в теоретической информатике .
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Алгоритмы БПФ | Обработка изображений | Распознавание речи | Сжатие данных | Медицинские изображения вычисления | Синтез речи |
Вычислительная наука, финансы и инженерия
Научные вычисления (или вычислительная наука) - это область исследования, связанная с построением математических моделей и методов количественного анализа и использования компьютеров для анализа и решения научных задач. Основным использованием научных вычислений является моделирование различных процессов, включая вычислительную динамику жидкости , физические, электрические и электронные системы и схемы, а также общества и социальные ситуации (особенно военные игры) вместе с их средами обитания, среди многих других. Современные компьютеры обеспечивают оптимизацию таких конструкций, как полный самолет. Примечательны в электрической и электронной конструкции, являются специями, [ 63 ] а также программное обеспечение для физической реализации новых (или модифицированных) проектов. Последнее включает в себя необходимое программное обеспечение для дизайна для интегрированных цепей . [ 64 ]
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Численный анализ | Вычислительная физика | Вычислительная химия | Биоинформатика | Нейроинформатика | Психоинформатика | Медицинская информатика | Вычислительная техника | Вычислительная музыкальная музыка |
Социальные вычисления и взаимодействие человека с человеком
Социальные вычисления - это область, которая касается пересечения социального поведения и вычислительных систем. Исследование взаимодействия с человеком -компьютером разрабатывает теории, принципы и руководящие принципы для дизайнеров пользовательских интерфейсов.
Программное обеспечение
Программное обеспечение - это изучение проектирования, внедрения и модификации программного обеспечения, чтобы обеспечить его высококачественное, доступное, обслуживание и быстрое построение. Это систематический подход к проектированию программного обеспечения, включающий применение технических методов для программного обеспечения. Программная инженерия имеет дело с организацией и анализом программного обеспечения - оно связано не только с созданием или производством нового программного обеспечения, но и его внутренним расположением и обслуживанием. Например , тестирование программного обеспечения , системное проектирование , технические долги и процессы разработки программного обеспечения .
Искусственный интеллект
Искусственный интеллект (ИИ) направлен на или требуется для синтеза, ориентированных на целевые процессы, такие как решение проблем, принятие решений, экологическая адаптация, обучение и общение, обнаруженные у людей и животных. Из его происхождения в кибернетике и на конференции Дартмута (1956) исследования искусственного интеллекта обязательно были междисциплинарными, опираясь на такие области, как прикладная математика , символическая логика, семиотика , электротехника , философия разума , нейрофизиология и социальная интеллект . ИИ ассоциируется в популярном уме с роботизированным развитием , но основной областью практического применения была встроенная компонент в областях разработки программного обеспечения , которые требуют вычислительного понимания. Отправной точкой в конце 1940 -х годов был вопрос Алана Тьюринга « Могут ли компьютеры думать? », И этот вопрос остается эффективно без ответа, хотя тест Тьюринга все еще используется для оценки вывода компьютера в масштабе человеческого интеллекта. Но автоматизация оценочных и прогнозирующих задач становится все более успешной в качестве замены мониторинга и вмешательства человека в областях компьютерного приложения, включающего сложные реальные данные.
Компьютерные системы
Компьютерная архитектура и организация
Компьютерная архитектура, или цифровая компьютерная организация, является концептуальной проектированием и фундаментальной оперативной структурой компьютерной системы. Он фокусируется в основном на пути, с помощью которого центральная обработка работает внутри и доступ к адресам в памяти. [ 65 ] Компьютерные инженеры изучают вычислительную логику и проектирование компьютерного оборудования, от отдельных процессора компонентов , микроконтроллеров , персональных компьютеров до суперкомпьютеров и встроенных систем . Термин «архитектура» в компьютерной литературе может быть связан с работой Лайла Р. Джонсона и Фредерика П. Брукса -младшего , членов отделения организации машины в главном исследовательском центре IBM в 1959 году.
Одновременные, параллельные и распределенные вычисления
Параллелизм - это свойство систем, в которых несколько вычислений выполняются одновременно, и потенциально взаимодействуют друг с другом. [ 66 ] Был разработан ряд математических моделей для общих одновременных вычислений, включая петри -сети , процесс Calculi и модель параллельной машины случайного доступа . [ 67 ] Когда несколько компьютеров подключены в сети во время использования параллелизма, это известно как распределенная система. Компьютеры в этой распределенной системе имеют свою собственную частную память, и информация может быть обменена для достижения общих целей. [ 68 ]
Компьютерные сети
Эта ветвь компьютерных наук направлена на управление сети между компьютерами по всему миру.
Компьютерная безопасность и криптография
Компьютерная безопасность - это ветвь компьютерных технологий с целью защиты информации от несанкционированного доступа, сбоев или модификации при сохранении доступности и удобства использования системы для предполагаемых пользователей.
Историческая криптография - это искусство письма и расшифровки секретных сообщений. Современная криптография - это научное исследование проблем, связанных с распределенными вычислениями, которые можно атаковать. [ 69 ] Технологии, изученные в современной криптографии, включают в себя симметричное и асимметричное шифрование , цифровые подписи , криптографические функции хеш-функции , протоколы агрессии ключей , блокчейн , доказательства нулевого знания и искаженные схемы .
Базы данных и интеллектуальный анализ данных
База данных предназначена для легкой организации, хранения и извлечения больших объемов данных. Цифровые базы данных управляются с использованием систем управления базами данных для хранения, создания, обслуживания и поиска данных с помощью моделей баз данных и языков запросов . Работка данных - это процесс обнаружения шаблонов в больших наборах данных.
Открытия
Философ по вычислительству Билла Рапапорт отметил три великих понимания информатики : [ 70 ]
- Готфрид Вильгельм Лейбниц , Джордж Бул , Алан Тьюринг , Клод Шеннон и понимание Сэмюэля Морса : есть только два объекта , с которыми компьютер должен иметь дело, чтобы представлять «что угодно». [ Примечание 4 ]
- Вся информация о любой вычисляемой проблеме может быть представлена только с использованием только 0 и 1 (или любой другой бистабильной пары, которая может переходить между двумя легко различимыми состояниями, такими как «Вкл/выключение», «намагниченные/де-магнитные», «Высокий -Волтаж/Низкое напряжение »и т. Д.).
- Понимание Алана Тьюринга : есть только пять действий , которые компьютер должен выполнить, чтобы сделать «что угодно».
- Каждый алгоритм может быть выражен на языке для компьютера, состоящего только из пяти основных инструкций: [ 71 ]
- Переместить в ногу на одно место;
- Переместите направо в одном месте;
- Прочитайте символ в текущем месте;
- Печать 0 в текущем месте;
- Печать 1 в текущем месте.
- Каждый алгоритм может быть выражен на языке для компьютера, состоящего только из пяти основных инструкций: [ 71 ]
- Коррадо Бём и Джузеппе Якопини понимают: есть только три способа объединения этих действий (в более сложные), которые необходимы для того, чтобы компьютер сделал «все». [ 72 ]
- Необходимы только три правила, чтобы объединить любой набор основных инструкций в более сложные:
- Последовательность : сначала сделайте это, затем сделайте это;
- Выбор : если такая и такая такая же, сделайте это, иначе сделайте это;
- Повторение : хотя это и так, это так, сделайте это.
- Три правила понимания Бома и Якопини могут быть дополнительно упрощены с использованием GOTO (что означает, что оно является более элементарным, чем структурированное программирование ).
- Необходимы только три правила, чтобы объединить любой набор основных инструкций в более сложные:
Программирование парадигм
Языки программирования могут быть использованы для выполнения разных задач по -разному. Парадигмы общего программирования включают:
- Функциональное программирование , стиль построения структуры и элементов компьютерных программ, которые рассматривают вычисления как оценку математических функций и позволяют избежать состояния и измененных данных. Это декларативная парадигма программирования, которая означает, что программирование осуществляется с выражениями или объявлениями вместо утверждений. [ 73 ]
- Императивное программирование , парадигма программирования, которая использует заявления, которые изменяют состояние программы. [ 74 ] Во многом так же, как императивное настроение на естественных языках выражает команды, императивная программа состоит из команд для выполнения компьютера. Императивное программирование фокусируется на описании того, как работает программа.
- Объектно-ориентированное программирование , парадигма программирования, основанная на концепции «объектов», которая может содержать данные в форме полей, часто известных как атрибуты; и код в форме процедур, часто известных как методы. Функцией объектов является то, что процедуры объекта могут получить доступ и часто изменять поля данных объекта, с которым они связаны. Таким образом, объектно-ориентированные компьютерные программы сделаны из объектов, которые взаимодействуют друг с другом. [ 75 ]
- Программирование, ориентированное на обслуживание , парадигма программирования, которая использует «услуги» в качестве единицы компьютерной работы, для разработки и внедрения интегрированных бизнес-приложений и критических миссий программных программ
Многие языки предлагают поддержку нескольких парадигм, что делает различие более вопросом стиля, чем технических возможностей. [ 76 ]
Исследовать
Конференции являются важными событиями для исследований в области компьютерных наук. Во время этих конференций исследователи из государственного и частного сектора представляют свою недавнюю работу и встречи. В отличие от большинства других академических областей, в компьютерных науках престиж конференц -документов больше, чем у журнальных публикаций. [ 77 ] [ 78 ] Одним из предложенных объяснений для этого является быстрая разработка этой относительно новой области, требует быстрого рассмотрения и распределения результатов, задача, лучше выполнять конференции, чем журналы. [ 79 ]
Смотрите также
Примечания
- ^ В 1851 году
- ^ «Внедрение перфорированных карт в новый двигатель было важным не только как более удобная форма контроля, чем барабаны, или потому что программы теперь могут иметь неограниченную степень и могут храниться и повторяться без опасности введения ошибок при настройке Машина вручную; Брюс Коллиер , 1970
- ^ См. Запись « Информатика » на Wikiquote для истории этой цитаты.
- ^ Слово «что угодно» написано в кавычках, потому что есть вещи, которые не могут сделать компьютеры. Одним из примеров является: ответить на вопрос, если произвольная компьютерная программа в конечном итоге закончит или работает навсегда ( проблема остановки ).
Ссылки
- ^ "Что такое информатика?" Полем Кафедра компьютерных наук, Университет Йорка . Архивировано из оригинала 11 июня 2020 года . Получено 11 июня 2020 года .
- ^ Jump up to: а беременный Что может быть автоматизировано? Исследование компьютерных наук и инженерии . Серия информатики. MIT Press. 1980. ISBN 978-0262010603 Полем Архивировано из оригинала 9 января 2021 года.
- ^ Jump up to: а беременный в Деннинг, PJ; Comer, de; Gries, D.; Малдер, MC; Такер, А.; Тернер, AJ; Янг, PR (февраль 1989 г.). «Вычисление как дисциплина» . Компьютер 22 (2): 63–70. doi : 10.1109/2.19833 . ISSN 1558-0814 . Архивировано из оригинала 3 марта 2022 года . Получено 3 марта 2022 года .
Дисциплина вычислений - это систематическое изучение алгоритмических процессов, которые описывают и преобразуют информацию, их теорию, анализ, проектирование, эффективность, реализацию и применение. Фундаментальный вопрос, лежащий в основе всех вычислений: «Что может быть (эффективно) автоматизировано?»
- ^ «Поиск Wordnet --3.1» . Wordnet Search . Wordnetweb.princeton.edu. Архивировано из оригинала 18 октября 2017 года . Получено 14 мая 2012 года .
- ^ «Определение информатики | Dictionary.com» . www.dictionary.com . Архивировано из оригинала 11 июня 2020 года . Получено 11 июня 2020 года .
- ^ компьютерная наука? «Что такое Backgrad.cs.umd.edu . Архивировано с оригинала 27 ноября 2020 года . Получено 15 июля 2022 года .
- ^ Harel, David (2014). Алгоритмики дух вычислительных средств . Спрингер Берлин. ISBN 978-3-642-44135-6 Полем OCLC 876384882 . Архивировано из оригинала 17 июня 2020 года . Получено 17 июня 2020 года .
- ^ Паттон, Ричард Д.; Patton, Peter C. (2009), Nof, Shimon Y. (ed.), «Что может быть автоматизировано? Что не может быть автоматизировано?» , Справочник Springer по автоматизации , Справочные справочники Springer, Берлин, Гейдельберг: Springer, стр. 305–313, doi : 10.1007/978-3-540-78831-7_18 , ISBN 978-3-540-78831-7 Архивировано . с оригинала 11 января 2023 года , получено 3 марта 2022 года
- ^ Форсайт, Джордж (5–10 августа 1969 г.). «Информатика и образование». Материалы IFIP Congress 1968 .
Вопрос «Что может быть автоматизировано?» является одним из самых вдохновляющих философских и практических вопросов современной цивилизации.
- ^ Кнут, Дональд Э. (1 августа 1972 г.). «Джордж Форсайт и развитие компьютерных наук» . Коммуникации ACM . 15 (8): 721–726. doi : 10.1145/361532.361538 . ISSN 0001-0782 . S2CID 12512057 .
- ^ Хансон, Вики Л. (23 января 2017 г.). «Празднование 50 лет премии Тьюринга» . Коммуникации ACM . 60 (2): 5. doi : 10.1145/3033604 . ISSN 0001-0782 . S2CID 29984960 .
- ^ Скотт, Эрик; Мартинс, Марселла Скокзинский Рибейро; Яфрани, Мохамед Эль; Вольц, Ванесса; Уилсон, Деннис Г. (5 июня 2018 г.). «ACM отмечает 50 лет награды ACM Am Turing и величайших достижений Computing» . ACM SigeVolution . 10 (3): 9–11. doi : 10.1145/3231560.3231563 . ISSN 1931-8499 . S2CID 47021559 .
- ^ «2021: 375 -й день рождения Лейбниза, отец информатики» . People.idsia.ch . Архивировано из оригинала 21 сентября 2022 года . Получено 4 февраля 2023 года .
- ^ "Институт Чарльза Бэббеджа: кем был Чарльз Бэббидж?" Полем cbi.umn.edu . Архивировано с оригинала 9 января 2007 года . Получено 28 декабря 2016 года .
- ^ "Ada Lovelace | BABBARSE ENGINE | Музей истории компьютера" . www.computerhistory.org . Архивировано из оригинала 25 декабря 2018 года . Получено 28 декабря 2016 года .
- ^ «История информатики» . cs.uwaterloo.ca . Архивировано с оригинала 29 июля 2017 года . Получено 15 июля 2022 года .
- ^ «Вильгельм Шикард - EIN Computerpionier» (PDF) (на немецком языке). Архивировано из оригинала (PDF) 19 сентября 2020 года . Получено 4 декабря 2016 года .
- ^ Китс, Фиона (25 июня 2012 г.). «Краткая история вычислений» . Репозиторий . Королевское общество. Архивировано из оригинала 29 июня 2012 года . Получено 19 января 2014 года .
- ^ «Музей науки, аналитический двигатель Баббиджа, 1834–1871 (пробная модель)» . Архивировано из оригинала 30 августа 2019 года . Получено 11 мая 2020 года .
- ^ Jump up to: а беременный Хайман, Энтони (1982). Чарльз Бэббидж: пионер компьютера . Издательство Оксфордского университета . ISBN 978-0691083032 .
- ^ «Выбор и адаптация из заметок ADA, найденных в ADA, очаровании чисел», - Бетти Александра Тул Эд. Strawberry Press, Милл -Вэлли, Калифорния » . Архивировано из оригинала 10 февраля 2006 года . Получено 4 мая 2006 года .
- ^ «Коллекция компьютерных наук Джона Габриэля Бирна» (PDF) . Архивировано с оригинала 16 апреля 2019 года . Получено 8 августа 2019 года .
- ^ Torres Quevedo, L. (1914). «Автоматические очерки - его определение. Теоретическое расширение его приложений». Журнал Академии точных наук , 12, стр. 391–418.
- ^ Торрес Кеведо, Леонардо. Автоматический: комплемент теории машин, (PDF) , стр. 575-583, Журнал общественных работ, 19 ноября 1914 года.
- ^ Рональд Т. Кнезель. Числа и компьютеры , Springer, с. 84-85, 2017. ISBN 978-3319505084
- ^ Ранделл, Брайан. Цифровые компьютеры, история происхождения, (PDF) , с. 545, Цифровые компьютеры: происхождение, энциклопедия компьютерных наук, январь 2003 г.
- ^ Randell 1982 , p. 6, 11–13.
- ^ «В этом смысле Айкен нуждался в IBM, чьи технологии включали использование перфорированных карт, накопление численных данных и передачу численных данных из одного регистра в другой», Бернард Коэн , с.44 (2000)
- ^ Брайан Ранделл , с. 187, 1975
- ^ Ассоциация по вычислительной технике (ACM) была основана в 1947 году.
- ^ «Архив IBM: 1945» . Ibm.com. 23 января 2003 года. Архивировано с оригинала 5 января 2019 года . Получено 19 марта 2019 года .
- ^ «IBM100 - происхождение компьютерных наук» . Ibm.com. 15 сентября 1995 года. Архивировано с оригинала 5 января 2019 года . Получено 19 марта 2019 года .
- ^ Jump up to: а беременный в Деннинг, PJ; Comer, de; Gries, D.; Малдер, MC; Такер, А.; Тернер, AJ; Янг, PR (февраль 1989 г.). «Вычисление как дисциплина» . Компьютер 22 (2): 63–70. doi : 10.1109/2.19833 . ISSN 1558-0814 . Архивировано из оригинала 3 марта 2022 года . Получено 3 марта 2022 года .
- ^ «Некоторые статистики EDSAC» . Кембриджский университет. Архивировано из оригинала 3 сентября 2007 года . Получено 19 ноября 2011 года .
- ^ «Пионер по информатике Сэмюэль Д. Конте умирает в 85» . Purdue Compury Science. 1 июля 2002 года. Архивировано с оригинала 6 октября 2014 года . Получено 12 декабря 2014 года .
- ^ Jump up to: а беременный Тедре, Матти (2014). Наука о вычислении: формирование дисциплины . Тейлор и Фрэнсис / CRC Press.
- ^ Jump up to: а беременный Луи Файн (1960). «Роль университета в компьютерах, обработке данных и связанных с ними областях» . Коммуникации ACM . 2 (9): 7–14. doi : 10.1145/368424.368427 . S2CID 6740821 .
- ^ «Стэнфордский университет устной истории» . Стэнфордский университет. Архивировано с оригинала 4 апреля 2017 года . Получено 30 мая 2013 года .
- ^ Дональд Кнут (1972). «Джордж Форсайт и развитие компьютерных наук» . Коммуникации ACM . Архивировано 20 октября 2013 года на машине Wayback
- ^ Матти Тедре (2006). «Развитие компьютерных наук: социокультурная перспектива» (PDF) . п. 260. Архивировал (PDF) из оригинала 9 октября 2022 года . Получено 12 декабря 2014 года .
- ^ Питер Наур (1966). «Наука о данных» . Коммуникации ACM . 9 (7): 485. doi : 10.1145/365719.366510 . S2CID 47558402 .
- ^ Вайс, EA; Корли, Генри Пт "Письма в редакцию" . Коммуникации ACM . 1 (4): 6. doi : 10.1145/368796.368802 . S2CID 5379449 .
- ^ Сообщение ACM 2 (1): с.4
- ^ IEEE компьютер 28 (12): с.136
- ^ P. Mounier-Kuhn, это во Франции, от Второй мировой войны до плана расчета. Появление науки , Paris, Pups, 2010, Ch. 3 и 4.
- ^ Грот, Деннис П. (февраль 2010 г.). "Почему степень информатики?" Полем Коммуникации ACM . Cacm.acm.org. Архивировано из оригинала 11 января 2023 года . Получено 14 июня 2016 года .
- ^ Тедре М. (2011). «Вычисление как наука: опрос конкурирующих точек зрения». Умы и машины . 21 (3): 361–387. doi : 10.1007/s11023-011-9240-4 . S2CID 14263916 .
- ^ Parnas, DL (1998). «Программы разработки программного обеспечения не являются программами компьютерных наук». Анналы разработки программного обеспечения . 6 : 19–37. doi : 10.1023/a: 1018949113292 . S2CID 35786237 . , с. 19: «Вместо того, чтобы рассматривать разработку программного обеспечения как под поле компьютерных наук, я рассматриваю его как элемент набора, гражданское инженер, машиностроение, химическая инженерия, электротехника, [...]»
- ^ Лук, RWP (2020). «Понимание того, как информатика может быть наукой». Наука и философия . 8 (2): 17–47. doi : 10.23756/sp.v8i2.531 .
- ^ Кнут, Де (1974). «Информатика и ее отношение к математике». Американский математический ежемесячный . 81 (4): 323–343. doi : 10.2307/2318994 . JSTOR 2318994 .
- ^ Jump up to: а беременный в дюймовый и фон глин «Философия информатики» . Философия информатики (Стэнфордская энциклопедия философии) . Исследовательская лаборатория метафизики, Стэнфордский университет. 2021. Архивировано с оригинала 16 сентября 2021 года . Получено 16 сентября 2021 года .
- ^ Wegner, P. (13–15 октября 1976 г.). Исследовательские парадигмы в области компьютерных наук - предложения 2 -й Международной конференции по разработке программного обеспечения . Сан -Франциско, Калифорния, США: IEEE Computer Society Press, Лос -Аламитос, Калифорния.
- ^ Деннинг, Питер Дж. (2007). «Компьютер - это естественная наука». Коммуникации ACM . 50 (7): 13–18. doi : 10.1145/1272516.1272529 . S2CID 20045303 .
- ^ Eden, AH (2007). «Три парадигмы информатики» (PDF) . Умы и машины . 17 (2): 135–167. Citeseerx 10.1.1.304.7763 . doi : 10.1007/s11023-007-9060-8 . S2CID 3023076 . Архивировано из оригинала (PDF) 15 февраля 2016 года.
- ^ Тернер, Рэймонд; Angius, Никола (2019). «Философия информатики» . В Залте, Эдвард Н. (ред.). Стэнфордская энциклопедия философии . Архивировано с оригинала 14 октября 2019 года . Получено 14 октября 2019 года .
- ^ Jump up to: а беременный «Информатика как профессия» . Вычислительные науки. 28 мая 1997 года. Архивировано из оригинала 17 июня 2008 года . Получено 23 мая 2010 года .
- ^ Комитет по основам информатики: проблемы и возможности, Национальный исследовательский совет (2004). Информатика: размышления о области, размышления от области . Национальная академическая пресса. ISBN 978-0-309-09301-9 Полем Архивировано из оригинала 18 февраля 2011 года . Получено 31 августа 2008 года .
- ^ «CSAB ведущее компьютерное образование» . CSAB. 3 августа 2011 года. Архивировано с оригинала 20 января 2019 года . Получено 19 ноября 2011 года .
- ^ Институт математики глины P = NP Архивировано 14 октября 2013 г., на The Wayback Machine
- ^ П. Коллинз, Грэм (14 октября 2002 г.). «Клод Э. Шеннон: основатель теории информации» . Scientific American . Архивировано с оригинала 16 января 2014 года . Получено 12 декабря 2014 года .
- ^ Van-nam huynh; Владик Крейнович; Songsak Sriboonchitta; 2012. Анализ неопределенности в эконометрике с приложениями . Springer Science & Business Media. п. 63. ISBN 978-3-642-354443-4 .
- ^ Филипп А. Лапланте, (2010). Энциклопедия программной инженерии Трехтомного набора (Print). CRC Press. п. 309 ISBN 978-1-351-24926-3 .
- ^ Мухаммед Х. Рашид, (2016). Специя для электроники и электроники . CRC Press. п. 6 ISBN 978-1-4398-6047-2 .
- ^ «Что такое интегрированная схема (IC)? Жизненно важный компонент современной электроники» . Whatis.com . Архивировано с оригинала 15 ноября 2021 года . Получено 15 ноября 2021 года .
- ^ A. Thisted, Ronald (7 апреля 1997 г.). «Компьютерная архитектура» (PDF) . Чикагский университет. Архивировано (PDF) из оригинала 9 октября 2022 года.
- ^ Jiacun Wang, (2017). Встроенные системы в реальном времени . Уайли. п. 12 ISBN 978-1-119-42070-5 .
- ^ Гордана Додиг-Крнкович; Raffaela giovagnoli, (2013). Вычислительный характер: Тьюринговая перспектива . Springer Science & Business Media. п. 247 ISBN 978-3-642-37225-4 .
- ^ Саймон Элиас Бибри (2018). Устойчивые города будущего: неиспользованный потенциал аналитики больших данных и контекстных вычислений для повышения устойчивости . Спрингер. п. 74 ISBN 978-3-319-73981-6 .
- ^ Кац, Джонатан (2008). Введение в современную криптографию . Иегуда Линделл. Бока Ратон: Чепмен и Холл/КРК. ISBN 978-1-58488-551-1 Полем OCLC 137325053 . Архивировано из оригинала 6 мая 2022 года . Получено 17 ноября 2021 года .
- ^ Рапапорт, Уильям Дж. (20 сентября 2013 г.). "Что такое вычисления?" Полем Государственный университет Нью -Йорка в Буффало. Архивировано из оригинала 14 февраля 2001 года . Получено 31 августа 2013 года .
- ^ Б. Джек Коупленд, (2012). Электронный мозг Алана Тьюринга: борьба за построение туза, самый быстрый компьютер в мире . УП Оксфорд. п. 107 ISBN 978-0-19-960915-4 .
- ^ Чарльз В. Герберт, (2010). Введение в программирование с использованием Алисы 2.2 . Cengage Learning. п. 122 ISBN 0-538-47866-7 .
- ^ Md. Rezaul Karim; Шридхар Алла, (2017). Scala и Spark для анализа больших данных: изучить концепции функционального программирования, потокового потока данных и машинного обучения . Packt Publishing Ltd. p. 87 ISBN 978-1-7835-05-0 .
- ^ Лекс Шихан, (2017). Обучение функциональному программированию в GO: Измените способ подхода к своим приложениям, используя функциональное программирование в GO . Packt Publishing Ltd. p. 16 ISBN 978-1-78728-604-7 .
- ^ Evelio Padilla, (2015). Системы автоматизации подстанций: проектирование и реализация . Уайли. п. 245 ISBN 978-1-118-98730-8 .
- ^ «Мультипарадигмский язык программирования» . MDN Web Docs . Фонд Мозиллы . Архивировано из оригинала 21 августа 2013 года.
- ^ Мейер, Бертран (апрель 2009 г.). «Точка зрения: оценка исследований для компьютерных наук» . Коммуникации ACM . 25 (4): 31–34. doi : 10.1145/1498765.1498780 . S2CID 8625066 .
- ^ Паттерсон, Дэвид (август 1999). «Оценка компьютерных ученых и инженеров для продвижения и пребывания в должности» . Компьютерная исследовательская ассоциация. Архивировано с оригинала 22 июля 2015 года . Получено 19 июля 2015 года .
- ^ Fortnow, Lance (август 2009 г.). «Посмотреть на точку зрения: время для развития компьютерных наук» . Коммуникации ACM . 52 (8): 33–35. doi : 10.1145/1536616.1536631 .
Дальнейшее чтение
- Такер, Аллен Б. (2004). Справочник по информатике (2 -е изд.). Чепмен и Холл/CRC. ISBN 978-1-58488-360-9 .
- Ральстон, Энтони ; Рейли, Эдвин Д.; Hemmendinger, David (2000). Энциклопедия информатики (4 -е изд.). Словары Гроув. ISBN 978-1-56159-248-7 Полем Архивировано из оригинала 8 июня 2020 года . Получено 6 февраля 2011 года .
- Эдвин Д. Рейли (2003). Вехи в информатике и информационных технологиях . Greenwood Publishing Group. ISBN 978-1-57356-521-9 .
- Кнут, Дональд Э. (1996). Избранные документы по информатике . Publications CSLI, издательство Кембриджского университета .
- Кольер, Брюс (1990). Маленький двигатель, который мог бы: расчетные машины Чарльза Бэббиджа . Garland Publishing Inc. ISBN 978-0-8240-0043-1 Полем Архивировано из оригинала 20 января 2007 года . Получено 4 мая 2013 года .
- Коэн, Бернард (2000). Говард Айкен, портрет компьютерного пионера . MIT Press. ISBN 978-0-262-53179-5 .
- Тедре, Мэтью (2014). Наука о вычислениях: формирование дисциплины CRC Press, Taylor & Francis
- Ранделл, Брайан (1973). Происхождение цифровых компьютеров, выбранных документов . Springer-Verlag. ISBN 978-3-540-06169-4 .
- Ранделл, Брайан (октябрь - декабрь 1982 г.). «От аналитического двигателя до электронного цифрового компьютера: вклад Ludgate, Torres и Bush» (PDF) . IEEE ANNALS ИСТОРИЯ ИСКУССТВА . 4 (4): 327–341. doi : 10.1109/mahc.1982.10042 . S2CID 1737953 . Архивировано из оригинала (PDF) 21 сентября 2013 года.
- Питер Дж. Деннинг. Наука по информатике? , Коммуникации ACM, апрель 2005 г.
- Питер Дж. Деннинг, Отличные принципы учебных программ , технический симпозиум по вопросам компьютерного образования, 2004.
Внешние ссылки
