Математика всегда была моей вещью в том, что я всегда находил предмет легким. Информатика - моя вторая любовь. Если бы у меня был выбор, я бы предпочел специализироваться по математике. Так как единственные профессии, которые можно получить, имея степень бакалавра по математике, совсем не привлекательны, я был бы очень доволен проведением дней в качестве разработчика программного обеспечения.
Мой вопрос заключается в следующем: от какой математической дисциплины будущий программист получит больше пользы? Прикладная математика или чистая математика?
Мне нравится учить себя, и я уверен, что смогу научиться быть хорошим программистом, но я все еще планирую получить образование в CS!
career-development
math
Joose
источник
источник
Ответы:
Все зависит от того, что вы хотите сделать в качестве разработчика программного обеспечения.
Если вы хотите заняться графикой, вам нужен сильный фон в геометрии, линейной алгебре, матричных преобразованиях (физика тоже не была бы ужасной) и т. Д.
Если вы хотите углубиться в SQL или другие типы программирования баз данных, все, что вам нужно, - это логика (доказательства, законы вывода и т. Д.) И дискретная математика (возможно, даже лямбда-исчисление).
Но в целом, чем больше прикладной математики вы знаете, тем лучше.
Чистая математика была бы лучше в таких вещах, как разработка алгоритмов и теоретическое программирование. Может быть, даже карта редукционного программирования или тому подобное.
В принципе, вы не ошибетесь в любом случае.
источник
Я могу рассчитывать на один палец, сколько раз мне приходилось использовать любую математику, более сложную, чем базовая алгебра, в любом проекте, над которым я работал.
Это действительно зависит от области, в которую вы входите.
источник
Программирование применяется математика. Тем не менее, я не верю, что это имеет большое значение. Прикладная математика, которую я взял для своей степени (по математике), была в первую очередь ориентирована на физику, которая не будет иметь большого значения для логики, необходимой для программирования, но она прекрасно работает для определения алгоритмов.
источник
Думаю, я бы порекомендовал какой-то баланс.
Конечно, полезно знать базовую теорию автоматов, формальные языки, теорию информации и базовую дискретную математику.
Это также очень полезно для многих математических областей применения, чтобы знать исчисление, линейную алгебру, вероятность и статистику.
Кроме того, очень важно получить сугубо техническую разработку программного обеспечения, чтобы вы знали, как проанализировать проблемную область и предложить ряд подходов к ней, с за и против. Тогда имейте возможность провести их с командой. Понять важность контроля исходного кода, удобства сопровождения, правильного тестирования и контроля качества, а также управления жизненным циклом программного обеспечения.
Я видел очень умных людей, которые стеснялись в одной или нескольких из этих областей, и это определенно сдерживает их. И если они учителя, это сдерживает их учеников.
источник
Я заканчиваю степень по чистой математике в настоящее время, но я также потратил много времени, работая в исследовательских проектах прикладной математики. Хотя каждая дисциплина проводит свои собственные культурные границы, различие между чистой и прикладной математикой часто более неуловимо, чем мы хотели бы признать. До недавнего времени в истории математики почти вся математика была тем, что мы сейчас называем «прикладной математикой». (Предоставьте исключение для теории чисел, если хотите.) Иногда границы тоже сдвигаются. Один из моих исследовательских интересов был мотивирован чрезвычайно «прикладной» проблемой, соответствующей реальной физической системе, но вырос, чтобы охватить центральные методы из теории полугрупп и формального языка, относительно «чистые» темы. Помните, что даже Гаусс, принц чистого, часами вычислял орбиту Цереры вручную.
Очень сложно сказать намного больше о вашей ситуации без конкретных подробностей о курсовой работе и возможностях исследования, но было бы справедливо сказать, что прикладная математика даст вам гораздо больше опыта в программировании. Это не значит, что в «чистой математике» нет вычислительных проблем (они есть!), Но это не будет подчеркнуто, и вам придется искать их самостоятельно. С другой стороны, кажется, что большинству людей легче перейти от чистого к прикладному и наоборот. Здесь есть много возможностей для смешивания переменных, но это может дать вам паузу.
В конечном счете, одним из самых полезных навыков, которые вы можете развивать в качестве студента, является способность определять ответы на следующие вопросы: «Что мне нужно, чтобы пистолет мне в голову, чтобы учиться?» Если у вас есть интересы, которые охватывают несколько областей и мешают вам исчерпать предложения курса в каждой, этот вопрос должен мотивировать большую часть курсовой работы. Например, я очень люблю теорию автоматов, но я никогда не учился на курсах теории вычислений, потому что я мог просто читать учебник для удовольствия. (Примечание: это работает, только если вы действительно читаете учебник ). В дифференциальной геометрии, однако, я знал, что на самом деле меня никогда не схватят за дело с символами Кристоффеля и тому подобным, если у меня не будет пистолета в голову в форме еженедельной викторины.
Вы должны научиться распознавать свои собственные склонности и нежелания и перенаправлять их.
источник
Чистая математика, безусловно. В частности, дискретная математика и математическая логика.
Математический факультет Университета Иллинойса имеет интересную программу MS под названием Applied Math (Теория вычислений). Это совместная программа между отделом математики и отделом CS. Это может быть то, что вы хотите, но это программа для выпускников.
источник
Мне удалось получить отличную степень по разработке программного обеспечения со степенью по вычислительной математике. Мне повезло, в моей школе была программа специально для этого, и это была смесь CS и математики с упором на математику, которая поддерживала CS (дискретный, абстрактная алгебра, теория графов и сети) и математику, которая требует некоторой компьютерной помощи (числовой анализ, линейная алгебра).
Я предполагаю, что это «чистая» математика, но я никогда не думал об этом так - она была настолько сфокусирована на компьютерах, что вычислительная математика была действительно хорошим описанием.
источник
Если вы думаете о финансовой карьере: статистика, анализ, PDE, симуляции Монте-Карло (и разные "математические (псевдо) случайности"), алгебра.
источник
Я думаю, это зависит от того, что вы хотите сделать. Я всегда был связан с вычислениями в применении к науке и технике, поэтому прикладная математика является большей частью набора навыков. Многие компьютерные разработки кажутся мне более чистой математикой, беспокоятся о том, существует ли алгоритм, который является NP-полным и все такое, никогда не казался мне очень интересным или практичным. Но функциональная аппроксимация, PDE, линейная алгебра и т. Д. Всегда были довольно фундаментальными. Но если вы планируете карьеру в общем программировании, я подозреваю, что эти вещи не принесут вам никакой пользы, кроме навыков мышления.
источник