DevGang
Авторизоваться

TypeScript: Классы vs интерфейсы

Классы и интерфейсы являются мощными структурами, которые облегчают не только объектно-ориентированное программирование, но и проверку типов в TypeScript. Класс - это объект, из которого мы можем создавать объекты с одинаковой конфигурацией - свойства и методы. Интерфейс - это группа связанных свойств и методов, которые описывают объект, но не обеспечивают их реализацию или инициализацию.

Поскольку обе эти структуры определяют, как выглядит объект, обе они могут использоваться в TypeScript для наших переменных. Решение об использовании класса или интерфейса действительно зависит от нашего варианта использования: только проверка типов, подробности реализации (обычно путем создания нового экземпляра) или даже оба! Мы можем использовать классы для проверки типов и базовой реализации, тогда как мы не можем использовать интерфейс. Понимание того, что мы можем получить от каждой структуры, позволит нам принять лучшее решение, которое улучшит наш код и опыт разработчиков.

Изучаем Go - Отправка REST-запросов

Забудьте о GET, даешь POST

Мы с вами рассмотрели парочку небольших примеров того, как запрашивать данные с удаленного сервера по REST API. На этот раз, вы узнаете как их туда отправлять. Возможно, для этого вы могли бы использовать что-то вроде go-swagger, как предлагал @bgadrian и, вероятно, еще бы и применили это в продакшене. Однако в целях обучения мы просто сделаем, то, что сумеем стандартными средствами из коробки и используем небольшие самописные пакеты на основе стандартной библиотеки.

Изучаем Go – Продолжаем работать с REST API

Продолжаем приключения

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

Изучаем Go - Использование REST API

Недавно я размышлял о такой технологии, как REST API. Мне кажется, что работа с SaaS сервисом почти гарантирует, что вы так или иначе будете работать с одним или даже несколькими апи, так что, думаю, имеет смысл задуматься о том, как их правильно использовать. Я немного практиковался, изучал базовые вещи в Go и подумал, что было бы неплохо поделиться своим опытом и продолжить мою серию Learning Go.

Благодаря встроенному в Go пакету net / http довольно легко начать работу с базовым API-интерфейсом. Практически все необходимое для запроса удаленного API можно найти в стандартной библиотеке Go. 

CSS Grid против Flexbox

Не так давно макет для всех HTML-страниц создавался с помощью таблиц, float элементов и других CSS-свойств, которые плохо подходили для стилизации сложных веб-страниц.

Затем появился flexbox - режим макета, который был специально разработан для создания надежных адаптивных страниц. Flexbox облегчает правильное выравнивание элементов и их содержимого, и в настоящее время является предпочтительной системой CSS для большинства веб-разработчиков.

Разница между htmlentities и htmlspecialchars в PHP

В чем разница между функциями htmlentities() и htmlspecialchars() в PHP?

Для начала htmlspecialchars() является подмножеством htmlentities().

10 интересных JavaScript и CSS библиотек за январь 2019 года

Начнем интересную традицию! Ежемесячно наша редакция будет делать подборки самых интересных на наш взгляд библиотек по JavaScript и CSS и делать на них небольшой обзор.

Angular классы с NgClass

С Angular у нас есть много подходов к добавлению, удалению, переключению классов. Мы можем выбрать отдельные классы и связать свойства, или мы можем использовать потрясающую директиву NgClass от Angular.

В этом посте мы рассмотрим привязки классов, а также директиву Angular NgClass, синтаксисы и некоторые передовые идеи.

Динамическая маршрутизации задач в Celery

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

Изучаем Go - создание загрузчика (часть 5)

Эта часть будет немного отличаться от предыдущих. Я думаю мы немного обновим Go код и, тем самым, избавимся от возможных проблем с очисткой, которые я упоминал в прошлый раз. Как только закончим с этим, займемся версткой кода для создания расширения Chrome! И на этой ноте давайте начнем!

Присоединяйся в тусовку

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

Попробовать

В этом месте могла бы быть ваша реклама

Разместить рекламу