Go (език за програмиране)
| Парадигма | обектно ориентиран, процедурен |
|---|---|
| Реализиране през | 2009 г. |
| Автор | Google и Роб Пайк, Кен Томпсън, Робърт Гриземер |
| Типове данни | статичен |
| Повлиян от | C, Oberon, Limbo |
| Повлиява | - |
| Уебсайт | golang.org |
Go е нов език за програмиране разработен от Google.[1] Първоначалният проект на Go е започнат през септември 2007 г. от Робърт Гриземер, Роб Пайк и Кен Томпсън.[2] Разработката на езика е от 2007 година, но официално е обявен през 2009 година в бета версия. Въпреки това днес Go се използва в някои приложения на Google, както и в сайта на Go.
Съдържание |
Цел [редактиране]
Според създателите на Go, целта за създаването му е била породена от появата на многоядрени процесори, паралелни изчисления и ускоряването на работата на компютрите, но не и на разработката на софтуер. Компилира се бързо.
Характеристика [редактиране]
Go е статичен, компилиращ се език с автоматично освобождаване на ресурсите (garbage-collected). Синтаксиса му е близък до този на C с някои изключения. Обектно ориентиран е, но няма класове. Има само един цикъл - for, конструкции if и Switch.В момента има компилатори за следните операционни системи: linux, freebsd, darwin(Mac OS X 10.5 or 10.6) , 64-bit x86, 32-bit x86 и 32-bit ARM. В момента няма официална поддръжка на Go за Windows, макар да го има от трети страни.
Примерна програма [редактиране]
Програмата Hello,World
package main import "fmt" func main() { fmt.Printf("Hello,World") }
Пример(константи,проеменливи,for,switch) :
package main import "fmt" const ( HELLO = "Hello" INTERVAL = " " GOLANG = "Go" ) var ( hello string = "Hello" world string = "World" ) func main() { // for for i := 0 ; i < 5 ; i++ { fmt.Println(i) } fmt.Println(hello + " " + world) fmt.Println(HELLO + INTERVAL + GOLANG) // switch switch { case len(HELLO) < len(GOLANG): fmt.Println("len(HELLO) < len(GOLANG)") case len(HELLO) > len(GOLANG): fmt.Println("len(HELLO) > len(GOLANG)") } }
Ключови думи [редактиране]
break default func interface select case defer go map struct chan else goto package switch const fallthrough if range type continue for import return var
Лиценз [редактиране]
Лицензът е BSD.
Източници [редактиране]
- ↑ Jason Kincaid. Google's Go: A New Programming Language That's Python Meets C++. // TechCrunch. Посетен на 2011-03-03.
- ↑ "Language Design FAQ". // Посетен на 2011-03-03.