Хотя в этой работе я буду рассматривать все на примерах языка программирования C#, большая часть будет полезна и понятна всем. Очень часто оптимизация не зависит от языка программировани.
Невозможно весь код оптимизировать одинаково, такая разработка будет очень дорогой и даже может никогда не закончиться. Оптимизации нет предела, поэтому можно вечно улучшать код и делать его все быстрее и быстрее.
Оптимизация и красота кода не всегда идут рука об руку, иногда «сделать код красивее» может означать «сделать код медленнее». Но на сколько стоит думать об этом?
Для C# есть такие библиотеки, которые могут скопировать данные из одного типа объекта в другой и копирование происходит по именам полей. Если у вас есть класс Employee и класс Person и у каждого есть поля имени и фамилии, то автомапер может копировать дынные из объекта Person в Employee автоматически чисто потому, что имена полей совпадают. Но даже если не совпадают, это можно настроить.
В C# есть две разновидности типов данных - ссылочные типы и типы значения. Очень часто говорят, что к значениям относятся числа, например, тип данных Int32. Это действительно так, Int32 является значимые типом, но он не является чем-то особенным и уникальным. Если открыть MSDN, то окажется, что этот тип данных на самом деле структура Struct:
Виртуальные методы – это удобство программирования, но зло, с точки зрения оптимизации. Виртуальное – это что-то не совсем реальное, что определяется динамически во время выполнения.
В программировании очень часто нужно объединять строки в из маленьких кусочков в одно целое.