Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° VS Code
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° VS Code
- Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΡ VS Code
- ΠΡΠ±ΠΎΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ° python
- ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ°Π±ΠΎΡΡ Ρ GCC
- Π Π°Π±ΠΎΡΠ° Ρ CMake
- Π Π°Π±ΠΎΡΠ° Ρ git
- ΠΡΡΠΎΡΠ½ΠΈΠΊΠΈ
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° VS Code
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° VS Code Π½Π΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ. ΠΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΎΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» ΡΠΎ ΡΡΡΠ°Π½ΠΈΡΡ Π·Π°Π³ΡΡΠ·ΠΎΠΊ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΅Π³ΠΎ.
ΠΠ°Π»Π΅Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Git for Windows, MinGw, CMake ΠΈ Miniconda3.
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΡΡΠΎΠΈΠΌ VS Code Π΄Π»Ρ ΡΠ΄ΠΎΠ±Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ·ΡΠΊΠ°ΠΌΠΈ C++ ΠΈ Python.
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΡ VS Code
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ VS Code:
- C/C++ for Visual Studio Code
- CMake Tools
- Python
ΠΡΠ±ΠΎΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΠ° python
ΠΡΠΈ Π½Π°ΡΠ°Π»Π΅ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ python (ΡΠ°ΠΉΠ»ΠΎΠΌ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .py) VS Code ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡ Π²ΡΠ±ΡΠ°ΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ python, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΠΈ ΠΊΠΎΠ΄Π°, ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΠΈ Π²ΡΠ²ΠΎΠ΄Π° ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΎΠΊ:
ΠΠΎΠΆΠ΅ΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠ±ΡΠ°ΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ ΠΈΠ· Π½Π΅Π΄Π°Π²Π½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ nsu.
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΉΠ» test.py, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ:
print('Hello, world!')
ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΠΎΡ ΡΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΡΠΊΡΡΠ² ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π² VS Code Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ Ctrl+J ΠΈ Π½Π°Π±ΡΠ°Π² Π² Π½Π΅ΠΉ
python test.py
Π ΠΏΡΠ°Π²ΠΎΠΌ Π²Π΅ΡΡ Π½Π΅ΠΌ ΡΠ³Π»Ρ ΠΎΠΊΠ½Π° Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΠΊΠ½ΠΎΠΏΠΊΠ° Ρ Π·Π΅Π»Π΅Π½ΡΠΌ ΡΡΠ΅ΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠΌ ▷, Π½Π°ΠΆΠ°ΡΠΈΠ΅ Π½Π° ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΎΠΌΡ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ:
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ°Π±ΠΎΡΡ Ρ GCC
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» test.cpp, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
#include <iostream>
int main() {
std::cout << "Hello, world!" << std::endl;
return 0;
}
Π‘ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° GCC ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. ΠΡΠΊΡΠΎΠΉΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π² VS Code (Ctrl+J) ΠΈ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
> g++ test.cpp
ΠΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠΎΠ·Π΄Π°Π» ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» a.exe. ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ Π΅Π³ΠΎ:
> .\a.exe Hello, world!
Π Π°Π±ΠΎΡΠ°Π΅Ρ. ΠΠ°ΡΡΡΠΎΠΈΠΌ ΡΠ΅ΠΏΠ΅ΡΡ VS Code Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π² ΠΌΠ΅Π½Ρ ΠΏΡΠ½ΠΊΡ Terminal -> Configure Default Build Task.:
..
ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΠΈΠ· Π²ΡΠΏΠ°Π²ΡΠ΅Π³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠ½ΠΊΡ g++.exe. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½ ΡΠ°ΠΉΠ» .vscode/tasks.json ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠ°ΠΊΠΎΠΌΡ:
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "C/C++: cpp.exe build active file",
"command": "D:\\mingw\\mingw32\\bin\\g++.exe",
"args": [
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "${workspaceFolder}"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
Π’Π΅ΠΏΠ΅ΡΡ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΊΠ»Π°Π²ΠΈΡ Ctrl+Shift+B ΠΈΠ»ΠΈ Π²ΡΠ±ΠΎΡΠ΅ ΠΏΡΠ½ΠΊΡΠ° ΠΌΠ΅Π½Ρ Terminal -> Run Build Task Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΡ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°. ΠΠ»Ρ ΡΠ°ΠΉΠ»Π° test. Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ»
cpptest.exe.
Π Π°Π±ΠΎΡΠ° Ρ CMake
ΠΡΠΊΡΠΎΠΉΡΠ΅ Π½ΠΎΠ²ΡΡ ΡΠ°Π±ΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ VS Code, ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π² Π½Π΅ΠΉ ΡΠ°ΠΉΠ» main.cpp, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
#include <iostream>
int main() {
std::cout << "Hello, world!" << std::endl;
return 0;
}
ΠΈ ΡΠ°ΠΉΠ» CMakeLists.txt ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ΠΌ:
cmake_minimum_required(VERSION 3.0.0) add_executable(test main.cpp)
ΠΡΠΈ Π΄Π²Π° ΡΠ°ΠΉΠ»Π° ΡΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ CMake-ΠΏΡΠΎΠ΅ΠΊΡ. ΠΡΠΏΠΎΠ»Π½ΠΈΠΌ ΡΠ½Π°ΡΠ°Π»Π° ΡΠ±ΠΎΡΠΊΡ CMake-ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠΎΠ»Ρ: ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π² ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΠΏΠΎΠ΄Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ build
> mkdir build; cd build
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΠ±ΠΎΡΠΊΡ:
> cmake -G "MinGW Makefiles" .. > cmake --build .
Π ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΌΡ ΡΠΊΠ°Π·Π°Π»ΠΈ, ΡΡΠΎ ΡΠ±ΠΎΡΠΊΠ° Π±ΡΠ΄Π΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ MinGW ΠΈ ΡΡΠΎ ΡΠ°ΠΉΠ»Ρ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ Π² ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ (ΠΏΡΡΡ .). ΠΡΠΎΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΠ΅Ρ ΡΠ±ΠΎΡΠΊΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ (ΠΏΡΡΡ
..). Π Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ build Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» test.exe.
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ VS Code Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ CMake ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ±ΠΎΡΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΡΠ°Π±ΠΎΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ VS Code (ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ Ctrl+K+O), ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΡΠ°ΠΉΠ»Ρ main.cpp ΠΈ CMakeLists.txt. ΠΠ°Π±Π΅ΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ Ctrl+Shift+P ΠΈ Π² ΡΡΡΠΎΠΊΠ΅ ΡΠ²Π΅ΡΡ
Ρ Π½Π°Π±Π΅ΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ >CMake: Configure. ΠΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² CMake. ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π² Π½ΠΈΠΆΠ½Π΅ΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΊΠ½Π° ΠΏΠΎΡΠ²ΡΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ±ΠΎΡΠΊΠΎΠΉ:
ΠΠ½ΠΎΠΏΠΊΡ «Π‘Π±ΠΎΡΠΊΠ°» Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠ±ΠΎΡΠΊΡ, Π° ΠΊΠ½ΠΎΠΏΠΊΠ° ▷ — ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ».
ΠΡΠ»ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° CMake ΠΏΡΠΈΠ²Π΅Π»Π° ΠΊ ΠΎΡΠΈΠ±ΠΊΠ΅, ΡΠΎ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ CMake Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»Π°ΡΡ Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° -G "MinGW Makefiles". Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²ΡΡΠ΅. ΠΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΈ Π΄ΡΡΠ³ΠΈΡ
ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π²Π΅ΡΠ½ΠΎ.
Π Π°Π±ΠΎΡΠ° Ρ git
ΠΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ git-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ ΡΠ΅ΡΠ΅Π· VS Code. ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ fork ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π·Π°Π΄Π°Π½ΠΈΡ Hello, Classroom Π½Π° GitHub:
ΠΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π² ΠΠ°ΡΠ΅ΠΌ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ΅. Π Π°Π·ΡΠ΅ΡΠΈΡΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ, Π½Π°ΠΆΠ°Π² Π½Π° Π±ΠΎΠ»ΡΡΡΡ Π·Π΅Π»Π΅Π½ΡΡ ΠΊΠ½ΠΎΠΏΠΊΡ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Actions:
ΠΠΎΠ²ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΠΠ°ΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ. Π£Π΄ΠΎΠ±Π½Π΅Π΅ Π²ΡΠ΅Π³ΠΎ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ssh. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ½Π°ΡΠ°Π»Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ OpenSSH Client, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΡΠΊΠ»ΡΡΠ΅Π½.
ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ GitHub ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅ΠΌ Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ ΠΏΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ ssh Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅Ρ Π½ΠΈΠΊΠΈ ΡΠΈΡΡΠΎΠ²Π°Π½ΠΈΡ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ. Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΏΠ°ΡΡ ΠΈΠ· ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΠ³ΠΎ ΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ:
>ssh-keygen Generating public/private rsa key pair.
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠ»ΡΡΠΈ Π±ΡΠ΄ΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Ρ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ~\.ssh. Π€Π°ΠΉΠ» Ρ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΌ ΠΊΠ»ΡΡΠΎΠΌ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ id-rsa.pub. ΠΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½Π° GitHub.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°Π·Π΄Π΅Π» SSH and GPG keys Π² ΠΌΠ΅Π½Ρ Settings ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ New SSH key:
ΠΠ°ΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΎΡΠΊΡΡΠ²ΡΡΡΡΡ ΡΠΎΡΠΌΡ. Π ΠΏΠΎΠ»Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° id-rsa.pub. ΠΡΠΎΡΠ»Π΅Π΄ΠΈΡΠ΅, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½Π΅ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π»ΠΈΡΠ½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΡ ΡΡΡΠΎΠΊ. ΠΠ΅ΡΡ ΠΊΠ»ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ Π² ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅.
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΡ Π±ΡΠ΄Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π·Π°Π΄Π°Π½ΠΈΡΠΌΠΈ ΠΊΡΡΡΠ° ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² Π½Π΅Ρ. ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ hello-classroom Π² ΠΠ°ΡΠ΅ΠΌ Π°ΠΊΠΊΠ°ΡΠ½ΡΠ΅ GitHub ΠΈ ΡΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ ΡΡΡΠΎΠΊΡ Π΄Π»Ρ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· ssh:
ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git clone:
> git clone [email protected]:fakestud/hello-classroom.git Cloning into 'hello-classroom'... remote: Enumerating objects: 15, done. remote: Counting objects: 100% (15/15), done. remote: Compressing objects: 100% (8/8), done. remote: Total 15 (delta 0), reused 15 (delta 0), pack-reused 0 Receiving objects: 100% (15/15), done
Π‘ΡΡΠΎΠΊΠ° git@github.
com:fakestud/hello-classroom.git
hello-classroom. ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π΅Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ°Π±ΠΎΡΠ΅ΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ VS Code. ΠΡΠΎΡΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» README.md, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΏΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Π½ΠΈΡ. ΠΠΎΡΠ»Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ:> conda activate nsu > pip install -r .\requirements.txt > g++ -std=c++17 main.cpp -o a.out > test_cmd tests/ .\a.out Running 1 tests on 4 CPUs... test1 Command: .\a.out Success All 1 tests passed.
Π’Π΅ΡΡΡ ΠΏΡΠΎΠΉΠ΄Π΅Π½Ρ ΡΡΠΏΠ΅ΡΠ½Ρ. ΠΠ½Π°ΡΠΈΡ, ΠΌΡ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ GitHub Ρ Π½Π°ΡΠ΅ΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ΅ΠΉ. Π ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
git add main.cpp git commit -m "Task solved" git push -u origin master
Π Π΅Π΄Π°ΠΊΡΠΎΡ VS Code ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΡΠ΅ΡΠ΅Π· Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. VS Code ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ. ΠΡΠΊΡΠΎΠΉΡΠ΅ Π²ΠΊΠ»Π°Π΄ΠΊΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ ΡΠ»Π΅Π²Π° ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ²ΡΠΈΡ
ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ².
main.cpp. ΠΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git add, Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ +:ΠΠ°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git commit, Π½Π°ΠΆΠ°Π² Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ ✓ ΠΈ Π²Π²Π΅Π΄Ρ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΠΏΠΎΠ»Π΅:
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ git push:
ΠΡΡΠΎΡΠ½ΠΈΠΊΠΈ
- First-Time Git Setup
- VS Code: User and Workspace Settings
- VS Code: Using GCC with MinGW
- VS Code: Get started with CMake Tools on Linux
- Git in Visual Studio Code
- Must-have ΠΏΠ»Π°Π³ΠΈΠ½Ρ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΡΡΠ΅ΠΉ Π΄Π»Ρ Π‘\Π‘++ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² VS Code
- ΠΠ°ΠΌΡΡΠΊΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ ssh
c++ — ΠΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ Visual Studio Code Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ Π‘++?
Π£Π²Π°ΠΆΠ°Π΅ΠΌΡΠΉ usernameusername,
ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ Π³ΠΎΠ΄ Π½Π°Π·Π°Π΄ Ρ ΡΠΎΡΠ½ΠΎ ΡΠ°ΠΊ ΠΆΠ΅ Π½Π΅ ΠΌΠΎΠ³ Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ°Π·Π° Π½Π°ΡΡΡΠΎΠΈΡΡ VS Code.
ΠΠ°ΠΊ ΡΠΏΡΠ°Π²Π΅Π΄Π»ΠΈΠ²ΠΎ ΡΠΊΠ°Π·Π°Π»ΠΈ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ
— Π΅ΡΡΡ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½Π°Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρ ΠΎΡΡΠ°Π²Π»Ρ ΡΠ²ΠΎΠΉ ΠΎΡΠ²Π΅Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ Π±ΠΎΠ»Π΅Π΅ Π΄Π΅ΡΠ°Π»ΡΠ½ΡΠΉ Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΌΠΎΠΌΠ΅Π½ΡΠ°Ρ
.
Π§ΡΠΎΠ±Ρ Π½Π°ΡΡΡΠΎΠΈΡΡ VSC, Ρ ΠΎΡΠΎΡΠΎ Π±Ρ Π½Π°ΡΡΠΈΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. Π ΠΏΠΎΡΠΎΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, ΠΊΠΎΡΡΡΠ΅ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΠ»ΠΈΡΡ, Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ ΠΌΠ΅ΡΡΠ° Π² ΡΠ°ΠΉΠ»Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ VS code.
Π’ΡΡΠ΄Π½Π½ΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΈΠΌΠ΅Π½Π½ΠΎ Π² «Π·ΠΎΠΎΠΏΠ°ΡΠΊΠ΅» ΡΠ°Π·Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ. ΠΠ° ΡΡΠΎΠ³ΠΎ Π½Π΅ ΡΡΠΎΠΈΡ ΠΏΡΠ³Π°ΡΡΡΡ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌ (Linux, windows, macos), Π° ΠΡ Π½Π΅ ΡΠΊΠ°Π·Π°Π»ΠΈ, ΠΊΠ°ΠΊΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Ρ Π²Π°Ρ.
Π― ΠΏΡΠΈΠ²Π΅Π΄Ρ ΠΏΡΠΈΠΌΠ΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ° gcc ΠΏΠΎΠ΄ Win64. ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ ΠΌΠΎΠΈ ΡΠ°Π³ΠΈ, Π° ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡΡΠΈΡΡΡ — ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΠ΅Π»ΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ.
Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ msys2. Π― ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ» Π΅Π³ΠΎ Π²
C:\Programs\msys64. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠ°ΠΌ msys2 ΠΏΠΎΠ·Π°Π±ΠΎΡΠΈΠ»ΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΏΡΡΡ ΠΊ Π΅Π³ΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈΠΎΠΊΠ°Π·Π°Π»ΡΡ Π² path. ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ C:\Programs\msys64\mingw64\binpathΠ£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ Π΄Π΅Π±Π°Π³Π³Π΅Ρ.
Π― Π΄Π΅Π»Π°Ρ ΡΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠ° msys2, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² Π² ΠΎΠΊΠ½Π΅, ΠΊΠΎΡΡΠΎΠ΅ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ msys2, ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:pacman -Syuu
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ msys2. ΠΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΊΡΡΡΡ ΠΊΠΎΠ½ΡΠΎΠ»Ρ — ΡΡΠΎ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ, Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ Π΅Π΅ ΠΈ Π²Π²Π΅ΡΡΠΈ ΡΡ ΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΡΠΎΠ±Ρ Π·Π°Π²Π΅ΡΡΠΈΡΡ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅. Π₯ΠΎΡΠΎΡΠ΅ΠΉ ΠΈΠ΄Π΅Π΅ΠΉ Π±ΡΠ΄Π΅Ρ Π²ΡΠ΅ΠΌΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ, ΡΡΠΎΠ±Ρ Π²ΡΠ΅Π³Π΄Π° ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠ°.
ΠΠ°ΡΠ΅ΠΌ:
pacman -S mingw-w64-x86_64-gcc pacman -S mingw-w64-x86_64-gdb
Π’Π΅ΠΏΠ΅ΡΡ Π² ΠΠ°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ Π΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈ Π΄Π΅Π±Π°Π³Π³Π΅Ρ. ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ: ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ, ΠΏΠΈΡΠ΅ΠΌ g++ --version
ΠΡΠ»ΠΈ ΠΎΡΠ²Π΅ΡΠΎΠΌ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π²Π΅ΡΡΠΈΡ — Π½Π°Π΄ΠΎ ΠΏΠΎΠΈΡΠΊΠ°ΡΡ, ΡΡΠΎ ΠΏΠΎΡΠ»ΠΎ Π½Π΅ ΡΠ°ΠΊ. ΠΡΠΎΠ²Π΅ΡΠΈΡΡ path, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π²ΡΡΡΠ½ΡΡ.
Π’Π°ΠΊΡΡ ΠΆΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Ρ
ΠΎΡΠΎΡΠΎ Π±Ρ ΡΠ΄Π΅Π»Π°Ρ Π΄Π»Ρ Π΄Π΅Π±Π°Π³Π³Π΅ΡΠ°: gdb --version
ΠΠΈΡΠ΅ΠΌ hello world. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π½Π°ΠΌ ΠΎΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. Π² Π»ΡΠ±ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΡΠΎΠ·Π°Π΄Π΅ΠΌ ΡΠ°ΠΉΠ» hello.cpp Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ
#include <iostream> int main() { std::cout << "Hello world!" << std::endl; return 0; };
ΠΏΠΎΡΠΎΠΌ Π² ΡΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ g++ hello. ΠΡΠ»ΠΈ ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ ΡΠ°ΠΉΠ» hello.exe, ΠΈ ΠΎΠ½ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΈ Π²ΡΠ²ΠΎΠΈΡ ΡΡΡΠΎΡΠΊΡ — ΠΎΠΊ, ΡΡΠΎΡ ΡΠ°Π³ Π·Π°Π²Π΅ΡΡΠ΅Π½.
cpp -o hello.exe
Π Π²ΠΎΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΡΡ VSC. ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΠΉ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ, Π²ΠΎ ΠΏΠ΅ΡΠ²ΡΡ Π΄Π»Ρ 32 ΠΈ 64 Π±ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ, Π° Π²ΠΎ Π²ΡΠΎΡΡΡ — ΡΠΎ, ΡΡΠΎ Π½Π°Π·ΡΠ²Π΅ΡΡΡ «User Installer» ΠΈ «System Installer». ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ 64 Π±ΠΈΡΠ½ΡΠΉ System Installer Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ
Π VSC ΡΡΠ°Π²ΠΈΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ C++, ΠΎΠ½ΠΎ Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ
C/C++ for Visual Studio CodeΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ MicrosoftΠ’Π΅ΠΏΠ΅ΡΡ Π·Π°ΠΏΡΡΡΠΈΠΌ VSC Π² ΠΏΠ°ΠΏΠΊΠ΅ ΠΠ°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡΡΡΡ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠ°ΠΏΠΊΠ°
C:\Projects\. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ ΡΠ°ΠΊ: Π·Π°ΠΏΡΡΠΊΠ°ΠΌ ΠΊΠΎΠ½ΡΠΎΠ»Ρ. ΠΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΈΠΌ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ Π² ΠΏΠ°ΠΏΠΊΡ (cd C:\Projects\). ΠΠ°ΠΏΡΡΠΊΠ°Π΅ΠΌ VSC ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉcode ..
ΠΠ°ΠΆΠ½ΠΎ ΡΠΎ, ΡΡΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΏΠ°ΠΏΠΊΠ° Π½Π°ΡΡΡΠΎΠ΅ΠΊ VSC, ΠΊΠΎΡΡΡΠ΅ Π½Π°Ρ
ΠΎΠ΄ΡΡΡΡ ΠΏΠΎ ΠΏΡΡΠΈ C:\Projects\.vscode. Π ΡΡΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ 4 ΡΠ°ΠΉΠ»Π°, Ρ ΠΏΡΠΈΠ²Π΅Π΄Ρ ΠΈΡ
Π² ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ΅. ΠΡΡΠΈ — Π΄Π»Ρ ΠΌΠΎΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, Π³Π΄Π΅ msys2 ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π² C:\Programs\msys64\.
Π€Π°ΠΉΠ» tasks.json — ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΠΎ, ΡΡΠΎΠ±Ρ ΡΠ°Π±ΠΎΡΠ°Π»Π° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ Ctrl+shift+B Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
{
"version": "2.0.0",
"tasks": [
{
"type": "shell",
"label": "g++.exe build active file",
"command": "C:/Programs/msys64/mingw64/bin/g++.exe",
"args": [
"-std=c++17",
"-g",
"${file}",
"-o",
"${fileDirname}\\${fileBasenameNoExtension}.exe"
],
"options": {
"cwd": "C:\\Programs\\msys64\\mingw64\\bin"
},
"problemMatcher": [
"$gcc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
Π€Π°ΠΉΠ» launch.json — ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΠ°Π±ΠΎΡΡ Π΄Π΅Π±Π°Π³Π³Π΅ΡΠ°:
{
"version": "0.
2.0",
"configurations": [
{
"name": "g++.exe build and debug active file",
"type": "cppdbg",
"request": "launch",
"program": "${fileDirname}\\${fileBasenameNoExtension}.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:\\Programs\\msys64\\mingw64\\bin\\gdb.exe",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "g++.exe build active file",
"internalConsoleOptions": "neverOpen"
}
]
}
Π€Π°ΠΉΠ» settings.
json — ΠΊΠ°ΠΊ ΡΠΎ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΠ°ΠΉΠ»ΠΎΠ²ΡΠ΅ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°ΠΆΠ΅, ΡΡΠΎ ΠΎΠ½ Π½Π΅ ΠΎΡΠΎΠ±ΠΎ Π½ΡΠΆΠ΅Π½. ΠΠΎ Π»ΠΈΡΠ½ΠΈΠΌ Π½Π΅ Π±ΡΠ΄Π΅Ρ:
{
"files.associations": {
"ostream": "cpp",
"iostream": "cpp",
"iomanip": "cpp",
"chrono": "cpp",
"iosfwd": "cpp",
"thread": "cpp",
"array": "cpp",
"string_view": "cpp",
"initializer_list": "cpp",
"utility": "cpp",
"valarray": "cpp",
"optional": "cpp",
"sstream": "cpp"
}
}
Π€Π°ΠΉΠ» c_cpp_properties.json — ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ include — ΡΠ°ΠΉΠ»ΠΎΠ²:
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**",
"C:/Programs/msys64/mingw64/include/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"windowsSdkVersion": "8.
1",
"compilerPath": "C:\\Programs\\msys64\\mingw64\\bin\\g++.exe",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "gcc-x86"
}
],
"version": 4
}
ΠΡΠ»ΠΈ ΠΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ, Π° ΠΏΠΎΡΠΎΠΌ Π·Π°Π½ΠΎΠ²ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Π² ΡΡΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ VSC — ΡΠΎ Π²ΡΡ ΡΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ. Π’ΠΎ Π΅ΡΡΡ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° C++ Π±ΡΠ΄ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡΡΡ, Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Π² ΠΎΡΠ»Π°Π΄ΠΊΠ΅ (ΠΏΠΎ F5) ΠΈ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΠΎΠΊΠ½Π΅ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ°.
Π’Π΅ΠΏΠ΅ΡΡ — ΡΠ°ΠΌΠΎΠ΅ Π²Π°ΠΆΠ½ΠΎΠ΅. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΡΠ°Π±ΠΎΡΠ°Π΅Ρ — ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΡΡ ΠΏΠ°ΠΏΠΊΡ .vscode ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΊ ΠΊΠΎΡΠ΅Π½Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΈ Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ Π½Π° C++. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ VSC Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ Ρ ΠΠ°ΡΠΈΠΌΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ.
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΌΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΠ°ΠΌ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π½Π°ΠΏΡΡΠΌΡΡ — Ρ ΠΠ°Ρ ΡΠ΅ΠΏΠ΅ΡΡ Π΅ΡΡΡ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π°, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΡ Π΄Π»Ρ Π³ΡΠ³Π»Π΅ΠΆΠ°.
Π£ΡΠΏΠ΅Ρ ΠΎΠ²!
PS. ΠΡΠ΅ΠΌΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ.
ΠΠΎΡ ΡΠ°ΠΊΠΎΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΡΠ°ΠΉΠ»Π° tasks.json ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠΈΡΠ°ΡΡ ΠΎΠΊΠ½ΠΎ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΠΏΠ΅ΡΠ΅Π΄ ΠΊΠ°ΠΆΠ΄ΡΠΌ Π±ΠΈΠ»Π΄ΠΎΠΌ — ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΆΠ΅ Π½Π΅ Π²ΠΈΠ΄Π΅ΡΡ ΡΠΆΠ΅ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ, ΠΎΡΡΠ°Π²ΡΠΈΡ ΡΡ ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΉ ΠΏΠΎΠΏΡΡΠΊΠΈ ΡΠ±ΠΎΡΠΊΠΈ (ΠΡΡΠΎΡΠ½ΠΈΠΊ):
"presentation": {
"clear": true // <-- this line
}
R Π² ΠΊΠΎΠ΄Π΅ Visual Studio
Π Π΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ
Π―Π·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ R β ΡΡΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ·ΡΠΊ, ΡΠΎΠ·Π΄Π°Π½Π½ΡΠΉ Π΄Π»Ρ ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΈΡ
Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΈ Π³ΡΠ°ΡΠΈΠΊΠΈ.
R ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΡΠ°ΡΠΈΡΡΠΈΡΠ΅ΡΠΊΠΎΠΌ Π°Π½Π°Π»ΠΈΠ·Π΅, Π½Π°ΡΡΠ½ΡΡ
Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡΡ
, ΠΌΠ°ΡΠΈΠ½Π½ΠΎΠΌ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠΈ ΠΈ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄Π°Π½Π½ΡΡ
.
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ R Π΄Π»Ρ Visual Studio Code ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ°, Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, Π»ΠΈΠ½ΡΠΈΠ½Π³, ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°ΠΌΠΈ R, ΠΏΡΠΎΡΠΌΠΎΡΡ Π΄Π°Π½Π½ΡΡ , Π³ΡΠ°ΡΠΈΠΊΠΈ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ, ΡΡΡΠ°Π½ΠΈΡΡ ΡΠΏΡΠ°Π²ΠΊΠΈ, ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ R Markdown.
ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΡ
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ R (>= 3.4.0) Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΠΏΠ»Π°ΡΡΠΎΡΠΌΡ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Windows ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡ Π½ΠΎΠΌΠ΅Ρ Π²Π΅ΡΡΠΈΠΈ Π² ΡΠ΅Π΅ΡΡΡΠ΅ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ, ΡΡΠΎΠ±Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ R ΠΌΠΎΠ³Π»ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π½Π°ΠΉΡΠΈ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΠΉ ΡΠ°ΠΉΠ» R.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ
ΡΠ·ΡΠΊΠΎΠ²ΠΎΠΉ ΡΠ΅ΡΠ²Π΅ΡΠ² R.install.packages("languageserver")Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ R Π΄Π»Ρ Visual Studio Code.
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» R ΠΈ Π½Π°ΡΠ½ΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ.
ΠΠ»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΠ΄ΠΎΠ±ΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ R Π² VS Code ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ°ΠΊΠ΅ΡΡ:
ΡΠ°Π΄ΠΈΠ°Π½: ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΊΠΎΠ½ΡΠΎΠ»Ρ R, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΡΡΠ°Π½ΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° R ΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΡΠ½ΠΊΡΠΈΠΉ, ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΠ° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΠΈ Π°Π²ΡΠΎΠ·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.

httpgd: ΠΏΠ°ΠΊΠ΅Ρ R Π΄Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π°ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΠΎ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ Π³ΡΠ°ΡΠΈΠΊΡ SVG ΡΠ΅ΡΠ΅Π· HTTP ΠΈ WebSockets. ΠΡΠΎΡ ΠΏΠ°ΠΊΠ΅Ρ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΌΡ ΠΏΡΠΎΡΠΌΠΎΡΡΡΠΈΠΊΡ Π³ΡΠ°ΡΠΈΠΊΠΎΠ² ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ R Π΄Π»Ρ VS Code.
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΎΠΉ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² R ΠΈΠ»ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ R Π΄Π»Ρ VS Code, ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π½Π° Π²ΠΈΠΊΠΈ-ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ΅ (Windows | macOS | Linux) Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΠΉ.
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° R
ΠΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° R β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΏΡΠ°Π²ΠΊΠ° ΠΊΠΎΠ΄Π° Π½Π° ΡΠ΅ΡΠΌΠΈΠ½Π°Π» R. ΠΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΠΊΠΎΠ΄Π° R Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» R Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ R: Π‘ΠΎΠ·Π΄Π°ΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» R Π² ΠΏΠ°Π»ΠΈΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄.
ΠΠΎΠ³Π΄Π° ΡΠ΅ΡΠΌΠΈΠ½Π°Π» R Π³ΠΎΡΠΎΠ², Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»ΠΈΠ±ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΠΊΠΎΠ΄, Π»ΠΈΠ±ΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΠΊΡΡΡΠΎΡ Π² Π½Π°ΡΠ°Π»ΠΎ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Π΅Ρ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ Ρ
ΠΎΡΠΈΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ, Π½Π°ΠΆΠΌΠΈΡΠ΅ (Ctrl+Enter) , ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ Π½Π° Π°ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» R.
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ Π²Π΅ΡΡ ΡΠ°ΠΉΠ» R, ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» Π² ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ Ctrl+Shift+S , ΠΈ ΡΠ°ΠΉΠ» Π±ΡΠ΄Π΅Ρ Π·Π°Π³ΡΡΠΆΠ΅Π½ Π² Π°ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» R.
ΠΠ»Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π·Π°ΠΏΡΡΠΊ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠ² R ΠΈΠ»ΠΈ ΡΠ°ΠΌΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠ² R, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°ΠΌΠΈ R.
ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° (IntelliSense)
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ R ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π°Π²ΡΠΎΠ΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ·ΡΠΊΠΎΠ²ΠΎΠΌΡ ΡΠ΅ΡΠ²Π΅ΡΡ R. ΠΠ°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² ΠΎΠ±Π»Π°ΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈ ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ R Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅ΠΉ ΠΈΠ· ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² ΠΈΠ»ΠΈ Π² Π²ΠΈΠ΄Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π².
ΠΠΈΠ½ΡΠΈΠ½Π³
ΠΠΈΠ½ΡΠΈΠ½Π³ β ΡΡΠΎ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΠΊΠΎΠ΄ Π½Π° Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΈ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΎΡΠΈΠ±ΠΎΠΊ. ΠΠ½Π°Π»ΠΈΠ· ΠΊΠΎΠ΄Π° R ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ lintr. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ Π΅Π³ΠΎ, Π²ΡΠ±ΡΠ°Π² ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π»ΠΈΠ½ΡΠ΅ΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
ΠΠΎΠΌΠΈΠΌΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΠΈ Π°Π½Π°Π»ΠΈΠ·Π°, ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ R ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΄ΡΡΠ³ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ, ΠΏΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Π°, ΠΏΠΎΠΈΡΠΊ ΡΡΡΠ»ΠΎΠΊ.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π΅ R Language Service.
Π‘ΡΠ΅Π΄ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ
Π‘ΡΠ΅Π΄ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΎ Π½Π° Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΠΏΠ°Π½Π΅Π»ΠΈ Π² VS Code ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² Π°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅Π°Π½ΡΠ΅ R. ΠΡΠ±Π΅ΡΠΈΡΠ΅ Π·Π½Π°ΡΠΎΠΊ R Π½Π° ΠΏΠ°Π½Π΅Π»ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΈ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡΡ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ ΠΈ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΡΡΠ°Π½ΠΈΡ ΡΠΏΡΠ°Π²ΠΊΠΈ. ΠΡΠΎ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ R, ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² R, ΠΏΠΎΠΈΡΠΊΠ° ΡΠ°Π·Π΄Π΅Π»ΠΎΠ² ΡΠΏΡΠ°Π²ΠΊΠΈ ΠΈ ΡΡΠ΅Π½ΠΈΡ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΈΡ Π² ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅.
ΠΠΎΠΌΠΈΠΌΠΎ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΠΎΠ±Π»Π°ΡΡΠΈ, Π΅ΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΏΡΠΎΡΠΌΠΎΡΡΠ° Π΄Π°Π½Π½ΡΡ , ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΏΡΠΎΡΠΌΠΎΡΡΠ° Π³ΡΠ°ΡΠΈΠΊΠΎΠ² ΠΈ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΏΡΠΎΡΠΌΠΎΡΡΠ° Π²ΠΈΠ΄ΠΆΠ΅ΡΠΎΠ². ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠΌ. Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΡΡΠ΅Π΄ΡΡΠ²Π° ΠΏΡΠΎΡΠΌΠΎΡΡΠ°.
ΠΡΠ»Π°Π΄ΠΊΠ°
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠΈ R ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ R Debugger. ΠΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ»Π°Π΄ΠΊΡ ΠΊΠΎΠ΄Π° R ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ° R ΠΏΡΡΠ΅ΠΌ Π·Π°ΠΏΡΡΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° R ΠΈΠ»ΠΈ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅ΠΌΡ ΠΏΡΠΎΡΠ΅ΡΡΡ.
ΠΡΠΈ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠΈ ΡΠΎΡΠΊΠΈ ΠΎΡΡΠ°Π½ΠΎΠ²Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΅ΠΉΠΌΠ° ΡΡΠ΅ΠΊΠ° ΠΈΠ»ΠΈ ΠΎΡΠ΅Π½ΠΈΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΎΡΠ»Π°Π΄ΠΊΠΈ Π² ΡΡΠ΅ΠΉΠΌΠ΅ ΡΡΠ΅ΠΊΠ°.
ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΠΈΡΠ°ΠΉΡΠ΅ Π² README ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°Π³ΠΈ
ΠΡΠΎΡ ΠΎΠ±Π·ΠΎΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΡΠ°ΡΠΊΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ R Π΄Π»Ρ VS Code. ΠΡΠΎΡΡΠΈΡΠ΅ README ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΡΡΠ½ΠΊΡΠΈΠΉ.
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ, ΠΏΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, Π½Π΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ ΠΎΡΠΊΡΡΠ²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ GitHub.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎ VS Code, ΠΏΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΡΠΈ ΡΠ΅ΠΌΡ:
- ΠΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ β ΠΊΡΠ°ΡΠΊΠΎΠ΅ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΡΠ½ΠΎΠ²Ρ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ° VS Code.
- Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ β ΡΠ·Π½Π°ΠΉΡΠ΅ ΠΎ Π΄ΡΡΠ³ΠΈΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΡ , Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π² Marketplace.
- ΠΠ°Π²ΠΈΠ³Π°ΡΠΈΡ ΠΏΠΎ ΠΊΠΎΠ΄Ρ β Π±ΡΡΡΡΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΠΉΡΠ΅ΡΡ ΠΏΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌΡ ΠΊΠΎΠ΄Ρ.
23.03.2022
ΠΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ VSCode Ρ ΠΏΠΎΠΌΠΎΡΡΡ C, C++ ΠΈ Python Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ
VSCode β ΡΡΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΡΠΈΡΡΠ΅ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
ΠΠ½ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΡΡΡΡ
ΠΊΠΎΠ΄ΠΎΠ². VSCode ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ρ ΡΠ°ΠΉΡΠ° visualstudio.com. ΠΌΠΎΡΠ½ΡΠΉ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ.
ΠΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠ°Π»ΠΈ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ°ΠΊΠΈΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ , ΠΊΠ°ΠΊ GeeksforGeeks, CodeChef ΠΈ Π΄ΡΡΠ³ΠΈΡ , Π²Ρ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½-ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΏΡΡΠΊ ΡΠ΅ΡΡΠΎΠ²ΡΡ ΡΠ»ΡΡΠ°Π΅Π² ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ ΡΡΡΠ΄ΠΎΠ΅ΠΌΠΊΠΈΠΌΠΈ. ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, ΡΡΠΎΠ±Ρ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π²ΡΡΠ°Π²Π»ΡΡΡ ΡΠ΅ΡΡΠΎΠ²ΡΠ΅ ΡΠ»ΡΡΠ°ΠΈ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΡ . Π Π΅ΡΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠΆΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎ.
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ Ideone ΠΏΠΎΡΡΡΠ°Π΄Π°Π»ΠΈ ΠΎΡ ΠΏΠ»Π°Π³ΠΈΠ°ΡΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΈΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΡΠΎΠ²ΠΏΠ°Π»ΠΈ Ρ ΠΊΠ΅ΠΌ-ΡΠΎ, ΠΊΠΎΠ³ΠΎ ΠΎΠ½ΠΈ Π΄Π°ΠΆΠ΅ Π½Π΅ Π·Π½Π°Π»ΠΈ. ΠΠΎΠ²ΠΎΡΡΡ, ΡΡΠΎ ΠΈΡ ΠΊΠΎΠ΄ Π±ΡΠ» ΡΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ Ρ Ideone. ΠΡΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ΡΠ΅ΠΌ, ΡΡΠΎ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ±ΡΠ΅Π΄ΠΎΡΡΡΠΏΠ½Π° Π² Ideone, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»ΡΠ±ΠΎΠΌΡ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π²Π°Ρ ΠΊΠΎΠ΄.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΡΡΠ΅Π΄Π΅ IDE ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΈ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ IntelliSense: Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°Ρ , ΠΊΡΠ°ΡΠΊΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈ ΡΠΏΠΈΡΠΊΠΈ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ². ΠΠ»ΡΡ Π½Π΅Ρ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ.
ΠΠΎΠ΄ΠΈΡΡΠΉΡΠ΅ ΠΊΠ°ΠΊ ΠΎΠΏΡΡΠ½ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°
VSCodeΠΠ°Π³ΡΡΠ·ΠΈΡΠ΅ VSCode Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΅Π³ΠΎ.
ΠΠ»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ CPP:
1. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Mingw-w64 ΡΠ΅ΡΠ΅Π· Π²Π΅Π±-ΡΠ°ΠΉΡ SourceForge. Π©Π΅Π»ΠΊΠ½ΠΈΡΠ΅ Mingw-w64, ΡΡΠΎΠ±Ρ Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΡΠΈΠΊ Windows Mingw-w64.
2. ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
3. Π ΡΠ°Π·Π΄Π΅Π»Π΅ Β«ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°Β» Π²ΡΠ±Π΅ΡΠΈΡΠ΅ x86_64, Π° Π·Π°ΡΠ΅ΠΌ Π½Π°ΠΆΠΌΠΈΡΠ΅ Β«ΠΠ°Π»Π΅Π΅Β».
4. ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΠΏΡΡΡ ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ bin Mingw-w64 Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅Π΄Ρ Windows PATH, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ:
5 ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ, Π²ΡΠΏΠΎΠ»Π½ΠΈΠ² ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅.
Β Β Β a) g++ βversion
Β Β Β b) gdb βversion
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡΒ
ΠΡΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, ΡΡΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ, ΡΡΠΎΠ±Ρ ΠΎΠ½ΠΎ Π·Π°ΡΠ°Π±ΠΎΡΠ°Π»ΠΎ.
- Competitive Companion : Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ°ΡΠ·Π΅ΡΠ° Π΄Π»Ρ ΡΠ°Π·Π±ΠΎΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Ρ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡ ΠΈ ΠΈΡ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ. ΠΠΎΡΡΡΠΏΠ½ΠΎ ΠΊΠ°ΠΊ Π΄Π»Ρ Ρ ΡΠΎΠΌΠ°, ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΡΠ°Π΅ΡΡΠΎΠΊΡΠ°.
- ΠΠΎΠΌΠΎΡΠ½ΠΈΠΊ ΠΏΠΎ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ½ΠΎΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ : Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ VSCode, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΌΠ°Π³ΠΈΡ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅ΡΡΠΎΠ²ΡΡ
ΡΠ»ΡΡΠ°Π΅Π² ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ².
ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ΅ΡΡΠΎΠ²ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ Π²ΡΡΡΠ½ΡΡ. - C/C++ Π΄Π»Ρ Visual Studio Code : ΡΡΠΎ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅. Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ Π΄Π»Ρ IntelliSense, ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΊΠΎΠ΄Π°.
- Python Π΄Π»Ρ Visual Studio Code : ΠΠΈΠ½ΡΠΈΠ½Π³, ΠΎΡΠ»Π°Π΄ΠΊΠ° (ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΡΠΎΡΠ½Π°Ρ, ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ), Intellisense, ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ ΠΊΠΎΠ΄Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅.
- Code Runner : (Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ) Π·Π°ΠΏΡΡΠΊ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ»Π° ΠΊΠΎΠ΄Π° Π΄Π»Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ·ΡΠΊΠΎΠ² Π±Π΅Π· Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄.
Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΠ΅ Π³ΠΎΡΠΎΠ²ΠΎ Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ Ρ Π»ΠΎΠΏΠΎΡ. ΠΡΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ, ΡΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ, ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.
Π¨Π°Π±Π»ΠΎΠ½Ρ
Π‘ΠΊΠΎΡΠΎΡΡΡ β Π²Π°ΠΆΠ½ΡΠΉ ΡΠ°ΠΊΡΠΎΡ Π² ΡΠΎΡΠ΅Π²Π½ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ. ΠΠΎΠ΄Π½ΠΈΠΌΠΈΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π½Π° Π½ΠΎΠ²ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ, ΡΠΎΠ·Π΄Π°Π² ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠ°Π±Π»ΠΎΠ½Ρ. Π‘Π½ΠΈΠΏΠΏΠ΅ΡΡ β ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΠΎΠ³ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°ΡΠ°ΡΡ ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡ ΡΠ½ΠΈΠΏΠΏΠ΅ΡΠΎΠ² ΠΎΡΠ΅Π½Ρ Π»Π΅Π³ΠΊΠΎ.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ, Π²ΡΠ±Π΅ΡΠΈΡΠ΅ User Snippets Π² ΡΠ°Π·Π΄Π΅Π»Π΅ File > Preferences (ctrl + shift + p), Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΡΠ·ΡΠΊ.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΡΠΎΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΡ, ΡΡΠΎΠ±Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° Π² ΡΡΠ°Π³ΠΌΠ΅Π½Ρ. ΠΡΡΠ°Π²ΡΡΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ Π²Π½ΡΡΡΠΈ ΡΠΈΠ³ΡΡΠ½ΡΡ
ΡΠΊΠΎΠ±ΠΎΠΊ Π² ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ JSON ΠΈ ΡΠΎΡ
ΡΠ°Π½ΠΈΡΠ΅ Π΅Π³ΠΎ. Π Π°Π·Π΄Π΅Π»ΡΠΉΡΠ΅ ΡΠ°Π·Π½ΡΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ Π·Π°ΠΏΡΡΠΎΠΉ. Π‘ΠΎΠ·Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ²ΠΎΠΈ ΠΊΡΡΡΡΠ΅ ΡΠ½ΠΈΠΏΠΏΠ΅ΡΡ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ
Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² ΠΈΠ»ΠΈ ΡΠ΄Π΅Π»Π°ΠΉΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΎΠ½.
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ, Π²Π°ΠΌ ΠΏΡΠΎΡΡΠΎ Π½ΡΠΆΠ½ΠΎ Π²Π²Π΅ΡΡΠΈ ΡΡΠΈΠ³Π³Π΅Ρ ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ ΠΈ Π½Π°ΠΆΠ°ΡΡ ΡΠ°Π±ΡΠ»ΡΡΠΈΡ.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ°
ΠΠ½ΠΎΠ³Π΄Π° ΠΎΡΠ»Π°Π΄ΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ Π·Π°ΡΡΡΠ΄Π½Π΅Π½ΠΈΡ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π±ΠΎΠ»ΡΡΠ°Ρ ΠΈ Π² Π½Π΅ΠΉ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠ΅ΡΠ°ΡΡ ΠΌΠ°Π»ΠΎ ΡΠ΅ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ. ΠΡΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊ, ΡΡΠΎΠ±Ρ ΡΠΏΠ°ΡΡΠΈ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π ΡΡΠ°ΡΡΡΡ, VSCode ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΡΠΎ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠΌ ΠΊΡΠ°ΡΠΈΠ²ΡΠΌ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ.
Python ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ ΡΠΎ ΡΠ²ΠΎΠΈΠΌ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠΎΠΌ, Π° GCC ΠΈΠΌΠ΅Π΅Ρ gdb. ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΡ ΠΎΡΠ»Π°Π΄ΡΠΈΠΊΠ° ΡΠ»Π΅Π²Π° ΠΈ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΈ ΠΡΠ»Π°Π΄ΠΊΠ° . Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Ρ Π²Π°Ρ ΠΎΡΠΊΡΡΡ ΡΠ°ΠΉΠ» Π΄Π»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ.
ΠΡΠ»Π°Π΄ΠΊΠ° ΡΠΊΡΠΈΠΏΡΠ° Python
ΠΡΠ»ΠΈ Π²Ρ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°Π΅ΡΠ΅ python, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠ°ΠΊΠΎΠΉ Π·Π°ΠΏΡΠΎΡ.
ΠΡΠ±Π΅ΡΠΈΡΠ΅ ΡΠ°ΠΉΠ» python
ΠΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» launch.json Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ .vscode. ΠΡΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ. ΠΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ», Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΎΡΠ»Π°Π΄ΠΊΡ. Π£Π·Π½Π°ΠΉΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΉ Π·Π΄Π΅ΡΡ.
ΠΡΠ»Π°Π΄ΠΊΠ° ΡΡΠ΅Π½Π°ΡΠΈΠ΅Π² C/C++ΠΠ΅ΡΠ΅Π΄ ΠΎΡΠ»Π°Π΄ΠΊΠΎΠΉ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π·Π°Π΄Π°ΡΡ ΡΠ±ΠΎΡΠΊΠΈ. Π Π³Π»Π°Π²Π½ΠΎΠΌ ΠΌΠ΅Π½Ρ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π’Π΅ΡΠΌΠΈΠ½Π°Π» > ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Π·Π°Π΄Π°ΡΠΈ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ . ΠΠΎΡΠ²ΠΈΡΡΡ ΡΠ°ΡΠΊΡΡΠ²Π°ΡΡΠΈΠΉΡΡ ΡΠΏΠΈΡΠΎΠΊ, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ ΡΠ±ΠΎΡΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠ² C++. ΠΡΠ±Π΅ΡΠΈΡΠ΅ C/C++: Π°ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠ°ΠΉΠ» ΡΠ±ΠΎΡΠΊΠΈ g++.
ΠΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» tasks.json, ΡΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ Π΅Π³ΠΎ. ΠΠ°ΠΌ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΎ ΡΠ½Π°ΡΠ°Π»Π° Π²ΡΠ±ΡΠ°ΡΡ ΡΡΠ΅Π΄Ρ. ΠΡΠ±Π΅ΡΠΈΡΠ΅ C++ (GDB/LLDB). ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ .
ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» launch.json, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. ΠΠ»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ΡΡ ΠΊ ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅.
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π° C ΠΈ C++.
