# Kehittäjän blogi-pohja
## Web-ohjelmointi, syksy 2022
### Tekijä: Joni Laakkonen
## Viikko 1 (7.9.- 14.9.2022)
### Mitä opin tällä viikolla
Tällä viikolla olen tutustunut kurssilla käytettäviin ympäristöihin ja kieliin. Kaikki kielet ja alustat on minulle jo entuudestaan tuttua, mutta kertaus ei ole ikinä pahasta vai miten se menikään.
### Mitä harjoituksia tein
Tällä viikolla tein lähinnä tutustumis rituuaalin kurssin ympäristöihin ja palautettavan tehtävän slack ympäristöön kirjautumisesta.
Ajattelin myös hieman aloitella portfolio pohjaa jos veilä tälle viikolle ennätän.
#### Harjoitus 1
Harjoitus 1:ssä kirjauduin kurssin slack ympäristöön ja tutustuin siihen hieman
***
## Viikko 2 (14.9.- 21.9.2022)
### Mitä opin tällä viikolla
Oikeastaan mitään uutta en oppinut vielä. Mukavaa pikku näpristelyä HTML ja CSS kielillä.
### Mitä harjoituksia tein
HTML ja CSS alkuun tehtävä:
#### HTML ja CSS alkuun tehtävä:
Tehtävä oli helppo ja nopea tehdä.
Olen käyttänyt ja tehnyt näillä kielillä niin paljon ettei mitään ongelmia vielä syntynyt.
***
## Viikko 3 (21.9.- 28.9.2022)
### Mitä opin tällä viikolla
Tällä viikolla pyörittelin hieman helppoja JavaScript tehtäviä.
Mitään uutta ei veilä tullut vastaan sillä olen aijemminkin käyttänyt kieltä paljon.
### Mitä harjoituksia tein
Tällä viikolla tein helppoja javascript tehtäviä. Tehtävissä vaadittiin hieman javascript kirjastojen hallintaa ja
mm. luokkien luomista.
#### Javascript -perusteet, teht 1
Tässä harjoituksessa tein yksinkertaisen algoritmin joka kääntää merkkijonon toisinpäin ja tarkastaa
mikäli se on sama kuin alkuperäinen merkkijono. Siis mikäli merkkijono on palindromi. Hyvää muistuttelua
js kieleen.
#### Javascript -perusteet, teht 2
Harjoituksessa tein puhelinluettelo taulukon, mikä sisältää objekteja. Hakufunktioksi tein funktion joka palauttaa henkilön
puhelinnumeron, nimen perusteella.
Tehävä muistutteli hyvin luokkien luomista yms. tarpeellista.
***
## Viikko 4 (28.9.- 5.10.2022)
### Mitä opin tällä viikolla
Paransin javascript olio luokkien ymmärrystäni.
### Mitä harjoituksia tein
Tein harjoitustehtävän, joka vaati luokan ja aliluokan luomista. Aliluokalle täytyi myös luoda metodeja.
#### Urheilu 1
Tehtävänä oli luoda urheilja luokka joka periytyy henkilö luokasta. Urheilijalla oli muutamia uniikkeja
ominaisuuksia ja metodeja.
Pieneksi ongelmaksi alkuun tuli kirjastojen sekoittaminen muiden kielien kirjastoihin, joten etenin perus tasolla
askel kerrallaan ja googlesta tietoa etsien. Näin varmistin metodejeni toimivuuden.
***
## Viikko 5 (5.10.- 12.10.2022)
### Mitä opin tällä viikolla
Tutustuin tällä viikolla hieman REST API hyväksikäyttöön ohjelmoinnissa
### Mitä harjoituksia tein
Loin sanakirja REST API:n
#### Harjoitus 1(sanakirja REST API)
Opettelin tässä käyttänään REST API:a ja ylipäätäin ymmärtämään sitä.
REST API muodoistui odotettua hankalammaksi kirjastoksi käyttää ja luulen että minulla
on vielä pitkä matka täydelliseen ymmärrykseen.
***
## Viikko 6 (12.10.- 19.10.2022)
### Mitä opin tällä viikolla
Jatkoin oppimistani REST API rajapinnan kanssa ja tutustuin hieman axios kirjastoon
### Mitä harjoituksia tein
Tällä viikolla en vielä tehnyt harjoituksia
***
## Viikko 7 (19.10.- 26.10.2022)
### Mitä opin tällä viikolla
Opin axios kirjastosta ja jatkoin REST APIN kanssa
### Mitä harjoituksia tein
Tällä viikolla tein harjoituksen jossa luotiin käyttöliittymä edellisellä viikolla luotuun sanakirja REST API:in
#### Harjoitus 1
Opettelin ajax kirjason avulla luomaan käyttölittymään edellisellä viikolla luotuun harjoitukseen.
En oikeastaan ymmärtänyt vielä yhtään mitään ja pitää panostaa tähän vielä tulevilla viikoilla.
En myöskään saanut tehtävää tehtyä alkuunkaan ja pyrin korjaamaan sen tulevilla viikoilla.
***
## Viikko 8 (26.10.- 2.11.2022)
### Mitä opin tällä viikolla
Muistuttelin itselleni tietokannan luomista ja opettelin sitten sen käyttöä backendissä
### Mitä harjoituksia tein
Harjoituksessa loin tietokannan ja siihen backend serverin sitä kutsumaan käyttöliittymälle. Ei tehty mitään käyttöliittymää kuitenkaan
#### Harjoitus 1(TEHTÄVÄ 5 (Node.js ja MariaDB))
Opettelin tässä tehtävässä kutsumaan tietokantaa Rest API:a hyväksikäyttäen, tehden Rest APIn mukaiset metodit put ja delete(muut tarvittavat oli jo valmiina).
Olen jo suht hyvin ymmärtänyt CORS ja REST API:a joten tämä tehtävä oli yllättävän simppeli. Plussaa oli että pääsi hieman tutkimaan jo valmista koodia minkä pohjilta pystyi uudet metodit luomaan
***
## Viikko 9 (2.11.- 9.11.2022)
### Mitä opin tällä viikolla
React:iin tutustumista
### Mitä harjoituksia tein
Tällä viikolla en vielä tehnyt harjoituksia ja keskityin muihin kursseihin hieman enemmän
***
## Viikko 10 (9.11.- 16.11.2022)
### Mitä opin tällä viikolla
React:iin tutustumista edelleen
### Mitä harjoituksia tein
Tällä viikolla en vielä tehnyt harjoituksia ja keskityin muihin kursseihin hieman enemmän
***
## Viikko 11 (16.11.- 23.11.2022)
### Mitä opin tällä viikolla
React:iin tutustumista syvemmin
### Mitä harjoituksia tein
En päässyt luennolle koneella niin tein tallenteen perässä hieman posts-app:ia
#### Harjoitus 1
Tallenteiden perässä vain loin posts-app projektia jotta sain tuntumaan reactiin.
***
## Viikko 12 (23.11.- 30.11.2022)
### Mitä opin tällä viikolla
REACTI:a enemmän ja axios kirjaston käyttöä REACT:ssa
### Mitä harjoituksia tein
posts-app harjoitus, jossa pystyi luomaan ja tuomaan esim blogina textiä tietokannasta käyttöliittymään
#### Harjoitus 1
Opettelin syvemmin tietokannan käyttöä ja pääsin vautiin REACT:lla. Harjoituksen palautukseen piti luoda vain pieni komponentti itsenäisesti ja liittää se
sitten projektin toiseen komponenttiin mutta projekti oli hyvin mielenkiintoinen. En ole varma loinko komponentin oikein eli ymmärsinkö tehtävän annon mutta
tein sen parhaaksi katsomallani tavalla ja parhaani mukaan.
***
## Viikko 13 (30.11.- 7.12.2022)
### Mitä opin tällä viikolla
Tällä viikolla piti laittaa kaikki kurssilla oppima peliin ja luoda vielä viimeinen isompi projekti ennen portfoliota.
### Mitä harjoituksia tein
Projekti joka vaati tietokannan luomisen ja siihen käyttöliittymän kasaamista.
#### Harjoitus 1
Opettelin todella käyttämään REACT:a ja hyödyntämään siihen luotuja valmiita kirjastoja. Käytin projektiin paljon aikaa ja perehdyin erilaisiin bootstrap
komponentteihin, jotka voisivat nopeuttaa koodaamista kun niitä hetken käyttää.
Isoimmaksi ongelmaksi muodostui itselle tehtävän annon ymmärrys, luulin ensin että pitäisi pystyä tuomaan yksittäinen olio esille id perusteella, mutta vaikka kuinka yritin niin en siinä onnistunut. Kuitenkin tarkemmin luettua tehtävän annossa ei sellaista varsinaisesti vaadittu vaan riitti kunhan näitä olioita pystyi muokkaamaan käyttöliittymästä käsin niin että muokkauksen tulivat myös tietokantaan.
Tehtävä oli hyvin opettavainen ja vaati paljon keskittymistä. Minulta venyi päivällä tämän blogin kirjoitus ja tehtävän palautus, sen haastavuuden takia(Olisi pitänyt varata enemmän aikaa mutta henkilökohtaisista syistä ei vaan riittänyt aika).
***
## Viikko 14 (8.12.- 11.12.2022)
### Mitä opin tällä viikolla
En varsinaisesti oppinut mitään uutta. Toki täytyi hieman palautella asioita mieleen mutta muuten menin vakiot päällä.
### Mitä harjoituksia tein
Loin tällä viikolla Portfolion
#### Portfolio
Portfolioon käytin paljon aikaa ja olin jo suunnitellut sen hieman aijemmin päässäni. Pistin omat css, styled-component ja REACT taitoni likoon luodessani
sitä. Toteutin sen mielestäni juuri niinkuin kuvittelinkin ja olen erittäin tyytyväinen siitä. Toki varsinaisessa tyylittelyssä ja väreissä minulla ei ole
silmää, mutta tiedostan sen ja osaan sivuuttaa sen luodessani yksin nollasta projekteja.
Tavoitteenani oli siis esitellä REACT taitojani koska jäi muuten kurssilta fiilis etten kyvennyt näyttänään niitä kaiken muun kiireen alla. Tämän takia loin
oman portfolion ennemmin kuin käytin jotain valmiita templeittejä.
***