Sobes.tech

Golang

¿Por qué ahora sales al mercado?

Middle+
207

¿Por qué no se devuelven errores en el método Process? Es necesario corregirlo y enviar el código completamente funcional.

Senior
206

¿Qué son los canales en Go y el operador select?

Middle
205

¿Qué otras estructuras se utilizan para índices en bases de datos además del árbol B?

Middle
205

¿Cuál es la diferencia entre bases de datos relacionales y NoSQL?

Middle
205

¿Qué dirección o proyecto te han asignado actualmente en tu organización actual?

Junior — Middle
204

¿Cómo funciona la búsqueda binaria en una lista ordenada?

Middle
203

¿Se puede usar el contexto para transmitir datos entre componentes o funciones?

Junior — Middle
202

Las actualizaciones de documentos llegan al servicio mensaje Documento { string Url = 1; // URL del documento, su identificador único uint64 PubDate = 2; // tiempo de publicación declarado del documento uint64 FetchTime = 3; // tiempo de recepción de esta actualización del documento, puede considerarse como identificador de versión. El par (Url, FetchTime) es único. string Text = 4; // texto del documento uint64 FirstFetchTime = 5; // inicialmente ausente, debe completarse } Los documentos pueden llegar en cualquier orden (no en el orden en que fueron actualizados), y también puede haber mensajes duplicados. Es necesario en la salida formar mensajes iguales, pero con campos corregidos según las siguientes reglas (todo lo mencionado a continuación es para un grupo de documentos con el mismo campo Url): El campo Text y FetchTime deben ser iguales a los del documento con el mayor FetchTime recibido hasta ahora. El campo PubDate debe ser igual al del mensaje con el menor FetchTime. El campo FirstFetchTime debe ser igual al valor mínimo de FetchTime. Es decir, en cada momento tomamos PubDate y FirstFetchTime del primer versión recibida hasta ahora (si las ordenamos por FetchTime), y Text de la última. La interfaz en el código puede implementarse así: type Processor interface { Process(doc *Document) (*Document, error) } Este código funcionará en un servicio que lee mensajes de una cola (Kafka o similar), y también escribe el resultado en la cola. Si Process devuelve Null, no se escribe nada en la cola.

Senior
202

¿Qué es un puntero y cuánto pesa?

Middle
202

¿Qué es una condición de carrera y qué métodos existen para protegerse de ella?

Middle
202

¿Cuál es la diferencia entre una goroutine y un hilo del sistema operativo?

Middle
202

¿Cómo usar select para trabajar con múltiples canales al mismo tiempo?

Middle
201

¿Qué son las sondas (probes) en Kubernetes, cómo configurarlas y qué tipos existen?

Senior
200

¿Qué más, además de un mutex, se puede usar para protegerse contra condiciones de carrera?

Middle
200

¿En qué se diferencia un proceso de un hilo?

Middle
200

¿Qué es la notación asintótica y qué significa?

Middle
198

¿Qué es la iteración sobre una cadena usando for range en Go? ¿Qué son las variables i y v dentro del ciclo, cuáles son sus tipos de datos?

Middle
197

/* Cadena dada que contiene los caracteres (){}. Es necesario determinar si la cadena de entrada está equilibrada en términos de paréntesis. */ func isBalanced(s string) bool { // TODO: implementar esto return false } fmt.Println(isBalanced("()")) // -> true fmt.Println(isBalanced("({()})")) // -> true fmt.Println(isBalanced("(()")) // -> false fmt.Println(isBalanced("(()))")) // -> false fmt.Println(isBalanced("({})")) // -> false

Middle
197

Cuéntame más sobre los proyectos en Go

Middle
197
/12