Andrey
Andrey
а ты точно понимаешь в чем суть класса?
Anonymous
да, класс - это описание структуры данных и методов работы с ними. Но можно создать класс State, описать в нем свои переменные, передавать в каждую функцию и возвращать из каждой функции в программе State, чтобы хоть как-то эмулировать глобальные переменные
պլհկ
отличное решение!
պլհկ
вот мы и поняли что глобальные переменные не нужны
Anonymous
Но ведь это гораздо менее удобно, чем глобальные переменные
Anton
Почему?
Anonymous
Больше кода, больше возни, в каждой функции приведение к этому типу, передача между функциями всего огромного стейта
պլհկ
вы что-то не так делаете
Anton
Andrey
вот есть у тебя например прогрессбар. Текстовый, простой, для цикла сишного обычного с i. Был бы у меня класс я бы сделал в нем переменную состояния, ктторая бы позволила мне перерисовывать прогрессбар всего сто раз, а не i раз. а так я использую статик глобальную переменную. Можно обернуть ее в структуру чтобы еще дополнительно обезопасить код, чтобы имена не пересекались. А были бы у меня неймспейсы была бы вообще сказка. Но в си нет ни классов, ни неймспейсов, и тем не менее глобальная переменная не сильно вредит, но были бы классы она была бы не нужна в принципе.
պլհկ
Если это троллинг, то он хорош
Anton
Andrey
Anton
А в джаве какой-нибудь разве есть глобальные переменные?
Anonymous
в функциональных языках ввиду отсутствия глобальных переменных вроде всегда так делают
պլհկ
Anonymous
да и... Другого пути я просто не вижу
Anton
Но это же тоже не приветствуется
Evgεny
Anonymous
приветствуется-неприветствуется - это рекоммендации и мода, завтра какой-нибудь работник гугла напишет, что модно делать вместо функций референсы на функции, чтобы было удобно подменять функции одну на другую - и тоже будет новое "приветствуется". А мне бы как угодно извернуться, лишь бы задачу хранения данных в программе решить
Anonymous
изменяемых и доступных отовсюду данных*
Anton
Если как угодно извернуться, используй ансейф
պլհկ
պլհկ
>модно делать вместо функций референсы на функции, чтобы было удобно подменять функции одну на другую - и тоже будет новое "приветствуется"
Anonymous
что, уже модно? =)
Anonymous
Нет, unsafe - это здорово, там можно вообще сырыми поинтерами ворочать, но ведь в си будет то же самое, только с более удобным и минималистичным синтаксисом
պլհկ
Депенденси инжекшн называется
պլհկ
Anonymous
А если есть два потока и им надо между собой меняться данными, это в rust же как-то реализуется?
պլհկ
Каналы или мьютексы
Сергей
ещё есть scoped threads
Anonymous
lazy_static! {
static ref ARRAY: Mutex<КлассМоегоСостояния> = Mutex::new(ОбъектМоегоСостояния);
}
Anonymous
ну вот же она, моя глобальная переменная
Anonymous
Sergey
Anonymous
cargo build —target=wasm32-unknown-unknown
Loo
Пздц, заберите у него ЛСД
պլհկ
Anonymous
я мой администратор, у меня 32-битная архитектура, так что ничего не попишешь
John
А можно без флуда про глобальные переменные? Лучше уже вернуться к тематическому обсуждению гомосексуальных отношений (а раст тут при том, что на нем пишут в том числе гомосексуалисты)
պլհկ
Safort
Anton
Anton
Ну проблемма у человека что не может придумать как извратится без глобальных переменных
Anton
Пусть сделает lazy_static с RefCell
Anton
+Option
պլհկ
+ mutex
Anton
Ну да, раз у него потоки)
Pavel
պլհկ
Проблема у него в том что он хочет писать на си, но не может
Anton
Ага
Anton
В расте)
պլհկ
Ну так эмскриптен на вин хр не встал
Safort
Pavel
ага они 😄
Victor
После такого новички и спрашивают "где бы достать чатик для новичков а то тут гнобят"
Pavel
պլհկ
кому не помогли? кого загнобили?
Victor
ну можно задать вопрос Scientist на сколько ему помогли тут с глобальными состояниями )
Loo
Loo
Если человек приходит с конкретной проблемой и объясняет ее нормально мы поможем. Если человек приходит и несёт хуиту то как бы...
Konstantin
есть два стула.
Артем
Тон это традиция. Как бы нужно просто привыкнуть.
Αλεχ
Αλεχ
Αλεχ
кстати, уничижительные выпады в сторону функциональщины как бы намекают, что человек неосилил и не понимает, зачем вообще так писать
Αλεχ
не говоря про безапелляционные выводы что любая программа имеет глобальный стейт
պլհկ
Victor
мне-то норм =) а новичкам не очень, наверное. Приходишь ты такой... ну незнаю. В школу. а там препод такой "Да, ебать, перемножь ты эти ебучие числа столбиком нахуй. Чё мозги ебёшь?"... )
Αλεχ
Αλεχ
и говорит, что ваше умножение в столбик говно
Αλεχ
и новомодная хрень