Описание тега duck-typing
В Duck Typing методы и свойства объекта определяют его допустимую семантику, а не его принадлежность к определенному классу или его интерфейсу.
1
ответ
Подкласс абстрактного базового класса Sequence
Этот список показывает, какие методы вам нужно реализовать, чтобы ваш класс "рассматривался" как Sequence: __getitem__, __len__, __contains__, __iter__, __reversed__, index, а также count, Так почему же эта минимальная реализация не работает, т.е. …
21 янв '16 в 15:38
4
ответа
Обобщение и типизированный XML в.NET?
Я работаю с некоторыми XML-представлениями экземпляров данных. Я десериализирую объекты, используя сериализацию.NET, но что-то в моей душе беспокоит необходимость писать классы для представления XML... Ниже я хотел бы сделать то, что ЛЮБЛЮ, но не зн…
12 фев '10 в 17:52
1
ответ
TypeScript Duck Typing, хотите сильную статическую печать
TypeScript использует типизированную (статическую) утку. Я фанат расширения примитивных типов для предотвращения неправильной подстановки. Например, я хотел бы присвоить переменной номера кредитной карты тип номера кредитной карты, а не целое число.…
26 мар '14 в 23:02
5
ответов
Типы классов Ruby и операторы case
В чем разница между case item.class when MyClass # do something here when Array # do something different here when String # do a third thing end а также case item.class when MyClass.class # do something here when Array.class # do something different…
11 окт '10 в 17:07
1
ответ
Интерфейсы для инъекционных сервисов в AngularJS
Я новичок в AngularJS. Из того, что я понимаю, весь смысл внедрения зависимости состоит в том, что зависимость может быть легко заменена на "похожую" зависимость позже, и код все еще работает так же. С "похожим" обычно подразумевается, что зависимос…
28 июл '16 в 22:39
3
ответа
Семантика добавления объекта и целого числа друг к другу в PHP?
class wat { public $a = 3.14; public $x = 9; public $y = 2; } $a = new wat(); var_dump(1000 + $a); var_dump($a + 1000); Выход: int(1001) int(1001) Что ж, добавление объекта wat * в целое число, очевидно, не является правильным решением, так как PHP …
02 май '13 в 11:46
5
ответов
Утиная библиотека для Silverlight?
Есть ли какая-нибудь библиотека утки для Silverlight? Есть несколько вариантов для полноценного.NET Framework, но я ищу что-то более легкое.
28 сен '09 в 09:10
1
ответ
Уменьшить недостаток типизации уток в системе сущностей-компонентов
Как уменьшить феномен типизации утки в системе сущностей-компонентов? пример Вот демо-версия coliru . В моей ECS есть 2 системы: System_Projectile: управлять всеми аспектами снаряда и пули. System_Physic: управлять компонентами физики. Есть 2 типа к…
24 май '17 в 02:17
2
ответа
Является ли нетипизированный.net DataSet утилитой DTO?
Хорошо, я получаю доступ к полям строки данных внутри набора данных с помощью индексаторов, но давайте рассмотрим это как только синтаксическую особенность. Вы бы зашли так далеко и назвали бы это предметом типа "утка", который сводится к геттерам и…
01 окт '09 в 20:25
2
ответа
Как защитить функции, которые вызываются в разных контекстах, от взлома?
Я довольно новичок в javascript, и теперь я узнал, как работает вызов функций с контекстом. Вот простой пример, который ставит вопрос в моей голове. Допустим, у нас есть этот пример: var myObj = { bar: function() { console.log("Lets got to the bar!"…
29 июн '16 в 21:33
3
ответа
Проверка наличия свойств в JavaScript
Я новичок в JavaScript и немного запутался в концепции утки. Насколько я могу сказать, я понял концепцию. Но это приводит к странным последствиям в моих мыслях. Я объясню на следующем примере: В настоящее время я работаю над мобильным веб-приложение…
06 ноя '12 в 10:04
1
ответ
Как проверка лишней собственности помогает?
Для приведенного ниже кода, interface SquareConfig{ color?: string; width?: number; } interface Square{ color: string; area: number; } function createSquare(config: SquareConfig): Square { let newSquare:Square = {color: "white", area: 100}; if (conf…
02 май '18 в 20:41
1
ответ
Почему этот статически типизированный членский доступ считает это геттером?
rvm это объект, а не функция. Почему ограничение (^b:(member ReportSubTitle:(String -> unit)) rvm ) придумать как получатель вместо установщика? Это всплывающая подсказка или что-то еще? Везде, где я использовал дженерики со статической типизаци…
03 авг '15 в 17:21
2
ответа
Javascript способ дизайна наследования + конфиденциальность
Я прочитал книгу Дугласа Крокфорда "JavaScript: хорошие части" и многие другие ресурсы, и я немного запутался в реализации наследования и конфиденциальности в Javascript. Я из Java World, я понял, что могу симулировать конфиденциальность с помощью з…
16 авг '13 в 13:58
1
ответ
Почему $MyInvocation.ScriptName не установлен и сравнение строк?
Это началось с того, что все четыре (4) скрипта профиля PowerShell идентифицировали себя и свое местоположение. $MyInvocation.ScriptName было предложено получить имя скрипта, но я еще не видел, чтобы это было что-то кроме пустой строки. Нет, не $nul…
04 июн '17 в 17:48
2
ответа
Динамически обновлять метод установки свойств python
Я пытаюсь динамически добавить "блокируемую" функцию к значению. В то время как этот конкретный случай кажется тривиальным или скорее надуманным, я хочу расширить свой блокируемый смешанный класс для множества различных вариантов использования. Я не…
12 апр '14 в 17:16
7
ответов
Помимо динамической типизации, что делает Ruby "более гибким", чем Java?
Я использую Java почти с тех пор, как она появилась, но за последние пять лет я не мог понять, насколько сложным становится сделать даже самые простые вещи. Я начинаю изучать Ruby по рекомендации моего психиатра, я имею в виду моих коллег (младших, …
05 апр '09 в 06:03
3
ответа
Могу ли я улучшить этот метод с помощью утки?
Надеюсь, я не неправильно понял значение "утиной типизации", но из того, что я прочитал, это означает, что я должен писать код, основываясь на том, как объект реагирует на методы, а не на том, какой это тип / класс. Вот код: def convert_hash(hash) i…
16 окт '08 в 17:15
2
ответа
Структурный тип Scala как параметр типа функции
Я хочу создать некоторую функцию "общего сумматора", которая будет работать для всех типов, которые поддерживают операцию "+". Я пробовал структурную типизацию как параметр типа функции, но это не компиляция: def f[T <: { def +(x: T): T} ](a: T, …
01 июн '14 в 08:41
1
ответ
Печатание утки - что делать, когда вам нужен конкретный тип?
Скажем, вы делаете калькулятор на динамическом языке (Python и т. Д.) И у вас есть метод add. def Add(x, y) print x + y Теперь, если вы передадите что-либо, кроме числа, которое будет неправильным, вам нужна проверка типа данных. Duck Typing об объе…
30 июл '09 в 18:44