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

Функция - это блок кода, который выполняет определенную задачу.

209
Мой босс просит меня прекратить писать небольшие функции и делать все в одном цикле

Я прочитал книгу под названием « Чистый код » Роберта Мартина. В этой книге я видел много методов для очистки кода, таких как написание небольших функций, тщательный выбор имен и т. Д. Это, безусловно, самая интересная книга о чистом коде, которую я читал. Однако сегодня моему боссу не понравилось,...

120
Однострочные функции, которые вызываются только один раз

Рассмотрим функцию без параметров ( edit: необязательно), которая выполняет одну строку кода и вызывается в программе только один раз (хотя не исключено, что она понадобится снова в будущем). Он может выполнить запрос, проверить некоторые значения, сделать что-то с использованием регулярных...

114
Существуют ли рекомендации относительно того, сколько параметров должна принимать функция?

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

107
Когда оптимизировать память по сравнению с быстродействием метода?

Я недавно давал интервью на Amazon. Во время сеанса кодирования интервьюер спросил, почему я объявил переменную в методе. Я объяснил свой процесс, и он предложил мне решить ту же проблему с меньшим количеством переменных. Например (это было не из интервью), я начал с метода A, а затем улучшил его...

96
Что такое термин для функции, которая при повторном вызове имеет тот же эффект, что и один раз?

(Предполагая однопоточную среду) Функция, которая удовлетворяет этому критерию: bool MyClass::is_initialized = false; void MyClass::lazy_initialize() { if (!is_initialized) { initialize(); //Should not be called multiple times is_initialized = true; } } По сути, я могу вызывать эту функцию...

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

Я религиозный человек и стараюсь не совершать грехов. Вот почему я склонен писать маленькие ( меньше, чем это , если перефразировать Роберта К. Мартина) функции, чтобы соответствовать нескольким заповедям, заказанным Библией Чистого кода . Но, проверяя некоторые вещи, я попал на этот пост , ниже...

68
Как функциональные языки обрабатывают случайные числа?

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

68
Зачем хранить функцию внутри словаря Python?

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

60
Плохо ли использовать компилятор C ++ только для перегрузки функций?

Поэтому я работаю над дизайном программного обеспечения с использованием C для определенного процессора. Набор инструментов включает в себя возможность компилировать как C, так и C ++. Для того, что я делаю, в этой среде нет динамического выделения памяти, и программа в целом довольно проста. Не...

52
Как лучше всего упорядочить параметры в функции?

Иногда (редко) кажется, что создание функции, которая принимает приличное количество параметров, является наилучшим маршрутом. Однако, когда я это делаю, я чувствую, что часто выбираю порядок параметров случайным образом. Я обычно выбираю «по важности», сначала выбираю самый важный параметр. Есть...

51
Стоит ли защищаться от неожиданных значений внешних API?

Допустим, вы кодируете функцию, которая получает данные от внешнего API MyAPI. Этот внешний API MyAPIимеет контракт, в котором говорится, что он возвратит a stringили a number. Является ли он рекомендовал , чтобы защититься от таких вещей , как null, undefined, booleanи т.д. , даже если это не...

49
Почему многие функции, которые возвращают структуры в C, фактически возвращают указатели на структуры?

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

48
Когда НЕ использовать виртуальные деструкторы?

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

47
Где я должен поместить функции, которые не связаны с классом?

Я работаю над проектом C ++, где у меня есть куча математических функций, которые я изначально написал для использования в качестве части класса. Однако, когда я писал больше кода, я понял, что мне нужны эти математические функции везде. Где лучшее место для их размещения? Допустим, у меня есть...

44
Булев метод именования положительный против отрицательного

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

42
Начинаете предложение с имени функции? [закрыто]

Иногда, набирая что-то, относящееся к регистрозависимому языку программирования, я заканчиваю тем, что начинаю предложение с имени функции. Теперь правила английского языка гласят, что первое слово в предложении должно быть написано с большой буквы; хотя имя функции строчное Если вам интересно, что...

40
Является ли нежелательным создание функции, которая по существу переименовывает встроенную функцию?

Я запутался в функциях min и max в определенных контекстах. В одном контексте, когда вы используете функции для получения большего или меньшего из двух значений, это не проблема. Например, //how many autographed CD's can I give out? int howManyAutographs(int CDs, int Cases, int Pens) { //if no...

39
Почему у большинства языков программирования есть специальное ключевое слово или синтаксис для объявления функций? [закрыто]

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

38
Почему плохая связь между функциями и данными плоха?

Я нашел эту цитату в « Радости Clojure » на с. 32, но кто-то сказал мне то же самое за ужином на прошлой неделе, и я слышал это и в других местах: Недостатком объектно-ориентированного программирования является тесная связь между функцией и данными. Я понимаю, почему ненужное соединение плохо в...

38
Почему Today () является примером нечистой функции?

Кажется, что, читая что-то вроде этой статьи в Википедии о «чистых функциях» , они приводят Today()в качестве примера нечистую функцию, но она кажется мне довольно чистой. Это потому, что нет формального входного аргумента? Почему фактическое время дня не рассматривается как «входные данные для...