История изменений
Исправление rtxtxtrx, (текущая версия) :
ну это в твоей голове. нужно еще сделать уточнение, что в скриптовых языках не только типизация динамическая, а вся программа динамически собирается в райнтайме:
if ($cond) {
require_once "lib/foo.php";
} else {
require_once "lib/bar.php";
}
А еще всякие eval=evil есть, возможности сбрасывать кеш модулей и тп. Вот возьмем какой-нибудь код:
a: int = 42
b: str = "foo"
print(a + b)
Какой смысл тут в статической проверке типов? Ну запущу я mypy, он скажет нельзя число и строку складывать, но если я запущу скрипт напрямую, то он дойдет до этого места и так же вывалит ошибку, что складываю число и строку… А VSCode подсветит мне код красным и даже без указания типов.
Вся тема просто пропитана нетерпимостью и нежеланием последовать довольно правильному совету:
Завтра ищешь в интернете книжку Dive into python…
Исходная версия rtxtxtrx, :
ну это в твоей голове. нужно еще сделать уточнение, что в скриптовых языках не только типизация динамическая, а вся программа динамически собирается в райнтайме:
if ($cond) {
require_once "lib/foo.php";
} else {
require_once "lib/bar.php";
}
А еще всякие eval=evil есть, возможности сбрасывать кеш модулей и тп. Вот возьмем какой-нибудь код:
a: int = 42
b: str = "foo"
print(a + b)
Какой смысл тут в статической проверке типов? Ну запущу я mypy, он скажет нельзя число и строку складывать, но если я запущу скрипт напрямую, то он дойдет до этого места и так же вывалит ошибку, что складываю число и строку… А VSCode подсветит мне код красным и даже без указания типов