Wtyczka do VS Code dla języka GO -- łatwy start Temat rozwiązany

Awatar użytkownika
SunRiver
Użytkownik
Posty: 1511
Rejestracja: 08 paź 2017, 11:27
Lokalizacja: Festung Oppeln
Kontakt:

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: SunRiver »

nowa wersja jest już dostępna na Marketplace ,

wersja 0.8.0 wnosi poza poprawkami w działaniu terminala również dużą nowość.
szczegóły i plik instalacyjny oraz obszerna dokumentacja dostępne też na https://github.com/SunDUINO/SunGo-Proje ... ger-relase
a że jeden obraz mówi więcej niż 1000 słów ...

Obrazek
Awatar użytkownika
gufim
Użytkownik
Posty: 186
Rejestracja: 16 paź 2017, 16:58

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: gufim »

Brak słów szczęka opadła do samej podłogi super przydatna robota dzięki Sun
Awatar użytkownika
SunRiver
Użytkownik
Posty: 1511
Rejestracja: 08 paź 2017, 11:27
Lokalizacja: Festung Oppeln
Kontakt:

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: SunRiver »

wersja 1.1.1 -- bo musiałem poprawić tłumaczenia :(

Doszło też sporo nowości ....

1. Generator nagłówków
-- posiada 5 wbudowanych styli i jeden dla uzytkownika custom

Obrazek

2. Metryki kodu
-- podział na funkcje ich ilość linii, liczbę zagnieżdżeń if -- można w palecie CTRL+, ustawić progi
-- sugestie dzielenia kodu ...

Obrazek

3. Notatnik - kodu

-- tworzy plik markdown w folderze .vscode w którym można nanosić notatki dla kodu - todo itd ...

5. Dużo czasu zajęło porządkowanie kodu i paneli ...
--- zmieniłem ikonki w Daschboardzie (HOME) teraz są jednolite za wyjątkiem gophera
--- zmniejszyłem liczbę ikon inline do 3 w widoku projektów przy aktywnym projekcie , który teraz jest widoczny z zieloną ikonką

Obrazek

--- uporządkowałem paletę ustawień wtyczki CTRL+, teraz są pogrupowane dla łatwiejszego operowania

Obrazek

--- Dodałem TreeView z narzędziami - oraz poprawiłem ich tłumaczenie

Obrazek



Miłego użytkowania ...

PS trwają prace nad nową bardziej bajerancką wersją SunMacro PAD v2
Awatar użytkownika
gufim
Użytkownik
Posty: 186
Rejestracja: 16 paź 2017, 16:58

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: gufim »

Kawał dobrej roboty aż brak słów
Awatar użytkownika
SunRiver
Użytkownik
Posty: 1511
Rejestracja: 08 paź 2017, 11:27
Lokalizacja: Festung Oppeln
Kontakt:

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: SunRiver »

ostatnio się nieco obijam, ale planuję kilka dodatków i usprawnień do wtyczki które niebawem będą się
pokazywać w kolejnych updatach ....

Co zaplanowałem ?

Spójrzmy na to z perspektywy użytkownika Go – co mu najbardziej przeszkadza lub czego brakuje w codziennej pracy:

1: Wysokie wartości / realna potrzeba:
-- Dual Repository Publisher – umożliwi ustawienie dodatkowego repozytorium gdzie wystarczy jeden klik
żeby wysłać binarkę do publicznego repo, a źródła do głównego.

-- go generate runner – wiele projektów Go używa //go:generate do generowania kodu (mockery, stringer, protobuf).
Zauważyłem brak UI do tego w VS Code

-- Snippet manager – gotowe snippety Go do wklejenia: goroutine pattern, error handling, context, mutex, channel...
wbudowane w kreator lub jako osobny panel


2: Średnie wartości:
-- Dependency graph – wizualizacja zależności projektu jako graf (kto zależy od kogo) na podstawie go.mod
-- Go workspace support – obsługa go.work dla multi-module projektów
-- Build tags UI – wybór build tagów (//go:build linux, debug itp.) przy kompilacji

3: UX / Komfort:
-- Favorite projects – przypinanie projektów do góry listy, obecnie jest tylko lista i pięć ostatnich w HOME
-- Project templates z git – pobieranie szablonów z GitHub zamiast hardkodowanych
-- go doc viewer – podgląd dokumentacji pakietu inline w panelu

4: Bonus:
-- Animowany Gopher - maskotka w stylu spinacza z office z własną osobowością :)

 ! Wiadomość z: SunRiver
Wykreśliłem z listy zrealizowane pomysły -- Gopher wyszedł przypadkiem, ale to taki miły akcencik.
Awatar użytkownika
gufim
Użytkownik
Posty: 186
Rejestracja: 16 paź 2017, 16:58

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: gufim »

Bardzo ciekawe i szczegółowe plany rozwoju
Awatar użytkownika
SunRiver
Użytkownik
Posty: 1511
Rejestracja: 08 paź 2017, 11:27
Lokalizacja: Festung Oppeln
Kontakt:

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: SunRiver »

wersja 1.9.1 już na marketplace ....

szczegóły wydania https://marketplace.visualstudio.com/it ... /changelog

Gofer asystent dodany we wcześniejszej wersji - okazyjnie dostał trochę osobowości :)

