⚡️Задачка «Вооружимся архитектурой»
Вы решили сделать с друзьями свой скайрим. У вас пока в игре есть два вида оружия: молот и меч. Они отличаются уроном, прочностью и скоростью атаки. Плюс логикой атаки. Атака молота аое в круговой зоне. Атака меча бьёт до 3 ближайших противников. К вам пришёл катжит и за лунный сахар предложил купить у него схему архитектуры на картинке выше. Предложите решение лучше. В чём проблема данной схемы?
#interesting | csharp_uni
Вы решили сделать с друзьями свой скайрим. У вас пока в игре есть два вида оружия: молот и меч. Они отличаются уроном, прочностью и скоростью атаки. Плюс логикой атаки. Атака молота аое в круговой зоне. Атака меча бьёт до 3 ближайших противников. К вам пришёл катжит и за лунный сахар предложил купить у него схему архитектуры на картинке выше. Предложите решение лучше. В чём проблема данной схемы?
#interesting | csharp_uni
👍6
⚡️Что нужно знать Junior C# разработчику?
В этом подкасте мы поговорим о том какие знания нужны кандидату на должность Junior C# разработчика.
Смотреть видео.
#курс | csharp_uni
В этом подкасте мы поговорим о том какие знания нужны кандидату на должность Junior C# разработчика.
Смотреть видео.
#курс | csharp_uni
🔥4❤🔥1
⚡️Дельта компрессия и квантизация объектов в C#
Cтатья затрагивает тему сериализации данных, которые передаются по unreliable каналам.
В первую очередь это касается реалтайм игр, которые критичны к сетевым задержкам, имеют активное общение клиента и сервера, например, 10 - 60 раз в секунду и используют UDP протокол.
В статье вы узнаете, как с помощью дельта компрессии и квантизации можно уменьшить размер объектов и, тем самым, уменьшить размер сериализованных данных. Попутно мы познакомимся с библиотекой для битовой сериализации данных _NetCode_.
#interesting | csharp_uni
Cтатья затрагивает тему сериализации данных, которые передаются по unreliable каналам.
В первую очередь это касается реалтайм игр, которые критичны к сетевым задержкам, имеют активное общение клиента и сервера, например, 10 - 60 раз в секунду и используют UDP протокол.
В статье вы узнаете, как с помощью дельта компрессии и квантизации можно уменьшить размер объектов и, тем самым, уменьшить размер сериализованных данных. Попутно мы познакомимся с библиотекой для битовой сериализации данных _NetCode_.
#interesting | csharp_uni
👍4
⚡️НАТИВ / C# - разбор вопросов с собеседований
«Разбор вопросов с собеседований»! И на этот раз обсудим C# и .Net.
Смотреть видео.
#курс | csharp_uni
«Разбор вопросов с собеседований»! И на этот раз обсудим C# и .Net.
Смотреть видео.
#курс | csharp_uni
🔥2
⚡️Быстрый консольный ввод на .NET
Во времена, когда .NET был закрытой технологией только для Windows, за ним и языком C# закрепилась репутация платформы, которая отлично подходит для решения бизнес-задач, но непригодна для соревновательного программирования и написания высокопроизводительного кода.
#interesting | csharp_uni
Во времена, когда .NET был закрытой технологией только для Windows, за ним и языком C# закрепилась репутация платформы, которая отлично подходит для решения бизнес-задач, но непригодна для соревновательного программирования и написания высокопроизводительного кода.
#interesting | csharp_uni
👍6
⚡️Змейка на C# WINFORMS/SNAKE C#
Мы рассмотрим, как написать всем известную мини-игру змейку на C# Windows Forms Application. Все довольно просто, пробуйте.
Смотреть видео.
#game | csharp_uni
Мы рассмотрим, как написать всем известную мини-игру змейку на C# Windows Forms Application. Все довольно просто, пробуйте.
Смотреть видео.
#game | csharp_uni
👍5
💥Поля и методы класса
Класс может хранить некоторые данные. Для хранения данных в классе применяются поля. По сути поля класса - это переменные, определенные на уровне класса.
Кроме того, класс может определять некоторое поведение или выполняемые действия. Для определения поведения в классе применяются методы.
В данном случае в классе Person определено поле name, которое хранит имя, и поле age, которое хранит возраст человека. В отличие от переменных, определенных в методах, поля класса могут иметь модификаторы, которые указываются перед полем. Так, в данном случае, чтобы все поля были доступны вне класса Person поля определены с модификатором public.
При определении полей мы можем присвоить им некоторые значения, как в примере выше в случае переменной name. Если поля класса не инициализированы, то они получают значения по умолчанию. Для переменных числовых типов это число 0.
#код | csharp_uni
Класс может хранить некоторые данные. Для хранения данных в классе применяются поля. По сути поля класса - это переменные, определенные на уровне класса.
Кроме того, класс может определять некоторое поведение или выполняемые действия. Для определения поведения в классе применяются методы.
В данном случае в классе Person определено поле name, которое хранит имя, и поле age, которое хранит возраст человека. В отличие от переменных, определенных в методах, поля класса могут иметь модификаторы, которые указываются перед полем. Так, в данном случае, чтобы все поля были доступны вне класса Person поля определены с модификатором public.
При определении полей мы можем присвоить им некоторые значения, как в примере выше в случае переменной name. Если поля класса не инициализированы, то они получают значения по умолчанию. Для переменных числовых типов это число 0.
#код | csharp_uni
👍7
⚡️Каков будет результат короткой программы ниже?
Ответ:
||location is null
1/1/0001 12:00:00 AM
Обе переменные неинициализированы, но String со ссылочным типом, а DateTime — с типом значения. В качестве типа значения для DateTime устанавливается значение по умолчанию в полночь 1/1/1, а не null.
#код | csharp_uni
Ответ:
1/1/0001 12:00:00 AM
Обе переменные неинициализированы, но String со ссылочным типом, а DateTime — с типом значения. В качестве типа значения для DateTime устанавливается значение по умолчанию в полночь 1/1/1, а не null.
👍8⚡1
💥Объединение строк
Конкатенация строк или объединение может производиться как с помощью операции +, так и с помощью метода Concat:
Метод Concat является статическим методом класса string, принимающим в качестве параметров две строки. Также имеются другие версии метода, принимающие другое количество параметров.
#код | csharp_uni
Конкатенация строк или объединение может производиться как с помощью операции +, так и с помощью метода Concat:
Метод Concat является статическим методом класса string, принимающим в качестве параметров две строки. Также имеются другие версии метода, принимающие другое количество параметров.
#код | csharp_uni
❤🔥3
⚡️Что пишут на языке программирования C#
Обсудим на что способен язык программирования C#, что на нём пишут, в каких сферах он востребован на данный момент и какие дополнительные технологии должен знать разработчик на языке си шарп.
#interesting | csharp_uni
Обсудим на что способен язык программирования C#, что на нём пишут, в каких сферах он востребован на данный момент и какие дополнительные технологии должен знать разработчик на языке си шарп.
#interesting | csharp_uni
👍1
💥Объединение строк
Для объединения строк также может использоваться метод Join:
Метод Join также является статическим. Использованная выше версия метода получает два параметра: строку-разделитель (в данном случае пробел) и массив строк, которые будут соединяться и разделяться разделителем.
#код | csharp_uni
Для объединения строк также может использоваться метод Join:
Метод Join также является статическим. Использованная выше версия метода получает два параметра: строку-разделитель (в данном случае пробел) и массив строк, которые будут соединяться и разделяться разделителем.
#код | csharp_uni
👍3
КРЕСТИКИ-НОЛИКИ НА C# WINDOWS FORMS APPLICATION/ TIC-TAC-TOE C# WINFORMS
Напишем мини-игру на C# Крестики-нолики с использованием Windows Forms Application.
Смотреть видео.
#game | csharp_uni
Напишем мини-игру на C# Крестики-нолики с использованием Windows Forms Application.
Смотреть видео.
#game | csharp_uni
⚡2
ИГРА ТЕТРИС НА C# WINFORMS GRAPHICS
В этом видео мы сделаем игру под названием Тетрис на c# winforms!
Всю отрисовку делаем через класс Graphics на холсте формы.
Смотреть видео.
#game | csharp_uni
В этом видео мы сделаем игру под названием Тетрис на c# winforms!
Всю отрисовку делаем через класс Graphics на холсте формы.
Смотреть видео.
#game | csharp_uni
🔥4
ИГРА ШАХМАТЫ C# WINFORMS
В этом видео мы сделаем шахматы на c# winforms!
Смотреть видео.
#game | csharp_uni
В этом видео мы сделаем шахматы на c# winforms!
Смотреть видео.
#game | csharp_uni
👍3
⚡️Первые шаги в Unity с OpenXR
Сегодня мы создадим VR-проект на Unity, работающий по стандарту OpenXR.
Время идёт, технологии не стоят на месте, и способов разработать свой VR-проект всё больше и больше. OpenXR позволяет получить полный контроль над своим VR-проектом и безболезненно перенести в виртуальную реальность свою игру.
#interesting | csharp_uni
Сегодня мы создадим VR-проект на Unity, работающий по стандарту OpenXR.
Время идёт, технологии не стоят на месте, и способов разработать свой VR-проект всё больше и больше. OpenXR позволяет получить полный контроль над своим VR-проектом и безболезненно перенести в виртуальную реальность свою игру.
#interesting | csharp_uni
👍2
⚡️.NET 7: разбираем ошибки и подозрительные места в исходниках
С.NET 7 зарелизился. Это хороший повод покопаться в исходниках, чтобы поискать ошибки и странные места. За комментариями по находкам обратимся к самим разработчикам .NET — кому знать код, как не им? Погнали!
#interesting | csharp_uni
С.NET 7 зарелизился. Это хороший повод покопаться в исходниках, чтобы поискать ошибки и странные места. За комментариями по находкам обратимся к самим разработчикам .NET — кому знать код, как не им? Погнали!
#interesting | csharp_uni
👍3
⚡️Как стать Senior разработчиком: определение, навыки, материалы
Сфер в IT много, но путь становления Senior-разработчика плюс-минус одинаков. В этой статье мы поговорим о том, кто такой старший разработчик, какие к нему предъявляются требования и как дорасти до столь солидной должности.
#interesting | csharp_uni
Сфер в IT много, но путь становления Senior-разработчика плюс-минус одинаков. В этой статье мы поговорим о том, кто такой старший разработчик, какие к нему предъявляются требования и как дорасти до столь солидной должности.
#interesting | csharp_uni
👍3
⚡️Мнение: объектно-ориентированное программирование — катастрофа на триллион долларов
Цель каждого разработчика — написать надёжное программное обеспечение. Ничто другое не имеет значения, если код глючит. При этом самый лучший подход к написанию надёжного кода — простота. Следовательно, первая и главная цель разработчиков должна заключаться в уменьшении сложности кода.
#interesting | csharp_uni
Цель каждого разработчика — написать надёжное программное обеспечение. Ничто другое не имеет значения, если код глючит. При этом самый лучший подход к написанию надёжного кода — простота. Следовательно, первая и главная цель разработчиков должна заключаться в уменьшении сложности кода.
#interesting | csharp_uni
💥Использование суффиксов
При присвоении значений надо иметь в виду следующую тонкость: все вещественные литералы (дробные числа) рассматриваются как значения типа double. И чтобы указать, что дробное число представляет тип float или тип decimal, необходимо к литералу добавлять суффикс: F/f - для float и M/m - для decimal.
Подобным образом все целочисленные литералы рассматриваются как значения типа int. Чтобы явным образом указать, что целочисленный литерал представляет значение типа uint, надо использовать суффикс U/u, для типа long - суффикс L/l, а для типа ulong - суффикс UL/ul:
#код | csharp_uni
При присвоении значений надо иметь в виду следующую тонкость: все вещественные литералы (дробные числа) рассматриваются как значения типа double. И чтобы указать, что дробное число представляет тип float или тип decimal, необходимо к литералу добавлять суффикс: F/f - для float и M/m - для decimal.
Подобным образом все целочисленные литералы рассматриваются как значения типа int. Чтобы явным образом указать, что целочисленный литерал представляет значение типа uint, надо использовать суффикс U/u, для типа long - суффикс L/l, а для типа ulong - суффикс UL/ul:
#код | csharp_uni
👍5❤🔥2
C# ШАШКИ WINFORMS/ C# CHECKERS WINDOWS FORMS
В этом видео мы сделаем шашки на c# winforms.
Смотреть видео.
#game | csharp_uni
В этом видео мы сделаем шашки на c# winforms.
Смотреть видео.
#game | csharp_uni
⚡️Введение в GraphQL для .NET-разработчиков: мутация
В этой же статье я расскажу вам о мутациях в GraphQL. Я также отойду от использования статического метода, который я показывал в вышеупомянутой статье, и буду использовать Entity Framework (с in-memory поставщиком) для доступа и хранения данных.
#interesting | csharp_uni
В этой же статье я расскажу вам о мутациях в GraphQL. Я также отойду от использования статического метода, который я показывал в вышеупомянутой статье, и буду использовать Entity Framework (с in-memory поставщиком) для доступа и хранения данных.
#interesting | csharp_uni