Tarkvaratehnoloogia praktikumide etapid: erinevus redaktsioonide vahel
| 9. rida: | 9. rida: | ||
* Soovitavalt installeeri ka [http://python.org Python] (kohe algul ei ole meil seda vaja): | * Soovitavalt installeeri ka [http://python.org Python] (kohe algul ei ole meil seda vaja): | ||
** failid [https://www.python.org/downloads/release/python-381/ võta selle lehe allosast], | ** failid [https://www.python.org/downloads/release/python-381/ võta selle lehe allosast], | ||
**[https://realpython.com/installing-python/ siin päris OK installeerimise õpetus]) | **[https://realpython.com/installing-python/ siin päris OK installeerimise õpetus]) ja [[https://docs.python.org/3.7/using/windows.html siin ametlik õpetus] | ||
** väga detailne [https://www.wikihow.com/Use-Windows-Command-Prompt-to-Run-a-Python-File õpetus] pythoni programmide käivitamiseks: kui cmd aknast python ei käivitu, siis uuri selle õpetuse teist poolt: pathi seadmine. | ** väga detailne [https://www.wikihow.com/Use-Windows-Command-Prompt-to-Run-a-Python-File õpetus] pythoni programmide käivitamiseks: kui cmd aknast python ei käivitu, siis uuri selle õpetuse teist poolt: pathi seadmine. | ||
** alternatiivne Pythoni installi ja käivitamise õpetus [https://docs.microsoft.com/en-us/windows/python/beginners installi ja käivitamise õpetus] microsoftilt. | ** alternatiivne Pythoni installi ja käivitamise õpetus [https://docs.microsoft.com/en-us/windows/python/beginners installi ja käivitamise õpetus] microsoftilt. | ||
* Kui python installeeritud, siis soovitavalt ka [https://flask.palletsprojects.com/en/1.1.x/ Flask]: see eeldab ja kasutab pythonit. Vaata installiks ja kasutamiseks ka | * Kui python installeeritud, siis soovitavalt ka [https://flask.palletsprojects.com/en/1.1.x/ Flask]: see eeldab ja kasutab pythonit. Vaata installiks ja kasutamiseks ka . Jällegi, kohe algul ei ole seda vaja. | ||
* Otsi andmestik, uuri, kas see on sulle kättesaadav/töödeldav. | * Otsi andmestik, uuri, kas see on sulle kättesaadav/töödeldav. | ||
* Otsusta, kuidas seda avalikkusele ilusamini kuvada ja millised filtrid/valikud lasta kasutajatel teha. | * Otsusta, kuidas seda avalikkusele ilusamini kuvada ja millised filtrid/valikud lasta kasutajatel teha. | ||
Redaktsioon: 31. jaanuar 2020, kell 14:57
Siintoodud etappide sisu töö reaalse töö käigus veidi muutub, kuid on üldjoontes järgmine:
1. päev: ülesande valik, soovitud tulemuse kirjeldus, keskkonna ülesseadmine, katse-html lehe tegemine
Päeva eesmärk on (a) valida andmestik ja otsustada, mida meie rakendus sellega teeks, (b) töövahendite installeerimine ja katsetamine. Neid asju võiks teha sellises järjekorras:
- Installeeri endale sobiv tekstiredaktor (rikkalikumast minimaalsemani: vs code, atom, notepad++, scite),
- Soovitavalt installeeri ka Python (kohe algul ei ole meil seda vaja):
- failid võta selle lehe allosast,
- siin päris OK installeerimise õpetus) ja [siin ametlik õpetus
- väga detailne õpetus pythoni programmide käivitamiseks: kui cmd aknast python ei käivitu, siis uuri selle õpetuse teist poolt: pathi seadmine.
- alternatiivne Pythoni installi ja käivitamise õpetus installi ja käivitamise õpetus microsoftilt.
- Kui python installeeritud, siis soovitavalt ka Flask: see eeldab ja kasutab pythonit. Vaata installiks ja kasutamiseks ka . Jällegi, kohe algul ei ole seda vaja.
- Otsi andmestik, uuri, kas see on sulle kättesaadav/töödeldav.
- Otsusta, kuidas seda avalikkusele ilusamini kuvada ja millised filtrid/valikud lasta kasutajatel teha.
- Kirjuta oma kavadest väike memo markdowni kasutades.
- Installeeri endale putty ja winscp või analoogilised vajalikud vahendid serverisse sisselogimiseks ja failide kopeerimiseks.
- Alusta oma rakenduse veebilehe tegemist esmaste html-pisikatsetustega omaenda arvutis.
- Logi katseks dijkstra serverisse ja püüa sinna mõni fail veebiserveri alla kopeerida.
- Tee soovitavalt konto digitaloceani serverisse ja githubi koodihoidlasse, lae viimasesse sinna faile. Digitaloceani kontoga on tööd (mis on soovitav :) lihtsam alternatiiv on kasutada ainult dijkstra serverit.
Kui Pythonit ja Flaski ei õnnestu enda arvutisse installeerida, saab nendega töötada ka üle võrgu otse dijkstra või digitaloceani serveris.
Päeva lõpuks teeb iga grupp paariminutise ettekande, kus on öeldud (a) grupiliikmete nimed, (b) mis andmekogu ja ülesanne valiti, (b) mis töövahendid käima saadi ja kuhu õnnestus sisse logida/andmeid kopeerida, (c) kuhu aeg peamiselt kulus ja mis olid ootamatused. (d) mis on plaan järgmiseks korraks.
2. päev: andmete töötlemine ja baasi panek, esmase html lehe tegemine serveris
Päeva eesmärk on (a) katsetada tehnoloogiaid: python ja flask, sqlite (b) teha oma andmebaas ja laadida andmed oma andmebaasi (c) teha katseid päringutega andmebaasist (d) ideaalis realiseerida juba mingi mõttekas osa süsteemist. Päeva lõpuks teeb iga grupp ühe-kahe minutise ettekande, kus on öeldud (a) grupiliikmete nimed, (b) mis käima saadi (c) kuhu aeg peamiselt kulus ja mis olid ootamatused. (d) mis on plaan järgmiseks korraks.
See, mis sa päeva lõpuks (ja kuidas) realiseerid, sõltub sellest, mis tehnoloogiad sa käima saad (kas saad flaski ja pythoni ja sqlite käima, kas oled juba saanud sisse logida ja tegutseda jne). Kui sa mingite tehnoloogiatega hätta jääd, vali alternatiivne lahendus, millega asjad välja tulevad.
Kui andmete saamine andmebaasi osutub keeruliseks (sest näiteks sa ei saanud Pythonit ja Flaski ja sqlite oma arvutisse, serverisse ei õnnestu või on keeruline sisse logida vms) siis on OK teha alternatiivselt lihtsamaid ülesandeid ilma andmebaasita:
- Andmete sqlite sisestamise asemel võid panna andmed otse veebilehele või csv faili, nii et neid serveris eraldi ei töödeldagi ja kuvamist ja valikuid teeb javascript otse veebilehel. Loe ja kasuta õpetust ja näitekoodi
- Html lehe digitalocean serverisse panemise asemel kas paned nad tehnikaülikooli dijkstra serverisse või jätkad html lehe arendamist oma arvutis failidena, mida brauser siis kuvab.
3. päev: veebilehe kasutajaliidese tegemine ja seostamine andmebaasiga
Siit alates on kolm tegevussuunda kursuse lõpuni:
- Brauserist Flaskiga pythoni programmilt andmete küsimine.
- Andmete arusaadav kuvamine.
- Kasutajaliidese parandamine.
4. päev: kujunduse parandamine, testimine, arenduse jätk
5. päev: edasiarenduse planeerimine, vigade ja puuduste parandamine, ettekanne
Päeva põhieesmärk on edasiarenduse planeerimine: mida saaks/tasuks süsteemi juurde teha, kes ja kui palju neid täiendusi kasutaks, mis oleks tehnoloogiline/arhitektuuriline plaan edasiarenduse jaoks, mis on ajalise ja rahalised hinnangud, milline oleks projektiplaani kondikava. Edasiarenduse kontekstiks oleks selle tellimine, mitte teiepoolne tegelik ehitamine.
Ülejäänud aeg kasuta oma rakenduse täiustamisele: tee need asjad korda, mis jäid puudulikuks.
Kursuse lõpus teevad kõik grupid veidi pikema presentatsiooni, ca 15 minutit:
- kui kaugele te oma rakendusega jõudsite, sh reaalne demo,
- mis oli algses plaanis, aga mis tingimata päris lõpp-rakendusse veel ei jõudnud,
- ettekanne oma edasiarenduse plaanist ja selle lühike arutelu.