Pull to refresh
35
1.1

Разработчик передних концов

Send message

В общем случае случае (когда для объектов определена только функция isEqual, возвращающая true / false) вроде возможно же только решение с полным перебором за О(n^2). Для хотя бы О(n*log_2(n)) нужно как-то определить операцию сравнения между объектами, возвращающую больше/меньше/равно. Или определить какую-то внятную хеш-функцию Можно попробовать использовать JSON-представление объектов, но стандартный JSON.stringify не подойдёт, из-за того что будет давать разный хэш при разном порядке следования полей, например сравнение

JSON.stringify(JSON.parse(`{"b":1,"a": 1}`)) === JSON.stringify(JSON.parse(`{"a": 1,"b":1}`)) 

вернёт false. Соответственно нужно написать свой. На циклические ссылки проще всего наверное проверять запуском стандартного JSON.stringify и выдавать таким объектам отдельный кэш. Потом по кэшу сложить объекты в уже стандартный Map или Object. Объекты с одинаковым кэшем потом проверять уже полным перебором. Если повезёт, то коллизий будет не очень много, и сложность будет близка к О(n).

Всё вместе это по-моему довольно длинная задача. Если вы ждали просто аккуратный полный перебор, то ОК.

Ну вот есть статистика, что если взять сотню чуваков со знанием алгоритмов, 70 из них не вылетят после первого полугода. А если случайную сотню - то 20. Почему так? Да хрен его знает, наверное, как-то связано.

У меня сейчас скорее не 70 и 20, а 90 и 80. Да и в целом довольно смешной выглядела ситуация в том же Яндексе в году 17-м, когда джуны умели решать алгоритмические задачи, а начальники и авторы многих вполне успешно работавших сервисов честно признавали, что нет. То есть умение решать алгоритмические задачи на собеседовании не очень коррелирует даже с умением решать алгоритмические задачи на работе. Потому что в одном случае нужно уметь быстро вспомнить одно из типовых решений, а в другом - медленно и вдумчиво выбрать из нагугленных решений. Да, кругозор полезен, чтобы как минимум знание что гуглить. И пока люди специально не готовились к алгособесам от них был толк. Они позволяли понять этот самый кругозор. Проблема началась, как только к собеседованиям стали массово готовится. Теперь они показывают только усидчивость.

А наполнение сервиса слабо коррелирует с его техническим функционалом.

https://www.linkedin.com/sales/ssi

убрать дубликаты из массива:

Для массива произвольных объектов это в общем случае совсем не простая задача, если что. И скорее всего будет иметь сильно разные решения в реальной жизни, в зависимости от дополнительных условий.

Причём этот паровозик был уже даже в кинематографе описан (в фильме A Family Man, который российские надмозги перевели как Охотник с Уолл-стрит). Но всё равно, все продолжают превращать собеседование в ЕГЭ в поисках рок-звезд программирования.

Справедливости ради, поддельные отзывы для поддельных резюме придумали сильно раньше LinkedIn. Подозреваю, что в бронзовом веке.

А как-то автоматически строить такие toGRPCUser библиотекой нельзя? Ну напишет, это Copilot один раз, но читать-то это потом придётся десять раз и людям...

  • Строительство

  • Образование

  • Медицина, особенно средний и младший медицинский персонал

  • Полиция

  • Уход за пожилыми

  • Работа с детьми, особенно с детьми, имеющими особенности развития

Это если с ходу и без Гугла писать

Строго говоря, в Windows ядро гибридно и с драйверами видеокарты она довольно давно умеет так делать. Но именно что гибридное, с ядровыми компонентами оно так не может.

развёртывание новых типов шаблонов Template Types обеспечило внутри компании «доверие к проверкам, выполняемым в средстве проверки контента»

Ну, то есть миллионам своих клиентов они раскатывали обновление ядровых модулей ОС только по результатам автотестов? Великолепный план.

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

Меня налоговая сама уведомила емейлом

У вехнего div в Counter я забыл className={counterClassName}просто.

css тег добавит фактически

.counterClassName_dsfdlahfd .another_styled_button {
....
}

в результирующий css

Вы про какой именно глубокий рефакторинг?
Про оборачиваение в styled или что?
Если про styled, то так тоже можно:

import { css } from '@linaria/core';

const counterClassName = css`
  .another_styled_button {
    ....
  }
  /* Вот еще примеры */
  &::after {
    /* .thing::after */
    content: '🌟';
  }

  h3 {
    /* .thing h3 */
    color: tomato;
  }

  .code {
    /* .thing .code */
    color: #555;
  }

  & + & {
    /* .thing + .thing */
    background: yellow;
  }

  &.bordered {
    /* .thing.bordered */
    border: 1px solid black;
  }

  .parent & {
    /* .parent .thing */
    color: blue;
  }
`

const Counter = () => {
  ... 
  return <div>
    ...
    <button onClick...>Unstyled button</button>
    <button onClick...>Unstyled button</button>
    <button onClick... className="another_styled_button">Styled button</button>
  </div>
};

Это стилизует кнопки внутри компонента. Если вам нужно одну кнопку компонента, то нужно было так и писать. Будет соответственно

import styled from 'styled-components'; // or @linaria/react
...
const MyBytton = styled.button`
  ...
`;
...

const Counter = () => {
  ... 
  return <div>
    ...
    <button onClick...>Unstyled button</button>
    <button onClick...>Unstyled button</button>
    <MyBytton onClick...>Styled button</MyButton>
  </div>
};


const CounterWithStyledButton = styled(Counter)`
  ${MyBytton} {
    ....
  }
`

import styled from 'styled-components'; // or @linaria/react

const Counter = () => {
  ... 
  return <div>
    ...
    <button onClick...>Styled button</button>
  </div>
};


const CounterWithStyledButton = styled(Counter)`
  button {
    ....
  }
`

Примерно так

Там каскад по имени сгенерированного класса. Примерно как в css-modules.

И styled и linaria прекрасно работают с каскадностью.

Все таки убеждаюсь, что панельки из СССР - лучшие многоквартирные дома эвер при условии современной отделки в квартирах и ухоженных подъездах.

Как минимум такие же, но кирпичные типовые пятиэтажки и восьмиэтажки были лучше.

Ну и в целом современная массовая застройка на 5-7 этажей бывает более чем приличной.

Information

Rating
1,461-st
Registered
Activity