Obrazek

I ma charakterek :)

Obrazek

Obrazek

.... to tylko fragment ...
Awatar użytkownika
SunRiver
Użytkownik
Posty: 1511
Rejestracja: 08 paź 2017, 11:27
Lokalizacja: Festung Oppeln
Kontakt:

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: SunRiver »

kolejna rzecz z listy wykreślona ...

ostatnio się nieco obijam, ale planuję kilka dodatków i usprawnień do wtyczki które niebawem będą się
pokazywać w kolejnych updatach ....

Co zaplanowałem ?

Spójrzmy na to z perspektywy użytkownika Go – co mu najbardziej przeszkadza lub czego brakuje w codziennej pracy:

1: Wysokie wartości / realna potrzeba:
-- Dual Repository Publisher – umożliwi ustawienie dodatkowego repozytorium gdzie wystarczy jeden klik
żeby wysłać binarkę do publicznego repo, a źródła do głównego.

-- go generate runner – wiele projektów Go używa //go:generate do generowania kodu (mockery, stringer, protobuf).
Zauważyłem brak UI do tego w VS Code

-- Snippet manager – gotowe snippety Go do wklejenia: goroutine pattern, error handling, context, mutex, channel...
wbudowane w kreator lub jako osobny panel


2: Średnie wartości:
-- Dependency graph – wizualizacja zależności projektu jako graf (kto zależy od kogo) na podstawie go.mod
-- Go workspace support – obsługa go.work dla multi-module projektów
-- Build tags UI – wybór build tagów (//go:build linux, debug itp.) przy kompilacji

3: UX / Komfort:
-- Favorite projects – przypinanie projektów do góry listy, obecnie jest tylko lista i pięć ostatnich w HOME
-- Project templates z git – pobieranie szablonów z GitHub zamiast hardkodowanych
-- go doc viewer – podgląd dokumentacji pakietu inline w panelu

4: Bonus:
-- Animowany Gopher - maskotka w stylu spinacza z office z własną osobowością :)


Tym razem w wydaniu 2.0.0 Dodałem Git templates ...

Obrazek

Dostęp do nowego webview jest zapewniony przez creatora projektów jak i panel narzędziowy SunGO Tools ...
Można korzystać z dedykowanego repozytorium :

Obrazek

Tutaj na git są tylko podfoldery z mlikiem main.go i konfiguracja w index.json działa to tak że po sklonowaniu do własnego projektu
jest tworzona automatycznie - wystarczy tylko uzyć synchronizacji inportów lub kliknąc import all.

Ale można też po wpisaniu url użyć kodu z dowolnego innego repozytorium

Obrazek

