Skip to Main Content
Aprender Go, 2ª Edición
book

Aprender Go, 2ª Edición

by Jon Bodner
August 2024
Intermediate to advanced content levelIntermediate to advanced
494 pages
13h 30m
Spanish
O'Reilly Media, Inc.
Book available
Content preview from Aprender Go, 2ª Edición

Capítulo 7. Tipos, métodos e interfaces

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Como has visto en capítulos anteriores, Go es un lenguaje de tipado estático con tipos incorporados y tipos definidos por el usuario. Como la mayoría de los lenguajes modernos, Go te permite adjuntar métodos a los tipos. También tiene abstracción de tipos, lo que te permite escribir código que invoque métodos sin especificar explícitamente la implementación.

Sin embargo, el enfoque de Go respecto a los métodos, interfaces y tipos es muy diferente del de la mayoría de los lenguajes de uso común hoy en día. Go está diseñado para fomentar las buenas prácticas defendidas por los ingenieros de software, evitando la herencia y fomentando al mismo tiempo la composición. En este capítulo, echarás un vistazo a los tipos, métodos e interfaces, y verás cómo utilizarlos para construir programas comprobables y mantenibles.

Tipos en Go

En "Estructuras" viste cómo definir un tipo estructura:

type Person struct {
    FirstName string
    LastName  string
    Age       int
}

Esto debe leerse como la declaración de un tipo definido por el usuario con el nombre Person para que tenga el tipo subyacente del literal struct que le sigue. Además de los literales struct, puedes utilizar cualquier tipo primitivo o literal de tipo compuesto para definir un tipo concreto. He aquí algunos ejemplos:

type Score int
type Converter func(string)Score
type TeamScores map ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Herramientas DevOps para desarrolladores Java

Herramientas DevOps para desarrolladores Java

Stephen Chin, Melissa McKay, Ixchel Ruiz, Baruch Sadogursky
Q# Pocket Guide

Q# Pocket Guide

Mariia Mykhailova

Publisher Resources

ISBN: 9781098180157Supplemental Content