Go
Начало работы с использованием Atom
Поиск…
Вступление
После установки go ( http://www.riptutorial.com/go/topic/198/getting-started-with-go ) вам понадобится среда. Эффективный и бесплатный способ начать работу - использовать текстовый редактор Atom ( https://atom.io ) и gulp. Вопрос, который, возможно, перешел вам в голову, - зачем использовать глоток? Нам нужен глоток для автоматического завершения. Давайте начнем!
Получить, установить и настроить Atom & Gulp
- Установите Atom. Вы можете получить атом отсюда
- Перейдите в настройки Atom (ctrl +,). Пакеты -> Установить пакет go-plus ( go-plus )
После установки go-plus в Atom:
- Получите эти зависимости, используя go get или другой менеджер зависимостей: (откройте консоль и запустите эти команды)
go get -u golang.org/x/tools/cmd/goimports
go get -u golang.org/x/tools/cmd/gorename
go get -u github.com/sqs/goreturns
go get -u github.com/nsf/gocode
go get -u github.com/alecthomas/gometalinter
go get -u github.com/zmb3/gogetdoc
go get -u github.com/rogpeppe/godef
go get -u golang.org/x/tools/cmd/guru
- Установите Gulp ( Gulpjs ) с помощью npm или любого другого менеджера пакетов ( gulp-get -started-doc ):
$ npm install --global gulp
Создать $ GO_PATH / gulpfile.js
var gulp = require('gulp');
var path = require('path');
var shell = require('gulp-shell');
var goPath = 'src/mypackage/**/*.go';
gulp.task('compilepkg', function() {
return gulp.src(goPath, {read: false})
.pipe(shell(['go install <%= stripPath(file.path) %>'],
{
templateData: {
stripPath: function(filePath) {
var subPath = filePath.substring(process.cwd().length + 5);
var pkg = subPath.substring(0, subPath.lastIndexOf(path.sep));
return pkg;
}
}
})
);
});
gulp.task('watch', function() {
gulp.watch(goPath, ['compilepkg']);
});
В приведенном выше коде мы определили задачу compliepkg, которая будет запускаться каждый раз при каждом изменении файла go в goPath (src / mypackage /) или подкаталогах. задача будет запускаться командой оболочки go install changed_file.go
После создания файла gulp в пути go и определения задачи откройте командную строку и запустите:
вахта gulp
Вы будете делать что-то подобное каждый раз, когда любой файл изменяется:
Создать $ GO_PATH / mypackage / source.go
package mypackage
var PublicVar string = "Hello, dear reader!"
//Calculates the factorial of given number recursively!
func Factorial(x uint) uint {
if x == 0 {
return 1
}
return x * Factorial(x-1)
}
Создание $ GO_PATH / main.go
Теперь вы можете начать писать свой собственный код с автозаполнением с помощью Atom и Gulp:
package main
import (
"fmt"
"mypackage"
)
func main() {
println("4! = ", mypackage.Factorial(4))
}