⚡️Сортировка слиянием — не так просто, как кажется
В одной конторе соискателю на позицию Senior C# developer выдали тестовое задание: отсортировать файл со строками определенного формата.
#interesting | csharp_uni
В одной конторе соискателю на позицию Senior C# developer выдали тестовое задание: отсортировать файл со строками определенного формата.
#interesting | csharp_uni
⚡️Книга «C# 10 и .NET 6. Современная кросс-платформенная разработка»
Объект в реальном мире — это предмет, например автомобиль или человек. Объект в программировании часто представляет нечто в реальном мире, например товар или банковский счет, но может быть и чем-то более абстрактным.
В языке C# используются классы class (обычно) или структуры struct (редко) для определения каждого типа объекта. О разнице между классами и структурами вы узнаете в главе 6. Можно представить тип как шаблон объекта.
#interesting | csharp_uni
Объект в реальном мире — это предмет, например автомобиль или человек. Объект в программировании часто представляет нечто в реальном мире, например товар или банковский счет, но может быть и чем-то более абстрактным.
В языке C# используются классы class (обычно) или структуры struct (редко) для определения каждого типа объекта. О разнице между классами и структурами вы узнаете в главе 6. Можно представить тип как шаблон объекта.
#interesting | csharp_uni
ИГРА FLAPPY BIRD C# WINFORMS GRAPHICS ЗА 30 МИНУТ
В этом видео мы рассмотрим как написать игру Flappy Bird на C# Windows Forms Application.
Всю отрисовку делаем через класс Graphics на холсте формы.
Смотреть видео.
#game | csharp_uni
В этом видео мы рассмотрим как написать игру Flappy Bird на C# Windows Forms Application.
Всю отрисовку делаем через класс Graphics на холсте формы.
Смотреть видео.
#game | csharp_uni
⚡️Воины и волшебники, часть первая
Разработка хорошей иерархии классов заключается в отражении семантики предметной области в системе типов, верно? И здесь мы проделали большую работу. Если есть поведение, общее для всех игроков, оно относится к абстрактному базовому классу. Если есть поведение, уникальное для волшебников или воинов, оно может быть передано в производные классы. Ясно, что мы на пути к успеху.
#interesting | csharp_uni
Разработка хорошей иерархии классов заключается в отражении семантики предметной области в системе типов, верно? И здесь мы проделали большую работу. Если есть поведение, общее для всех игроков, оно относится к абстрактному базовому классу. Если есть поведение, уникальное для волшебников или воинов, оно может быть передано в производные классы. Ясно, что мы на пути к успеху.
#interesting | csharp_uni
⚡️Просто о внутренних и внешних настройках для приложения в Unity3D
В сегодняшней статье хотелось бы поговорить о настройках и конфигурировании игровых приложений, создаваемых в среде Unity3d.
#interesting | csharp_uni
В сегодняшней статье хотелось бы поговорить о настройках и конфигурировании игровых приложений, создаваемых в среде Unity3d.
#interesting | csharp_uni
⚡️Как писать на C# аккуратно: память и производительность
Делимся переводом статьи о типичных ошибках программирования на C# от Кристофа Насарре — технического рецензента книг Microsoft Press в целом и, конечно, книги CLR via C# в частности. Кроме того, Кристоф Насарре — один из авторов книги Windows via C++.
#interesting | csharp_uni
Делимся переводом статьи о типичных ошибках программирования на C# от Кристофа Насарре — технического рецензента книг Microsoft Press в целом и, конечно, книги CLR via C# в частности. Кроме того, Кристоф Насарре — один из авторов книги Windows via C++.
#interesting | csharp_uni
⚡️Как использовать функции столкновений в Unity: OnCollisionEnter/Stay/Exit, OnTriggerEnter…
Столкновения (Collisions) играют важную роль в компьютерных играх. Это, пожалуй, не конкретная механика, а объемный пласт взаимодействия между игровыми объектами.
В этой статье (потом, возможно, серии статей) мы разберем, как работать со столкновениями в Unity, как ловить и обрабатывать их в коде, глубже погрузимся в тему и постараемся ответить на часто возникающие вопросы.
#interesting | csharp_uni
Столкновения (Collisions) играют важную роль в компьютерных играх. Это, пожалуй, не конкретная механика, а объемный пласт взаимодействия между игровыми объектами.
В этой статье (потом, возможно, серии статей) мы разберем, как работать со столкновениями в Unity, как ловить и обрабатывать их в коде, глубже погрузимся в тему и постараемся ответить на часто возникающие вопросы.
#interesting | csharp_uni
💥Методы LinkedList
Используя методы класса LinkedList<T>, можно обращаться к различным элементам, как в конце, так и в начале списка:
• AddAfter(LinkedListNode<T> node, LinkedListNode<T> newNode): вставляет узел newNode в список после узла node.
• AddAfter(LinkedListNode<T> node, T value): вставляет в список новый узел со значением value после узла node.
• AddBefore(LinkedListNode<T> node, LinkedListNode<T> newNode): вставляет в список узел newNode перед узлом node.
• AddBefore(LinkedListNode<T> node, T value): вставляет в список новый узел со значением value перед узлом node.
• AddFirst(LinkedListNode<T> node): вставляет новый узел в начало списка
• AddFirst(T value): вставляет новый узел со значением value в начало списка
• AddLast(LinkedListNode<T> node): вставляет новый узел в конец списка
• AddLast(T value): вставляет новый узел со значением value в конец списка
Применим некоторые из этих методов:
#код | csharp_uni
Используя методы класса LinkedList<T>, можно обращаться к различным элементам, как в конце, так и в начале списка:
• AddAfter(LinkedListNode<T> node, LinkedListNode<T> newNode): вставляет узел newNode в список после узла node.
• AddAfter(LinkedListNode<T> node, T value): вставляет в список новый узел со значением value после узла node.
• AddBefore(LinkedListNode<T> node, LinkedListNode<T> newNode): вставляет в список узел newNode перед узлом node.
• AddBefore(LinkedListNode<T> node, T value): вставляет в список новый узел со значением value перед узлом node.
• AddFirst(LinkedListNode<T> node): вставляет новый узел в начало списка
• AddFirst(T value): вставляет новый узел со значением value в начало списка
• AddLast(LinkedListNode<T> node): вставляет новый узел в конец списка
• AddLast(T value): вставляет новый узел со значением value в конец списка
Применим некоторые из этих методов:
#код | csharp_uni
💥 8 шагов от новичка до профессионала: дорожная карта разработчика на C#
Рассмотрим 8 основных шагов, которые нужно сделать новичку, чтобы стать профессиональным разработчиком на С#.
#interesting | csharp_uni
Рассмотрим 8 основных шагов, которые нужно сделать новичку, чтобы стать профессиональным разработчиком на С#.
#interesting | csharp_uni
⚡️4 лучших бесплатных книг по C#
Предлагаем вашему вниманию подборку самых полезных бесплатных книг по изучению C# - одного из самых популярных и востребованных языков программирования во всём мире.
#interesting | csharp_uni
Предлагаем вашему вниманию подборку самых полезных бесплатных книг по изучению C# - одного из самых популярных и востребованных языков программирования во всём мире.
#interesting | csharp_uni
⚡️Игра 2048 на C# WinForms/Game 2048 C# Windows Forms Application
В этом видео создадим игру 2048 на C# Windows Forms Application.
Смотреть видео.
#game | csharp_uni
В этом видео создадим игру 2048 на C# Windows Forms Application.
Смотреть видео.
#game | csharp_uni
⚡️Задача
Дано натуральное число. Определить, является ли сумма его максимальной и минимальной цифр кратной числу a.
#код | csharp_uni
Дано натуральное число. Определить, является ли сумма его максимальной и минимальной цифр кратной числу a.
#код | csharp_uni
⚡️Что нового в C# 11 - новые фичи языка C#
Рассматриваем основные фичи C# 11 .NET 7
Смотреть видео.
#interesting | csharp_uni
Рассматриваем основные фичи C# 11 .NET 7
Смотреть видео.
#interesting | csharp_uni
⚡️МОРСКОЙ БОЙ C# WINFORMS / C# SEA FIGHT WINAPI
В этом видео мы сделаем Морской бой и простой алгоритм для того, чтобы он составил нам противника. Все это будем делать на c# winforms.
Смотреть видео.
#game | csharp_uni
В этом видео мы сделаем Морской бой и простой алгоритм для того, чтобы он составил нам противника. Все это будем делать на c# winforms.
Смотреть видео.
#game | csharp_uni
⚡️Задача на C#
Даны цифры двух двузначных чисел, записываемых в виде a2a1 и b2b1, где a1 и b1 — число единиц, a2 и b2 — число десятков. Получить цифры числа, равного сумме заданных чисел (известно, что это число двузначное). Слагаемое — двузначное число и число-результат не определять; условный оператор не использовать.
#код | csharp_uni
Даны цифры двух двузначных чисел, записываемых в виде a2a1 и b2b1, где a1 и b1 — число единиц, a2 и b2 — число десятков. Получить цифры числа, равного сумме заданных чисел (известно, что это число двузначное). Слагаемое — двузначное число и число-результат не определять; условный оператор не использовать.
#код | csharp_uni
⚡️Как изменять строки в dotnet
Строки в dotnet являются предназначенной только для чтения последовательностью Char-ов. Об этом явно написано в документации Microsoft, посвященной строкам.
Читать статью
#interesting | csharp_uni
Строки в dotnet являются предназначенной только для чтения последовательностью Char-ов. Об этом явно написано в документации Microsoft, посвященной строкам.
Читать статью
#interesting | csharp_uni
⚡️ИГРА АРКАНОИД НА C# WINFORMS GRAPHICS
Сегодня мы сделаем игру Арканоид на c# winforms!
Всю отрисовку делаем через класс Graphics на холсте формы.
Смотреть видео.
#game | csharp_uni
Сегодня мы сделаем игру Арканоид на c# winforms!
Всю отрисовку делаем через класс Graphics на холсте формы.
Смотреть видео.
#game | csharp_uni
💥Синхронный запуск задачи
По умолчанию задачи запускаются асинхронно. Однако с помощью метода RunSynchronously() можно запускать синхронно
#код | csharp_uni
По умолчанию задачи запускаются асинхронно. Однако с помощью метода RunSynchronously() можно запускать синхронно
#код | csharp_uni
⚡️Задача
Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число n. Найти число x. Значение n вводится с клавиатуры, 100 ≤ n ≤ 999 и при этом число десятков в n не равно нулю.
#код | csharp_uni
Из трехзначного числа x вычли его последнюю цифру. Когда результат разделили на 10, а к частному слева приписали последнюю цифру числа x, то получилось число n. Найти число x. Значение n вводится с клавиатуры, 100 ≤ n ≤ 999 и при этом число десятков в n не равно нулю.
#код | csharp_uni
⚡️СУДОКУ C# WINAPI/SUDOKU C# WINFORMS
В этом видео мы сделаем судоку на С# простым способом.
Смотреть видео.
#game | csharp_uni
В этом видео мы сделаем судоку на С# простым способом.
Смотреть видео.
#game | csharp_uni
💥Возвращение результатов из задач
Задачи могут не только выполняться как процедуры, но и возвращать определенные результаты:
Во-первых, чтобы получать из задачи не который результат, необходимо типизировать объект Task тем типом, объект которого мы хотим получить из задачи. Например, в примере выше мы ожидаем из задачи sumTask получить число типа int, соответственно типизируем объект Task данным типом - Task<int>.
И, во-вторых, в качестве задачи должен выполняться метод, который возвращает данный тип объекта. Так, в данном случае у нас в качестве задачи выполняется метод Sum, которая принимает два числа и на выходе возвращает их сумму - значение типа int.
Возвращаемое число будет храниться в свойстве Result: sumTask.Result. Нам не надо его приводить к типу int, оно уже само по себе будет представлять число.
При этом при обращении к свойству Result текущий поток останавливает выполнение и ждет, когда будет получен результат из выполняемой задачи.
#код | csharp_uni
Задачи могут не только выполняться как процедуры, но и возвращать определенные результаты:
Во-первых, чтобы получать из задачи не который результат, необходимо типизировать объект Task тем типом, объект которого мы хотим получить из задачи. Например, в примере выше мы ожидаем из задачи sumTask получить число типа int, соответственно типизируем объект Task данным типом - Task<int>.
И, во-вторых, в качестве задачи должен выполняться метод, который возвращает данный тип объекта. Так, в данном случае у нас в качестве задачи выполняется метод Sum, которая принимает два числа и на выходе возвращает их сумму - значение типа int.
Возвращаемое число будет храниться в свойстве Result: sumTask.Result. Нам не надо его приводить к типу int, оно уже само по себе будет представлять число.
При этом при обращении к свойству Result текущий поток останавливает выполнение и ждет, когда будет получен результат из выполняемой задачи.
#код | csharp_uni