Введение, Исследовательская часть, Целесообразность выбора языка программирования - Кодирование информации
В нашей курсовой работе была поставлена задача создания обучающей программы по информатике, с помощью которой студенты смогут проверить свои знания в таких разделах данной дисциплины как кодирование по методу Хэмминга, кодирование по методу четности-нечетности, программирование машины Поста.
Цель работы: улучшить и расширить навыки работы на языке программирования C#.
Основные функции обучающей программы: изучение данных методов кодирования двоичных чисел и программирование машины Поста. Курсовой проект состоит из обучающей программы с разбиением по разделам.
Для создания курсового проекта использовался C# - новый язык программирования компании Microsoft, входящий в Visual Studio. Net (v. 7).
Исследовательская часть
Целесообразность выбора языка программирования
В нашем курсовом проекте была поставлена задача, реализация которой может быть произведена с помощью различных языков программирования. Но мы выбрали язык С#, входящий в Visual Studio. Net (v. 7), так как он имеет ряд преимуществ, которые упрощают процесс создания приложений. Немаловажную роль в выборе языка сыграло то, что C# - лучший. NET-язык, так как он был специально спроектирован для. NET Framework.
C# создавался Microsoft, как основной язык для. NET Framework. Microsoft спроектировала C# таким образом, что бы С, С++ и Java-программисты смогли легко перейти на него. C# имеет корни в языках С, С++ и Java, поэтому такой переход не должен вызвать затруднений.
Синтаксис у C# не такой сложный как у С++, поэтому его изучение намного легче. Большинство операций которые вы можете делать на С++ можно сделать и на C#, за исключением операций доступа к низкоуровневым функциям (это все-таки можно сделать с помощью неуправляемого кода).
С# - первый язык, поддерживаемый версиями. NET Framework для других платформ.
Язык, который использует библиотеку классов. NET Framework (FCL) и управляется общеязыковой средой исполнения (CLR) является. NET-совместимым языком (язык, который поддерживает платформа. NET). Среди таких языков: Microsoft Visual Basic. NET (VB. NET), Microsoft Visual C++. NET, а также COBOL, Eiffel, Jscript, RPG и другие. Как мы говорили ранее, C# был спроектирован специально для. NET Framework и содержит некоторую функциональность, которую вы не найдете в других языках.
Программист, привыкший к платформе Майкрософт, может представить себе C# как промежуточный вариант между C++ и Visual Basic, если рассматривать сложность языковых конструкций и возможности языка
C# имеет C стиль синтаксиса (для управляющих конструкций, блоков кода, описания сигнатуры методов и др), много общего с Java (отсутствие множественного наследования и шаблонов, наличие сборщика мусора) и Дельфи (ориентированность на создание компонент), в то же время имеет и свой колорит.
При создании языка в основу дизайна легла легкость использования, доминирующая над мощностью языка и скоростью выполнения. Отсюда и сборщик мусора с управляемыми объектными ссылками, который автоматически освобождает за Вас память, отбирая при этом процессорное время. Вы также получаете безопасность работы с типами, а это по мнению многих является вторым важнейшим фактором избежания ошибок
C# объектно-ориентированный язык, как и вся платформа. NET. Более того, это язык, ориентированный на написание компонент. C# создан для программирования в управляемой среде с присутствующим сборщиком мусора, но позволяет писать и неуправляемый (unmanaged) код
Цельность концепции видна, скажем в реализации упаковки/распаковки. Это позволяет рассматривать все типы (даже примитивные) как объекты, что разрешает многие проблемы дизайна приложений.
При создании языка рассматривалась не только простота написания приложений, но и их поддержки - в связи с чем в язык включили поддержку XML комментариев и контроля версий. Настоящий подарок для программистов.
Помимо сборщика мусора и безопасности работы с типами для избежания ошибок в языке также применяется автоматическая инициализация переменных. Все типы, которые размещаются в стеке (value types, к которым относятся примитивные типы, структуры и прочие наследники класса ValueType) инициализируются нулями. Объекты остальных типов размещаются в куче, доступ к ним осуществляется по объектной ссылке, и ссылки эти инициализируются в значение null (которая говорит, что данная ссылка не имеет ассоциированного объекта в куче).
В C# представлена концепция пространств имен, аналогичная пакетам в Java. Это позволяет иерархически структурировать Вашу систему типов, делая код намного более понятным и позволяя избежать проблем с именованием. Вы можете рассматривать пространства имен как директории, а языковые типы как файлы в этих директориях.
Коротко упомянем про некоторые из возможностей работы с языком
В языке для работы с событиями и обратными вызовами представлена новая концепция объектно-ориентированно и безопасной с точки зрения системы типов ссылки на функцию - "делегат". Именно эта концепция позволяет описывать события C# компонента без возвратных интерфейсов и дополнительных усилий, достаточно использовать ключевое слово event
Индексаторы и свойства органично дополняют события до создания описываемого сигнатурой компонента.
C# позволяет использовать при разработке парадигму атрибутивного программирования, когда в компиляционных модулях вместе с типом может сохраняться мета-информация. Данная информация впоследствии может быть получена и использована во время выполнения. Более того, этой информацией может воспользоваться компилятор или, скажем, дизайнер, что позволяет, не запуская компонент, получать информацию о нем
Работа с атрибутам позволяет использовать COM, COM+ и DLL в C# приложениях, работающих в среде. NET. Перечисления позволяют обезопасить работу с перечисляемыми типами.
Реализация структур как типов, работа с которыми идет по значению, вкупе с возможностью использовать не только вложенные массивы (как в Java), но и многомерные позволяет оптимизировать производительность приложений.
Ввиду очень удобного объектно-ориентированного дизайна, C# является хорошим выбором для быстрого конструирования различных компонентов - от высокоуровневой бизнес логики до системных приложений, использующих низкоуровневый код. Также следует отметить, что C# является и Web ориентированным - используя простые встроенные конструкции языка ваши компоненты могут быть легко превращены в Web сервисы, к которым можно будет обращаться из Internet посредством любого языка на любой операционной системе. Дополнительные возможности и преимущества перед другими языками приносит в C# использование передовых Web технологий, таких как: XML (Extensible Markup Language) и SOAP (Simple Object Access Protocol). Среда разработки Web сервисов позволяет программисту смотреть на существующие сегодня Web приложения, как на родные C# объекты, что дает возможность разработчикам соотнести имеющиеся Web сервисы с их познаниями в объектно-ориентированном программировании.
Как было показано выше выбранный язык программирования наиболее удобен для выполнения поставленной задачи.
Похожие статьи
-
Платформа. NET Framework - Программирование на языке C++
.NET Framework - программная платформа, выпущенная компанией Microsoft в 2002 году. Основой платформы является общеязыковая среда исполнения Common...
-
Для программирования агентов могут применяться: универсальные языки (Java, C++ , Visual Basic и др.), языки представления знаний (SL, KIF), языки...
-
Технология программирования Для реализации поставленной задачи наиболее удобной парадигмой программирования будет являться объектно-ориентированная...
-
Завершив выбор схемы работы системы и общего принципа работы ее частей и выбрав тип базы данных, следует перейти к выбору языка программирования....
-
Язык программирования R - Технологии больших данных: анализ и выбор решения для реализации проекта
Язык программирования R является универсальным и разработан для применения в следующих областях: разведочный анализ данных, классические статистические...
-
Основы функционального программирования - Основные свойства функциональных языков программирования
Функциональное программирование - раздел дискретной математики и парадигма программирования (совокупность идей и понятий, определяющая стиль написания...
-
Алгоритм работы декодера кода Рида - Маллера будем разрабатывать на основе уже приведенных выше уравнений. Алгоритм приведен на рисунке 12. В начале...
-
Файл - это набор любых данных одного типа, который хранится на диске отдельно от прочих. Например, музыкальный файл, файл изображения или текстовый файл,...
-
В используемой мной версии "MS Visual Studio" (версия 10 доступна технология. NET4.0) доступно несколько языков программирования: - C#; - C++; - F#; -...
-
Обоснование выбора языка и среды программирования Для реализации данного курсового проекта был выбран язык программирования Visual C#. Язык основан на...
-
Разработать и создать аналог системной утилиты "Диспетчер задач" по дисциплине "Системное программирование". "Диспетчер задач" должен содержать следующие...
-
Введение - Основные свойства функциональных языков программирования
Созданная в 1998 году спецификация языка Haskell (названного так в честь ученого Хаскелла Карри, одного из основоположников функционального...
-
Выбор средств реализации информационной системы Названные в параграфе 1.4. настоящей работы задачи могут быть решены тремя типами средств автоматизации:...
-
ВВЕДЕНИЕ - Модульное и объектно-ориентированное программирование
В настоящее время большинство рабочих мест являются компьютеризированными. Поэтому умение пользоваться компьютером становится одним из необходимых...
-
Выбор среды программирования Delphi - это попытка фирмы borland объединить лучшее, что было создано на тему визуального программирования, в единый...
-
Введение - Обьекто-ориентированное программирование
Объектно-ориентированное программирование (ООП) позволяет разложить проблему на составные части, каждая из которых становится самостоятельным объектом....
-
Операционная система На сегодняшний момент операционная система Windows фирмы Microsoft во всех ее проявлениях, бесспорно, считается самой...
-
Разработка приложения на языке C++ - Программирование на языке C++
C++ - объектно-ориентированный язык программирования. Разработан в 1998--2001 годах группой инженеров под руководством Андерса Хейлсберга в компании...
-
Эволюция языков программирования - Модульное и объектно-ориентированное программирование
Принцип программного управления компьютером состоит в том, что человек подает команды на логические схемы, которые управляют различными подсистемами...
-
История функционального программирования - Основные свойства функциональных языков программирования
Широко известно, что теоретические основы императивного программирования были заложены еще в 30-х годах XX века учеными Аланом Тьюрингом и Джоном фон...
-
ВВЕДЕНИЕ - Разработка программы на языке C++, реализующей игру "Морской бой"
Данная курсовая работа направлена на изучение принципов объектно-ориентированного программирования. Разработать программу на языке C++, реализующую игру...
-
Подпрограммы - Язык программирования PERL. Сфера применения
Как и все структурированные языки программирования, Perl поддерживает подпрограммы. Подпрограмма может быть определена с помощью ключевого слова sub, как...
-
Языки и системы программирования, их эволюция - Автоматизация решения задач пользователя
Язык программирования - это способ записи программ решения различных задач на ЭВМ в понятной для компьютера форме. Процессор компьютера непосредственно...
-
Введение, Язык программирования - Разработка игры "Морской бой"
Игра интерфейс компьютерный приложение Стремительное развитие компьютерной техники в последние годы, появление мощнейших графических ускорителей и...
-
Среда объектно-ориентированного программирования Delphi Delphi - это комбинация нескольких важнейших технологий, высокопроизводительный компилятор в...
-
Исходя из данных первого пункта выяснили, что используется web сервер "Nginx". Данный сервер работает на Unix-подобных операционных системах. Никакая из...
-
Выбор языка программирования Язык С++ является в настоящее время наиболее распространенным и перспективным языком промышленного программирования. Он...
-
Обоснование выбора средств для разработки В качестве платформы была взята платформа NET, потому что платформа NET на текущий момент самая передовая и...
-
Сетевой анализ как метод изучения виртуального пространства - Распространение новостной информации
Анализ социальных сетей как отдельное направление появилось в конце 20 века, основоположниками которого считаются такие ученые как Милгрэм ("феномен...
-
Введение - Разработка веб-редактора для описания лексико-семантических шаблонов на визуальном языке
Объем неупорядоченной и неструктурированной текстовой информации неуклонно растет, поэтому задача ее быстрой и качественной обработки актуальна сегодня...
-
Использование языка PERL для написания CGI-cкриптов - Язык программирования PERL. Сфера применения
Как вы узнали из предыдущей главы, CGI обеспечивает узлам Web вoзмoжнoсть интерактивной работы с клиентскими программами, в качестве которых обычно...
-
Заключение - Кодирование информации
В ходе курсовой работы была разработана обучающая программа по информатике, с помощью которой студенты смогут проверить свои знания в таких разделах...
-
Правила формального описания синтаксиса языка программирования - Основы программирования
Под синтаксисом языка программирования понимают правила построения корректных конструкций данного языка. Синтаксис языка можно описать формально. Для...
-
Принципы SOLID - Программирование на языке C++
SOLID - мнемонический акроним, введенный Майклом Фэзерсом ( Michael Feathers ) для первых пяти принципов, названных Робертом Мартином в начале 2000-х,...
-
Паттерн репозиторий - Программирование на языке C++
Паттерн Repository Посредничает между уровнями области определения и распределения данных (domain and data mapping layers), используя интерфейс, схожий с...
-
Введение - Электронный учебник по предмету "Основы алгоритмизации и программирования"
В настоящее время, в условиях активного проникновения информационных технологий в систему образования и накопления образовательных ресурсов в сети...
-
При извлечении текста из Интернета, он не имеет никой разметки и представлен в виде сплошного набора предложений. Для дальнейшего использования...
-
FBD (Function Block Diagram) - является графическим языком программирования. Предназначенный для программирования микро контролеров с помощью блок...
-
Скалярные переменные - Язык программирования PERL. Сфера применения
Как отмечалось, скалярная переменная может содержать единственное значение. В языке Perl имена скалярных переменных всегда начинаются со знака ($). В еле...
-
В настоящее время существует несколько видов СУБД. Для создания базы данных "Учет посещаемости в детском саду" была выбрана СУБД Paradox. Выбор...
Введение, Исследовательская часть, Целесообразность выбора языка программирования - Кодирование информации