Я новачок у галузі інформатики та програмування, і мені було цікаво, чи є різниця між інформатикою та програмуванням? і чи маєте ви вибір вибирати лише одного з них в університеті чи обох?
Я новачок у галузі інформатики та програмування, і мені було цікаво, чи є різниця між інформатикою та програмуванням? і чи маєте ви вибір вибирати лише одного з них в університеті чи обох?
Відповіді:
Інформатика - це вивчення того, що можуть робити комп’ютери; програмування - це практика змушувати комп'ютери робити речі.
Погляньте на курси / навчальні програми, які пропонують університети, які вас цікавлять, щоб дізнатись, чи є курсом CS, курсом програмування, чимось іншим (наприклад, Software Engineering) або навіть комбінацією вищезазначеного. Багато курсів, що рекламуються як "інформатика", пропонують важливий компонент програмування, який може бути таким, що ви можете втілити теоретичні частини курсу на практиці, або, можливо, заради них самих, щоб ви могли навчитися майстерності створення програм.
Застереження: «Інформатика» стала замуленою сферою в сучасний час, оскільки (принаймні, в США) університети не мають ступеня «програмування». Це означає, що люди, зацікавлені в програмуванні, повинні записатися на ступінь інформатики, і як реакція на це програми Computer Computer все більше наголошують на програмуванні.
Однак, комп’ютерна наука є сильно математичною наукою - обчислювальна математика могла бути кращим терміном. Він передбачає вивчення теорії графів, алгоритмічної складності, формальної логіки, автоматів і взагалі будь-якої логічної структури, яка може описати перетворення або відповідь на вхід - алгоритми. Комп'ютерний науковець у класичному розумінні може міркувати про правила, які керують будь-якою обчислювальною системою (включаючи сучасні комп'ютери), не обов'язково знаючи деталі впровадження поточної архітектури. Сильний досвід в галузі інформатики дає вам можливість розробляти (або відкликати) ефективні, масштабовані алгоритми, передбачати логічні скорочення та обґрунтовано міркувати про те, що можна простежити.
Навпаки, програмування - це те, що людина робить, коли використовує мову програмування для перетворення алгоритму в те, що може зробити машина. (Це повинно зробити очевидним інтимний зв’язок з інформатикою, і звідки походить велика плутанина.) Програміст (щодо середовища та мови) повинен мати можливість приймати практично будь-який набір алгоритмів і перетворювати їх у форму, як людську - і машиночитабельний, написавши код. Сильний фон в програмуванні (як це забезпечить більшість ступенів CS) дає змогу писати кращий код - де «кращий» код легше зрозуміти іншим та більш успішно виражати алгоритм, який ви реалізуєте.
Звичайно, існує велика кількість перехресних розмов, і високий рівень досвіду в одній буде сильно відповідати досвіду розвитку в іншому - як зазначалося, мажор CS майже завжди є компетентним програмістом, а досвідчений програміст підхопив багато принципів КС. Подумайте фізику та техніку.
Хороший спосіб запам'ятати різницю полягає в наступному: якщо йому потрібен комп'ютер, щоб побачити, чи працює він, це програмування - якщо ви можете це зробити олівцем і папером, це комп'ютерні науки.
Інформатика розглядає теоретичні основи інформації, обчислення та практичні прийоми їх реалізації та застосування. http://en.wikipedia.org/wiki/Computer_science
~
Інформатика - це не більше комп’ютерів, а астрономія - телескопи. Едсгер Дійкстра
Програмування - це майстерність створення комп’ютерної програми.
З моєї точки зору, інформатика повинна бути такою важкою наукою, як фізика.
Він включає вивчення компіляторів та генераторів компіляторів, концепцій архітектури апаратних засобів, різних форм систем числення, алгоритмів та алгоритмічної ефективності / продуктивності та теорії, що стоїть за арифметичними операціями на процесорі. Коли я робив КС в університеті, ми витратили багато часу на спілкування з асемблером, дізнавшись про різницю між складанням, зв'язуванням та інтерпретацією та ін.
Багато цього було зроблено програмуванням - тобто актом написання коду, який потім був складений або виконаний через інтерпретатора, з наміром створити результати для вирішення проблеми. Тобто програмування - це акт вирішення завдань, який можна описати знаннями з інформатики. Це своєрідний розкол чистої математики / прикладної математики.
Вам не потрібен ступінь з інформатики, щоб бути програмістом, але програміст з фоном CS, швидше за все, буде глибше розуміти поведінку комп'ютерних програм.
Я б переформулював ваше запитання як "Яка різниця між інформатикою та програмною інженерією?" Адже обидва передбачають програмування.
Інформатика - це теоретичне дослідження того, що таке обчислення, а що таке, а що неможливо. Він розглядає такі речі, як теорема Годельса і проблема зупинки.
Інженерія програмного забезпечення полягає в тому, як писати програми, які роблять те, що їм було призначено, і вони є керованими.
Інформатика - це теорія програмування. Програмування - це реалізація.
Інформатика ... - це науково-практичний підхід до обчислень та його застосування. Комп'ютерний вчений спеціалізується на теорії обчислень та проектуванні обчислювальних систем.
Його підполі можна розділити на різноманітні теоретичні та практичні дисципліни. Деякі поля, такі як теорія складності обчислювальної техніки (яка досліджує основні властивості обчислювальної задачі), є надзвичайно абстрактними, тоді як поля, такі як комп’ютерна графіка, підкреслюють візуальні програми у реальному світі. Інші сфери зосереджуються на проблемах у здійсненні обчислень. Наприклад, теорія мови програмування розглядає різні підходи до опису обчислень, в той час як саме вивчення комп'ютерного програмування досліджує різні аспекти використання мови програмування та складних систем. Взаємодія людини і комп'ютера розглядає проблеми в тому, щоб зробити комп’ютери та обчислення корисними, зручними та універсально доступними для людини ...
Якщо програмування - столярне виробництво, то інформатика - це архітектура / дизайн.
Редагувати
Більше інформації: в столярній справі вас цікавлять такі речі, як, в якому порядку будувати речі (каркас, потім підлога, потім внутрішні стіни, потім гіпсокартон тощо). Як побудувати його так, що на його побудову потрібно менше часу, але згодом його можна буде змінити.
Що стосується архітектури (її частина, як і CS, так чи інакше), ви переймаєтесь такими речами, якими є можливості матеріалів, наскільки велика балка вам потрібна для підтримки цього прольоту стіни / даху?
Аналогічно CS стосується теоретичних можливостей комп'ютерів, де програмування - про практичне застосування цих знань.
Інформатика - програмування, а фізика - до машинобудування.
Інформатика є теоретичною, вона вимагає науково-математичного підходу до інформації та її обчислення.
Комп'ютерне програмування практичне, це процес проектування, написання, тестування, налагодження та підтримка вихідного коду комп'ютерних програм.
Вони різні, але суміжні поля. Обидва отримали користь одне від одного.
Ступінь з інформатики набагато ширша за обсягом і охоплює теорію обчислювальної техніки. Ступінь в області комп'ютерного програмування , з іншого боку, орієнтована на розвиток кодування або навичок програмування студентів шляхом навчання їх на різних мовах програмування. Якщо ви розгублені, ви можете переглянути деталі обох цих програм у Каліфорнійському коледжі Сан-Дієго. Це може надати вам ясність щодо обсягу цих ступенів!
Інформатика : Це вивчення вирішення проблем за допомогою комп'ютерів / обчислювальних методів.
Комп'ютерне програмування: саме ця частина процесу вирішення проблем становить сферу інформатики. Комп'ютерне програмування - лише невеликий підмножина інформатики.
Програмування стосується людей. Люди читають, пишуть і підтримують код. Інформатика - це математика - вони реалізують та описують алгоритми.
Програмування (розробка) - це заробити гроші. Наука полягає у відкритті нових речей.