Интерфейсы (Interface)

Интерфейсы (Interface) C#

Предположим, у нас есть несколько классов, функциональность которого должна наследоваться другими. Тут все, кажется, просто — наследуем от базового класса и вперед. А если у нас есть несколько классов, сигнатуры методов которых должны наследоваться? Множественное наследование в C# отсутствует. Однако в данной ситуации нам могут пригодиться интерфейсы.

(далее…)

Объектно-ориентированное программирование (ООП)

C# объектно-ориентированное программирование (ООП)

Ранее мы изучили, что такое объекты и классы. Также, рассмотрели свойства, которыми объекты обладают. Кроме того, были затронуты действия, которые могут совершаться над объектами, называемые методами.  Главной задачей объектно — ориентированного подхода является упрощение процесса разработки. Весь подход стоит на трех основных принципах: наследование, инкапсуляция и полиморфизм. Рассмотрим каждый из них.

(далее…)

Циклы

Циклы в языке программирования C#

Что мы делаем ежедневно? Думаю, у каждого из нас свой список дел. Однако раз за разом повторяются одни и те же операции для достижения одних и тех же целей. Это и есть цикл. В программировании циклы используются при обработке множеств / файлов или же для вычисления математических выражений.

(далее…)

Динамические структуры данных

Динамические структуры данных

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

(далее…)

Блокчейн (blockchain) на языке C#

Блокчейн (blockchain) – это технология распределенного хранения данных в одноранговой сети в виде непрерывной последовательности блоков взаимосвязанных с помощью алгоритма хеширования. Давайте подробнее познакомимся с этой технологией и рассмотрим пример ее реализации на языке программирования C#. Что такое Блокчейн? Как я уже писал выше блокчейн это распределенное хранилище данных. То Читать дальше…

Основы C#. Коментарии и переменные

(далее…)

Фабричный метод (Factory Method)

Фабричный метод C# (Factory Method C#)

Идея паттерна Фабричный метод (Factory Method)

Паттерн проектирования — это продуманный способ построения исходного кода программы для решения часто возникающих в повседневном программировании проблем проектирования. Иными словами, это уже придуманное решения, для типичной задачи. При этом паттерн не готовое решение, а просто алгоритм действий, который должен привести к желаемому результату. Давайте рассмотрим один из наиболее часто используемых порождающих паттернов — Фабричный метод (Factory Method).

(далее…)

Стек (stack) C#

Стек (stack) — это структура данных, представляющая собой специализированным образом организованный список элементов. Доступ к элементам стека осуществляется по принципу LIFO (Last In First Out) — последним пришел, первым вышел. Принцип работы данной структуры данных схож с магазином автоматического огнестрельного оружия. Патроны помещаются в магазин сверху вниз, а используется всегда только верхний патрон. Давайте рассмотрим пример реализации стека на языке C#.

(далее…)

Связный список (Linked List) C#

Связный список (Linked List) представляет собой коллекцию связанных элементов, которые содержат в себе хранимые данные, а также ссылку на связанные с ним элементы (один или несколько). Основным преимуществом данной структуры данных перед обычным массивом является ее динамичность — возможность легко менять количество элементов. Давайте рассмотрим пример реализации на языке C# элементарного односвязного списка.

(далее…)

singleton

Паттерн Одиночка (Singleton pattern)

Идея паттерна проектирования Одиночка (Singleton)

Паттерн (шаблон) проектирования — это продуманный способ построения исходного кода программы для решения часто возникающих в повседневном программировании проблем проектирования. Иными словами, это уже придуманное решения, для типичной задачи. При этом паттерн не готовое решение, а просто алгоритм действий, который должен привести к желаемому результату. Давайте рассмотрим один из наиболее простых паттернов — Singleton (Одиночка).

(далее…)