Программируем в C#

Как измерить время выполнения операции в C#

При разработке различных программ иногда бывает необходимо измерить точное время какой-либо операции, например, узнать сколько времени требуется на загрузку данных из файла, запись в базу данных и так далее. Сегодня мы рассмотрим то, как измерить время выполнения операции в C#, используя стандартные средства и возможности языка.

Читать далееКак измерить время выполнения операции в C#

C#, .NET Core и Excel: начало работы

При разработки различных программ для анализа данных нередко требуется не только обрабатывать большие массивы данных, но и предоставить конечному пользователю удобно оформленный отчёт о работе программного обеспечения. В сегодняшних реалиях экономия килобайт оперативной памяти при разработке программного обеспечения уже не так важна по сравнению с удобством работы программного продукта. Не секрет, что при работе в Windows для наиболее удобного представления табличных данных является Microsoft Excel. В этой и других статьях, посвященных работе с Excel в .NET Core и C# я постараюсь рассмотреть наиболее частые задачи по импорту и экспорту данных между приложением и Microsoft Excel. Сегодня мы рассмотрим как использовать MS Excel в .NET Core, используя технологию COM.

Читать далееC#, .NET Core и Excel: начало работы

Параллельное программирование в C#: класс Parallel

Класс Parallel входит в состав библиотеки TPL .NET и позволяет достаточно легко (даже для неопытного разработчика) распараллелить ряд задач. В этом классе содержится ряд методов, обеспечивающих, в том числе, параллельное выполнение действий (Action) о которых речь шла в прошлой статье про TPL и параллельное выполнение итераций циклов for и foreach.

Читать далееПараллельное программирование в C#: класс Parallel

Параллельное программирование в C#: создание и выполнение задач (Task)

В наше время — время многоядерных процессоров, параллельное программирование становится все более  и  более востребованной задачей при разработке программного обеспечения. В .NET Framework 4 была добавлена удобная библиотека для параллельного программирования — Task Parallel library (библиотека параллельных задач) или, сокращенно, TPL.  Так, если ранее нам приходилось тратить достаточно много времени на разработку потоков (Thread), выполнение взаимоблокировок и прочих задач, обеспечивающих эффективное и безопасное параллельное выполнение нескольких задач, то с TPL мы получили удобный и эффективный инструмент для параллельного программирования в C#, позволяющий разрабатывать программное обеспечение, максимально использующее все  возможности современных компьютеров.

Читать далееПараллельное программирование в C#: создание и выполнение задач (Task)

Классы и объекты C#: ключевое слово static

На данный момент мы уже знаем достаточно много ключевых слов, в том числе и такие как private, public, internal и так далее, позволяющие указать уровень доступа членов класса. И, несмотря на то, что с ключевым словом static мы уже встречались не раз, однако, вся его мощь чувствуется именно при работе с классами в языке C#.

Читать далееКлассы и объекты C#: ключевое слово static

Классы и объекты C#: перегрузка методов

О том, что такое методы C# и как их создавать мы уже поговорили, научились создавать методы классов и использовать их для доступа к свойствам. Однако, иногда бывает необходимо создать создать более одного метода с одним и тем же именем, но различным набором параметров. В практике программирования такой подход называется перегрузкой методов (method overloading).

Читать далееКлассы и объекты C#: перегрузка методов

Классы и объекты C#: свойства

На данный момент мы познакомились с таким типом данных в C# как класс, научились создавать объекты и использовать инициализаторы объектов. Сегодня мы познакомимся с таким понятием как свойство и рассмотрим основные модификаторы доступа к членам класса.

Читать далееКлассы и объекты C#: свойства

Классы и объекты C#

Язык C# является объектно-ориентированным языком программирования. Это значит, что любую программу (проект) на языке C# можно представить в виде одного или нескольких объектов, которые могут взаимодействовать между собой. Пониманием того, как объявить класс и наделить его определенными свойствами, создать и управлять объектами в C# можно считать одними из главных задач при изучении этого языка программирования. До сих пор мы хоть и использовали в изучении основ C# классы и объекты, но особо и не задумывались об этом, так как всё наше внимание было уделено  изучению отдельных типов данных, которые можно назвать примитивными. Сегодня же мы начнем разбираться с такими пользовательскими типами данных как классы и научимся создавать пусть и простые, но объекты C#.

Читать далееКлассы и объекты C#

Кортежи C# — вторая программа для сортировки массива

Кортеж — это относительно новый тип данных C# (появился в C# 7.0), rкоторый предоставляет краткий синтаксис для группирования нескольких элементов данных в упрощенную структуру. Кортежи позволяют сгруппировать и предоставить пользователю данные различных типов. Сегодня поговорим о том, как можно использовать кортежи в своих приложениях C#.

Читать далееКортежи C# — вторая программа для сортировки массива

Перечисления enum C#

Про перечисления (enum) в C# мы пока только знаем, что они есть и, согласно принятой классификации типов данных C# enum относится к типам значений или значимым типам (тут кому как удобнее называть). Сегодня мы попробуем разобраться с тем, как определяются и используются перечисления enum в C#, какие операции можно выполнять с перечислениями и напишем небольшой пример, демонстрирующий использование перечислений в C#.

Читать далееПеречисления enum C#