Вопросы с тегом «static-typing»

108
Стоит ли использовать статическую типизацию?

Я начал программировать в Python в первую очередь там, где нет безопасности типов, затем перешел на C # и Java, где есть. Я обнаружил, что могу работать немного быстрее и с меньшими головными болями в Python, но опять же, мои приложения на C # и Java находятся на гораздо более высоком уровне...

91
Какие функциональные возможности позволяет динамическая типизация? [закрыто]

Я использую python уже несколько дней и думаю, что понимаю разницу между динамической и статической типизацией. Что я не понимаю, так это при каких обстоятельствах это будет предпочтительнее. Он гибкий и читаемый, но за счет дополнительных проверок во время выполнения и дополнительных необходимых...

72
Есть ли корреляция между масштабом проекта и строгостью языка?

Объясняя разницу между строгостью языков и парадигм моей коллеге, я кончил тем, что: Толерантные языки, такие как динамические и интерпретируемые языки, лучше всего используются для прототипов и небольших проектов или веб-приложений среднего размера. При выборе элегантных динамических языков, таких...

69
Динамически против статически типизированных языков изучения [закрыто]

Существуют ли исследования эффективности языков со статической и динамической типизацией? В частности: Измерения производительности программиста Коэффициент дефектности Также включая эффекты от того, используется ли юнит-тестирование. Я видел много дискуссий о достоинствах любой из сторон, но мне...

66
Является ли система типов Haskell формально эквивалентной системе Java? [закрыто]

Я понимаю, что некоторые вещи проще / сложнее в одном языке, чем в другом, но меня интересуют только функции, связанные с типами, которые возможны в одном и невозможны / неактуальны в другом. Чтобы сделать его более конкретным, давайте проигнорируем расширения типов на Haskell, поскольку их так...

65
Является ли плохой идеей возвращать разные типы данных из одной функции в динамически типизированном языке?

Мой основной язык статически типизирован (Java). В Java вы должны возвращать один тип из каждого метода. Например, у вас не может быть метода, который условно возвращает Stringили условно возвращает Integer. Но в JavaScript, например, это очень возможно. На статически типизированном языке я...

53
Почему основные сильные статические ООП-языки препятствуют наследованию примитивов?

Почему это нормально и в основном ожидается: abstract type Shape { abstract number Area(); } concrete type Triangle : Shape { concrete number Area() { //... } } ... пока это не нормально и никто не жалуется concrete type Name : string { } concrete type Index : int { } concrete type Quantity : int {...

47
Почему мир .Net, кажется, заключает в себе магические строки вместо статически типизированных альтернатив?

Итак, я работаю в .Net. Я делаю проекты с открытым исходным кодом в .Net. Одна из моих самых больших проблем с этим связана не с .Net, а с сообществом и структурами вокруг него. Повсюду кажется, что магические схемы именования и строки рассматриваются как лучший способ сделать все. Смелое...

35
Действительно ли языки с динамической типизацией заслуживают всей критики? [закрыто]

Я прочитал несколько статей в Интернете о выборе языка программирования на предприятии. В последнее время популярными стали многие языки с динамической типизацией, например, Ruby, Python, PHP и Erlang. Но многие предприятия все еще используют статические типизированные языки, такие как C, C ++, C #...

29
Есть ли реальное преимущество для динамических языков? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 5 лет назад . Прежде всего я хочу сказать, что Java - единственный язык, который я когда-либо...

28
Является ли венгерская запись обходным решением для языков с недостаточно выразительной статической типизацией? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 4 года назад . В статье Эрика Липперта Что случилось с венгерской нотацией? Он заявляет, что...

22
Архитектурные различия между динамическими и статическими языками

Существуют ли серьезные архитектурные различия при разработке приложений, которые будут построены на статических языках (таких как C # или Java) и динамических языках (таких как Ruby или Python)? Какие дизайнерские возможности могут быть хорошим выбором для одного типа, а для другого - плохим?...

21
Использование статических классов в качестве пространств имен

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 8 лет назад . Я видел других разработчиков, использующих статические классы как пространства имен public static class CategoryA { public class Item1 { public void...

21
Проверка типов и рекурсивные типы (Написание Y-комбинатора в Haskell / Ocaml)

При объяснении Y-комбинатора в контексте Haskell обычно отмечается, что прямая реализация не будет проверять тип в Haskell из-за его рекурсивного типа. Например, из Rosettacode : The obvious definition of the Y combinator in Haskell canot be used because it contains an infinite recursive type (a =...

20
Постепенная типизация: «Почти каждый язык со статической системой типов также имеет динамическую систему типов»

Это требование по Aleks Бромфилд гласит: Почти каждый язык со статической системой типов также имеет динамическую систему типов. Помимо C, я не могу думать об исключении Это действительная претензия? Я понимаю, что с классами Reflection или Loading во время выполнения Java выглядит примерно так -...

19
Проводятся ли эмпирические исследования влияния разных языков на качество программного обеспечения?

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

18
Существуют ли альтернативы типам для статического анализа?

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

15
(Дис-) преимущества структурной типизации

Я только что посмотрел этот доклад Даниэля Спевака, в котором он рассказывает о преимуществах структурной типизации по сравнению с номинальной типизацией Scala и Java . Одним из примеров этого различия будет следующий код Java public interface Foo { public int length(); } public interface Bar {...

14
Полезен ли тип Optional / Maybe в динамических языках?

Optionalполезен очевидным образом в статически типизированном языке, но мне интересно, если это также полезно в динамических языках. Обычно компилятор не говорит вам: «Эй, вы использовали это Optional<String>как String», так что вам все равно придется обнаруживать свои ошибки во время...