Как стать автором
Обновить
30
0
Alexandr Kazachenko @Shoom3301

Пользователь

Отправить сообщение
Измерением времени на выполнение операций.
Если просто то так:
1. Записываете в переменную const startTime = performance.now()
2. Выполняете операции
3. Смотрите на performance.now() — startTime

habr.com/ru/company/tinkoff/blog/489230
Вот тут можете найти еще немного информации по измерению производительности в браузере
document.querySelectorAll('button').forEach(button => {
button.addEventListener('click', function () {
// по клику вызывается функция со значением кнопки в качестве параметра
calc(this.value)
})
})


Не стоит так делать в случае, если элементов много, это не производительно.
У обычного человека есть время что-то изучать только на работе.

Не соглашусь, у меня и у моих коллег находится время изучать новое и еще писать статьи :)

Дома, ясное дело, остается времени сгонять катку в доту, поесть и поспать.

У всех разные увлечения, я в доту не играю.

потому что на работе ты слишком много времени будешь уделять вещам, которые тебя никак не развивают

Жаль, что у вас сложился такой опыт.
Я сам стараюсь развиваться и в рабочее и вне рабочего времени, как и мои коллеги.

Итого, люди разные, с разными возможностями и мотивацией, так что не стоит под «обычных людей» подписывать всех, кто не имеет возможности развиваться на работе и у кого нет желания развиваться вне работы.
Не соглашусь.
Angular предоставляет инструменты реализующие общепринятные паттерны.
Если приглядеться, то Angular очень похож на тот же Spring boot из java.
Конечно, если нормально не изучив язык программирования сразу браться за angular, то знать будешь только angular.
Но если хорошо знать основы ЯП, паттерны проектирования, структуры данных, алгоритмы, тогда любые фреймворки/библиотеки не будут вызывать сложностей в изучении и понимании.
Возможно вы имели ввиду parallel multi instance?
Если так, то да, в моей задаче как раз пришлось это применять.
В процессе у меня есть список сущностей, которые нужно обработать внешним обработчиком.
Для этого я создал parallel multi instance external task и указал у него параметры Collection и Element variable. Collection — в данном случае, это переменная в контексте инстанса, которая хранит массив id пользователей. Element variable — название переменной в контексте внешней задачи (ее получит внешний обработчик).
При запуске процесса создается столько external tasks сколько элементов в у казанном Collection.
Ну и теперь собственно ответ на ваш вопрос.
Когда внешний обработчик выполнил задачу, он записывает в ответ переменную вида «result[$userId]». userId — это тот самый Element variable, который в моем случае является уникальным. Таким образом, на каждый результат external task создается уникальная переменная в контексте инстанса, ничего умнее я к сожалению не придумал :(
Спасибо!
Действительно зря обобщил одним термином «обфускация».
Цели разные и результат соответственно, минификация при обфускации это скорее побочный эффект.
Во-первых, я не нашел ни одного объяснения, почему нельзя делать функции (кроме геттеров и сеттеров) в DTO

Data Transfer Object подразумевает структуры, которые можно прозрачно передавать между системами. Но функции не поддаются сериализации, соот-но прозрачность нарушается.
Абсолютно верно!
Лимитировать повторение запросов нужно обязательно.
Спасибо! Переформулировал.

UPD: хотя оригинальная формулировка мне нравилась больше :(
Честно говоря, я не знаю деталей реализации на бэкенде. Поинтересовался у коллеги и он ответил:
Потому что инициализируется начальное состояние фронта
Лезем в бд и т.д.
Поэтому меня может многое не устроить на любом месте работы

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

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

Инновации придумывают разработчики с высоким уровнем знаний, большинству остается только брать эти инновации и использовать.
Обязательно реализуйте механизм закрытия потоков, они блокируют активацию новой версии service worker. Помимо того, чтобы закрывать поток при закрытии вкладки я еще сделал закрытие всех потоков через интервал.
Извиняюсь, забыл указать один момент:
interface IAction<T, R = any> {
    type: T;
    payload: R;
}


Подробнее можно посмотреть тут:
github.com/shoom3301/react-testing-pyramid/blob/master/src/store/actions/quotes.ts
github.com/shoom3301/angular-testing-pyramid/blob/master/src/store/actions/quotes.action.ts
Возможно я не понял, но зачем так усложнять?
Критикую — предлагаю:
// actions.ts
interface IAction<T, R> {
    type: T;
    payload: R;
}

enum ActionTypes {
    CREATE_ITEM = 'CREATE_ITEM'
}

type ItemCreateAction = IAction<ActionTypes.CREATE_ITEM, IItem>;

function itemCreate(item: IItem): ItemCreateAction {
    return {
        type: ActionTypes.CREATE_ITEM,
        payload: item
    };
}

const myAction = itemCreate({some: 'item'});

// reducer.ts
function itemsReducer(state = defaultState, action: IAction<ActionTypes>): State {
    switch (action.type) {
        case ActionTypes.CREATE_ITEM: {
            return [...state, action.payload];
        }

        default:
            return state;
    }
}
codepen.io/anon/pen/MQEJZV?editors=1111
Больше года назад, в tinkoff делал конкурс (для статьи на N+1) и одно из заданий было нарисовать что-нибудь в консоли или сделать интерактивную игру.
Даже пример остался: codepen.io/anon/pen/MQEJZV?editors=1111
В то время почему то не зашло.
68 звезд на github не впечатляют, с таким комьюнити мало какая серьезная компания захочет работать.
Интересно, почему google разрабатывает тот же Angular на typescript, а не на Dart?
Все больше становится похож на angular
2

Информация

В рейтинге
Не участвует
Дата рождения
Зарегистрирован
Активность