- •Ilasm. Применение утилит ildasm и Reflector. Внутреннее устройство сборок Microsoft .Net.
- •Использование атрибутов
- •Библиотека классов Microsoft .Net Framework. Примеры использования библиотеки классов.
- •Библиотека классов .Net Framework
- •Директивы using и ссылки
- •Библиотеки классов ввода/вывода пространства имен System.Io. Примеры использования.
- •Применение экспортированных функций dll
- •Оператор for
- •В отличие от оператора for оператор while никак не изменяет значения пере-
- •Делегаты и события на платформе Microsoft .Net.
- •Компонентное программирование в .Net
- •13(2). Компонентное программирование в .Net (1)
- •Концепция применения программных платформ. Преимущества применения программных платформ при разработке приложений (на примере Microsoft .Net)
- •Visual Studio .Net набор языков платформы Microsoft .Net послужит отличным под-
- •Компилятор jit
- •Объектно-ориентированный подход к программированию. Классы и объекты. Определения; Определения классов и объектов. Проблемы, решаемые этим подходом.
- •Плюсы ооп:
- •Оператор switch
- •Возврат goto
- •Основные операторы языка c#
- •Работа с файлами в языке с#. Синтаксис, алгоритм работы при чтении/записи в файл.
- •Синхронизация потоков (interlocked-функции и критические секции). Основные проблемы синхронизации.
- •Строгая и нестрогая типизация, характеристики типов данных. Определение типа данных.
- •Разработка Windows-приложений с использованием технологии Windows Forms. Основные идеи технологии. Примеры эффективного применения.
- •Ide Visual c# автоматически создает код инициализации. В представлении Код найдите конструктор для класса Form1. У него есть подпись public Form1().
Плюсы ооп:
От любого метода программирования мы ждем, что он поможет нам в решении наших проблем. Но одной из самых значительных проблем в программировании является сложность. Чем больше и сложнее программа, тем важнее становится разбить ее на небольшие, четко очерченные части. Чтобы побороть сложность, мы должны абстрагироваться от мелких деталей. В этом смысле классы представляют собой весьма удобный инструмент.
ООП дает возможность создавать расширяемые системы (extensiblesystems). Это одно из самых значительных достоинств ООП и именно оно отличает данный подход от традиционных методов программирования. Расширяемость (extensibility) означает, что существующую систему можно заставить работать с новыми компонентами, причем без внесения в нее каких-либо изменений. Компоненты могут быть добавлены на этапе выполнения.
Многоразового использования программного обеспечения на практике добиться не удается из-за того, что существующие компоненты уже не отвечают новым требованиям. ООП помогает этого достичь без нарушения работы уже имеющихся клиентов, что позволяет нам извлечь максимум из многоразового использования компонент.
-
Операторы ветвления на языке C#.
Операторы ветвления изменяют поток выполнения программы во время выполнения согласно определенным условиям.
if, else и else if
Эти операторы одинаковы в обоих языках.
Оператор switch
В обоих языках оператор switch обеспечивает несколько условных операций ветвления. При этом разница заключается в том, что Java позволяет "проваливаться" в case и выполнять следующий case, если в конце варианта не используется оператор break. Однако в C# в конце каждого case необходимо использовать оператор break или оператор goto, и если не использовать ни одного оператора, то компилятор выдаст следующую ошибку:
Управление не может "проваливаться" из одной метки case в другую.
Обратите внимание, что там, где case не указывает какого-либо кода для выполнения при совпадении с этим case, управление проваливается к последующему case. При использовании goto в операторе switch можно только переходить в другой блок case в том же переключателе. Для перехода к case по умолчанию следует использовать goto default.. В противном случае, потребуется использовать goto case cond, где cond – совпадающее условие case, к которому требуется перейти. Другое отличие от switch в Java заключается в том, что в Java switch можно применять только для целочисленных типов, в то время как язык C# позволяет использовать switch для переменной строки.
Возврат goto
goto в Java – это зарезервированное ключевое слово, которое не реализовано. При этом можно использовать операторы с метками с break или continueдля достижения той же цели, что и с использованием goto.
Язык C# не позволяет оператору goto переходить к оператору с меткой. При этом следует отметить, что для перехода к соответствующей метке операторgoto должен быть в области этой метки. Другими словами, goto нельзя использовать для перехода в блок оператора, хотя можно использовать для выхода из него, выхода из класса или выхода из блока finally в операторах try...catch. Использование ключевого слова goto не рекомендуется в большинстве случаев, так расходится с принятой практикой объектно-ориентированного программирования.