Перейти к публикации
  • Сейчас на странице   Всего пользователей: 0   (0 пользователей, 0 гостей)

Rooster

Программирование[11]

var  

286 пользователей проголосовало

У вас нет прав на голосование в этом опросе, или на просмотр результатов опроса. Пожалуйста, войдите или зарегистрируйтесь для голосования в опросе.

Рекомендованные сообщения

(изменено)

Простой пример из реальной жизни. Надо в функцию передать width и height. Если функция принимает их как раздельные параметры, то постоянно возникает вопрос, что нужно передать первым, что вторым. Ибо каждый разработчик располагает их по-разному. Если вместо приема различных значений использовать библиотечную структуру типа Size, которую используют все разработчики, то после месяца работы над проектом ты запомнишь, что идет в ее конструкторе первым, что вторым, и риск перепутать параметры резко снижается.


Изменено пользователем Grohuf

Поделиться сообщением


Ссылка на сообщение
  besteady написал 06.04.2022 в 14:08:
  GoldRobot написал 06.04.2022 в 14:03:

Что значит не примешивай

Куча людей работает над легаси проектами

Это значит что речи о том что бы начать в проекте на 100к строк кодить по новому не идет. Это значит что ориентироваться на проекты из 2007го, который сохранили практики из 97го от сихи, не стоит.


  ward написал 03.01.2022 в 19:54:

Hades для стада долбоебичей которые прокликивали Дэш и думали ебать они в артхаузнвй рогалик играют, не такие как все.

  mazt3r написал 20.09.2019 в 04:27:

ласт оф ас - хуета для лисят и прочих мальчиков с вагиной между ног.

 

Поделиться сообщением


Ссылка на сообщение
  GoldRobot написал 06.04.2022 в 14:03:

Ты не примешивай легаси проекты с гайдлайнами старше нас обоих ток, мы про твой 100 строчный пример всетаки говорим.

вот функция которую я вызывал, вроде она самая
https://docs.unrealengine.com/5.0/en-US/API/Runtime/Engine/Engine/UWorld/LineTraceSingleByChannel/
вот https://docs.unrealengine.com/5.0/en-US/API/Runtime/Engine/FCollisionQueryParams/ по ссылке FCollisionQueryParams посмотри количество мемберов которые можно и скорее всего нужно будет настроить.
Один вызов этой функции это 30 строк легко даже без абсолютно чего другого.

image.png.387304b06d1816f0572c916b6b86f678.png

Поделиться сообщением


Ссылка на сообщение
  Grohuf написал 06.04.2022 в 14:11:

Простой пример из реальной жизни. Надо в функцию передать width и height. Если функция принимает их как раздельные параметры, то постоянно возникает вопрос, что нужно передать первым, что вторым. Ибо каждый разработчик располагает их по-разному. Если вместо приема различных значений использовать библиотечную структуру типа Size, которую используют все разработчики, то после месяца работы над проектом ты запомнишь, что идет в ее конструкторе первым, что вторым, и риск перепутать параметры резко снижается.

 

Хм

А можно ли заэксплисить, чтобы функцию можно было вызывать только с указанием имен аргумента. foo(width=, height=)

В свфите вроде так и есть. Насчет этого помню ещё сюда писали :xd:

А, да. В плюсах же нет такого. Буквально на прошлой странице ты писал 


 

Поделиться сообщением


Ссылка на сообщение
  Olololnet написал 04.04.2022 в 18:18:

мб кому-то понадобится из топана

 

траты на кипре лимассол - около 2700-3000 евро чистыми (примерно однохуйственно для 1 или для 2 человек, средний уровень трат - не жировать, но и не сводить концы с концами). соответственно минимально приемлемые офферы должны быть существенно выше этой суммы. лимассол какой-то пиздически дорогой город, если ехать с детьми - то там английская/русская школа это в сумме 1к евро в месяц на ребёнка. минимально приемлемая недвига от 500к евро.

 

завтра будет оффер на переезд, вижу минимальный таргет в 5к евро net, чтобы там не работать за еду; и вряд ли такой оффер будет :)

2700-3000 с учетом хаты? 


[14:22:31] Сиэль: oh uj eti imbanani

Поделиться сообщением


Ссылка на сообщение
  besteady написал 06.04.2022 в 14:24:
  Grohuf написал 06.04.2022 в 14:11:

Хм

А можно ли заэксплисить, чтобы функцию можно было вызывать только с указанием имен аргумента. foo(width=, height=)

В свфите вроде так и есть. Насчет этого помню ещё сюда писали :xd:

Так можно во многих языках, в том числе в Objective-C. В си++ так можно указывать имена структуры при инициализации. Про передачу параметров функции с указанием имени не слышал. По этой причине выгодней передавать структуру. Ты можешь при желании указывать имена при ее инициализации. То есть:

