Найти - Пользователи
Полная версия: Статическая типизация в питоне
Начало » Python для новичков » Статическая типизация в питоне
1 2 3 4 None 7 8 9 10 11
Singularity
sp3
в чем ошибка ?
sp3
1235 * 429496720 явно не равно 2147471792.
Причем код компилится без проблем, а ошибка происходит во время выполнения и ни как не дает о себе знать. Всплывет косяк где нибудь дальше. А может не всплывет. Просто работа приложения будет не корректна. Разработчик должен сам проверять корректные ли данные поступают на вход. В питоне Гвидо и Со позаботились за нас об этом :)
Lexander
Singularity
сообщения ошибок на compile-time
Для больших проектов не так актуально, т.к. компиляция (точнее, билд) идет через CI. Там же - тесты.

А на этапе отладки на машине разработчика - другая проблема, поэтому не могу с вами согласиться.
Очевидно, пример с “переполнением” типа притянут за уши, т.к. большая часть данных в программу приходит извне и операции осуществляются с переменными,а не с константами.
Поэтому на этапе компиляции эту проблему отследить довольно проблематично, хотя ручками вбивать значения всех переменных занятие, несомненно, захватывающее. :D
Соответственно - место решения задачи - в тестах. А значит, с Питоном паритет.
Как вы яхту назовете Что в тестах напишете, то и ваше.

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

Singularity
мне не нравится принцип делать что-нибудь, но не падать с ошибкой
Вы ведь все равно будете эту ситуацию обрабатывать. Небось, какие-нибудь try catch напишете для обработки операций с внешними данными или как минимум проверку на входе устроите?
Поэтому будет ли компилированная программа падать с ошибкой - зависит от вас.
Естественно, как вы знаете, на Питоне можно сделать то же самое.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB