Описание тега idioms
Идиома программирования - это способ преодолеть ограничение языка программирования и / или написать часто используемый код с целью, отделенной от буквального значения кода. Кроме того, идиома является предпочтительным способом написания кода, когда есть несколько очевидных способов сделать это.
3
ответа
Какой идиоматический способ управления количеством ссылок во время инициализаторов Obj-C?
Я изучаю Objective-C. В моем первом нетривиальном проекте я столкнулся с вопросом о том, как лучше всего обрабатывать ресурсы, передаваемые инициализатору, по сравнению с инициализатором по умолчанию. У моего класса есть сохраненный ресурс, engine, …
11 май '11 в 20:13
1
ответ
Каковы некоторые рекомендации по именованию схем GraphQL?
Я начинаю разработку нетривиального приложения, для которого мы рассматриваем GraphQL. Работая над первоначальным проектом нашей схемы, я немного парализовался, пытаясь установить соглашения об именах, которые будут масштабироваться по мере взрослен…
02 дек '16 в 02:54
6
ответов
Проверьте, является ли переменная строкой в Ruby
Есть ли что-то более идиоматическое, чем следующее? foo.class == String
13 окт '11 в 04:18
1
ответ
Однолинейная проверка в Python
Я относительно новый разработчик Python, но я из Java. В Java есть однострочный логический контролер / присваиватель (из-за отсутствия лучшего термина): int result = (x)?y:z; Я пытаюсь использовать подобный подход в Python, но я не уверен, существуе…
27 мар '14 в 13:05
2
ответа
Идиома для имитации параметров числового шаблона во время выполнения?
Предположим, у нас есть template <unsigned N> foo() { /* ... */ } определены. Теперь я хочу реализовать do_foo(unsigned n); который вызывает соответствующий вариант foo(), Это не просто синтетический пример - это действительно происходит в реа…
12 авг '16 в 09:34
1
ответ
Какие идиомы используются в моделировании?
На странице 195 книги "Программные абстракции" написано: Alloy не имеет фиксированной идиомы для моделей, поэтому вы можете использовать любую идиому, которая лучше всего подходит для данной модели. Книга дает прекрасный пример использования "идиомы…
27 дек '16 в 14:09
1
ответ
Конструкция переключателя для комбинаций логических выражений
Предположим, у меня есть n логических значений, где n - относительно небольшое число (3-5 или около того). Допустим, что значения являются свойствами класса, каждое из которых может быть установлено или отключено независимо. Итак, есть 2 n возможных…
28 ноя '14 в 14:00
2
ответа
Лучшая идиома для создания отдельного синглтона для каждого аргумента типа универсального класса?
(Возможно, дополнительный вопрос к "Как создать универсальный синглтон-класс в Java?":) class MyClass<T> { private static Map<Class<MyClass<?>>, MyClass<?>> s_instances = new HashMap<Class<MyClass<?>>, My…
19 ноя '12 в 09:47
2
ответа
Шаблон проектирования для одновременного использования двух списков и возврата остатка одного из списков
Абстракт: Абстрактная проблема: список значений список модификаторов, вещи, которые воздействуют на значения, чтобы возвращать новые значения (для примера кода я просто умножаю значение на значение модификатора) список модификаторов не должен быть т…
19 фев '14 в 19:58
3
ответа
Проблемы с пониманием синтаксиса C++11 в "Правиле нуля"
Я изучаю " Правило нуля" и у меня есть 2 вопроса для последнего фрагмента кода, который демонстрирует это правило. class module { public: explicit module(std::wstring const& name) : handle { ::LoadLibrary(name.c_str()), &::FreeLibrary } {} /…
12 ноя '13 в 21:48
3
ответа
Более идиоматический способ сделать простую коррекцию возвращаемого значения
Этот код для меня выглядит так, как будто в Python есть более хороший способ сделать это: val = some_heavy_foo(slow=True, side_effects=True, bar=lot_of_data) if val is None: val = 0 Есть? Возможный вариант использования: total = 0 for lot_of_data in…
02 сен '14 в 20:47
1
ответ
Включите как назначение, так и проверку назначенного значения в цикле while для Kotlin
Я пытаюсь найти последнюю строку текстового файла, используя довольно стандартную идиому цикла while, которую часто нахожу в Java. У меня работает менее компактная версия. Но тот, который я хотел бы использовать, не является допустимым синтаксисом в…
05 мар '18 в 01:39
4
ответа
Есть ли идиоматический способ указать значения по умолчанию для необязательных параметров в Ruby?
Есть ли более краткий и идиоматический способ написания следующего кода, который используется для указания значений по умолчанию для необязательных параметров (в хэше params/options) для метода? def initialize(params={}) if params.has_key? :verbose …
29 дек '09 в 00:18
6
ответов
Создание идиоматических веб-страниц на PHP
Мой опыт работы с PHP довольно ограничен. Я только что унаследовал некоторые вещи, которые кажутся мне странными, и я хотел бы знать, является ли это стандартным способом делать вещи. Страница, которая отображается в браузере (например, www.example.…
15 апр '10 в 19:03
2
ответа
Примеры реализации общих архитектурных шаблонов / идиом?
Мне было интересно, где можно найти реализацию в качестве иллюстративных примеров для часто используемых архитектурных шаблонов / идиом Например логирование Обработка исключений Архивирование /Caching Пользователь / Роль / Политика / Права доступа Д…
08 ноя '10 в 08:21
3
ответа
Предпочтительная идиома для чтения, не зависящего от порядка байтов
В исходном коде Plan 9 я часто нахожу такой код для чтения сериализованных данных из буфера с четко определенным порядком байтов: #include <stdint.h> uint32_t le32read(uint8_t buf[static 4]) { return (buf[0] | buf[1] << 8 | buf[2] <&l…
09 авг '14 в 14:33
1
ответ
Передняя команда дает себе идиому
Это код lec4 и данный код соответственно: # non-mutable; persistent linked lists; also a stack # immutable collections are much easier to use concurrently # # NOTE: There are no assignments to self.tail after its initialization # class EmptyListE : …
03 фев '15 в 19:32
4
ответа
Ruby: Как мне вызвать функцию через ссылку на объект?
Рассмотрим этот надуманный пример: # Dispatch on value of fruit_kind: TYPE_A = :apple TYPE_B = :banana TYPE_C = :cherry eating_method = nil case fruit_kind # Methods to use for different kinds of fruit (assume these are # already defined) when TYPE_…
30 апр '09 в 13:49
0
ответов
Настоящее имя итерации-стирания
Если вы хотите перебрать контейнер, выполнить какое-либо действие и стереть его, основываясь на некоторых критериях, за один проход, вы делаете следующее: auto iter = container.begin() while( iter != container.end() ) { SomeAction(*iter); if( SomeCr…
27 фев '15 в 03:36
2
ответа
Сокращение объектов до категорий на основе произвольной логики
Этот вопрос может быть субъективным. Я не уверен, принадлежит ли он здесь или программистам Скажем, у меня есть тип данных, X (подумайте о бизнес-объектах, построенных из реляционной базы данных). Моя конечная цель - представить множество экземпляро…
07 дек '11 в 00:44