Язык программирования C и API-интерфейс Windows 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Язык программирования C и API-интерфейс Windows



 

Создание С знаменует собой начало современной эпохи программирования. Язык С был разработан Деннисом Ритчи ( Dennis Ritchie ) в 70-е годы прошлого века для программирования на мини-ЭВМ DEC PDP-11 под управлением операционной системы Unix. Несмотря на то что в ряде предшествовавших языков, в особенности Pascal, был достигнут значительный прогресс, именно С установил тот образец, которому до сих пор следуют в программировании.

Язык С появился в результате революции в структурном программировании в 1960-е годы прошлого века. До появления структурного программирования писать большие программы было трудно, поскольку логика программы постепенно вырождалась в так называемый «макаронный код» — запутанный клубок безусловных переходов, вызовов и возвратов, которые трудно отследить. В структурированных языках программирования этот недостаток устранялся путём ввода строго определенных управляющих операторов, подпрограмм с локальными переменными и других усовершенствований. Благодаря применению методов структурного программирования сами программы стали более организованными, надежными и управляемыми.

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

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

Традиционно разработка программного обеспечения для операционных систем семейства Windows подразумевала использование языка программирования С в сочетании с API-интерфейсом Windows. И хотя то, что за счёт применения этого проверенного временем подхода было успешно создано очень много приложений, мало кто станет спорить по поводу того, что процесс создания приложений с помощью одного только API-интерфейса является очень сложным занятием. Первая очевидная проблема состоит в том, что С представляет собой очень лаконичный язык. Разработчики программ на языке С вынуждены мириться с необходимостью «вручную» управлять памятью, безобразной арифметикой указателей и ужасными синтаксическими конструкциями. Из-за сочетания тысяч глобальных функций и типов данных, определённых в API-интерфейса Windows, с языком, который и без того выглядит устрашающе, совсем не удивительно, что сегодня в обиходе присутствует столь много дефектных приложений.

3. Появление языка программирования C++ и платформы MFC

К концу 70-х годов прошлого века масштабы многих проектов приблизились к пределам, с которыми уже не могли справиться методики структурного программирования вообще и язык С в частности. Для решения этой проблемы было открыто новое направление в программировании — так называемое объектно-ориентированное программирование (ООП). Применяя метод ООП, программист мог работать с более «крупными» программами. Но главная трудность заключалась в том, что С, самый распространенный в то время язык, не поддерживал ООП. Стремление к созданию объектно-ориентированного варианта С в конечном итоге привело к появлению С++.

Язык С++ был разработан в 1979 году Бьярне Страуструпом ( Bjarne Stroustrup ), работавшим в компании Bell Laboratories, базировавшейся в Мюррей-Хилл, штата Нью-Джерси, США. Первоначально новый язык назывался «С с классами», но в 1983 году он был переименован в С++. Язык С полностью входит в состав С++, а следовательно, С служит основанием, на котором зиждется С++. Большая часть дополнений, введенных Страуструпом, обеспечивала плавный переход к ООП. И вместо того чтобы изучать совершенно новый язык, программирующему на С требовалось лишь освоить ряд новых свойств, чтобы воспользоваться преимуществами методики ООП.

В течение 1980-х годов С++ всё ещё оставался в тени, интенсивно развиваясь, но к началу 1990-х годов, когда он уже был готов для широкого применения, его популярность в области программирования заметно возросла. К концу 1990-х годов он стал наиболее широко распространенным языком программирования и в настоящее время по-прежнему обладает неоспоримыми преимуществами языка разработки высокопроизводительных программ системного уровня.

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

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

Невзирая на сложность, сегодня существует множество платформ для программирования на С++. Например, MFC (Microsoft Foundation Classesбиблиотека базовых классов Microsoft) предоставляет в распоряжение разработчику набор классов С++, которые упрощают процесс создания приложений Windows. Основное предназначение MFC заключается в представлении «разумного подмножества» исходного API-интерфейса Windows в виде набора классов, «магических» макросов и многочисленных средств для автоматической генерации программного кода (обычно называемых мастерами). Несмотря на очевидную пользу данной платформы приложений (и многих других основанных на С++ наборов средств), процесс программирования на С++ остается трудным и чреватым допущением ошибок занятием из-за его исторической связи с языком С.



Поделиться:


Последнее изменение этой страницы: 2016-12-28; просмотров: 196; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.21.86 (0.005 с.)