Se ha denunciado esta presentación.
Se está descargando tu SlideShare. ×

Go Language presentation

Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Anuncio
Próximo SlideShare
Introduction to go lang
Introduction to go lang
Cargando en…3
×

Eche un vistazo a continuación

1 de 21 Anuncio

Más Contenido Relacionado

Presentaciones para usted (20)

Anuncio

Similares a Go Language presentation (20)

Más reciente (20)

Anuncio

Go Language presentation

  1. 1. Software Engineer Mohammed R. Eldadah @ Exa Serve
  2. 2. Go Short introduction
  3. 3. Outline • Story of Go • Purpose of Go • Solving modern programing challenges • Who is using Go? • Conclusion
  4. 4. Story of GO Robert Griesemer Rob Pike Ken Thompson On 2007, started sketching the goals for a new language on the white board On 2009, became an open source project On 2012, first stable release
  5. 5. Story of GO ‘’ In Google we have very large software systems and we spent so long literally waiting for compilations’’ Rob Pike
  6. 6. Story of GO ‘’The three of us got together and decided that we hated C++’’ ken Thompson.
  7. 7. Purpose of GO • Computers are enormously quicker but software development is not faster. • Dependency management • Concurrency is Built In • Memory Management
  8. 8. Solving Modern Programming Challenges • Choosing Static or Dynamic Language • Programs Compile Quickly • Easy Memory Management • Enables Code Reuse • How Will Your Language Handle Concurrency
  9. 9. Static or Dynamic Language • Dynamic Languages – Easy programing – Not type safe • Static Languages – Type safety – Slower
  10. 10. Go is Static language, but.. • Number := 5 • Name := “Mohammed” • isTrue := false
  11. 11. In Go, you wouldn't spend a second of time compiling
  12. 12. Memory Management • Applications may crash if there is : – Improper memory management – leak memory • In languages, like C or C++, you need to allocate a piece of memory before you can use it, then de-allocate
  13. 13. Memory Management Go has a modern garbage collector that does the hard work for you
  14. 14. Enables Code Reuse Go Rethinks traditional object orientation for a flexible hierarchy-free type system that enables code reuse with minimal refactoring overhead.
  15. 15. Handle Concurrency • Building a concurrent program is very hard • You need to be careful from – Race condition – Dead Lock
  16. 16. Handle Concurrency • Go provides : – Goroutines • Like threads, but use less memory and code – Channels • Communication way between goroutines
  17. 17. Who is using GO ?
  18. 18. Conclusion • Go is a : –compiled, –concurrent, –garbage-collected, – statically typed language –developed at Google. – and, It is an open source project
  19. 19. Mobile PHPCSS JS GO Node JS HTML .NET

×