Ta strona została przetłumaczona przez Cloud Translation API.
Switch to English

Konfigurowanie Visual Studio Code

Visual Studio to darmowy edytor kodu, który działa w systemach operacyjnych macOS, Linux i Windows.

Posiada niezłe narzędzia do programowania w Pythonie i C ++, wizualny debugger, integrację z git i wiele innych przydatnych funkcji. Jest to świetny edytor do wykorzystania w programowaniu TensorFlow IO, ale jego poprawna konfiguracja wymaga pewnego wysiłku. Konfiguracja VSCode jest bardzo elastyczna, pozwala na kompilację projektu przy użyciu bazela i uruchamianie kodu w debuggerach Python i C ++. Ta instrukcja dotyczy Linuksa, inne systemy operacyjne mogą mieć szczegółowe informacje, ale podejście powinno być podobne.

Rozszerzenia

Aby zainstalować rozszerzenie, kliknij ikonę widoku rozszerzeń (Rozszerzenia) na pasku bocznym lub użyj skrótu Ctrl + Shift + X. Następnie wyszukaj słowo kluczowe poniżej.

  • C / C ++ - Oficjalne rozszerzenie C ++ firmy Microsoft
  • Python - oficjalne rozszerzenie Pythona firmy Microsoft
  • Python Extension Pack - kolejne przydatne rozszerzenie do programowania w języku Python

Kompilowanie projektów

TensorFlow IO jest kompilowany za pomocą polecenia bazel build:

 bazel build -s --verbose_failures --compilation_mode dbg //tensorflow_io/...
 

Zobacz plik README projektu, aby uzyskać szczegółowe informacje na temat konfiguracji środowiska programistycznego w systemie Ubuntu. Flaga dbg --compilation_mode wskazuje, że utworzony plik binarny powinien mieć symbole debugowania. Po skompilowaniu projektu z wiersza poleceń można również skonfigurować VSCode, aby móc wywołać to samo polecenie.

Otwórz Widok-> Paleta poleceń (Ctrl + Shift + P) i zacznij pisać: „Zadania: Konfiguruj zadanie tworzenia”. Jeśli robisz to po raz pierwszy, redaktor zasugeruje utworzenie pliku tasks.json. Gdy już to zrobisz, wklej następujący plik json:

 {
    "version": "2.0.0",
    "tasks": [
        {
            "label": "Build TF.IO (Debug)",
            "type": "shell",
            "command": "bazel build -s --verbose_failures --compilation_mode dbg //tensorflow_io/...",
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher": []
        }
    ]
}
 

Teraz możesz nacisnąć „Ctrl + Shift + B”, a VSCode użyje powyższego polecenia do zbudowania projektu. Korzysta z własnego okna terminala, w którym wszystkie linki są klikalne. Kiedy więc wystąpi błąd kompilacji, wystarczy kliknąć łącze, a edytor otworzy odpowiedni plik i przejdzie do wiersza.

Debugowanie projektów

Debugowanie kodu Pythona jest trywialne, postępuj zgodnie z oficjalną dokumentacją, aby dowiedzieć się, jak skonfigurować VSCode, aby to umożliwić: https://code.visualstudio.com/docs/python/debugging Debugowanie Kod C ++ wymaga zainstalowania GDB w systemie. Jeśli masz skrypt Pythona bq_sample_read.py, który używa biblioteki tensorflow-io, która jest normalnie wykonywana na przykład:

 python3 bq_sample_read.py --gcp_project_id=...
 

Aby wykonać to w GDB, uruchom:

 gdb -ex r --args python3 bq_sample_read.py --gcp_project_id=...
 

Jeśli aplikacja ulegnie awarii w kodzie C ++, możesz uruchomić backtrace w konsoli GDB, aby uzyskać stacktrace.

VSCode obsługuje również debugger GDB, pozwala na dodawanie punktów przerwania, przeglądanie wartości zmiennych i przechodzenie przez kod. Aby dodać konfigurację debugowania, naciśnij ikonę Widok debugowania (Debugowanie) na pasku bocznym lub użyj skrótu Ctrl + Shift + D. Tutaj naciśnij małą strzałkę w dół obok przycisku odtwarzania i wybierz „Dodaj konfigurację ...”. Utworzy plik launch.json, dodaj następującą konfigurację tutaj:

 {
    "name": "(gdb) Launch",
    "type": "cppdbg",
    "request": "launch",
    "program": "/usr/bin/python3",
    "args": ["bq_sample_read.py", "--gcp_project_id=..."],
    "stopAtEntry": false,
    "cwd": "${workspaceFolder}",
    "environment": [
        {
            /* path to your bazel-bin folder */
            "name": "TFIO_DATAPATH",
            "value": "/usr/local/google/home/io/bazel-bin"
        },
        {
            /* other env variables to use */
            "name": "GOOGLE_APPLICATION_CREDENTIALS",
            "value": "..."
        }
    ],
    "externalConsole": false,
    "MIMode": "gdb",
    "setupCommands": [
        {
            "description": "Enable pretty-printing for gdb",
            "text": "-enable-pretty-printing",
            "ignoreFailures": true
        }
    ]
}
 

Jeśli wszystko jest poprawnie skonfigurowane, powinieneś móc wykonać Uruchom -> Rozpocznij debugowanie (F5) lub Uruchom -> Uruchom bez debugowania (Ctrl + F5). Spowoduje to uruchomienie twojego kodu w debugerze:

Debugger VSCode

Inną rzeczą, którą warto zrobić, aby uprościć debugowanie, jest skonfigurowanie GDB tak, aby pomijał standardowe biblioteki C ++, aby nie wchodzić w kod, na którym nie zależy. W tym celu utwórz plik ~/.gdbinit o następującej treści:

 skip -gfi /usr/include/c++/*/*/*
skip -gfi /usr/include/c++/*/*
skip -gfi /usr/include/c++/*
 

Formatowanie plików

Zawsze możesz przeformatować plik C ++ lub Python, klikając prawym przyciskiem myszy -> Formatuj dokument (Ctrl + Shift + I), ale VSCode używa innej konwencji stylu. Na szczęście łatwo to zmienić.

Informacje na temat formatowania w Pythonie można znaleźć na stronie https://donjayamanne.github.io/pythonVSCodeDocs/docs/formatting/

Aby skonfigurować program formatujący C ++, wykonaj następujące czynności:

  • Idź Preferencje -> Ustawienia
  • Wyszukaj C_Cpp.clang_format_fallbackStyle
  • Zmodyfikuj plik: setting.json bezpośrednio
  • Dodaj obserwujących
 "C_Cpp.clang_format_fallbackStyle": "{ BasedOnStyle: Google}"