Сообщения с тегом ‘Framework’
Классы с событиями, допустимые в каркасе .Net Framework
Написано admin в 20 Июнь 2008 – 21:43 -Классы с событиями, допустимые в каркасе .Net Framework
Если создавать повторно используемые компоненты с событиями, работающие не только в проекте C#, то необходимо удовлетворять некоторым ограничениям. Эти требования предъявляются к делегату; они носят, скорее, синтаксический характер, не ограничивая существа дела.
Перечислю эти ограничения:
- делегат, задающий тип события, должен иметь фиксированную сигнатуру из двух аргументов: delegate <Имя_делегата> (object sender, <Тип_аргументов> args);
- первый аргумент задает объект sender, создающий сообщение. Второй аргумент args задает остальные аргументы – входные и выходные, – передаваемые обработчику. Тип этого аргумента должен задаваться классом, производным от встроенного в .Net Framework класса EventArgs. Если обработчику никаких дополнительных аргументов не передается, то следует просто указать класс EventArgs, передавая null в качестве фактического аргумента при включении события;
- рекомендуемое имя делегата – составное, начинающееся именем события, после которого следует слово EventHandler, например, FireEventHandler. Если никаких дополнительных аргументов обработчику не передается, то тогда можно вообще делегата не объявлять, а пользоваться стандартным делегатом с именем EventHandler.
Tags: delegate, EventArgs, EventHandler, FireEventHandler, Framework, NET, null, sender
Находится в Учебник | No Comments »
Класс Math и его функции
Написано admin в 20 Июнь 2008 – 21:05 -Класс Math и его функции
Кроме переменных и констант, первичным материалом для построения выражений являются функции. Большинство их в проекте будут созданы самим программистом, но не обойтись и без встроенных функций. Умение работать в среде Visual Studio .Net предполагает знание встроенных возможностей этой среды, знание возможностей каркаса Framework .Net, пространств имен, доступных при программировании на языке C#, а также соответствующих встроенных классов и функций этих классов. Продолжим знакомство с возможностями, предоставляемыми пространством имен System. Мы уже познакомились с классом Convert этого пространства и частично с классом Console. Давайте рассмотрим еще один класс – класс Math, содержащий стандартные математические функции, без которых трудно обойтись при построении многих выражений. Этот класс содержит два статических поля, задающих константы E и PI, а также 23 статических метода. Методы задают:
- тригонометрические функции – Sin, Cos, Tan;
- обратные тригонометрические функции – ASin, ACos, ATan, ATan2 (sinx, cosx);
- гиперболические функции – Tanh, Sinh, Cosh;
- экспоненту и логарифмические функции – Exp, Log, Log10;
- модуль, корень, знак – Abs, Sqrt, Sign;
- функции округления – Ceiling, Floor, Round;
- минимум, максимум, степень, остаток – Min, Max, Pow, IEEEReminder. Read more »
Tags: ATan, break, Ceiling, Convert, Floor, Framework, IEEERemainder, Math, NameFunction, ReadLine, reminder, Sin, Visual, WriteLine
Находится в Учебник | No Comments »
Система типов
Написано admin в 20 Июнь 2008 – 20:47 -Система типов
Давайте рассмотрим, как устроена система типов в языке C#, но вначале для сравнения приведу классификацию типов в стандарте языка C++.
Стандарт языка C++ включает следующий набор фундаментальных типов.
- Логический тип (bool).
- Символьный тип (char).
- Целые типы. Целые типы могут быть одного из трех размеров – short, int, long, сопровождаемые описателем signed или unsigned, который указывает, как интерпретируется значение, – со знаком или без оного.
- Типы с плавающей точкой. Эти типы также могут быть одного из трех размеров – float, double, long double.
Кроме того, в языке есть
- Тип void, используемый для указания на отсутствие информации.
Язык позволяет конструировать типы.
- Указатели (например, int* – типизированный указатель на переменную типа int).
- Ссылки (например, double& – типизированная ссылка на переменную типа double).
- Массивы (например, char[] – массив элементов типа char).
Язык позволяет конструировать пользовательские типы
- Перечислимые типы (enum) для представления значений из конкретного множества.
- Структуры (struct).
- Классы. Read more »
Tags: Boolean, Eiffel, enum, Framework, NET, pointer, Reference, SByte, struct, System, void
Находится в Учебник | No Comments »
Общий взгляд
Написано admin в 20 Июнь 2008 – 20:45 -Общий взгляд
Знакомство с новым языком программирования разумно начинать с изучения системы типов этого языка. Как в нем устроена система типов данных? Какие есть простые типы, как создаются сложные, структурные типы, как определяются собственные типы, динамические типы, как определяются классы?
В первых языках программирования понятие класса отсутствовало – рассматривались только типы данных. При определении типа явно задавалось только множество возможных значений, которые могут принимать переменные этого типа. Например, тип integer задает целые числа в некотором диапазоне. Неявно с типом всегда связывался и набор разрешенных операций. В типизированных языках, к которым относится большинство языков программирования, понятие переменной естественным образом связывалось с типом. Если есть тип Т и переменная x типа Т, то это означало, что переменная может принимать значения из множества, заданного типом, и к ней применимы операции, разрешенные типом. Read more »
Tags: CTS, Employee, FCL, Framework, Integer, java, string, Visual
Находится в Учебник | No Comments »
Создание C#
Написано admin в 20 Июнь 2008 – 20:41 -Создание C#
Язык C# является наиболее известной новинкой в области создания языков программирования. В отличие от 60-х годов XX века – периода бурного языкотворчества – в нынешнее время языки создаются крайне редко. За последние 15 лет большое влияние на теорию и практику программирования оказали лишь два языка: Eiffel, лучший, по моему мнению, объектно-ориентированный язык, и Java, ставший популярным во многом благодаря технологии его использования в Интернете и появления такого понятия как виртуальная Java-машина. Чтобы новый язык получил признание, он должен действительно обладать принципиально новыми качествами. Языку C# повезло с родителями. Явившись на свет в недрах Microsoft, будучи наследником C++, он с первых своих шагов получил мощную поддержку. Однако этого явно недостаточно для настоящего признания достоинств языка. Попробуем разобраться, имеет ли он большое будущее? Read more »
Tags: CLR, Delphi, Eiffel, FCL, Framework, java, Microsoft, Web
Находится в Учебник | No Comments »