Co do obcego repo – zamiast próbować reorganizować cudzą strukturę (która może być dowolna),
zróbiłem to sprytniej:
-- przy cloneCustom pobieramy całe repo do src/ bez zmian, a SunGo tworzy tylko go.mod + .vscode/launch.json wokół.
Ostatecznie dostajemy działającą strukturę, a cały kod jest w src/. Jeśli ktoś sklonuje projekt z podfolderami to i tak trafią do src/
co daje czysty i przewidywalny wynik.
Awatar użytkownika
SunRiver
Użytkownik
Posty: 1511
Rejestracja: 08 paź 2017, 11:27
Lokalizacja: Festung Oppeln
Kontakt:

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: SunRiver »

2: Średnie wartości:
-- Dependency graph – wizualizacja zależności projektu jako graf (kto zależy od kogo) na podstawie go.mod
-- Go workspace support – obsługa go.work dla multi-module projektów
-- Build tags UI – wybór build tagów (//go:build linux, debug itp.) przy kompilacji


Patrzę na tę trójkę pod kątem wartości vs nakład pracy:

Dependency graph – wizualnie efektowny, ale go.mod w typowym projekcie ma 2-5 zależności. Graf z 4 nodami nie robi wrażenia. Bardziej sensowny byłby dla multi-module workspace.
Go workspace (go.work) – przydatny ale niszowy. Większość użytkowników ma jeden moduł. Nakład duży, użycie małe.
Build tags UI – to jest daily driver który jest trochę sensowy. Każdy kto buduje na Linux/Windows/ARM używa tagów. Teraz trzeba pamiętać flagę, wpisywać ręcznie w terminalu. Jeden checkbox lub dwa w kreatorze builda zmienią workflow.

Niemniej na tą chwilę nie będę wdrażał tych opcji bo się okazuje że będzie więcej rzeczy do zrobienia takich bardziej istotnych:

1. Refaktoryzacja i optymalizacja niektórych elementów kodu
2. Migracja na nowszy node
3. Dokumentacja https://github.com/SunDUINO/SunGo-Proje ... elase/wiki

i w następnych updatach na tym się skupię by korzystanie z wtyczki było przyjemnością i jednocześnie podnosiła komfort pracy.
oczywiście ważny jest także każdy feedback od was użytkowników - bo pozwoli stworzyć wtyczkę jeszcze lepszą

Mam też pewne plany względem maskotki jaką jest gopher mianowicie chce rozszerzyć jego działania i stworzyć:
SunGo Code Review Assistant – panel który analizuje aktywny plik .go i daje konkretne wskazówki w kontekście kodu, nie tylko ogólne porady.

Ma mniej więczej działać tak ten mechanizm:

-- Czyta aktywny plik .go
-- Zwraca przegląd podzielony na kategorie: Błędy logiczne, Wydajność, Go idioms, Bezpieczeństwo, Sugestie
-- Każda uwaga pokazuje konkretną linię kodu + propozycję poprawki
-- Jeden przycisk "Fix this" → wstawia poprawkę do edytora przez applyEdit

Na początek tylko lokalna analiza przez go vet + staticcheck + golangci-lint z ładnym UI zamiast surowego outputu terminala.
Czyli Gopher przestaje być tylko maskotką – staje się aktywnym asystentem który czyta kod.

Później z czasem może podłączę Gophera przez api do któregoś modelu LLM , choć uważam że nie jest to potrzebne.
Niemniej głównym kierunkiem rozwoju będzie samodzielne SunGO Studio, a wtyczka to taki trochę ograniczony poligon doświadczalny.
Ograniczony, bo ogranicza mnie vscode - np nie mogę zrobić interaktywnego freeView a jedynie statyczny. Np Gopher siedzi w panelu.

Co o tym sądzicie ??
Awatar użytkownika
gufim
Użytkownik
Posty: 186
Rejestracja: 16 paź 2017, 16:58

Re: Wtyczka do VS Code dla języka GO -- łatwy start

Post autor: gufim »

Refrakcja super pomysł a co do Gophera wyśmienity pomysł taki asystencik który pomoże
ODPOWIEDZ

Wróć do „Programowanie w Go. Poznaj prosty i wydajny język od Google”