Generics vs. Array Lists - PullRequest
       56

Generics vs. Array Lists

15 голосов
/ 18 сентября 2008

Система, над которой я работаю, была написана до .net 2.0 и не имела преимуществ обобщений. В конечном итоге он был обновлен до 2.0, но ни один из кодов не был реорганизован из-за нехватки времени. Есть ряд мест, где код использует ArraysLists и т. Д., Которые хранят вещи как объекты.

Насколько важно изменить код на использование обобщений с точки зрения производительности? Я знаю, с точки зрения производительности, упаковки и распаковки и т. Д., Это неэффективно, но сколько выигрыша в производительности вы получите от его изменения? Являются ли дженерики чем-то, что можно использовать для дальнейшего развития, или достаточно изменений производительности, чтобы приложить усилия для обновления старого кода?

Ответы [ 12 ]

0 голосов
/ 18 сентября 2008

Какое отношение автобокс / распаковка имеет к генерикам? Это просто проблема безопасности типов. С неуниверсальной коллекцией вам необходимо явно привести к фактическому типу объекта. С дженериками вы можете пропустить этот шаг. Я не думаю, что разница в производительности так или иначе.

0 голосов
/ 18 сентября 2008

Наибольший выигрыш вы найдете на этапах обслуживания. Дженерики гораздо проще обрабатывать и обновлять, не имея дело с проблемами конверсии и приведения. Если это код, который вы постоянно посещаете, тогда приложите все усилия. Если бы этот код не затрагивался годами, я бы не стал беспокоиться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...