Руководители групп в Яндексе рассказывают, какие ошибки часто совершают начинающие Python-разработчики и как их избежать |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту Архив новостей ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Нейронные сети начинающим Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2020-04-28 14:43 Мария Мансурова, руководитель группы анализа аналитических продуктов: — Самая частая ошибка кандидатов на собеседованиях и начинающих разработчиков, которые недавно в Яндексе, заключается в обычной невнимательности. Путают плюс-минус единицы, не учитывают граничные случаи в коде. Это базовые вещи. Ещё у новичков часто бывают проблемы, связанные с инфраструктурой вокруг них. Например, далеко не все знают, как работает Command-Line Interface и что это вообще такое. Такие знания стоит в себе развивать и воспитывать, потому что они вам точно пригодятся. Игнат Колесниченко, руководитель одной из групп разработки MapReduce-системы Яндекса: — Есть два антипаттерна новичков. Один — это когда человек умеет писать на каком-нибудь одном языке программирования, а потом начинает учить другой, узнаёт базовый синтаксис — и пишет на этом новом для себя языке точно так же, как на первом. Скажем, если писать на Python, как на С++, то код получается некомпактным, не очень выразительным. Надо стараться переставать так делать. Python — более выразительный язык, в котором многие вещи (например, с помощью модуля itertools) можно реализовать очень понятным для чтения образом. Второй антипаттерн — когда люди, наоборот, чересчур глубоко изучают itertools, лямбда-выражения и потом строят в коде пятиступенчатые конструкции: map, filter, reduce и т. д. и т. п. Потом вообще невозможно понять, что автор кода имел в виду. Для одноразовых скриптов это допустимо, но когда вы пишете код, который потом будут читать, нужна золотая середина. И в целом, надо смотреть, какие паттерны написания кода используют коллеги, и прививать себе чувство прекрасного — какой код читаемый, а какой нет. Наша задача — написать не самый медленный код, но при этом максимально читаемый. Комментарии: |
|