IDE-d ja arenduskeskkonnad
Loogika
Arenduskeskkond on tervik, mitte ainult tekstiredaktor. Terminal, Git, keelekeskkond ja vajadusel Docker või kaugühendus peavad töötama koos.
Kiirülevaade
Eesmärk on panna terminal, Git, interpreter ja vajadusel konteinerid sama projekti koos nägema.
| Kontroll või valik | Milleks | Mida tavaliselt näed |
|---|---|---|
--version käsud | kontrolli tööriista olemasolu | üks lühike versioonirida |
| IDE interpreter | vali projekti Python, Node vms | valitud keskkond IDE seadetes |
| sisseehitatud terminal | jooksuta käske projekti kontekstis | sama töökaust ja projektifailid |
| devcontainer või Docker | anna projektile eraldi käivituskeskkond | konteineri terminal ja tööriistad |
| puuduv tööriist | vajab paigaldust või PATH parandust | “command not found” laadne viga |
Tüüpilised algaja vead
- arvatakse, et IDE “teab ise”, millist Pythoni või Node'i kasutada
- terminal ja IDE kasutavad tegelikult eri keskkondi
- proovitakse korraga liiga palju tööriistu, kuigi alguses piisab lihtsast tervikust
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, on järgmine samm sageli 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.
Peatüki täisspikker
Edasijõudnu
Eesmärk
hea arenduskeskkond tähendab, et terminal, Git, interpreter ja vajadusel konteiner osutavad samale projektile, mitte eri maailmadele.
Kontrollid ja valikud
python3 --versionkontrolli Pythonitpython3 -m pip --versionkontrolli pip-igit --versionkontrolli Git-idocker --versionkontrolli Dockeritnode --versionkontrolli Node'inpm --versionkontrolli npm-i
Olulised mõisted
interpretertegelik käivitajasisseehitatud terminalsama projektivaadeRemote SSHtööta kaugmasinasdevcontainerIDE konteineris