Обновить
33
0
Дмитрий@Keyten

JavaScript

Отправить сообщение
Если вы хороший разработчик, вы оптимизируете правильные места.

Это поиск баланса между читаемостью и эффективностью. Если вам нужно реверснуть небольшую строку, то сплит-реверс-джоин работает так же быстро, как и что угодно ещё — там разница на уровне пары миллисекунд. При этом смысл кода понимается беглым взглядом, меньше, чем за секунду. Давайте напишем цикл:
var str = '12345';
var reversed = '';
var l = str.length;
while(l--){
 reversed += str[l];
}

— и чтобы понять, что делает этот код, понадобится секунд 5.

И так везде. Если вы пишете очень критичное место (вроде сравнения v-dom в таблице на миллион пунктов), то да, его нужно оптимизировать всеми силами и средствами, потому что какая–нибудь мелочь может привести к разницы в полсекунды. Если разницы нет, то и смысла нет — выбирайте, что читаемее.
Ну тут всё просто.

Во-первых, хаки с ~indexOf, ~~ и |0 действительно удобны когда ты пишешь код на коленке, или тебе нужно например по-быстрому что-то проверить или что-нибудь такое. Вставить в конец |0 гораааздо быстрее и проще, чем писать Math.floor(, затем переносить кусок в конец кода и ставить ). И |0 это одна из самых удобных вещей, что я вообще использую когда пишу код по-быстрому на коленке для себя :)
Это случай, когда над кодом работаешь только ты, и всё в нём понимаешь, хочу заметить.

Во-вторых, на самом деле писать !!value или +value или value|0 вместо Boolean(value) / Number(value) / Math.floor(value) совсем не ухудшает читаемость если ты знаешь, что это. Думаю, что про !!value, +value и value + '' знают примерно все, а вот использовать |0 в каком-то реальном коде естественно содержит много минусов вроде того, что тебе придётся предупреждать всех читающих код, что такие конструкции значат.
({toString: () => []}) + ''

Кинет ошибку
Вместо forEach можно юзать some и every, они брейкаются возвращением true / false. Но в остальном согласен.
Миф 1: TensorFlow – это библиотека для работы с тензорами
На самом деле, это библиотека для работы с матрицами, и эта разница весьма существенна.

Матрица — это тензор, частный случай
А что же делать с привычкой в любую свободную минутку проверить, не написал ли тебе кто-нибудь?
Согласен с ответом wearethevoid выше. Да, именно так, другой язык — другое мышление, прямого соответствия нет.

Если хотите примеров, то вот что-то такое например:
— Когда ты завтра придёшь, я могу в этот момент быть перепачкан в краске
— Почему?
— К моменту твоего прихода я буду уже некоторое время рисовать

Но я бы сказал, что вот эта вот табличка из 12 времён — это неудачная попытка формализовать язык. Люди просто общаются, иногда объединяя конструкции will, have, be, это просто несколько часто используемых выражений вместе, а потом кто-то пришёл и сказал «давайте каждую такую комбинацию считать отдельным tense». Вот вам и все возможные комбинации, 12 штук
Ещё типичнейший пример это Future in the Past, которое зачем-то отдельное время, хотя на самом деле это просто использовали глагол will в прошедшем. «Я ему сказал, что я буду рисовать» — «I told him I would draw». А некоторые таблички ещё выделяют be going to и разные модальные глаголы как отдельные tense, ещё прибавляют сюда пассивы, и времён становится чуть ли не под полсотни.
Да, видел что-то подобное.
Ээ, а что сложного в пассиве? Он отличненько существует и в русском ведь. И построение вроде тоже долго объяснять не нужно, все пассивы строятся как be + Ving в активе
Здесь тоже море стереотипов, только с обратной стороны. Увы, возводить этот подход в абсолют тоже ни к чему хорошему не приводит, на своём опыте знаю.

Типичнейший стереотип — про детей или вот это вот:
Future Perfect Continuous (я сам не имею ни малейшего понятия, как оно строится),

Вы ведь поймёте, если я скажу I will have been painting, верно? Более того, в определённой ситуации вы и сами сможете такое составить. Потому что есть своя внутренняя взаимосвязь между словами will, have, be, -ing, свой смысл, который они составляют вместе, и вы можете не иметь никакого понятия, что это называется Future Perfect Continuous, но запросто понимать и даже строить такие конструкции.
Я в общем-то всё перечисленное и называл результатом. Ещё он бывает косвенный, это Perfect Continuous.

Интересно, расскажите
верить Mail.ru
Ха-ха.
Для кого лучше, рекламодателя или зрителя?
--MEOW--/>  フ
     |  _  _|
     /`ミ _x 彡
     /      |
    /  ヽ   ノ
 / ̄|   | | |
 | ( ̄ヽ__ヽ_)_)
 \二つ
Последние полгода хожу со свободными 5-10 мегабайтами на телефоне, всё реалистично
Только «причём» слитно
Точно так же изучал в своё время redux — просто прочитав исходники и написав свою совместимую версию на ts github.com/keyten/redux-ts/blob/master/index.ts

Только вот жаль, это не очень прояснило обычные паттерны его использования.
А если кубик будет с миллионом граней, такой шанс будет гораздо меньше.
А почему не смотреть английский вариант намеренно? :)
мир заражен болезнью, под названием — тупость

измениться
Проблема в том, что мнемотехника в случае языков это действительно костыль. Образы, увы, забываются. Ну не сможете вы, запомнив 10к образов, пробегать по ним по всем хотя бы еженедельно. Я уже не говорю о том, что говорить / понимать, вытаскивая слова из дворца памяти, вряд ли получится.

Поэтому образы — это такой промежуточный этап, вроде как по-быстрому перенести словарь в голову, чтобы потом учить из него слова в любой свободный момент времени.

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

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность