IDE-d ja arenduskeskkonnad
Selles peatükis vaatame soovitatavaid tööriistu, terminali integreerimist ja arenduskeskkondade ülesseadmist.
Loogika
Arenduskeskkond on tervik, mitte ainult tekstiredaktor. Terminal, Git, keelekeskkond ja vajadusel Docker või kaugühendus peavad töötama koos.
Kiirspikker
python3 --versionkontrolli Pythoni olemasolupython3 -m pip --versionkontrollipip-i olemasolunode --versionkontrolli Node.js-i olemasolunpm --versionkontrollinpm-i olemasolugit --versionkontrolli Git-i olemasoludocker --versionkontrolli Dockeri olemasolu
Praktiliselt tähendab see:
- terminal peab olema käepärast
- Git peab olema kasutatav
- projekti Python või Node keskkond peab olema õigesti valitud
- vajadusel peab IDE oskama töötada Dockeriga või kaugmasinaga
Soovitatav lähtekoht
Algajale on tavaliselt hea kombinatsioon:
- terminal
- üks kerge tekstiredaktor või IDE
- Git
- Python või muu põhitööriist
Levinud valikud
- VS Code: väga levinud, laiendatav, hea Remote SSH tugi
- PyCharm: tugev Pythoni tugi
- Vim või Neovim: kiire klaviatuuripõhine töö
- JetBrainsi tööriistad üldisemalt: tugev projektitugi
Mida IDE-s jälgida
- sisseehitatud terminal
- Git-i integratsioon
- projekti virtuaalkeskkond
- Dockeri tugi
- kaugühenduste tugi
VS Code ja arenduskonteinerid
Kui projekt kasutab Dockerit, siis väga praktiline järgmine samm on arenduskonteiner.
Selle põhimõte on:
- projektifailid jäävad sinu masinasse
- VS Code avab sama projekti Dockeri konteineri sees
- terminal, interpreter ja tööriistad jooksevad konteineris
See aitab eriti siis, kui:
- projekt vajab kindlat Linuxi keskkonda
- mitmel arendajal peab olema sama töölaud
- hostmasinat ei taha liigsete tööriistadega täita
Lühidalt:
venvaitab Pythoni pakettidega- Docker aitab kogu keskkonnaga
- arenduskonteiner ühendab selle IDE kasutusmugavusega
Minimaalne devcontainer.json
Väga väike näide:
.devcontainer/devcontainer.json
{
"name": "Python Dev Container",
"image": "python:3.13-slim",
"workspaceFolder": "/workspace",
"mounts": [
"source=${localWorkspaceFolder},target=/workspace,type=bind"
],
"postCreateCommand": "python -m pip install -r requirements.txt",
"customizations": {
"vscode": {
"extensions": [
"ms-python.python",
"ms-python.vscode-pylance"
]
}
}
}
Mida see tähendab:
- kasutatakse olemasolevat Pythoni image'it
- kohalik projekt mount'itakse
/workspacealla - pärast loomist paigaldatakse sõltuvused
- VS Code saab automaatselt vajalikud laiendused
Tüüpiline töövoog arenduskonteineriga
- paigalda VS Code'is laiendus
Dev Containers - ava projektikaust
- vali käsk
Dev Containers: Reopen in Container - oota, kuni konteiner ehitatakse või käivitatakse
- tööta edasi nagu tavaliselt, aga IDE terminal on nüüd konteineri sees
Hea mõte on jälgida:
- kus jookseb Python või Node
- kus tehakse
pip installvõinpm install - kas avatud terminal on hostis või konteineris
Millal eelistada arenduskonteinerit
Arenduskonteiner on eriti hea siis, kui:
- projektis on Docker niikuinii olemas
- tahad, et terve tiim kasutaks sama arenduskeskkonda
- kasutad palju süsteemipakette või teenuseid
Kui projekt on väga väike ja puhas, võib olla lihtsam:
- kasutada lihtsalt
venv-i - või jooksutada üksikuid käske bind mount'iga konteineris
Seos tavalise Dockeri arendusega
Arenduskonteiner ei asenda Dockeri põhimõtteid, vaid peidab osa käske sinu eest ära.
Sama loogika jääb alles:
- kood on hostmasinas
- konteiner annab keskkonna
- mount ühendab need kaks
Kui saad käsureal aru:
docker run -v "$PWD":/app ...docker compose updocker compose exec app bash
siis on sul palju lihtsam mõista ka IDE arenduskonteinereid.
Käivita need käsud
Kontrolli, kus Python süsteemist leitakse:
command -v python3
python3 --version
python3 -m pip --version
Kontrolli, kas Git ja Docker on saadaval:
git --version
docker --version
Kontrolli Node.js ja npm olemasolu:
node --version
npm --version
Pythoni töövoog IDE-s
Pythoni projektis tasub tavaliselt siduda IDE konkreetse virtuaalkeskkonnaga:
- loo projektis
.venv - vali IDE-s interpreteerijaks selle keskkonna Python
- paigalda sõltuvused sinna, mitte suvaliselt süsteemi
Node.js ja npm töövoog IDE-s
JavaScripti või TypeScripti projektis tasub jälgida:
- kas projektis on
package.json - kas sõltuvused on paigaldatud käsuga
npm install - millised skriptid on kirjas plokis
scripts
Tüüpilised käsud:
npm install
npm run dev
npm test
Minitest
- Pane kirja, millist redaktorit või IDE-d sa kasutad.
- Kontrolli, kas IDE terminal kasutab sama shelli mis tavaline terminal.
- Uuri, kuidas selles IDE-s Git commit'i teha.
- Kontrolli, kuidas valida IDE-s Pythoni interpreter või Node.js projekt.
- Kui kasutad VS Code'i, uuri, kus menüüs on
Reopen in Container.