Рубрика «Программирование» - 186

Вместо предисловия

Vue используется во всех проектах FunCorp. Мы внимательно следим за развитием фреймворка, постоянно улучшаем процесс разработки и внедряем лучшие практики. И, конечно же, мы не могли пройти мимо и не перевести статью Филиппа Раковски, сооснователя VueStorefront, про новые фичи Vue 3, серьёзно влияющие на написание кода.

image
В прошлый раз мы рассматривали фичи, которые влияют на производительность Vue 3. Нам уже известно, что приложения, написанные на новой версии фреймворка, работают очень быстро, но производительность — не самое важное изменение. Для большинства разработчиков намного важнее то, как Vue 3 повлияет на стиль написания кода. Читать полностью »

29-30 ноября в Санкт-Петербурге и 06-07 декабря — в Москве мы запустим шестой семинар по .NET. У нас будет: 700 слушателей, огромные залы, много кофе и зудящее чувство знаний. Чтобы собрать рекордно-длинную программу и количество слушателей мы работали рекордные 5 месяцев. До старта — 9 дней.

CLRium #6: 9 дней до старта - 1

Читать полностью »

Барух Садогурский — Developer Advocate в компании JFrog, соавтор книги «Liquid Software», известный IT-спикер.

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

«Доклад не имеет права быть скучным»: интервью с Барухом Садогурским о выступлениях на конференциях - 1
Читать полностью »

Добрый день. Эту статью я написал специально для студентов курса «Алгоритмы для разработчиков» в OTUS и сегодня хочу поделиться ею со всеми читателями нашего блога.

Шахматный конь стоит на шахматной доске и задумчиво смотрит в шахматную даль.
Сколько разных ходов он может сделать?

image

Хвала изобретателю шахмат, на доске 64 клетки.
Хвала архитектору компьютеров — у типа ulong тоже 64 бита.
Это же надо было случиться такому совпадению!
Напрашивается гениальная идея — хранить всю доску в одном целом числе! Для этого решения существует даже специальный термин — Bitboard — битовая доска.

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

В октябре я далеко не впервые загрузился в самолет и отправился из далекого Иркутска в направлении Санкт-Петербурга. На Java-конференциях JUG Ru Group я оказывался и раньше, но всё равно не ожидал, что в этот раз будет побит рекорд, и в «Экспофоруме» соберутся более двух тысяч Java-программистов и им сочувствующих. Хардкор, угар, инженерные доклады, розыгрыши и запись видео-шоу в прямом эфире окружали нас два дня. Сразу оговорюсь, что на хабре уже писали про Joker 2019, например: dbelob — «Joker 2019: триумф года», gayka_m8 — «Чем нам запомнилась последняя JokerConf». Но теперь доступны финальные фоточки, посчитаны зрительские оценки и улеглись эмоции, поэтому мои впечатления от конференции — под катом.

Атакуем Joker 2019 полностью: как прошла самая крупная Java-конференция в России - 1
Читать полностью »

Оптимизирующий AOT-компилятор обычно структурирован так:

  1. фронтенд, преобразующий исходный код в промежуточное представление
  2. конвейер машинно-независимой оптимизации (IR): последовательность проходов, которые переписывают IR для устранения неэффективных участков и структур, которые не могут быть непосредственно преобразованы в машинный код. Иногда эту часть называют middle-end.
  3. Машинно-зависимый бэкенд для генерации ассемблерного кода или машинного кода.

Как LLVM оптимизирует функцию - 1

В некоторых компиляторах формат IR остаётся неизменным на протяжении всего процесса оптимизации, в других его формат или семантика меняется. В LLVM формат и семантика фиксированы, и, следовательно, возможно запускать проходы в любой последовательности без риска неверной компиляции или аварийного завершения работы компилятора.
Читать полностью »

image

В Хьюстоне 13-16 ноября прошёл финал чемпионата TopCoder Open 2019, и Гена Короткевич (Беларусь) занял первое место сразу в двух соревновательных треках: Algorithm и Marathon. Такое раньше ещё никому не удавалось сделать в один год! Отличное завершение сезона-2019, в котором до этого Гена уже победил в финалах двух других крупных соревнований: Google Code Jam и Facebook Hacker Cup.

Topcoder Open — ежегодный индивидуальный профессиональный турнир по программированию, проводимый компанией Topcoder Inc. Проводится по системе Topcoder c 2001 года. Всего в Topcoder шесть видов соревнований: Algorithm, Development, First2Finish, UI Design, UI Prototype и Marathon.

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

Алгоритм – это классическое спортивное программирование. За полтора часа нужно решить задачи на Java, C#, C++ или Python.
Читать полностью »

Picture 2

Привет! Несмотря на то, что сезон конференций 2019 года ещё в самом разгаре, мы бы хотели обсудить задачи, которые ранее предлагали посетителям нашего стенда. Осень 2019 года мы начали с новым набором задач, поэтому уже можно обнародовать решение старых задачек за 2018 год, а также первую половину 2019. Тем более, многие из них были взяты из ранее опубликованных статей, а листовки с задачами содержали ссылку или QR-код с информацией о статье.
Читать полностью »

Picture 2

Hi! Though the 2019 conference season is not over yet, we'd like to talk about the bug-finding challenges we offered to visitors at our booth during the past conferences. Starting with the fall of 2019, we've been bringing a new set of challenges, so we can now reveal the solutions to the previous tasks of 2018 and the first half of 2019 – after all, many of them came from previously posted articles, and we had a link or QR code with information about the respective articles printed on our challenge leaflets.
Читать полностью »

Архитектуры, управляемые событиями (Event Driven Architecture), в целом, и Apache Kafka, в частности, привлекли в последнее время большое внимание. Для реализации всех преимуществ архитектуры, управляемой событиями, механизм делегирования событий должен быть по своей сути асинхронным. Тем не менее, могут существовать некоторые особые сценарии/потоки использования, в которых требуется семантика Синхронного Запроса-Ответа. В этом выпуске показано, как реализовать "Запрос-Ответ" с помощью Apache Kafka.

Перевел @middle_java
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js