Каково определение информатики, и что такое наука в информатике?


39

Я получаю степень бакалавра в области компьютерных наук, но я на начальном этапе, и я почти уверен, что буду доволен своим выбором, учитывая, что это похоже на академическое и профессиональное образование.

Сказав это, кажется, существует множество определений того, что компьютерная наука действительно имеет в отношении академических кругов, частного сектора и реальной «науки» в «компьютерных науках», я бы хотела получить ответы (или поделиться размышлениями) Что касается широты вещей, к которой можно применить образование в области компьютерных наук, и, в конечном счете, разнообразных путей, которые преследуют компьютерные науки.


1
Где наука в области компьютерных наук? : cacm.acm.org/magazines/2012/10/…
avi

смотрите также cs meta что такое информатика
vzn

Ответы:


38

Информатика - это неправильное название - на самом деле в информатике нет «науки», поскольку информатика - это не наблюдение за природой. Скорее, части информатики - это инженерия , а части - математика .

Более теоретические части информатики являются чисто математическими. Например, что такое хороший алгоритм для сортировки? Как мы определяем семантику языков программирования? Как мы можем быть уверены, что криптографическая система безопасна?

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

Напротив, наука о законах природы и, в более общем смысле, о природных явлениях . Явления, связанные с информатикой, созданы человеком. В этом смысле некоторые аспекты информатики можно рассматривать как экспериментальные, например, эмпирическое изучение социальных сетей, эмпирическое изучение компьютерных сетей, эмпирическое изучение вирусов и их распространения, а также компьютерное образование (как для обучения информатике, так и для использования компьютеров). учить другие предметы). Большинство из этих примеров являются пограничной информатикой и являются более правильными междисциплинарными. Наиболее близким к научному методу в области компьютерных наук является, пожалуй, изучение сетей и других аппаратных устройств, которое является основным направлением в подрайоне, неофициально известном как «системы».

Несмотря на эти примеры, большая часть ядра информатики вовсе не наука. Информатика - это просто имя, оно не должно иметь смысла.

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


4
Это один из самых честных комментариев ученых-компьютерщиков, которых я когда-либо видел. Спасибо.
scaaahu

21
Это действительно философия, а не информатика, но я не согласен с этим ответом. Информатика - это неправильный термин для информатики , а информатика - это наука, как, скажем, механика. Существует сильная математическая основа, но эта основа является предметом эмпирической проверки - мы ориентируемся на Тьюринг вычислимость , потому что это , как мир , кажется, работает, и мы делаем исследование и другие понятия , потому что Тьюринг вычислимость не моделируют все реальные явления вычислений.
Жиль "ТАК - перестань быть злым"

3
Я думаю, что идея о том, что только то, что наблюдает природные явления, является настоящей наукой, является эманацией материалистической мысли, с чем многие люди не согласны. Этимологически наука - это сбор знаний, и хотя некоторые говорят, что вся математика - это тавтология, я сомневаюсь, что кто-либо из них отнесет математику как «не знание».
Г. Бах

2
@ Жиль, ты не можешь быть серьезным. Никто не оспаривает понятие Тьюринга о вычислимости, кроме людей, занимающихся гипер вычислимостью. Можно сделать лучший вывод о понятии эффективной вычислимости (поскольку в Polytime означает эффективность), но никто больше не пытается захватить эффективность в рамках разумных вычислительных моделей - люди теории игнорируют проблемы с моделью, а люди практики игнорируют модель ,
Юваль Фильмус

2
@YuvalFilmus Чтобы привести только два примера, машин Тьюринга недостаточно для моделирования распределенных или синхронных систем.
Жиль "ТАК - перестань быть злым"

11

Давайте начнем с цитаты одного из отцов современной информатики: «Информатика - это не только компьютеры, а астрономия - это телескопы», - Эдсгер Уайб, DIJKSTRA.

Так что на самом деле, если вы заинтересованы в компьютерах и программировании, то вас не очень интересует информатика :-)

Я думаю, что в Википедии есть одно из лучших описаний: «Компьютерные науки (сокращенно CS или CompSci) - это научный и практический подход к вычислениям и их применениям. Это систематическое изучение осуществимости, структуры, выражения и механизации методических процессов. (или алгоритмы), которые лежат в основе сбора, представления, обработки, хранения, передачи и доступа к информации, независимо от того, закодирована ли такая информация в битах и ​​байтах в памяти компьютера или расшифрованы механизмы и белковые структуры в клетке человека. специализируется на теории вычислений и проектировании вычислительных систем "

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


3
Вы говорите, отошли , но были ли они когда-либо чисто теоретическими?
Agos

