Запитання з тегом «functions»

Функція - це блок коду, який виконує конкретне завдання.

16
Мій начальник просить мене припинити писати дрібні функції і робити все в одному циклі
Я прочитав книгу під назвою « Чистий код » Роберта К. Мартіна. У цій книзі я бачив багато методів очищення коду, наприклад, написання невеликих функцій, ретельний вибір імен і т. Д. Це, здається, найцікавіша книга про чистий код, який я читав. Однак сьогодні моєму начальнику не сподобалось те, як я …

11
Однорядкові функції, які викликаються лише один раз
Розглянемо функцію без параметрів ( редагувати: не обов’язково) функцію, яка виконує єдиний рядок коду, і викликається лише один раз у програмі (хоча це неможливо, що вона буде потрібна знову в майбутньому). Він міг би виконати запит, перевірити деякі значення, зробити щось, що стосується регулярного виразів ... нічого незрозумілого або "хакі". …
120 functions 

11
Чи є вказівки щодо того, скільки параметрів має приймати функція?
Я помітив кілька функцій, з якими я працюю, мають 6 і більше параметрів, тоді як у більшості бібліотек, які я використовую, рідко можна знайти функцію, яка займає більше 3. Часто багато цих додаткових параметрів є бінарними опціями для зміни поведінки функції. Я думаю, що деякі з цих функцій, параметризованих незмінно, …

15
Коли оптимізувати для пам'яті проти швидкості роботи метод?
Нещодавно я брав інтерв'ю в Amazon. Під час сеансу кодування інтерв'юер запитав, чому я оголосив змінну в методі. Я пояснив свій процес, і він кинув мені виклик вирішити ту саму проблему з меншою кількістю змінних. Наприклад (це було не з інтерв'ю), я почав із методу А, потім вдосконалив його до …

6
Що таке термін для функції, який при повторному виклику має той же ефект, що і один раз?
(Припускаючи однопотокове середовище) Функція, яка відповідає цьому критерію: bool MyClass::is_initialized = false; void MyClass::lazy_initialize() { if (!is_initialized) { initialize(); //Should not be called multiple times is_initialized = true; } } По суті, я можу викликати цю функцію кілька разів і не турбуватися про її ініціалізацію MyClassкілька разів Функцією, яка не …
96 naming  functions 

12
Коли витрати сучасних викликів функцій все ще мають значення в сучасних компіляторах?
Я релігійна людина і докладаю зусиль, щоб не чинити гріхів. Ось чому я схильний писати невеликі ( менші за те , щоб переробити Роберта К. Мартіна) функції, щоб відповідати кільком заповідям, упорядкованим у Біблії « Чистий код» . Але перевіряючи деякі речі, я приземлився на цю публікацію , нижче якої …

5
Навіщо зберігати функцію всередині словника python?
Я початківець пітон, і я просто навчився техніці, що включає словники та функції. Синтаксис простий і здається, що це банальна річ, але мої відчуття пітону поколюються. Щось підказує мені, що це глибока і дуже пітонічна концепція, і я не зовсім розумію її значення. Чи може хтось поставити ім’я цій техніці …

4
Як функціональні мови обробляють випадкові числа?
Що я маю на увазі з цього приводу, що майже в кожному підручнику, який я читав про функціональні мови, є те, що одна з найважливіших речей щодо функцій - це те, що якщо ви двічі викличете функцію з тими ж параметрами, ви завжди будете мати такий же результат. Як на …

10
Чи погана практика використовувати компілятор C ++ лише для перевантаження функцій?
Тому я працюю над розробкою програмного забезпечення, використовуючи C для певного процесора. Набір інструментів включає можливість компілювати як C, так і C ++. Для того, що я роблю, у цьому середовищі немає динамічного розподілу пам’яті, а програма загалом досить проста. Не кажучи вже про те, що у пристрою майже немає …

14
Яка найкраща практика впорядкування параметрів у функції?
Іноді (рідко) здається, що найкращим маршрутом є створення функції, яка приймає пристойну кількість параметрів. Однак, коли я це роблю, я відчуваю, що часто вибираю впорядкування параметрів навмання. Зазвичай я йду за "порядком важливості", перш за все найважливішим параметром. Чи є кращий спосіб зробити це? Чи існує спосіб "найкращої практики" впорядкування …

9
Чи слід оберігати від несподіваних значень зовнішніх API?
Скажімо, ви кодуєте функцію, яка бере вхід із зовнішнього API MyAPI. Цей зовнішній API MyAPIмає контракт, в якому зазначено, що він поверне а stringчи a number. Є чи він рекомендував , щоб захиститися від таких речей , як null, undefined, booleanі т.д. , навіть якщо це не частина API з …

6
Чому багато функцій, які повертають структури в С, насправді повертають покажчики на структури?
Яка перевага повернення вказівника на структуру, на відміну від повернення всієї структури в returnоператорі функції? Я говорю про такі функції, як fopenта інші функції низького рівня, але, ймовірно, є функції вищого рівня, які також повертають покажчики до структур. Я вважаю, що це скоріше вибір дизайну, а не просто питання програмування, …

5
Де я повинен розмістити функції, не пов'язані з класом?
Я працюю над проектом C ++, де у мене є маса математичних функцій, які я спочатку писав, щоб використовувати як частину класу. Хоча я писав більше коду, я зрозумів, що мені потрібні ці математичні функції скрізь. Де найкраще їх розмістити? Скажімо, у мене таке: class A{ public: int math_function1(int); ... …
47 c++  functions  class 

3
Булевий метод іменування стверджувального проти негативного
Чи повинні булеві методи завжди приймати стверджувальну форму, навіть коли вони лише коли-небудь будуть використовуватися в негативній формі? Скажімо, я хотів перевірити, чи існує сутність, перш ніж створити її, мій аргумент полягає в тому, що перша форма нижче є кращою за другу форму, незалежно від того, застосовується чи ні метод …
43 naming  functions 

8
Початок речення з назвою функції? [зачинено]
Іноді під час введення чого-небудь, що стосується чутливої ​​до регістру мови програмування, я починаю речення з назвою функції. Тепер норми англійської мови стверджують, що перше слово в реченні має бути з великої літери; Хоча назва функції - це малі літери. Якщо вам цікаво, що я можу сказати, це призведе до …
42 functions 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.