Алгоритм работы программы во многом зависит от способа организации ее данных, поэтому очень важно до начала разработки алгоритма выбрать оптимальные структуры данных, основываясь на требованиях к функциональности и быстродействию программы.
Для разных задач необходимы различные способы хранения и обработки данных, поэтому необходимо хорошо представлять себе как характеристики и области применения абстрактных структур данных, так и их конкретную реализацию в виде коллекций библиотеки. Изучение возможностей стандартных коллекций и их грамотное применение является необходимым условием создания эффективных и профессиональных программ, позволяет сократить сроки разработки программ и повысить их надежность.
Недостатками коллекций первых версий библиотеки.NET является отсутствие контроля типов на этапе компиляции и неэффективность при хранении элементов значимых типов. Параметризованные коллекции, появившиеся в версии 2.0 библиотеки, избавлены от этих недостатков, поэтому в программах рекомендуется использовать именно коллекции версии 2.0, выбирая наиболее подходящие классы в зависимости от решаемой задачи.
|
|
Для реализации алгоритмов, независимых от типов данных, следует использовать классы-прототипы и обобщенные методы. Они не снижают эффективность программы по сравнению с обычными классами и методами, поскольку код для конкретного типа генерируется средой CLR во время выполнения программы. Помимо классов-прототипов и обобщенных методов можно описать параметризованные интерфейсы, структуры и делегаты.
Частичные типы удобно использовать при разработке объемных классов группой программистов и для упрощения отладки программ. Обнуляемые типы применяют для работы с данными, для которых необходимо уметь определять, было ли им присвоено значение.