@ Агос, я согласен с вами, никогда не было настоящего периода чисто теоретического, но я бы сказал, что с течением времени бизнесу требуется больше программистов и меньше компьютерных специалистов, поэтому степени / дипломы больше переходят от теоретического к практическому. Я не говорю, что одно лучше другого, просто делаю наблюдение.
AquaAlex

1
@ AquaAlex Я думаю, что, возможно, это лучший способ описать резкое различие между компьютерной наукой старого и компьютерной науки, как ее считают сегодня: она резко сместилась в сторону практического применения, чтобы соответствовать требованиям промышленности.

Почему «чистая» информатика должна быть только теорией? Насколько я знаю, это никогда не было хорошим описанием того, что такое информатика; практические проблемы всегда информировали поле.
Рафаэль

@ Рафаэль Все зависит от того, что вы считаете «практичным». Написание компьютерных программ не является практическим применением CS. Большинство наук используют теорию для решения реальных / практических задач, и многие науки используют для этого компьютеры и программирование.
AquaAlex

11

Возможно, стоит упомянуть, что немецкий термин "компьютерные науки" - это Informatik , который плавит Infomation и Mathematik . Я думаю, что это хорошее и краткое описание того, что такое информатика. (итальянский термин - informatica , и я уверен, что есть еще несколько языков, которые следуют той же строке).


В статье Википедии по информатике есть раздел о различных именах en.wikipedia.org/wiki/Computer_science#Name_of_the_field - мне, со своей стороны, больше не нравится «компьютерная» часть, чем «наука». Мне еще предстоит найти научную область, которая в настоящее время использует компьютеры гораздо реже, чем я.
linac

2
@linac: В других областях компьютеры используются для изучения чего-то другого. Информатика в конечном итоге использует компьютеры для изучения вычислений. В обоих случаях мы можем удалить компьютеры и все еще делать работу, только медленнее. Имейте в виду, что на самом деле это довольно современная идея, что «компьютер» относится исключительно к реальному блоку, реализующему некоторое аппаратное обеспечение, способное выполнять вычисления, а «компьютер» в компьютерной науке действительно относится к самой идее вычислений.
Phoshi

Может быть, этот вывод названия «Информатик» неверен. Немецкая вика упоминает «Информация унд Automatik» , но может быть , это просто «информации + -tik»
miracle173

@ miracle173 На самом деле, есть много информации об "Information und Automatik", также во французской и итальянской вики они упоминают об этом. Я не могу вспомнить, где я прочитал
отрывок

6

Возможно, вас заинтересует обсуждение мета. В частности, я поддерживаю свой ответ, воспроизведенный здесь:

Информатика - это наука о вычислениях; это кажется очевидным. Менее ясно, как определить науку и вычисления полезным и значимым образом.

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

Мы могли бы определить вычисление как преобразование, примененное к части информации. В самом широком смысле вычисления - это любой процесс, который вызывает изменение во вселенной. Нет необходимости предоставлять более подробное определение, чем это.

Таким образом, информатика состоит из той части человеческой деятельности, которая удовлетворяет следующим критериям:

  • Это наука, то есть:

    • Это (1) формально или (2) эмпирически:

      1. использует дедуктивные рассуждения из предполагаемых истин
      2. использует индуктивные рассуждения от наблюдаемых явлений
    • Он либо (1) чистый, либо (2) применяется

      1. стремится улучшить состояние научного понимания
      2. стремится применить научное понимание, чтобы использовать природные силы
  • Он изучает вычисления, то есть:

    • Он изучает либо (1) преобразования или (2) информацию
      1. процессы, которые отображают информацию из одной формы в другую
      2. субъекты, подверженные преобразованиям

спасибо за выявление эмпирической стороны, которая также играет роль в передовых исследованиях TCS! например, эмпирические результаты в статьях CS
vzn

5

Я хочу добавить точку зрения относительно слова «наука», которая слишком длинна для комментария.

Люди говорят, что информатика не является наукой традиционным способом, поскольку (упрощенно) мы занимаемся либо математикой, либо инженерным делом. Это не совсем верно. Мы можем применить научный метод - возможно , в краеугольный камень науки - то есть

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

Фактически, некоторые из самых ранних работ по алгоритмам придерживаются этого принципа. Некоторые методы были «утеряны» по нескольким причинам, но мы все еще можем их использовать.

Основной процесс¹ будет выглядеть так:

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

O

