Из Википедии, бесплатной энциклопедии
  (Перенаправлено от разработчика ПО )
Перейти к навигации Перейти к поиску

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

Наиболее часто используемый программиста, язык программирования (например, Ассамблея , COBOL , C , C ++ , C # , JavaScript , Lisp , Python , Java ) может быть приставкой к термину программатора . Некоторые, кто работает с языками веб-программирования, также добавляют в свои заголовки префикс web .

История [ править ]

Многие считают Аду Лавлейс первым программистом. [1]

Британский Графиня и математик Ада Лавлейс часто считается первым программистом, так как она была первой , чтобы опубликовать часть программы ( в частности , алгоритма ) , предназначенной для реализации на Чарльза Бэббиджа «s аналитической машины , в октябре 1842. Алгоритм был используется для вычисления чисел Бернулли . [1] Поскольку машина Бэббиджа так и не была завершена как действующий стандарт во времена Лавлейса, у нее никогда не было возможности увидеть алгоритм в действии.

Первым, кто выполнил программу на работающем современном электронном компьютере, был ученый-компьютерщик Конрад Цузе в 1941 году.

Команда программирования ENIAC , состоящая из Кей МакНалти , Бетти Дженнингс , Бетти Снайдер , Марлин Вескоф , Фрэн Билас и Рут Лихтерман, была первыми программистами, которые регулярно работали. [2] [3]

Индустрия программного обеспечения [ править ]

Первой компанией, основанной специально для предоставления программных продуктов и услуг, была компания Computer Usage Company в 1955 году. До этого времени компьютеры программировали либо заказчики, либо несколько производителей коммерческих компьютеров того времени, такие как Sperry Rand и IBM . [4]

Индустрии программного обеспечения расширена в начале 1960 - х годов, почти сразу же после того, как компьютеры были впервые проданы в серийных количествах. Университеты, правительства и предприятия создали спрос на программное обеспечение. Многие из этих программ были написаны штатными программистами, работающими на полную ставку; некоторые из них распределялись между пользователями конкретной машины бесплатно, а другие продавались на коммерческой основе. Другие фирмы, такие как Computer Sciences Corporation (основанная в 1959 г.), также начали расти. Производители компьютеров вскоре начали объединять операционные системы , системное программное обеспечение и среды программирования со своими машинами; IBM 1620 пришел с 1620 Символическое программирования системы иФОРТРАН . [5]

Отрасль значительно расширилась с появлением персональных компьютеров (ПК) в середине 1970-х годов, которые предоставили вычисления для среднего офисного работника. В последующие годы ПК также помог создать постоянно растущий рынок игр, приложений и служебных программ. Это привело к увеличению спроса на разработчиков программного обеспечения на тот период времени. [6]

В первые годы 21 века возникла еще одна успешная бизнес-модель для размещенного программного обеспечения, которая получила название « программное обеспечение как услуга» или SaaS. С точки зрения производителей некоторых проприетарных программ , SaaS снижает опасения по поводу несанкционированного копирования , поскольку доступ к нему возможен только через Интернет, и по определению никакое клиентское программное обеспечение не загружается на ПК конечного пользователя. SaaS обычно работает из облака . [ необходима цитата ]

Характер работы [ править ]

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

Программисты работают во многих сферах, включая корпоративные отделы информационных технологий (ИТ), крупные компании-разработчики программного обеспечения , небольшие сервисные компании и государственные учреждения любого размера. Многие профессиональные программисты также работают подрядчиками в консалтинговых компаниях на сайтах клиентов . Лицензирование обычно не требуется для работы программистом, хотя профессиональные сертификаты обычно имеют программисты. Программирование широко считается профессией (хотя некоторые [ кто? ] Авторитеты не согласны с этим на том основании, что профессией считается только карьера с юридическими требованиями к лицензированию). [7]

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

Программисты пишут программы в соответствии со спецификациями, определяемыми в первую очередь более старшими программистами и системными аналитиками . После завершения процесса проектирования работа программиста состоит в том, чтобы преобразовать этот проект в логическую серию инструкций, которым может следовать компьютер. Программист кодирует эти инструкции на одном из многих языков программирования. В зависимости от цели программы используются разные языки программирования. COBOL , например, обычно используется для бизнес-приложений, которые обычно работают на мэйнфреймах и компьютерах среднего уровня , тогда как Fortran используется в науке и технике. C ++ и Pythonшироко используются как в научных, так и в бизнес-приложениях. Java , C # , JS и PHP - популярные языки программирования для веб-приложений и бизнес-приложений. Программисты обычно знают более одного языка программирования, и, поскольку многие языки похожи, они часто могут относительно легко изучать новые языки. На практике, программист часто называют языком , они знают, например , как Java - программисты , или по типу функции , которую они выполняют , или среды , в которой они работают, например, базы данных программистов , мэйнфреймы программистов или веб - разработчики . [ необходима цитата ]

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

Тестирование и отладка [ править ]

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

Сравнение приложений и системного программирования [ править ]

Компьютерные программисты часто делятся на два основных типа: прикладные программисты и системные программисты. Прикладные программисты пишут программы для выполнения конкретной работы, например программу для отслеживания запасов в организации. Они также могут пересматривать существующее упакованное программное обеспечение или настраивать общие приложения, которые часто приобретаются у независимых поставщиков программного обеспечения . Системные программисты, напротив, пишут программы для обслуживания и управления программным обеспечением компьютерных систем, например, операционными системами и системами управления базами данных . Эти рабочие вносят изменения в инструкции, которые определяют, как сеть, рабочие станции и ЦПсистемы обрабатывают различные порученные им задания и то, как они взаимодействуют с периферийным оборудованием, таким как принтеры и дисководы .

Квалификация и навыки [ править ]

Программист должен обладать техническими знаниями в определенных аспектах вычислений. Для некоторых должностей потребуется степень в соответствующей области, такой как информатика, информационные технологии, инженерия, программирование или другие связанные исследования. Идеальный программист - это тот, кто обладает практическим опытом работы с ключевыми языками программирования, такими как C ++ , C # , PHP , Java , C , JavaScript , Visual Basic и Python .

Типы программного обеспечения [ править ]

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

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

Кроме того, с появлением Интернета веб-разработка стала огромной частью области программирования. В настоящее время все больше программных приложений представляют собой веб-приложения, которые может использовать любой, у кого есть веб-браузер . [ необходима цитата ] Примеры таких приложений включают службу поиска Google, службу электронной почты Outlook.com и службу обмена фотографиями Flickr .

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

Глобализация [ править ]

Изменения рынка в Великобритании [ править ]

По данным BBC News, 17% студентов, изучающих информатику, не смогли найти работу по специальности через 6 месяцев после выпуска в 2009 году, что является самым высоким показателем среди опрошенных университетских дисциплин, в то время как 0% студентов-медиков не имели работы в том же опросе. [9]

Изменения на рынке США [ править ]

После краха пузыря доткомов (1999–2001 гг.) И Великой рецессии (2008 г.) многие американские программисты остались без работы или с более низкой заработной платой. [10] Кроме того, количество зачисленных на компьютерные и другие STEM-степени (STEM-истощение) [11] в США в течение многих лет снижалось , особенно среди женщин [12], что, согласно Бобуефу и Мэйсону, [13]может быть связано с отсутствием общего интереса к естественным наукам и математике, а также из-за очевидного опасения, что программирование будет подвергаться тому же давлению, что и производственная и сельскохозяйственная карьера. Бюро статистики труда США «Перспективы занятости» на 2014–24 годы прогнозирует снижение численности программистов на -8 процентов, затем на 2016–26 годы прогнозирует снижение на -7 процентов и, наконец, прогнозирует снижение на -9 процентов с 2019 по 2029 год. [ 7]

См. Также [ править ]

  • Программист игр
  • Список программистов
  • Процесс разработки программного обеспечения
  • Программная инженерия
  • Системный администратор

Ссылки [ править ]

  1. ^ a b Fuegi, J .; Фрэнсис, Дж. (Октябрь – декабрь 2003 г.). «Лавлейс и Бэббидж и создание 1843„ноты ». IEEE Annals of the History of Computing . 25 (4): 16–26. DOI : 10.1109 / MAHC.2003.1253887 .
  2. ^ "Мемориалы" . Eniacprogrammers.org . Проверено 13 марта 2021 года .
  3. ^ "Новости ABC: Первые компьютерные программисты вдохновляют документальный фильм" . Abcnews.go.com. 4 декабря 2007 . Проверено 13 марта 2021 года .
  4. ^ Элмер К. Куби (лето 1994). «Воспоминания о первой софтверной компании». Анналы истории вычислительной техники . 16 (2): 65–71. DOI : 10.1109 / 85.279238 . S2CID 5733812 . 
  5. ^ "Архивы IBM: система обработки данных 1620" . www.ibm.com . 23 января 2003 . Проверено 17 марта 2021 года .
  6. ^ Бюро переписи населения США. «Занятия в области информационных технологий» . Бюро переписи населения США . Проверено 21 марта 2021 года .
  7. ^ a b c "Программисты: Справочник по профессиональным перспективам:: Бюро статистики труда США" . www.bls.gov . Проверено 13 марта 2021 года .
  8. ^ "BBC Bitesize - GCSE Computer Science - Программное обеспечение для программирования и IDE - Версия 4" . www.bbc.co.uk . Проверено 13 марта 2021 года .
  9. ^ Shankleman, Martin (1 июля 2010). « Один в 10“Великобритания выпускников без работы» . Проверено 13 марта 2021 г. - через www.bbc.co.uk.
  10. ^ Манн, Амар; Нуньес, Тони (август 2009 г.). «После пузыря доткомов: занятость и заработная плата в сфере высоких технологий Кремниевой долины в 2001 и 2008 годах» (PDF) . Региональный отчет, Бюро статистики труда США : 1–8 . Проверено 13 марта 2021 года .
  11. ^ "Истощение STEM: Пути студентов колледжа в и из областей STEM" . nces.ed.gov . 26 ноября 2013 . Проверено 13 марта 2021 года .
  12. ^ "Портал разработчиков hp | Международная женская неделя HP: число женщин в компьютерных науках уменьшается с 1980-х годов" . developers.hp.com . Проверено 13 марта 2021 года .
  13. ^ Бобуэф, Тереза; Мейсон, Джон (июнь 2005 г.). «Почему так много студентов, изучающих информатику: некоторые мысли и наблюдения». Бюллетень ACM SIGCSE . 37 (2): 103–106. DOI : 10.1145 / 1083431.1083474 .

Дальнейшее чтение [ править ]

  • Вайнберг, Джеральд М. , Психология компьютерного программирования , Нью-Йорк: Ван Ностранд Рейнхольд, 1971.
  • Эмпирическое исследование природы программирования: Лукас, Роб. "Dreaming in Code" New Left Review 62, март – апрель 2010 г., стр. 125–132.
  • Томпсон, Клайв (2019). Кодеры: создание нового племени и переделка мира . Penguin Press. ISBN 978-0735220560.

Внешние ссылки [ править ]

  • Описание Министерства труда США :
    • Компьютерные программисты
    • Разработчики программного обеспечения