Чем rune и Unicode отличается от rune в Go-разработке?
Что хотят услышать интервьюеры:
Суть: rune и Unicode нужно рассматривать через конкретное поведение и границы применения, а сравнение с rune помогает показать trade-off, а не просто знание терминов.
Ответ:
rune — Unicode code point; длина строки в байтах не равна количеству символов.
Пример:
for _, r := range "привет" { fmt.Println(r) } Практический акцент: Сравнительные вопросы часто используют, чтобы проверить не заучивание, а инженерное мышление.
Типичная ошибка: Главная ошибка — отвечать на сравнение абстрактно. Нужно показать, где один вариант безопаснее, проще или производительнее, и упомянуть риск: использовать len(str) как количество пользовательских символов.
Как отвечать на собеседовании: На интервью формулируйте различие через применение в реальном backend-коде: читаемость, тестируемость, latency, память и сопровождение.