Кстати, не верьте мне на слово. Роберт Седжвик и Филипп Флажоле работают над возвращением науки в информатику , главным образом путем разработки формальной основы аналитической комбинаторики , которая допускает проверяемые гипотезы. Вы можете найти видео и MOOC от Sedgewick, которые расскажут вам столько же.

Вся надежда не потеряна.


  1. Это, конечно, только сформулированные алгоритмы. Вы также можете изучить, соответствуют ли графовые модели реальности (например, в работе с социальными сетями, хотя часто более эмпирически, чем с научной точки зрения), или пропускная способность сети оказывается предсказанной, или каким-либо другим образом.

«Вся надежда не потеряна». Было бы плохо, если бы информатика не была наукой (за исключением неправильного числа)?
k.stm

@ k.stm По-моему, да. Зачем соглашаться на меньшее?
Рафаэль

Математика - это не наука, но она никогда не страдала от того, что она не одна. И, конечно же, ни математика, ни информатика не являются «меньшими», чем наука, потому что они не являются наукой. Может быть, вы имели в виду «меньше» в количественном выражении, поскольку в «компьютерной науке не меньше математики, техники и науки»? Но даже тогда я не вижу никакой наследственной выгоды в том, чтобы быть наукой дополнительно. С чего бы это? Есть ли необходимость в научном подходе к вычислительным рассуждениям?
k.stm

@ k.stm Да. Не все CS могут быть математикой, и не все могут (или хотят) быть инженерными. Части, которые не являются ни в настоящее время, не всегда (читай: обычно нет) научными. Это большая проблема. Пример: экспериментальная алгоритмика. Математический анализ неразрешим, инженерные принципы не применяются. Затем мы проводим научные эксперименты по программам, но обычно мы не используем научные принципы. (Сколько CSists знают даже основную статистику?)
Рафаэль

Итак, вы говорите: «нам нужно подходить к вычислительным рассуждениям также с научной точки зрения, потому что это работает лучше (или вообще) в некоторых ситуациях», правильно ли я вас понимаю? Если это так, я могу понять вашу точку зрения - тем не менее, это не значит, что для компьютерной науки есть наследственное преимущество, чтобы действительно быть наукой. Просто оказалось, что было бы лучше…
k.stm

3

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

Вот несколько хороших работ / эссе Деннинга, авторитета в этой области, которые касаются этого вопроса напрямую и являются хорошим местом для начала для большего количества ссылок. оба опубликованы в журнале главного академического общества области, CACM .

Информационные процессы и вычисления по-прежнему широко распространены в глубоких структурах многих областей. Вычисления не являются - фактически никогда не были - наукой только искусственного.

Информатика отвечает всем критериям для того, чтобы быть наукой, но у нее есть проблема доверия к себе.


Деннинг определяет «вычисления» как «изучение компьютерных технологий». Понятно, что изучение чего-либо - это не то же самое, что изучение чего-либо. Я всегда был поражен тем, насколько основные ошибки категории принимаются без мерцания в этой области.
reinierpost

не совсем согласен со всем в газетах, однако думаю, что вы цитируете вне контекста
vzn

2

работая от определения науки

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

  2. информатика широко и тесно связана с физикой во многих отношениях. например, физика / термодинамика вычислений, квантовые вычисления , P =? NP как физический закон , фазовые переходы и т. д.

  3. это систематизированное знание.

  4. оно подвергается систематическому изучению, т.е. исследованиям.

Терминология «информатика» подчеркивает, что область относится не только к применению известных принципов, например, в технике. В области информатики существует довольно много terra incognita , многие основные вопросы в этой области остаются открытыми / без ответа . количество исследователей во всем мире трудно оценить, но их число превышает тысячи или десятки тысяч.

Тем не менее, обратите внимание, что более научные аспекты информатики на самом деле не так много преподаются / раскрываются на уровне бакалавриата, что может привести к некоторому недоумению. также, кажется, не так много громких воплощений / празднований / сторонников / сторонников этого как науки, например, в отличие от других областей, таких как LHC и открытие бозона Хиггса и т. д. [несмотря на то, что CS играл главную роль в его открытие!], или знаменитого фигура Карла Сагана или хокинга. Однако, например, смотрите научно-популярные книги, которые вдохновляют CS


1
Или, в зависимости от подполя информатики, в чем разница с математикой? :-)
Юхо

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

Еще один аспект, чтобы задуматься. машина Тьюринга, которая является основным объектом исследования CS, называется машиной и представляет собой химероподобный гибрид теоретического и физического устройства.
взн

Машины Тьюринга - идеальные устройства. Они не существуют в реальности. Даже в качестве модели она не слишком близка к тому, как «фактически» производятся вычисления.
Юваль Фильмус
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.