Решил поизучать Go в свободное время. Язык интересный, но непонятно со средами разработки и с устройством проектов.
Из сред разработки только Goland и VSCode, но Goland платный и его даже не запустить без регистрации, и заявленное время бесплатной работы — месяц. Т.е. эту среду даже не вижу смысла рассматривать.
В интерфейсе VScode нет привычных после С++ кнопок Build, Rebuild All (и вообще нет привычного тулбара, есть только команды меню...).
Есть команда "начать отладку", но отладка нужна не всегда.
Имеются некие "Tasks", т.е. как я понял — команды, которые можно запускать из ide.
Нашел некую информацию, что все эти команды прописываются в tasks.json
Нашел даже пример как прописывать: https://robertbasic.com/blog/build-and-run-golang-projects-in-vs-code/
но как-то оно совершенно неудобно. Нет привычного Error List, как в нормальной Студии, чтобы щелкнуть по ошибке и она тут же открылась в окне редактора.
Нет автосохранения перед компиляцией, т.е. нужно еще раз лезть в меню и вручную выбирать Save All перед каждой компиляцией.
И вообще эти "tasks" выглядят как-то не очень интегрированно.
Может я что-то делаю неправильно и есть способ лучше?
Здравствуйте, 00011011, Вы писали:
0>Из сред разработки только Goland и VSCode, но Goland платный и его даже не запустить без регистрации, и заявленное время бесплатной работы — месяц. Т.е. эту среду даже не вижу смысла рассматривать.
Если есть возможность оплатить подписку Goland, то это стоит сделать, т.к. это лучшая IDE для Go. VSCode и рядом не стояла.
0>Может я что-то делаю неправильно и есть способ лучше?
vscode предполагает активное использование консоли. Поэтому открываете терминал (прям в нём) и пишете там go run . все ошибки будут там показаны и можно command+click-ать по ним для перехода в редактор. Или запускаете в консоли же что-то вроде air которое само будет отслеживать изменения в файлах и перезапускать вашу программу.
А так — есть окошко View / Problems, наверное вы его не нашли.
Здравствуйте, kaa.python, Вы писали:
KP>Если есть возможность оплатить подписку Goland, то это стоит сделать, т.к. это лучшая IDE для Go. VSCode и рядом не стояла.
поставил триальный goland, ну в целом неплохо, солидная программа, но все равно нет команды Build
есть Run, программа запускается во встроенной консоли, но exe файл при этом отсутствует!
Под vscode хотя-бы exe формировался и оставался в папке с исходниками.
Как они это умудряются такое делать и как сделать так, чтобы появилось какое-то меню или лучше кнопочка на тулбаре с классической командой Build?
то что кнопки Save нет я уж молчу, есть хотя-бы в меню Save All.
Здравствуйте, 00011011, Вы писали:
0>поставил триальный goland, ну в целом неплохо, солидная программа, но все равно нет команды Build 0>есть Run, программа запускается во встроенной консоли, но exe файл при этом отсутствует! 0>Под vscode хотя-бы exe формировался и оставался в папке с исходниками.
Полагаю что файл кладется в $GOPATH, или что там сейчас за место него. Не писал на Го уже несколько лет
0>Как они это умудряются такое делать и как сделать так, чтобы появилось какое-то меню или лучше кнопочка на тулбаре с классической командой Build?
Тут у тебя некоторое непонимание концепта VSCode и GoLand как мне кажется. Дело в том, что Run не означает "запусить приложение", Run означает "запустить команду которую я сконфигурировал так, как мне хочется". Ты вполне можешь создать другую команду, которая будет выполняться по нажатию на кнопку Run, тот же "go build .", к примеру. Причем это поведение достаточно стандартно для всех сред за пределами Windows, наверное по началу это не удобно из за необходимости изменять привычки и начанить разбираться что же именно под капотом кнопки делается.
0>то что кнопки Save нет я уж молчу, есть хотя-бы в меню Save All.
Ctrl+S что-то там сохраняет. Зачем тебе кнопка-то вообще?
Здравствуйте, kaa.python, Вы писали:
KP>Тут у тебя некоторое непонимание концепта VSCode и GoLand как мне кажется. Дело в том, что Run не означает "запусить приложение", Run означает "запустить команду которую я сконфигурировал так, как мне хочется". Ты вполне можешь создать другую команду, которая будет выполняться по нажатию на кнопку Run, тот же "go build .", к примеру. Причем это поведение достаточно стандартно для всех сред за пределами Windows, наверное по началу это не удобно из за необходимости изменять привычки и начанить разбираться что же именно под капотом кнопки делается.
Ну да, наверное.
Нашел что получение exeшника это просто go build из встроенной консоли.
KP>Ctrl+S что-то там сохраняет. Зачем тебе кнопка-то вообще?