Чем string и []byte отличается от []byte в Go-разработке?
Что хотят услышать интервьюеры:
Суть: string и []byte нужно рассматривать через конкретное поведение и границы применения, а сравнение с []byte помогает показать trade-off, а не просто знание терминов. string immutable и хранит байты UTF-8, а []byte изменяем и удобен для I/O.
Ответ:
Пример:
b := []byte(s) Практический акцент: Сравнительные вопросы часто используют, чтобы проверить не заучивание, а инженерное мышление.
Типичная ошибка: Главная ошибка — отвечать на сравнение абстрактно. Нужно показать, где один вариант безопаснее, проще или производительнее, и упомянуть риск: часто конвертировать string<->[]byte в горячем пути и создавать лишние аллокации.
Как отвечать на собеседовании: На интервью формулируйте различие через применение в реальном backend-коде: читаемость, тестируемость, latency, память и сопровождение.