Foo({.year=1923, .make="Nash", .model="48 Sports Touring Car"});

Поделиться сообщением


Ссылка на сообщение
  Grohuf написал 06.04.2022 в 14:11:

Простой пример из реальной жизни. Надо в функцию передать width и height. Если функция принимает их как раздельные параметры, то постоянно возникает вопрос, что нужно передать первым, что вторым. Ибо каждый разработчик располагает их по-разному. Если вместо приема различных значений использовать библиотечную структуру типа Size, которую используют все разработчики, то после месяца работы над проектом ты запомнишь, что идет в ее конструкторе первым, что вторым, и риск перепутать параметры резко снижается.

 

Я ролик на ютубе по поводу смотрел, прям с твоим примером.
Там вещали что если что то используется часто вместе а является базовым типом, лучше это оградить в какой нить класс Width и Height с одним членом и запретить explicit conversion from underlying type (яхз как на русском адекватно написать, кодить учился по ютубу).
Ну такие штуки должны сеньйоры делать имхо а не я джун без образования и опыта в комерции с профессионалами.

У меня по этому примеру постоянно проблемы с UI, там основная трансформа описывается как {float x, y, width, height} и я так и не выучил что первое высота или ширина и постоянно жду пока студия подскажет. :ponimau:

Поделиться сообщением


Ссылка на сообщение
  Grohuf написал 06.04.2022 в 14:27:

Про передачу параметров функции с указанием имени не слышал

Это питон меня попутал

Интересно как в object-c сделано. Символы из функций генерятся с именами аргументов? 


 

Поделиться сообщением


Ссылка на сообщение
(изменено)
  besteady написал 06.04.2022 в 14:32:

Интересно как в object-c сделано. Символы из функций генерятся с именами аргументов? 

Эмм, я не помню, можешь ли ты передавать имена в другом порядке. Знаю только то, что имена указать ты обязан. Но даже если язык позволяет указывать их в разных порядках, то просто их переставляет компилятор в ожидаемом вызываемой функцией порядке на этапе компиляции.

  CriErr написал 06.04.2022 в 14:31:

Там вещали что если что то используется часто вместе а является базовым типом, лучше это оградить в какой нить класс Width и Height с одним членом и запретить explicit conversion from underlying type (яхз как на русском адекватно написать, кодить учился по ютубу).

Использование специального типа вместо простого int - мазохизм. В реальных проектах такого бреда не видел. Максимум, что используется для безопасности с точки зрения типов - это enum class. Использование большого количества типов для каждой мелочи будет сильно замедлять написания кода. Так как разработчик будет много думать о форме, а не о содержании.


Изменено пользователем Grohuf

Поделиться сообщением


Ссылка на сообщение
  besteady написал 06.04.2022 в 14:24:

А можно ли заэксплисить, чтобы функцию можно было вызывать только с указанием имен аргумента. foo(width=, height=)

 

Можо инициализировать структурку на месте при передаче в аргумент

https://godbolt.org/z/qnhjGaoo5


  ward написал 03.01.2022 в 19:54:

Hades для стада долбоебичей которые прокликивали Дэш и думали ебать они в артхаузнвй рогалик играют, не такие как все.

  mazt3r написал 20.09.2019 в 04:27:

ласт оф ас - хуета для лисят и прочих мальчиков с вагиной между ног.

 

Поделиться сообщением


Ссылка на сообщение
  GoldRobot написал 06.04.2022 в 14:37:
  besteady написал 06.04.2022 в 14:24:

Можо инициализировать структурку на месте при передаче в аргумент

https://godbolt.org/z/qnhjGaoo5

авто бесит в таких примерах :zatrolka_tupostu:

Поделиться сообщением


Ссылка на сообщение
  JuJeu написал 05.04.2022 в 06:05:
  ElGobedano написал 05.04.2022 в 05:59:

а, так в этом ничего удивительного.

интересно будет наблюдать за европой. скоро выборы во франции, посмотрим, кто будет у руля. если ле пен пройдёт, ух будет кино (надеюсь):popcorn:

То ли еще будет

JuJeu понравилось это

ASCFR.gif

Поделиться сообщением


Ссылка на сообщение
(изменено)
  sol1tary написал 06.04.2022 в 18:31:
  JuJeu написал 05.04.2022 в 06:05:

То ли еще будет

как в целом обстановка? протесты есть по стране или всё спокойно?

антибан 

 

  Reveal hidden contents

Изменено пользователем JuJeu

Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
 

Поделиться сообщением


Ссылка на сообщение
  JuJeu написал 06.04.2022 в 18:49:
  sol1tary написал 06.04.2022 в 18:31:

как в целом обстановка? протесты есть по стране или всё спокойно?

антибан 

 

  Reveal hidden contents

 

ващет бати шарят за фортран, пездюк ученым будет а не формошлепом

Поделиться сообщением


