![](https://webcf.waybackmachine.org/web/20220501144213im_/https://habrastorage.org/webt/so/ta/qi/sotaqiwk-bcmkriabdlnt4cgarc.jpeg)
Гайд по написанию и рефакторингу компонентов, которые хочется переиспользовать
Tutorial
![](https://webcf.waybackmachine.org/web/20220501144213im_/https://habrastorage.org/webt/so/ta/qi/sotaqiwk-bcmkriabdlnt4cgarc.jpeg)
std::expected
— новый механизм сообщения об ошибках без использования исключений и без недостатков кодов возврата.std::ranges::to
— результаты работы алгоритмов можно легко превратить в контейнер.std::views::join_with
— добавление разделителя между элементами.void naive_accept() {
for (;;) {
auto new_socket = accept(listener);
std::thread thrd([socket = std::move(new_socket)] {
auto data = socket.receive();
process(data);
socket.send(data);
});
thrd.detach();
}
}
struct OrderButtonExperimentDTO: Decodable {
let buttonTitle: String
let estimationMinute: Int
}
В приложении Авто.ру есть такая фича — панорамы автомобилей. Она позволяет любому сделать 3D-фото своей машины, показать её во всей красе. Как это работает и как нашим коллегам из ML удалось уместить в смартфон то, что раньше требовало целого ангара, напичканного дорогостоящим оборудованием, yaantonn уже рассказывал на Хабре.
Но отснять панораму — лишь полдела. Затем её предстоит воспроизвести, причём сделать это одинаково хорошо и на топовом флагмане, и на бюджетном смартфоне.