Задачи
1.
отсортировать (руками)
package main
import "fmt"
func main() {
slice := []string{"a", "b", "d", "c", "f", "e"}
usort(slice)
fmt.Printf("%+vn", slice)
}
2.
//Есть поток данных, в виде идентификаторов отелей, для каждого отеля нужно сделать поисковый запрос (запрос выполняется
//минимум 500ms) и отправить результаты в другой поток.
type SearchResult struct {
HotelID int
}
func main() {
dataCh := make(chan int)
go func() {
for i := 0; i <= 10; i++ {
dataCh <- i
}
defer close(dataCh)
}()
func search(hotelID int) SearchResult {
time.Sleep(time.Millisecond * 500)
return SearchResult{
HotelID: hotelID,
}
}
В конце предложили попробовать сисдиз реализовать.
Есть сервисы Card/SBP/Coupon у которых есть своих хранилища и они могут отдавать информацию по платежам (как по конкретному, так и список с пагинацией и т д). Есть личный кабинет пользователя, в котором он видит список всех своих платежей (по всем видам платежей), где в карточке платежа ограниченная информация по нему и ссылка на страницу с более подробной информацией. Необходимо разработать архитектуру взаимодействия сервисов между собой для оптимального решения этой задачи. Упрощение — один платеж = один тип платежа (смешанные не рассматриваем, например купон + карта, такое опускаем)