Struktūrinis programavimas
Pamoka 10 / 11 Failai ir klaidų valdymas ~45 min
4 / 4 📖 Teorija

Namų darbas — tavo programa nebeužmiršta

Paskutinis namų darbas prieš finalą — TAVO programa nustoja užmiršti:

  1. Pridėk JSON žymas prie savo struct laukų.
  2. Parašyk saveItems ir loadItems savo tipui (pavadinimai gali skirtis — svarbu tas pats pavidalas: error grąžinimas, trūkstamas failas → tuščias sąrašas).
  3. Įkelk paleidus, išsaugok išeinant per q.
  4. Pakeisk Scanln į bufio + readLine — patikrink su reikšme, kurioje yra tarpas.

Privalomi testai (visi trys — atsiskaitymo dalis):

  • Restarto testas: pridėk 2–3 įrašus, uždaryk, paleisk vėl — sąrašas grįžo.
  • Pirmo paleidimo testas: ištrink savo .json failą ir paleisk — programa parodo tuščią sąrašą ir NELŪŽTA.
  • Švaros testas (8 pamokos įprotis): gofmt -l . ir go vet ./... — abu tyli.

Atsiskaitymui: kodas + visų trijų testų nuorašas + tavo .json failo turinys.

Patarimas. Sustok ir apsižvalgyk: struct, funkcijos, ciklai, patikros, slice, failai — visos plytos sudėtos. Liko vienas įrankis, kurio tavo dėžutėje dar nėra: rodyklė (*Item) — kaip pakeisti įrašą VIETOJE, be kopijų triuko per indeksą. Prisimeni kopijų spąstus iš 3 ir 7 pamokų? Finaliniame projekte jie gauna galutinį atsakymą — ir ten viskas, ką pastatei per 10 pamokų, susijungia į vieną programą.