Основы языков и алгоритмы — страница 5
C#, LINQ, типы, коллекции, рекурсия, регулярные выражения, отладка, структуры данных и сложность
Материалы
- Литералы
- Лямбда-выражения
Описание синтаксиса лямбда выражений в C#, блочные и строчные лямбда-выражения
- Массивы
Общие понятия массивов, неявно типизированные массивы, массивы объектов, использование свойства Length
- Массивы в качестве параметров
Использование массивов в качестве параметров, ковариантность массивов, структура ArraySegment<T>
- Масштабирование приложений ASP.NET
Несколько советов по масштабированию крупных веб-приложений ASP.NET на нескольких серверах
- Мемоизация и динамическое программирование
Использование алгоритма мемоизации для увеличения производительности приложений .NET на примере расстояния Левенштейна и поиска кратчайшего пути для двух вершин
- Методы
Описание синтаксиса методов в C#, объявление и использование методов
- Методы For() и ForEach()
Использование методов For() и ForEach() для распараллеливания циклической обработки данных
- Методы Wait(), Pulse() и PulseAll
Использование методов Wait(), Pulse() и PulseAll из класса Monitor для создания очереди потоков
- Методы ожидания задачи
Описание методов Wait(), WaitAll() и WaitAny(), применяемых для ожидания окончания задачи, использование метода Dispose() для освобождения ресурсов
- Механизм трассировки событий для Windows
Обзор программ для создания отчетов по трассировке событий Windows (ETW)
- Микрохронометраж
Примеры измерения времени работы различных кусков кода C# с использованием микрохронометража
- Многомерные массивы
Синтаксис многомерных массивов в C#
- Множества: классы HashSet<T> и SortedSet<T>
Понятие множеств, использование классов HashSet<T> и SortedSet<T>
- Модификаторы доступа в аксессорах
Особенности использования модификаторов доступа в аксессорах set и get C#
- Модификаторы параметров
Использование модификаторов параметров в C#, модификаторы ref, out и params
- Модификация обобщенных методов
Использование переопределения виртуальных методов и перегрузка методов при обобщениях
- Наследование и сокрытие имен
Особенности сокрытия имен при наследовании в C#, использование ключевых слов new и base
- Наследование интерфейсов
Основные особенности наследования интерфейсов в C#
- Настройка IIS
Описание настроек кеширования и пула потоков в IIS, позволяющих увеличивать производительность приложений .NET
- Настройка окружения ASP.NET
Несколько советов по оптимизации работы приложений ASP.NET: отключение трассировки и состояния представления, использование кеша вывода и др.
- Небезопасный код
Настройки быстродействия небезопасного кода из управляемых приложений .NET за счет закрепления объектов в памяти и использоваия пулов памяти
- Необобщенные коллекции
Основные интерфейсы, классы и структуры необобщенных коллекций в C#
- Необязательные и именованные аргументы
Особенности использования необязательных и именованных аргументов в C# 4.0