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

948
В чем разница между статически типизированными и динамически типизированными языками?

Я часто слышу, что новые языки программирования динамически типизированы, но что это на самом деле означает, когда мы говорим, что язык динамически типизирован или статически...

767
Интерфейс против Базового класса

Когда я должен использовать интерфейс и когда я должен использовать базовый класс? Должен ли он всегда быть интерфейсом, если я не хочу определять базовую реализацию методов? Если у меня есть класс собак и кошек. Почему я хотел бы реализовать IPet вместо PetBase? Я могу понять наличие интерфейсов...

429
Что такое утка?

Я сталкивался с понятием « Утиная печать», когда читал случайные темы о программном обеспечении в Интернете, и не совсем понял его. Что такое «типирование...

410
Как мне указать, что возвращаемый тип метода такой же, как и сам класс?

У меня есть следующий код в Python 3: class Position: def __init__(self, x: int, y: int): self.x = x self.y = y def __add__(self, other: Position) -> Position: return Position(self.x + other.x, self.y + other.y) Но мой редактор (PyCharm) говорит, что ссылочная позиция не может быть разрешена (в...

319
Статический / Динамический против Сильный / Слабый

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

234
Является ли Python строго типизированным?

Я наткнулся на ссылки, в которых написано, что Python - язык строго типизированный. Тем не менее, я думал, что в строго типизированных языках вы не можете сделать это: bob = 1 bob = "bob" Я думал, что строго типизированный язык не допускает изменения типа во время выполнения. Возможно, у меня...

228
Как правильно трактовать Python argparse.Namespace () как словарь?

Если я хочу использовать результаты argparse.ArgumentParser(), являющиеся Namespaceобъектом, с методом, который ожидает словарь или объект, подобный отображению (см. Collection.Mapping ), каков правильный способ сделать это? C:\>python Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32...

181
Получение структурного типа с помощью методов анонимного класса из макроса

Предположим, мы хотим написать макрос, который определяет анонимный класс с некоторыми типами-членами или методами, а затем создает экземпляр этого класса, который статически типизируется как структурный тип с этими методами и т. Д. Это возможно с помощью системы макросов в 2.10. 0, а часть типа...

165
Означает ли «нетипизированный» также «динамически типизированный» в академическом мире CS?

Я читаю слайд-колоду, в которой говорится: «JavaScript нетипизирован». Это противоречило тому, что я считал правдой, поэтому я начал копать, чтобы попытаться узнать больше. Каждый ответ на вопрос Является ли JavaScript нетипизированным языком? говорит, что JavaScript не нетипизированным и...

159
Введите аннотации для * args и ** kwargs

Я пробую аннотации типов Python с абстрактными базовыми классами для написания некоторых интерфейсов. Есть ли способ аннотировать возможные типы *argsи **kwargs? Например, как можно выразить, что разумными аргументами функции являются intили два или два int? type(args)дает, Tupleпоэтому я...

149
Что строгие типы делают в PHP?

Я видел следующую новую строку в PHP 7, но никто толком не объясняет, что это значит. Я погуглил, и все, о чем они говорят, это то, включите ли вы это или нет, как в опросах. declare(strict_types = 1); Что оно делает? Как это повлияет на мой код? Я должен сделать это? Некоторое объяснение было бы...

142
Почему нельзя присвоить var анонимный метод?

У меня такой код: Func<string, bool> comparer = delegate(string value) { return value != "0"; }; Однако следующее не компилируется: var comparer = delegate(string value) { return value != "0"; }; Почему компилятор не может понять, что это Func<string, bool> ? Он принимает один...

142
Есть ли в Objective-C строго типизированные коллекции?

Я новичок в программировании Mac / iPhone и Objective-C. В C # и Java есть «дженерики», классы коллекций, члены которых могут быть только объявленного типа. Например, в C # Dictionary<int, MyCustomObject> могут содержать только ключи, которые являются целыми числами, и значениями типа...

119
Любые альтернативы мокапу balsamiq с открытым исходным кодом [закрыто]

В его нынешнем виде этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, повлечет за собой дебаты, аргументы, опросы или расширенное обсуждение. Если вы считаете, что этот вопрос можно...

116
Пользователи Vim, где вы отдыхаете правой рукой? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы на него можно было ответить с помощью фактов и цитат, отредактировав этот пост . Закрыт 3 года назад . Уточните этот вопрос Давние пользователи vim, держите...

113
Подходит ли печатание Дворжака для программирования? [закрыто]

В его нынешнем виде этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, повлечет за собой дебаты, аргументы, опросы или расширенное обсуждение. Если вы считаете, что этот вопрос можно...

107
Возможен ли статически типизированный полный вариант Лиспа?

Возможен ли статически типизированный полный вариант Лиспа? Есть ли вообще смысл в существовании чего-то подобного? Я считаю, что одним из достоинств языка Lisp является простота его определения. Подорвет ли статическая типизация этот основной...

105
Вносит ли кастинг Java накладные расходы? Зачем?

Есть ли накладные расходы при преобразовании объектов одного типа в другой? Или компилятор просто все разрешает, и во время выполнения нет затрат? Это общие вещи, или бывают разные случаи? Например, предположим, что у нас есть массив Object [], где каждый элемент может иметь другой тип. Но мы...