Рубрика «type hinting»

Привет! Это моя первая статья и я пишу ее в рамках конкурса «Сезон Open Source на Хабре». Сегодня я хочу рассказать о своем pet-проекте, Clite - это легковесный, фреймворк на Python для создания CLI.

О проекте и его цели

Название фреймворка вдохновлено СУБД SQLite, легкой альтернативой современным PostgreSQL, MySQL. Так же и я позиционирую фреймворк как легкая альтернатива Typer, Click и другим похожим фреймворкам.
Читать полностью »

Небанальные правила чистого Python. Часть 1 - 1

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

Необязательное вступление

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

Применение принципа poka-yoke в программировании на примере PHP - 1

Всем привет! Я Алексей Грезов, разработчик Server Team Badoo. Мы в Badoo всегда стараемся сделать так, чтобы наш код было легко поддерживать, развивать и переиспользовать, ведь от этих параметров зависит, насколько быстро и качественно мы сможем реализовать какую-либо фичу. Одним из способов достижения этой цели является написание такого кода, который просто не позволит совершить ошибку. Максимально строгий интерфейс не даст ошибиться с порядком его вызова. Минимальное количество внутренних состояний гарантирует ожидаемость результатов. На днях я увидел статью, в которой как раз описывается, как применение этих методов упрощает жизнь разработчикам. Итак, предлагаю вашему вниманию перевод статьи про принцип "poka-yoke".

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

Runtyper — это плагин для Babel, выполняющий проверку типов прямо во время выполнения JavaScript кода. Он обнаруживает некорректные операции, например строгое сравнение строки и числа, и бросает предупреждение в консоль. Это позволяет вам находить ошибки типизации на ранней стадии, при этом не требует дополнительных аннотаций кода.

Runtyper warning example

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


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