мне не нравится реальность
Photo
Я забыл сохранить 🤦♂️
У меня одновременно разрядились наушники, ноут и телефон. И всё практически в 0% 😐
Пылесос весь в пыли, или коротко о том как часто мы прибираемся
Forwarded from ☕️ Мерлин заваривает τσάι 🐌 (Мерль🛠)
YouTube
Fishing Cat: The Cat That Hunts Underwater
Life in the mangroves of South Asia is difficult, but there's one creature in this swamp that's defying the odds, and our expectations at the same time. This is the Fishing Cat.
Get the Animalogic Art Book Here: https://bit.ly/AnimalogicStore
Support Animalogic…
Get the Animalogic Art Book Here: https://bit.ly/AnimalogicStore
Support Animalogic…
мне не нравится реальность
Теперь другой вопрос — как этот new-type назвать?
Кстати на счёт
BoundedInt 👀(выбирал тему для скриншота раз в 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 в некоторых случаях можно использовать анонимный лайфтайм ('_). Практика показывает, что эта фича некоторым не до конца понятна, поэтому я решил написать об этом подробнее.
Времена жизни — пожалуй, именно та фича, которая больше…
Мне сегодня приснилось что я заспамил канал тупыми постами....
Разбудите меня тогда, когда в твиттере перестанут слетать лайки и появится возможность редактировать твиты