R
Roman Pankov
@pankovr
5 posts
Pinned

Кто я такой?

Программист с многолетним стажем в области backend разработки, который успел поработать в различных компаниях: от фриланса до стартапов и проектной работы, включая работу с frontend еще до того, как это стало мейнстримом(привет jQuery), а также с взрослыми фронтенд технологиями

Генераторы в PHP

🧲Генераторы в PHP — это мощный инструмент, который позволяет работать с большими объемами данных и эффективно управлять памятью. Генераторы были введены в PHP начиная с версии 5.5 и предоставляют возможность легко создавать итераторы без необходимости создания целого класса.

Как быстро декомпозировать задачу разработчику

Небольшой дисклеймер. Понимаю, в разных организациях декомпозицией задач могу заниматься отдельные люди, старшие разработчики/тимлиды и пр. Есть разные подходы, декомпозиция по usecse, по сценариями, поэтапный и по иным умным подходам. Я не претендую на "правильные" подходы. Просто поделюсь опытом.

Наследование vs Композиция vs Агрегация

Эти три громких слова обозначают разные типы отношений между классами/объектами. Ассоциация - это самый базовый тип отношений. Мы не знаем как выражается связь между двумя классами и потому уточним это позже. Данный базовый тип отношений полезен на ранних этапах продумывания архитектуры кода без уточнения деталей.

Конкурентный доступ к записи в базе данных

Допустим у нас есть интернет магазин. У пользователя есть возможность оформить заказ. Задача в том, чтобы избежать двойного создания заказа и лишнего списания денежных средств. Человек оформляет заказ, но наш сайт/приложение подтупливает и на backend уходит параллельно два одинаковых запроса. Данную задачу иногда дают на собеседованиях.