Зачем тут писать про httpie, когда curl — это не только консольная утилитка curl, но ещё и libcurl — библиотека, которую под капотом использует огромное количество проектов?
На самом деле читаем документацию: «new Array(n) создаёт массив без элементов, но с заданной длиной».
Согласен, это не совсем логично, но это особенность.
Решение: const array = new Array(10).fill(0).map((_, ind) => ind)
Да что вы прикопались к коду?
Нормальный первоапрельский код.
Ну а если серьёзно, KillerAngel, не используйте глобальные переменные.
Почитайте про чистые функции и почему нужно стремиться писать именно чистые функции.
Почитайте про ООП, с помощью него можно лучше структурировать код.
И не забывайте про многобайтовые кодировки, вы же с PHP работаете (mb_strlen, например).
Нельзя брать разработчика, ориентируясь только на его код.
Бывают соискатели, которые берут код своего тимлида и выдают за свой, например, выкладывают на Гитхаб.
Поэтому и актуален и вайтбординг, и опрос по базовым вещам. Такова реальность.
К вайтбордингу легко подготовиться, прорешивая задачки с LeetCode, например.
Но бывают исключения:
Во-первых, много частей Go написано на Ассемблере (см. Гитхаб: math, crypto, hash).
Во-вторых, есть примеры на проде у обычных компаний. Например, homm написал цикл статей, где они переделывали резайз изображений, там были ассемблерные вставки (введение, ..., использование SIMD).
Вкратце: это удобно. Отдал JSON, а у тебя всё по полочкам разложилось.
Почему делать на стороне СУБД — а зачем писать логику на стороне приложения, если можно её реализовать парой команд на стороне СУБД? Меньше кода — меньше ошибок.
Об этом был доклад Коли Самохвалова на Хайлоаде (слайды).
Ну вот я обожаю Линукс. Использую с 2009-го года. Использую Федору как основную ОС.
Если мне нужно поработать со звуком, видео или графикой или с офисными документами, я перехожу на мак.
Там просто удобнее делать офисные дела. Pages, Numbers и Keynotes очень удобны. Как бы ни старались, LibreOffice ещё далёк до удобства вышеперечисленных программ.
Даже Документы Google удобнее, которые частенько выручают на Лине.
Наличие Photoshop, Final Cut — преимущество.
Большинство ПО для таких задач в Линуксе, к сожалению, неудобное или с ограниченным функционалом.
Использовать Wine можно, но лично мне не нравится такой подход.
Да и было бы ещё глупее, если бы этот мужик запустил презентацию в MS Office под Wine.
Если хотят популяризировать для десктопа, то пусть договорятся и выпустят Adobe * и MS Office. Как только Steam добавил поддержку линукса, сразу появилась куча игр под него. Так же и тут будет.
Насчёт недоступности репозиториев — это проблема с ДНС, вроде (судя по чатикам Федорки). Но это не точно.
Поправьте если ошибаюсь, но ведь есть mirror.yandex.ru, т.е. с использованием Федоры в Крыму проблем не должно. Просто изменить адрес репозитория.
Или такое решение не сработает?
Test #1: 0.018749952316284 seconds
Test #2: 0.011775016784668 seconds
Test #3: 0.0035569667816162 seconds
Результаты для PHP 7.0
Test #1: 0.0010159015655518 seconds
Test #2: 0.0030970573425293 seconds
Test #3: 0.0013790130615234 seconds
Интересно, я достаточно большой массив протестировал?
Как видно из теста, в PHP 7.0 код с foreach (Test #1) работает быстрее, чем ваш «оптимизированный» код (Test #3). Глупо использовать в новых проектах PHP 5.6, когда в 7.0 появилось столько вкусняшек.
И вот ответьте: стоит ли жертвовать читабельностью кода ради микрооптимизаций?
Хотите экономию памяти? Читайте про генераторы.
Хотите быструю работу? Используйте PHP 7, он почти в два раза быстрее PHP 5.6
Зачем тут писать про httpie, когда curl — это не только консольная утилитка curl, но ещё и libcurl — библиотека, которую под капотом использует огромное количество проектов?
Зачем нужно сравнивать тёплое с мягким?
Про директории советую почитать
man hier
(hierarchy). Кратко и информативноНет, мы используем чистый JavaScript
На самом деле читаем документацию: «
new Array(n)
создаёт массив без элементов, но с заданной длиной».Согласен, это не совсем логично, но это особенность.
Решение:
const array = new Array(10).fill(0).map((_, ind) => ind)
Шёл 2019-й год.
Мамкины оптимизаторы всё ещё советуют:
for
, а неforEach
;for
в инициализацию цикла.Ну серьёзно, даже при итерации по массиву с несколькими тысячами элементов профита почти не будет.
Пруф: https://jsperf.com/for-vs-length
Да что вы прикопались к коду?
Нормальный первоапрельский код.
Ну а если серьёзно, KillerAngel, не используйте глобальные переменные.
Почитайте про чистые функции и почему нужно стремиться писать именно чистые функции.
Почитайте про ООП, с помощью него можно лучше структурировать код.
И не забывайте про многобайтовые кодировки, вы же с PHP работаете (
mb_strlen
, например).github.com/win0err/php-terminal-tools
Там и цвета для палитр предопределены, разные вариации шрифтов.
Бывают соискатели, которые берут код своего тимлида и выдают за свой, например, выкладывают на Гитхаб.
Поэтому и актуален и вайтбординг, и опрос по базовым вещам. Такова реальность.
К вайтбордингу легко подготовиться, прорешивая задачки с LeetCode, например.
У Дебиана есть Debootstrap, из коробки он минимальнее Арча.
Ну и Арч на сервере — странно, если честно.
Сделать сайт на Битриксе, а потом удивляться, что он ВНЕЗАПНО плохо работает ¯_(ツ)_/¯
Но бывают исключения:
Во-первых, много частей Go написано на Ассемблере (см. Гитхаб: math, crypto, hash).
Во-вторых, есть примеры на проде у обычных компаний. Например, homm написал цикл статей, где они переделывали резайз изображений, там были ассемблерные вставки (введение, ..., использование SIMD).
Почему делать на стороне СУБД — а зачем писать логику на стороне приложения, если можно её реализовать парой команд на стороне СУБД? Меньше кода — меньше ошибок.
Об этом был доклад Коли Самохвалова на Хайлоаде (слайды).
Исходники cat:
Весь файл на Гитхабе.
Ну вот я обожаю Линукс. Использую с 2009-го года. Использую Федору как основную ОС.
Если мне нужно поработать со звуком, видео или графикой или с офисными документами, я перехожу на мак.
Там просто удобнее делать офисные дела. Pages, Numbers и Keynotes очень удобны. Как бы ни старались, LibreOffice ещё далёк до удобства вышеперечисленных программ.
Даже Документы Google удобнее, которые частенько выручают на Лине.
Наличие Photoshop, Final Cut — преимущество.
Большинство ПО для таких задач в Линуксе, к сожалению, неудобное или с ограниченным функционалом.
Использовать Wine можно, но лично мне не нравится такой подход.
Да и было бы ещё глупее, если бы этот мужик запустил презентацию в MS Office под Wine.
Если хотят популяризировать для десктопа, то пусть договорятся и выпустят Adobe * и MS Office. Как только Steam добавил поддержку линукса, сразу появилась куча игр под него. Так же и тут будет.
Насчёт недоступности репозиториев — это проблема с ДНС, вроде (судя по чатикам Федорки). Но это не точно.
Поправьте если ошибаюсь, но ведь есть mirror.yandex.ru, т.е. с использованием Федоры в Крыму проблем не должно. Просто изменить адрес репозитория.
Или такое решение не сработает?
Докажу тестом:
В тесте измеряем изменение в потребляемой памяти в байтах и время выполнения в микросекундах
Test #2: 0.011775016784668 seconds
Test #3: 0.0035569667816162 seconds
Test #2: 0.0030970573425293 seconds
Test #3: 0.0013790130615234 seconds
Интересно, я достаточно большой массив протестировал?
Как видно из теста, в PHP 7.0 код с foreach (Test #1) работает быстрее, чем ваш «оптимизированный» код (Test #3). Глупо использовать в новых проектах PHP 5.6, когда в 7.0 появилось столько вкусняшек.
И вот ответьте: стоит ли жертвовать читабельностью кода ради микрооптимизаций?
Хотите экономию памяти? Читайте про генераторы.
Хотите быструю работу? Используйте PHP 7, он почти в два раза быстрее PHP 5.6