(выбирал тему для скриншота раз в 20 дольше чем писал код >_<)
мне не нравится реальность
я смотрел видео про создание игры на C# + unity и там в одном моменте была проблема с неправильным Equals, я всмотрелся в код и о боже, как же всё выглядит стрёмно после раста :')
Пояснение того что мне не нравится в этой картинке:
### Шарп
После трейта
Так-же вкусовщина, но мне не нравятся длинные кейворды и имена функций с большой буквы. Ещё я долго тупил откуда там
### Код
Тут
1. вместо скобок вводяться 2 переменные (которые ещё и могут в теории помешать оптимизатору)
2. вместо или (
3.
### Шарп
После трейта
(Partial)Eq мне больно смотреть на метод Equals, который принимает object, проверяет через рефлексию что тип правильный и приводит типы.Так-же вкусовщина, но мне не нравятся длинные кейворды и имена функций с большой буквы. Ещё я долго тупил откуда там
start и end — self рулит. Ну и в последнее время предпочитаю типы после имён (как в расте, котлине, etc), а return необязательный (как в расте)### Код
Тут
Connection — связь между двумя точками в двухмерном пространстве. И их сравнение... странное.1. вместо скобок вводяться 2 переменные (которые ещё и могут в теории помешать оптимизатору)
2. вместо или (
||) используется xor (^), из-за чего, если start == end и connection.start == start и connection.end == end, то результат будет неверным3.
if bool { return true; }
return false;
вместоreturn bool;Хотя я сейчас вспомнил что
Equals меня раздражал ещё до раста. Как-то мне он всегда казался нелогичным 🤔tl;dr, хочу чтобы было так:
impl PartialEq for Connection {
fn eq(&self, other: &Self) -> bool {
(self.start == other.start && self.end == other.end) ||
(self.start == other.end && self.end == other.start)
}
}Прикольное видео про лайфтаймы от
Jon Gjengset (ютубер, проводит стримы про объяснение всяких растовских штуковин): Crust of Rust: Lifetime Annotations
Если вы не понимаете лайфтаймы, но хотите понять — попробуйте посмотреть. Там полтора часа, но зато достаточно наглядно :)
/ну и это всё ещё короче его обычных видео, одно из которых я никак не досмотрю/
Jon Gjengset (ютубер, проводит стримы про объяснение всяких растовских штуковин): Crust of Rust: Lifetime Annotations
Если вы не понимаете лайфтаймы, но хотите понять — попробуйте посмотреть. Там полтора часа, но зато достаточно наглядно :)
/ну и это всё ещё короче его обычных видео, одно из которых я никак не досмотрю/
Ну и раз уж такое дело, то мой коллега не так давно написал пост про анонимный лайфтайм (
/btw, Jon мне кажется не совсем понимает цель
'_) и про lifetime elision. Гляньте его тоже. /btw, Jon мне кажется не совсем понимает цель
'_, лол/Telegram
Блог*
#prog #rust #моё
В Rust в некоторых случаях можно использовать анонимный лайфтайм ('_). Практика показывает, что эта фича некоторым не до конца понятна, поэтому я решил написать об этом подробнее.
Времена жизни — пожалуй, именно та фича, которая больше…
В Rust в некоторых случаях можно использовать анонимный лайфтайм ('_). Практика показывает, что эта фича некоторым не до конца понятна, поэтому я решил написать об этом подробнее.
Времена жизни — пожалуй, именно та фича, которая больше…
Мне сегодня приснилось что я заспамил канал тупыми постами....
Разбудите меня тогда, когда в твиттере перестанут слетать лайки и появится возможность редактировать твиты
В версии 0.9
rust-search-extension добавили возможность искать по документации определённых крейтовПоделитесь, какими todo-list'ами вы пользуетесь? (и почему) А то у моего воображаемого списка есть очевидные проблемы 😅
Писать как обычно @wafflelapkin
Писать как обычно @wafflelapkin
Так-же интересно чем вы пользуетесь для заметок и вообще всего подобного 👀
Forwarded from вафля 🧇🍓
вся жизнь — партия в D&D, а ты в ней — критический провал при броске ловкости для открытия двери
В задачке по физике нужно было узнать объём "класса, где вы занимаетесь". По удачному стечению обстоятельств папа в этот день как раз открыл новую игрушку — лазерный дальномер.
Такая весёлая игрушка оказалась, просто прикладываеш поочерёдно к 2-м стенам и полу и вуаля объём комнаты у тебя на экране! C:
Такая весёлая игрушка оказалась, просто прикладываеш поочерёдно к 2-м стенам и полу и вуаля объём комнаты у тебя на экране! C:
Оказывается в десктопной телеге эмоджи старее, чем в версии для андроида (к примеру на десктопе нету эмоджи вафли)