Notebook: GameLab – Telegram
Notebook: GameLab
32 subscribers
247 photos
1 video
1 file
16 links
Полевая записная книжка разработчика игр
https://news.1rj.ru/str/AnimusMortis
Download Telegram
#Теория
Ключевого слова partial
Разделяемые классы

Существует несколько ситуаций, когда желательно разделение определения класса.

-При работе над большими проектами распределение класса между различными файлами позволяет нескольким программистам работать с ним одновременно.
-При работе с использованием автоматически создаваемого источника код можно добавлять в класс без повторного создания файла источника. Visual Studio использует этот подход при создании форм Windows Forms, кода оболочки веб-службы и т. д. Можно создать код, который использует эти классы, без необходимости изменения файла, созданного в Visual Studio.
-При использовании генераторов источников для создания дополнительных функциональных возможностей в классе.

Пример:
public partial class Coords
{
private int x;
private int y;

public Coords(int x, int y)
{
this.x = x;
this.y = y;
}
}

public partial class Coords
{
public void PrintCoords()
{
Console.WriteLine("Coords: {0},{1}", x, y);
}
}

class TestCoords
{
static void Main()
{
Coords myCoords = new Coords(10, 15);
myCoords.PrintCoords();

// Keep the console window open in debug mode.
Console.WriteLine("Press any key to exit.");
Console.ReadKey();
}
}
// Output: Coords: 10,15


Подробнее в документации: https://learn.microsoft.com/ru-ru/dotnet/csharp/programming-guide/classes-and-structs/partial-classes-and-methods
👍1
😱3
Одна ошибка и ты ошибся...
За что так дизайнеры не любят людей с навыком слепой печати?
🫡2
🔥2
😁2
С наступающим новым годом! Что б баги были в радость, а релизы в сладость!) Успехов на работе и новых достижений в личной жизни!
🎉2
Новости:
Компания Unity объявила о новом масштабном сокращении — фирма уволит 25% своих сотрудников, речь идёт про 1800 человек на разных позициях. Это уже четвёртое сокращение в компании за последний год, предыдущее произошло в ноябре 2023-го , когда работу потеряло 265 сотрудников.

Решили что нельзя заработать на установках и решили сократить расходы на персонал?...
Разработчик до приобретения коммерческого опыта:
😁4
👍3
👍3
👍2
https://vk.com/video-173146266_456244796
Когда решил пофиксить баги в легаси проекте
😱1
😁3
😁2
🔥3
#Практика

Часто встречаю споры по вопросу оптимизации через Update\FixedUpdate\Coroutine и решил создать свой пример где бы были реализованы все эти способы для наглядной демонстрации.
Каждый желающий может скачать этот пример и попробовать на практике как идёт нагрузка на систему в зависимости от используемого метода обновления.
В данной проекте используется перемещение простых кубов через Transform.Translate(). Но при большом кол-ве объектов можно понять какой из методов является самым низко затратным.

Ссылка на проект - https://github.com/Animus-Mortis/Optimization-Models/tree/main

Пользуйтесь на здоровье)
👍2
Стану тим лидом - куплю)
😁2👍1
#Практика

Для создания списка с возможностью выбора нескольких вариантов можно использовать Flags:

[System.Flags]
public enum TypeBuild
{
None = 0,
FirstType = 1 << 1,
SecondType = 1 << 2,
BestType = 1 << 3,
}
👍1🔥1
Когда платят за количество строк, а не за "качество" кода
😭2👍1
🤣3😁1