- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
Чем обусловлена течка по сильной типизации, если она крайне неудобна?
К примеру, в "PHP" я могу спокойно написать код, подобный приведённому ниже,
и не надо будет придумывать всё новые и новые названия для переменных:
$count='microsoft,apple,amazon';
$count=explode(',', $count);
$count=count($count);
$count=$count.' шт.';
Переведи на "PHP".
Это как в сишке написа́ть:
И хранить в data разные значения в зависимости от того, какое число лежит в поле current_type.
Только в дельфятине ещё был синтаксический сахарок, чтобы самому не заполнять и не проверять дескриптор типа.
вот и вся строгая тупизация в петоне.
Потому что $count неявно преобразовывается в строку, чтобы оператор кокококонкатенации имел смысл.
В шестой, в седьмой и в восьмой пример динамической: $count на лету меняет тип.
https://www.freepascal.org/docs-html/current/ref/refch10.html
Пример:
http://ideone.com/lelkC1
А в языке «D» вообще есть «Uniform Call Syntax» для текучего междумордия.
В D вообще много чего есть, только никто им не пользуется почему-то
Языком «D» никто не пользуется, потому что «Фейсбук» и «ВКонтакте» написаны на «PHP».
Хелпер же позволяет добавлять методы в чужой класс, не наследуясь от него.
> Хелпер же позволяет добавлять методы в чужой класс, не наследуясь от него.
- чот не вижу разницы, если говорить про семантику
Хелперы, экстеншны же позволяют привязывать методы к существующему классу без необходимости создавать новое имя класса.
Технические проблемы обсуждают сисадмины и заправщики картриджей.
А программисты обсуждают разницу между миксином и трейтом.
Rust:
https://doc.rust-lang.org/rust-by-example/trait.html
Swift:
defailt implementation, уже много раз про них писал здесь
Dlang:
https://dlang.org/articles/mixin.html - это вообще кодогенерация вперемешку с препроцессингом
Special guest - Go:
https://github.com/golang/go/issues/16254
- гобляди рассказывают, что "Mixins, traits used in OOP. Also I know that in Go language there are no such thing as OOP and inheritance." И именно поэтому они не нужны.
Может, ты имеешь в виду конкретно пхп.
Но вообще это очень сильно зависит от ЦЯ. Я когда-то любил говорить, что экстеншены, трейты и миксины это одно и то же, пока не прочитал документацию. Так шо в чём-то ты прав
UML устарел, вот что я хочу сказать
Зачем, блядь, что-то показывать? Зачем, блядь, что-то малевать? Просто пиши процедурный код, коноёб твою мать.
Вместо vcs тетрадка в клеточку.
Вместо IDE - карандаш и ластик.
Дебажу прямо на бумаге.
Когда надо сделать билд и выкатить в продакшен, навожу ручкой то, что раньше написал карандашом.
Чтобы отдать заказчику продукт, вырываю листок, комкаю и бросаю в форточку.
По итогу езжу на мазерати, ебу хрюш и топ-моделей, конярду недавно нанял за еду чистить туалеты на моей вилле. Иногда, сидя на толчке, слышу его вскукареки из канализации про последовательный процедурный код, написанный говном пальцем на кирпичной кладке.
Это ещё что за хуйня? Бляяяя, сколько говна понапридумывали...
Это значит, что на каждый тип диаграммы в книжке не менее 15 страниц. Лев Толстой писал эту книгу, да.
По ссылке слишком тривиальный пример, что ты хотел им сказать?
—– А мне не надо, чтобы вам было удобнее. Мне надо, чтобы вы заебались.
Что это и нахуй оно въеблось?
Из-за вас, блядей, я вынужден каждый раз, сталкиваясь с очередным ООП-проектом, по часу-по два искать в Интернетах, как конкретно в этом фреймворке (или его конкретной версии) выполнить ссаный запрос к базе данных, ибо они не допускают такой роскоши, как "mysql_query" - там обязательно надо использовать какую-то поебень типа "$db->table(...)->where(...)->first()" или "DBO::Query(...)", и вся эта абракадабра совершенно непредсказуема. Если же документацию найти не удаётся, я, опять же, часами вынужден искать, где в этом фреймворке зарыт файл с классом базы данных, чтобы понять, как, блядь, здесь выбрать одну запись из таблицы.
Бляди, дети блядей и внуки блядей.
- нормально ты щас ObjC приложил.
Учитесь у отца всех ваших скриптоподелок: Perl. Тут не только смена типа на ходу, тут еще и контекст меняется.
Такая концепция подошла бы для стекового языка. В воображаемом стековом языке пример кода выглядел бы так:
https://ru.wikipedia.org/wiki/Форт_(язык_программирования)
https://ru.wikipedia.org/wiki/PostScript
https://ru.wikipedia.org/wiki/Factor_(язык_программирования)
https://ru.wikipedia.org/wiki/Joy_(язык_программирования)
https://ru.wikipedia.org/wiki/Cat_(язык_программирования)
Плюс ассемблеры для JVM и .NET.
Я в 14 лет мог написать только вот такой скринсейвер:
На форте есть проекты:
На счет остальных незна.
<<ga>> --- MOu OTBET.
CKa}|{u MHE <<ga>>,
HE roBopu <<HET>>.
Ведь радуги моей так не надeжен свет,