169 похожих чатов

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

что-то путаю?

18 ответов

2 просмотра

Боюсь, ты поосто усложняешь

Макс-Ворон Автор вопроса

Что значит отдельная задача?

Макс-Ворон Автор вопроса
Jakhongir
Что значит отдельная задача?

Я про эвентлуп. Скрипт - задача, промис - задача, вызванная функция, вроде бы, тоже. Или нет?

Макс Ворон
Я про эвентлуп. Скрипт - задача, промис - задача, ...

Вызванная функция создает новый контекст исполнения в эвентлуп, но не нужно называть ее задачей, под которыми обычно понимаются промисы и разные таймеры

Микро или макро, но задача есть задача. А насчет функции - неважно сколько функций ты вызовешь, там все идет как одно "действие" пока стек не освободится

Макс-Ворон Автор вопроса
Jakhongir
Микро или макро, но задача есть задача. А насчет ф...

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

Макс-Ворон Автор вопроса
𝕯𝖚𝖘𝖍𝖆
5

Ок, спасибо, это я и хотел выяснить.

Макс Ворон
Это понятно, я задумался на тем будут ли 5 подряд ...

5 задач будет, поэтому на скролл не советуют нагруженные функции делать т.к. они стек забивают

Макс-Ворон Автор вопроса
Максим
5 задач будет, поэтому на скролл не советуют нагру...

И поэтому же лучше развивать скрипт на функции, а не писать всё в одной?

Макс Ворон
И поэтому же лучше развивать скрипт на функции, а ...

Нет, просто не вешать нагруженные функции, разбивание тут не причем

Макс-Ворон Автор вопроса
Максим
Не поэтому но лучше разбивать

А почему лучше развивать? Какова причина? Ну кроме читабельности конечно.

Разделение ответственности и переиспользование. Типа тебе могут нужны быть данные но твоя функция А вообще может не знать как функция Б их дает, чтобы при надобности ты мог что-то в функции Б поменять но функция А продолжала получать только то, что ей надо. Например ты использовал локальное хранилище, чтобы доставать данные, а потом решил перейти на другое типа index DB. Функции А может быть все равно какое хранилище - ей только данные оттуда нужны. Ну и читаемость конечно же. Разобрать кашу кода нормально можно обычно только в момент написания его. Через месяц если откроешь то самому уже будет сложно ориентироваться что где и откуда.

Макс Ворон
Понял, спасибо.

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

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
короче сгенерила мне эта штука код на ассемблере: struc string val { common local .value dq .value .value: if ~val eq db val end if db 0 } fo...
Vi Chapmann Chapmann
12
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
Помогите, пожалуйста, делаю программу для для подсчёта корней квадратного уравнения, знаю, что есть куча недочётов, недоработок, но основная проблема в том, что почему-то при ...
NYC
13
#include <stdio.h> int main(void) { int n; scanf("%d", &n); int digits1[n] = {0}; int digits2[n] = {0}; я не могу таким образом заранее массив нулями заполнить?
Linus
12
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
я про форму записи. смысл указывать что 8 байтный регистр 8 байт?
Aiwan \ (•◡•) / _bot
10
Вроде бы вопрос уже заезжанный, но тем не менее У меня есть функция menu() которая выводит набор возможных действий, а затем спрашивает у пользователя что он хотел бы сделать....
David Golovatin
3
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
Карта сайта