Публикации по теме 'duck-typing'


Утиная типизация в программировании, Python и Ruby
Утиная типизация — это концепция, часто связанная с динамически типизированными языками программирования и полиморфизмом. Это означает, что код озабочен поведением объекта, а не его точным типом. В этом руководстве рассматривается утиная типизация, приводятся примеры кода Python и Ruby, объясняются принципы и рассматриваются распространенные запросы. Оглавление Введение в утиную типизацию Понимание утиной типизации в Python Утиный набор текста с примерами кода Python Еще один..

Вопросы по теме 'duck-typing'

Библиотека утиного набора текста для Silverlight?
Есть ли какая-нибудь библиотека утиного ввода для Silverlight? Есть несколько вариантов для полноценной платформы .NET, но я ищу что-нибудь более легкое.
388 просмотров
schedule 10.06.2022

Утиная печать: как бы вы поступили в этой ситуации
Относительно новый для python. Недавно я опубликовал вопрос о проверке того, что тип данных является логическим. [ Используйте дескриптор (EDIT: не один декоратор) для нескольких атрибуты? В данных ответах упоминается утиная печать. У меня...
157 просмотров
schedule 29.12.2023

Есть ли в C# аналог структурной типизации Scala?
В Scala я могу определить структурные типы следующим образом: type Pressable = { def press(): Unit } Это означает, что я могу определить функцию или метод, который принимает в качестве аргумента что-то, что является Pressable, например:...
2403 просмотров

Автодополнение в динамических языковых IDE, особенно Python в PyDev
Я новичок в Python, имею опыт работы со статически типизированными языками, включая много-много Java. Я выбрал PyDev в eclipse в качестве IDE после проверки функций/популярности и т. д. Я был ошеломлен тем, что автозаполнение не работает должным...
2885 просмотров

Типы классов 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...
47185 просмотров
schedule 27.12.2023

Как называется использование утиной печати
Как мне вызвать процесс использования утиного набора текста ? Что я должен сказать «Я выполняю утиную печать» или «Я проверяю, не утка ли это:)». Проверка утки звучит не очень хорошо, а проверка типов — просто неправильное название для нее.
98 просмотров

Все ли динамические языки поддерживают утиную печать?
Все ли динамические языки поддерживают утиный ввод ? Я бы подумал, что PHP поддерживает утиную печать. Так ли это?
1488 просмотров
schedule 03.10.2023

Подтверждение типа параметра Ruby
Исходя из опыта работы с Java, я немного обеспокоен совершенно преувеличенным отношением Ruby к параметрам своих методов. В то время как в Java я мог гарантировать, что параметр x был типом, необходимым для правильной работы метода, в Ruby у меня нет...
3597 просмотров
schedule 11.07.2023

Rails Single Table Inheritance неправильный подход к кастингу?
Итак, в последнее время я изучал наследование одной таблицы и нашел этот общий вопрос/ответ: вопрос: как изменить класс объекта obj с Alpha на Beta, предполагая Beta ‹ Alpha, в STI? ответ: ruby ​​- это язык с утиным типом, поэтому вы...
1706 просмотров

Какая связь между шаблоном C ++ и утиным набором текста?
Для меня в шаблоне C ++ использовалась идея «утиной печати», верно? Означает ли это, что все общие типы, указанные в классе или методе шаблона, относятся к типу утки?
10055 просмотров
schedule 08.02.2023

Утиная типизация и универсальное программирование
Я некоторое время просматривал SO и не мог найти определенного и общего ответа, только некоторые противоречивые и частные мнения. [1] Итак, я хотел бы знать, какова связь между утиной типизацией и универсальным программированием? (DT ‹ GP, DT ==...
1659 просмотров
schedule 10.03.2023

Реализация 2D-нарезки в Python
Я реализую библиотеку линейной алгебры на Python (я знаю, что что-то, вероятно, существует, но я делаю это, чтобы узнать о Python и математике, которая мне нужна для моих экзаменов), и я хочу иметь доступ к элементам/подмножествам матрица такая:...
363 просмотров
schedule 14.07.2023

Семантика добавления объекта и целого числа друг к другу в 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 * к целому числу очевидно, что это...
58 просмотров
schedule 22.05.2023

Является ли C # и Java типизированным для утки?
Сегодня у нас произошла странная ситуация с close() методом. Вот сомнительный код: interface ICloseable { void Close(); } public class Closer { public void Close() { Console.WriteLine("closed"); } } public class...
287 просмотров
schedule 11.09.2023

Как эффективно использовать утиную типизацию с наследованием
Я использую объектно-ориентированный подход с наследованием для решения проблемы, и мне интересно, как применить принципы «утиного ввода» к этой проблеме. У меня есть класс BoxOfShapes , который будет создан со списком Shapes ( Circle , Square...
349 просмотров
schedule 26.06.2022

Как работать с Ruby Duck Typing
Я изучаю Ruby, и у меня возникла серьезная концептуальная проблема, связанная с набором текста. Позвольте мне подробно объяснить, почему я не понимаю парадигмы. Скажем, я использую цепочку методов для краткого кода, как вы это делаете в Ruby. Я...
2811 просмотров
schedule 25.08.2022

TypeScript Duck Typing, нужна сильная статическая печать
TypeScript использует время компиляции (статическое) утиный ввод . Я фанат расширения примитивных типов для предотвращения неправильной подстановки. Например, мне нравится давать переменной номера кредитной карты тип номера кредитной карты, а не...
3271 просмотров
schedule 15.05.2024

Передача экземпляра класса вместо файла в python
Я нашел этот фрагмент кода здесь , который позволяет мне загрузить один файл из онлайн-архива. . Это работает чудесным образом, но я не понимаю, как это работает, особенно как здесь работает class (у меня есть только базовые знания о class ). Я...
145 просмотров
schedule 05.04.2022

Получение оператора instanceof для работы с несколькими суперклассами в JavaScript
Представьте себе следующий пример сценария JavaScript: Мы моделируем предметы, которые могут появляться на плоскости (например, формы или точки). Некоторые из этих объектов (например, круги) могут иметь ярлыки. Учитывая следующую...
239 просмотров

два класса с общими методами и свойствами
У меня два класса. Класс А: class A() { public void QQ() {} public void WW() {} } И класс Б: class B() { public void QQ() {} public void WW() {} } Они не используют один и тот же интерфейс или абстрактный класс. A...
267 просмотров
schedule 04.06.2022