Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #40, МАРТ 2004 г.

Программирование в XP

Tony

Спецвыпуск Xakep, номер #040, стр. 040-076-7


Естественно, такие ООП понятия, как инкапсуляция, наследование и полиморфизм, представлены в C# по полной программе. Кроме того, доступна перегрузка операторов, исключения, абстракции, интерфейсы и прочие приятные и красивые решения. Стоит отметить фишку (которой очень сильно не хватало в C++) - появление ключевого слова sealed, которое запрещает создавать производные классы от sealed-класса. Также в С# стали доступны свойства (они были и раньше в С++, но не являлись стандартом, а были в очередной раз Microsoft Specific), атрибуты и модификаторы параметров методов классов. По сравнению с языками-предками, C# выглядит более просто, более логично, и, как это ни тяжело признавать, более красиво. Более того, C# и библиотека классов .NET позволяют использовать этот язык в собственных нуждах, например, для создания своего языка сценариев.

Практические советы

1. Не старайся затачивать свою программу под Windows XP. Во-первых, это у тебя не получится (только если ты будешь использовать Theme API напрямую, а не через Манифест). Во-вторых, ты потеряешь очень много пользователей. Разумно делать две версии своей программы: для пользователей Windows 95/98/ME и для пользователей Windows NT/2K/XP. Во втором случае рассмотри возможность использования служб NT.

2. Если ты используешь возможности Common Controls шестой версии, исключи из своего пользовательского интерфейса элементы управления, прорисовывающиеся самостоятельно. Они будут выглядеть как инородное тело.

3. Если ты хочешь использовать GDI+, то учти, что большинство пользователей еще не имеют этой библиотеки, и тебе придется поставлять ее вместе с приложением. Кроме того, она не принесет тебе ничего кардинально нового, если не принимать во внимание возможность работы с упакованными графическими форматами.

4. То же самое касается и Windows Socket 2 – ничего, кроме платформозависимости, сокеты от Мелкософт тебе не принесут. Если ты, конечно, не хочешь использовать IPv6.

5. Если ты разрабатываешь службу, то сначала напиши и отладь свой код в рамках консольного или графического приложения, а только потом приступай к службе. Помни, ее очень неудобно отлаживать.

6. Ты хочешь создать распределенное приложение? Хочешь решить прикладную задачу? В конце концов, ты хочешь простых ответов на свои порой сложные вопросы? Все это позволяет .NET.

7. Если у тебя возникают сложности с реализацией в C# того, что с легкостью фокусника можно написать классическом С++, не парься, а используй Managed C++.

8. Не рекомендовал бы использовать Windows XP при разработке драйверов, системных утилит, системных служб и т.д. У меня и моих коллег хрюшка вела себя в моменты отладки этих программ просто по-свински: висла, вылетал синий экран смерти, впадала в кому или вечный своп (если кто сомневается в конфигурации - камень P4 2,4 ГГц, мама от Intel, ПО все лицензионное).

Назад на стр. 040-076-6  Содержание  Вперед на стр. 040-076-8