Ссылка на сообщение
(изменено)
  GoldRobot написал 06.04.2022 в 07:24:

Да да, именно поэтому немцы с удовольствием перекатываются в штаты если попадается такая возможность.

ты не поверишь, но много американцев/канадцев/британцев перекатывается в германию, а кто-то в нидерланды а кто-то еще кудато. и в обратную сторону тоже

здесь корень не в том что где-то лучше, а втом что "у соседа трава зеленее" и "хорошо там где нас нет" + иногда желание другую культуру пощупать

 

==============================================

 

Небольшой апдейт по клаве 

  Фото с интернета для контекста

Пиздатая. Клики клавиши поначалу как-будто бесили, потом вроде начали прикалывать. Если что думаю закажу еще 1 сет и поменяю (там хотсвап)
Сначала было начал практиковать печать (на них в любом случае нужно переучиваться). попрактиковал гдето минут 40 печать 10 пальцами - очень удобно когда клавиши в понятных местах и рсположены четко. Понял что qwerty раскладка это ад, потому что очень частные буквы разнесены в разные дальние уголки. Для себя понял что какая разница на какую раскладку переучиваться и решил переучиться на Colemak (DH) (погуглил какие есть, понял что она самая топ для меня).

Пока на этом остановился.

 

Хер знает что будет с русским - на colemak почти наверняка руская раскалдка супер рандомная. Думаю есть 2 варианта - либо делать леер под русскую (и там либо привычный йцукен оставить, либо также подобрать эффективную русскую раскладку. Хз будет ли удобно менять слой одновременно с раскладкой, но возможно это как-то все таки можно будет организовать, в крайнем случае запрогая нужные команды самостоятельно. 

Другой вариант оставить леер с колемаком, но добавить в ОС кастомную раскладку, подозреваю туда можно запихнуть любую, наверное придется ее самому и составлять. Тут минус что будет менее портабельно, тк везде где нужно будет использовать клаву нужно будет ставить эту кастомную раскладку. Но зато тогда все нативно будет работать также как сейчас когда просто переключаешь раскладку

  besteady написал 06.04.2022 в 13:26:

Делать тыщу структур под всевозможный возврат

объясни плс

в чем проблема ретернить структуру которая эффективно такая же как та которую ты мутируешь

также в чем поблема описать не "все возмоные возвраты" а конкретно те которые у тебя есть - ты же когда функцию пишешь ты понимаешь какие у тебя возможны инварианты возвратов.

Я конеш понимаю что я лично думаю в терминах скалы и в Си что-то скорее всего невозможно(крайне неудобно) синтаксически, а что-то не имеет смысла по соображениям эффективности, но тем не менее интересно послушать 


Изменено пользователем Just.Doit
DomikTS- понравилось это

 

очень крутые котейки


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение
  Just.Doit написал 07.04.2022 в 00:39:

в чем проблема ретернить структуру которая эффективно такая же как та которую ты мутируешь

RVO работает с базовыми классами?

тип если у тебя структ возвращает 5 булеанов и 5 инт и 5 флоат это все будет делать копию?

 

Поделиться сообщением


Ссылка на сообщение
(изменено)
  CriErr написал 07.04.2022 в 01:28:
  Just.Doit написал 07.04.2022 в 00:39:

RVO работает с базовыми классами?

тип если у тебя структ возвращает 5 булеанов и 5 инт и 5 флоат это все будет делать копию?

 

не понял вопросов

1 - что такое рво

2 - мы про какой язык говорим? если с/спп то я не знаю как там что


Изменено пользователем Just.Doit

 

очень крутые котейки


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение
  CriErr написал 07.04.2022 в 01:28:
  Just.Doit написал 07.04.2022 в 00:39:

RVO работает с базовыми классами?

тип если у тебя структ возвращает 5 булеанов и 5 инт и 5 флоат это все будет делать копию?

 

он и с подами и не с подами работает.

Я первый раз слышу про какие-то ограничения вообще.


  ward написал 03.01.2022 в 19:54:

Hades для стада долбоебичей которые прокликивали Дэш и думали ебать они в артхаузнвй рогалик играют, не такие как все.

  mazt3r написал 20.09.2019 в 04:27:

ласт оф ас - хуета для лисят и прочих мальчиков с вагиной между ног.

 

Поделиться сообщением


Ссылка на сообщение
  Just.Doit написал 07.04.2022 в 00:39:

Я конеш понимаю что я лично думаю в терминах скалы и в Си что-то скорее всего невозможно(крайне неудобно) синтаксически, а что-то не имеет смысла по соображениям эффективности, но тем не менее интересно послушать 

Для каждого вида возврата надо свою структуру заводит и объявлять где-то

int int - новый struct

int doable - новый struct 

и тд


 

Поделиться сообщением


Ссылка на сообщение

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.


×
×
  • Создать...