Императивное vs функциональное vs объектно-ориентированное программирование: наглядное объяснение от ByteByteGo (Alex Xu)
📌Подход, особенности и основной фокус:
1. Императивное
☑️Описывает шаги, которые должна выполнить программа, чтобы достичь желаемого состояния/результата.
☑️Использование последовательности команд, циклов, условий.
☑️Четкое определение того, как решить задачу через последовательные шаги и изменения состояния программы.
2. Функциональное
☑️Сосредоточено на определении и использовании функций, особенно тех, которые не изменяют состояние и не имеют побочных эффектов.
☑️Неизменяемость данных, поддержка функций высшего порядка и рекурсии.
☑️Выражение логики программы без явного указания состояния и изменений.
3. ООП
☑️Моделирование данных и функций программы в виде объектов, которые могут взаимодействовать друг с другом.
☑️Использование классов и объектов, поддержка наследования, инкапсуляции и полиморфизма.
☑️Организация кода вокруг объектов.
#инфографика
🤖 Напоминаем, что у нас есть еженедельная email-рассылка, посвященная последним новостям и тенденциям в мире искусственного интеллекта.
В ней:
● Новости о прорывных исследованиях в области машинного обучения и нейросетей
● Материалы о применении ИИ в разных сферах
● Статьи об этических аспектах развития технологий
● Подборки лучших онлайн-курсов и лекций по машинному обучению
● Обзоры инструментов и библиотек для разработки нейронных сетей
● Ссылки на репозитории с открытым исходным кодом ИИ-проектов
● Фильмы, сериалы и книги
👉Подписаться👈
🤔По мотивам статьи Mensur Durakovic для студентов, окончивших вуз:
1️⃣Универ/институт (любое учебное заведение) не подготовит к работе
2️⃣Начать проект с нуля — большая редкость, поэтому бо́льшую часть времени приходится работать над существующими проектами
3️⃣Никого не волнует ваш чистый код
4️⃣Иногда приходится работать с некомпетентными людьми
5️⃣Привыкайте к митингам: надо быть готовым как к продуктивным встречам/созвонам, так и к бесполезным
6️⃣Учитесь оценивать свои трудозатраты правильно
7️⃣Ошибки станут вашими заклятыми врагами на всю жизнь
8️⃣Неопределенность станет вашим токсичным другом
9️⃣Оторваться от работы будет практически невозможно
🔟Вы получите больше пользы от хороших навыков общения, чем от хороших технических навыков
Ставьте 👍, если согласны с автором, а в комментариях присылайте цифру пункта, который, по вашему мнению, отражает реальность больше всего (или пишите свой вариант)
Запись очередного выпуска live-подкаста «Человек и машина» пройдет на площадке Плюс Дача в Парке Горького 12 ноября в 17:00!
Антон Конушин программный директор фонда «Интеллект», доцент ВМК МГУ и НИУ ВШЭ понятно и доступно расскажет о компьютерном зрении: узнаем об истории и развитии технологии и о том, как машины распознают изображения!
Хотите знать о мире современных технологий еще больше! Тогда не пропустите запись.
🤔Почему новость о выходе релиза Kotlin 1.9.20 относится не только к мобильным разработчикам? Дело в том, что команда Kotlin представила стабильный выпуск Kotlin Multiplatform (KMP), который готов к использованию в продакшене. Да и Kotlin сам по себе среди прочего компилируется в Wasm, что значительно расширяет его возможности.
🤩Технология KMP призвана упростить разработку кроссплатформенных проектов. Это сокращает время, затрачиваемое на написание и поддержку одного и того же кода для разных платформ, сохраняя при этом гибкость и преимущества нативной разработки.
🔥Узнайте подробнее об эволюции KMP, о том, как она может оптимизировать процесс разработки и какие образовательные ресурсы доступны для вас, чтобы максимально эффективно использовать эту технологию.
#новости
📌То, что зацепило нас на этой неделе:
🤖 OpenAI на DevDay представила GPT-4 Turbo с новыми функциями: GPT-4 Turbo с контекстом 128 КБ и более низкими ценами, новый API Assistants, GPT-4 Turbo с Vision, API DALL·E 3 и многое другое. Компания также анонсировала возможность создания кастомизированных AI-ассистентов под названием GPTs.
⚡ GitHub Copilot Chat станет общедоступным в декабре: так же, как GitHub был основан на Git, сегодня команда GitHub вновь основана на Copilot. Узнайте, как концепция платформы GitHub на базе ИИ превратилась в новую реальность для разработчиков, и узнайте все, что было анонсировано на GitHub Universe.
📊 GitHub опубликовал Octoverse — ежегодное исследование платформы и сообщества опенсорсных проектов. Краткие выводы:
☑️92% разработчиков используют на постоянной основе или иногда экспериментируют с ИИ
☑️Зафиксирован большой рост доли новых разработчиков
☑️Разработчики начинают всё чаще использовать облачные технологии в своих проектах и многое другое
#чтопроисходит
🙇♂️Коллекция тестовых заданий для самостоятельного выполнения от разных ИТ-компаний, собранная сообществом вместе с командой Хекслет: маст-хэв при подготовке к собесу.
🔗 GitHub
Подборка лучших статей «Библиотеки программиста» за октябрь: сохраняй в заметки, чтобы не пропустить #самыйсок
📊 Эффективная работа с JSON в Go
🔝 Лучшие практики Go: путь к чистому коду
📚 ТОП-8 книг по DevOps в 2023 году
💪 6 сервисов для подготовки к техническим собеседованиям
🗺️ Карьерная карта: что это, как ее составить и почему она обязательно нужна разработчику
🛡️ 8 способов защиты от манипуляций на работе
👩💻 Женщины в ИТ: проблемы и преимущества сложной профессии
🤖 8 лучших бесплатных курсов по ИИ и глубокому обучению
👨💻 9 трендов в найме айтишников в 2023 году
🤔 9 мифов об IT и найме айтишников
🤖 25 бесплатных AI-инструментов для разработчиков
☁️ ТОП-10 бессерверных фреймворков
🚩 Итог одной валютной удаленки: проработал месяц бесплатно и ушел с долгами
💻 20 лучших ноутбуков для программиста в 2023 году
🧠 Как научиться критически мыслить: 6 эффективных способов
❔ Результаты ежегодного опроса разработчиков StackOverflow: 20+ главных инсайтов 2023 года
👨💻 5-6 декабря крупнейшая конференция Яндекса для IT-сообщества YaTalks вернется в офлайн
👉 Более 100 специалистов, управленцев и учёных выступят с докладами по темам разработки, интерфейсов и управления в ИТ, ниже некоторые из них:
☑️ Алексей Гусаков (технический директор Яндекс Поиска) расскажет как увеличить возможности компьютера и ускорять жизни целых городов и стран, оптимизируя МЛ-алгоритмы
☑️ Анна Жаркова (руководитель группы разработки Usetech) рассмотрит возможности и ограничения виджетов Android и iOS с разных сторон
☑️ Егор Марков (ведущий разработчик notAnotherOne) выступит с докладом про UWB — фронтир беспроводного стриминга
🌐 Конференция пройдет офлайн в нескольких локациях, в том числе в Москве. Или можно подключиться онлайн из любой точки мира
🔗 Регистрируйтесь на офлайн или присоединяйтесь онлайн
#афиша
🤔Динамика закрытия пулл-реквестов, прирост кодовой базы, активность разработчиков по часам и по дням недели и многое другое... Что только не придумают для оценки производительности разработчика.
💬А в вашей команде есть метрики оценки личной производительности? Если да, то какие и как они измеряются?
#холивар
❔ Результаты ежегодного опроса разработчиков StackOverflow: 20+ главных инсайтов 2023 года
В данной статье мы собрали 20+ главных инсайтов, которые помогут лучше понять, что происходит в ИТ-сфере в мире.
🔗 Читать статью
🔗 Зеркало
Сегодня в 21:00 мск начинается конференция OpenAI DevDay, на которой ожидается много анонсов: от улучшения UI в браузере и уменьшения цены API GPT-4 до релиза ИИ-модели в open source. Все слухи можно посмотреть в твите.
💬Будете смотреть?
👍 — интересно, обязательно посмотрю
#афиша
🦕 Diplodoc — опенсорс-проект для создания технической документации.
Платформа позволяет работать с документами как с кодом в привычной для разработчиков среде. Diplodoc интегрирован с GitHub, вся документация хранится там. Её удобно править и дополнять с помощью простого пул-реквеста, что ускоряет и упрощает обновление документации и помогает поддерживать её в актуальном состоянии в real time режиме.
Текст документации пишется на диалекте Markdown, с помощью которого можно вставлять в документации заметки, каты, видео, табы, всплывающие подсказки. А ещё документацию можно переводить на любой язык через одну команду.
👉🏻 Подробнее о Diplodoc в статье на Хабре
#инструменты
🤩 System Design 101: перевод на русский уже опубликованных на канале постов из рубрики #проектирование_систем и #инфографика от ByteByteGo (Alex Xu)
👉 Вас ждут следующие разделы:
☑️Протоколы
☑️CI/CD
☑️Архитектурные паттерны
☑️Базы данных
☑️Кэш
☑️Микросервисная архитектура
☑️Платежные системы
☑️DevOps
☑️Git
☑️Облачные сервисы
☑️Инструменты, повышающие продуктивность разработки
☑️Linux
☑️Безопасность
☑️Реальные системы
📌Мини-подборка наших свежих статей о карьере и не только: забирайте в закладки
🐍 Разбор 5 сложных задач (на Python), которые обычно задают на собеседовании
👔 ТОП-14 подкастов про карьеру в ИТ (и около того)
🛣 Дорожная карта Go разработчика в 2023 году
👂 6 карьерных советов программисту
⚖️ Развиваем критическое мышление: топ-подборка из 25 ресурсов
🚩 Итог одной валютной удаленки: проработал месяц бесплатно и ушел с долгами
Изумительная история фронтендера, который целый месяц работал без зарплаты и даже остался должен своему работодателю $1609
#почитать
Читать статью
Edge vs Cloud computing: в чем разница?
🔸Облачные вычисления централизуют обработку данных и вычислительные ресурсы в удаленных ЦОДах. Это обеспечивает масштабируемость, эффективность и централизованное управление данными. Клиенты могут обращаться к облачным сервисам с любого устройства с доступом в интернет, но сталкиваются с задержками из-за физического расстояния до ЦОДов.
🔹Предназначение периферийных (граничных) вычислений — перемещение вычислительных ресурсов из облачного ЦОДа ближе к пользователю/устройству, к «краю» сети.
🔹Другими словами, периферийные вычисления распределяют процессы обработки данных на устройства, находящиеся ближе к источнику данных, например, на IoT-устройства или локальные серверы, что уменьшает задержки.
🤔Существует мнение, что периферийные вычисления заменят облако, но оно ошибочно. Скорее вопрос стоит так: «Как избирательно использовать обе технологии?».
🧑💻🪜 6 карьерных советов программисту
Советы, которые подойдут джуниорам, мидлам и сеньорам.
#туториал
Читать статью
Контур — разработчик продуктов, которые упрощают жизнь бизнеса. Мы избавляем от рутины с помощью технологий, освобождаем время для творчества и саморазвития.
Наши разработчики делают сложное простым не только в сервисах для клиентов, но и в собственной работе. Мы обмениваемся опытом внутри комьюнити, поддерживаем друг друга, когда бывает нелегко, обучаем начинающих в IT на реальных задачах. А еще — каждый день изучаем новое, чтобы жизнь вокруг становилась проще.
Контур создает IT-решения и вдохновляется людьми. Переходите на сайт, если сегодня вам нужна поддержка и совет. Мы знаем, как держать в фокусе рабочие процессы, вписываться в дедлайны и при этом оставаться живым человеком.
Реклама. АО «ПФ «СКБ Контур». ИНН 6663003127
🎵Хотите, чтобы у вас олдскулы свело? Тогда быстрее скачивайте Yaamp, аудио-плеер Winamp с интегрированным сервисом Яндекс.Музыка.
🤩Реализован весь базовый функционал, поэтому вы легко сможете привыкнуть к «новому» плееру. Поддерживает Windows, MacOS и Linux.
#оффтоп
⚡Прямо сейчас идет конференция GitHub Universe 2023
👀 Присоединяйтесь к трансляции, чтобы узнать последние новости в области искусственного интеллекта, безопасности и DevEx.
🎙️ТОП-14 подкастов о карьере в ИТ
Делимся подкастами, которые помогут вам подготовиться к собеседованиям и лучше понять, как устроен процесс найма в ИТ. Ниже — небольшая подборка, остальные читайте в статье.
👉 NEWHR и СОБЕС — два подкаста от Киры Кузьменко, рекрутера с 20-летним опытом
👉 Хочу в айти — подкаст для новичков, в котором не так много выпусков, но они короткие, ёмкие и интересные.
👉 Выхожу с понедельника — подкаст про разные направления в ИТ
👉 Moscow Python — подкаст о карьере, личном опыте и не только
👉 Podlodka Podcast — популярный подкаст с очень разнообразными и интересными темами, связанными с карьерой в ИТ и другими айтишными направлениями
#подкасты
👨🎓Пополняем подборку бесплатных инструментов, курсов и ресурсов для освоения SQL и баз данных 👉 sql-ex.ru
🤩Сайт поможет каждому, кто хочет приобрести или повысить свои навыки в написании операторов манипуляции данными языка SQL.
☑️Суть обучения состоит в том, что вы сами пишете операторы, которые должны вернуть или изменить данные, требуемые заданием.
☑️При этом в случае неправильного ответа вы сможете узнать, какие данные возвращает правильный запрос, а также увидеть, что вернул ваш запрос.
☑️Кроме того, есть возможность выполнять любые операторы DML к имеющимся базам данных, отключив опцию проверки. Упражнения имеют разный уровень сложности (от 1 до 5), который проставлен во втором столбце списка упражнений.
#sql
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
🐍💼 Подготовка к собеседованию по Python: решаем 5 интересных задач
Проверяем двоичные деревья на симметричность, вычисляем расстояние Дамерау-Левенштейна и оцениваем сложность алгоритмов.
Читать статью
🧠⚙️ Как научиться критически мыслить: 6 эффективных способов
Критическое мышление позволяет принимать решения в условиях неопределённости, доносить свои идеи до команды, видеть ошибки в логике, замечать манипуляции. В статье рассказываем, откуда пошло это понятие и как можно развить критическое мышление.
💬Считаете ли вы, что у вас развито критическое мышление?
👍 — да, и это очень помогает мне в жизни и работе
🤔 — да, но оно ничем не помогает
🥱 — нет
🎓Свежие дорожные карты для разработчика игр: от новичка до профи
🎮 Game Developer
🎮 Server Side Game Developer
#roadmap
🏃♀️ Конечные автоматы как способ значительно упростить логику и понимание кода
🤯 Если вам кажется, что конечные автоматы — это-то на университетском, то обязательно посмотрите доклад Кирилла. Вы увидите, что практически любая бизнес-логика в коде укладывается в модель конечного автомата, то есть состоит из набора состояний и переходов между ними.
👀 Такой взгляд на происходящее позволит изменить подход к проектированию и реализации приложений. Кирилл рассматривает множество реальных примеров на разных языках и для разных направлений (бэк/фронт), а также рассказывает про опыт внедрения.