Обоснование выбора программных средств разработки
С++ — это универсальный язык программирования, задуманный так, чтобы сделать программирование более простым и приятным для серьёзного программиста. За исключением второстепенных деталей С++ является надмножеством языка программирования C (его объектно-ориентированным расширением). Для реализации алгоритма в качестве основного был выбран язык программирования С++, который стал едва ли… Читать ещё >
Обоснование выбора программных средств разработки (реферат, курсовая, диплом, контрольная)
Для реализации алгоритма в качестве основного был выбран язык программирования С++, который стал едва ли не стандартом для написания любых достаточно сложных программ.
Язык программирования служит двум связанным между собой целям: он дает программисту аппарат для задания действий, которые должны быть выполнены, и формирует концепции, которыми пользуется программист, размышляя о том, что делать. Первой цели идеально отвечает язык, который настолько «близок к машине», что всеми основными машинными аспектами можно легко и просто оперировать достаточно очевидным для программиста образом. С таким умыслом первоначально задумывался C. Второй цели идеально отвечает язык, который настолько «близок к решаемой задаче», чтобы концепции её решения можно было выражать прямо и коротко. С таким умыслом предварительно задумывались средства, добавленные к C для создания С++.
С++ - это универсальный язык программирования, задуманный так, чтобы сделать программирование более простым и приятным для серьёзного программиста. За исключением второстепенных деталей С++ является надмножеством языка программирования C (его объектно-ориентированным расширением) [10].
Основной целью разработчиков C было создание языка, который вместо неудобного и лишённого наглядности ассемблера применялся бы в самых насущных задачах системного программирования. К достоинствам языка С относятся лаконичность записи алгоритмов, логическая стройность написанных на нём программ, их переносимость между компьютерами с различной архитектурой и различными операционными средами (чего не скажешь о программах на машинно-зависимом языке ассемблера). Компиляторы языка разработаны практически для всех существующих в настоящее время платформ. Как никакой другой язык программирования, язык С «доверяет» программисту. Даже в таком существенном вопросе, как преобразование типов данных, налагаются лишь незначительные ограничения. Во многих случаях программы, написанные на этом языке программирования, сравнимы по скорости с программами, написанными на языке ассемблера, при этом они более наглядны и просты в сопровождении. Всё это делает его удобным и эффективным средством для решения разнообразных задач.
Помимо возможностей, которые дает C, С++ предоставляет гибкие и эффективные средства определения новых типов. Используя определения новых типов, точно отвечающих концепциям приложения, программист может разделять разрабатываемую программу на легко поддающиеся контролю части. Такой метод построения программ часто называют абстракцией данных. Информация о типах содержится в некоторых объектах типов, определенных пользователем. Такие объекты просты и надежны в использовании в тех ситуациях, когда их тип нельзя установить на стадии компиляции. Программирование с применением таких объектов часто называют объектно-ориентированным. При правильном использовании этот метод дает более короткие, проще понимаемые и легче контролируемые программы.
Различие между C и С++ состоит в первую очередь в степени внимания, уделяемого типам и структурам. C выразителен и снисходителен. С++ еще более выразителен, но, чтобы достичь этой выразительности, программист должен уделить больше внимания типам объектов. Когда известны типы объектов, компилятор может правильно обрабатывать выражения, тогда как в противном случае программисту пришлось бы задавать действия с мучительными подробностями. Знание типов объектов также позволяет компилятору обнаруживать ошибки, которые в противном случае остались бы до тестирования. Немаловажно то, что использование системы типов для того, чтобы получить проверку параметров функций, защитить данные от случайного искажения, задать новые операции и т. д., само по себе не увеличивает расходов по времени выполнения и памяти. Система типов особенно полезна в нетривиальных задачах.
Некоторые части программы (работа с мышью и видеокартой) выполнены в виде ассемблерных вставок[11].