Viikko 2

Paikka

"Ohjelmoinnin alkeet"-kurssin pääteohjaukset järjestetään omassa Zoom-huoneessa:

https://jyufi.zoom.us/j/66099493973

Ilmoittautuminen

Valitse ne pääteohjausryhmät, joissa olet paikalla viikolla 37.

Viikko
37
ma
13.09
ti
14.09
ke
15.09
to
16.09
pe
17.09
08-10
10-12

Please to interact with this component.

Please to interact with this component.

12-14 L

Please to interact with this component.

Please to interact with this component.

14-16 P L

Please to interact with this component.

Please to interact with this component.

16-18 P

Please to interact with this component.

Alkuun ohjaavat tehtävät

Voit tehdä tämän kertaiset demotehtävät vielä tekstieditorilla, tai sitten Visual Studiossa. Jos haluat jo nyt kokeilla Visual Studion käyttöä, niin lue seuraava ohje. Viimeistään ensi viikolla siirrymme lopullisesti Visual Studioon. Jos kuitenkin haluat vielä jatkaa tavallisella tekstieditorilla, voit siirtyä suoraan tekemään demotehtäviä.

Tehdään ensimmäisenä tehtävät

  • demojen tehtävä 5 alla olevilla Jypelin ohjeilla
  • demojen tehtävä 1 ensin pohtien mitä tulostaa ja sitten alla olevilla Konsoliprojektin ohjeilla tehdään konsolisovellus, jolla tarkistetaan omat "arvaukset"
  • kun molemmat projektityypit osataan tehdä, saa jatkaa muilla demoilla

Alle kirjoitetut ohjeet ovat Visual Studiolle, mutta Visual Studio for Macille ja JetBrains Riderille prosessi on hyvin samankaltainen.

Seuraavat videot ovat VS2015, VS2019 ja Visual Studio for Macille.

# videovs
# Plugin1

Visual studion käyttöönotto

Vaikka Visual Studio tekee meidän puolesta monia asioita automaattisesti on kuitenkin tärkeää että ymmärrämme mitä "taustalla" tapahtuu, ja siksi olemme tähän asti operoineet ilman graafista käyttöympäristöä.

Visual Studio on IDE, eli Integrated development environment, suomeksi yleensä vain tylsästi 'ohjelmointiympäristö'. ''Integrated''-sana tarkoittaa lyhyesti sanottuna, että samassa paketissa on monta ohjelmaa, yleensä mm. koodieditori, debuggeri (eli virheenjäljittäjä, johon tutustumme tarkemmin tulevien viikkojen aikana) ja kääntäjä.

(Integroidun) ohjelmointiympäristön käyttämisestä on monia hyötyjä, kuten se, ettemme enää joudu tekemään ohjelman kääntämistä ja kääntämisen jälkeistä suorittamista manuaalisesti. Kuitenkin, jos olisimme suoraan aloittaneet Visual Studiosta, olisi kokonaisuuden ymmärtäminen jäänyt puutteelliseksi.

HUOMAA että Jypelin pohjat eivät löydy, jos laitat alustan filtteriksi Windows. Hae templatea selaamalla tai etsimällä suoraan esim. nimellä "Fysiikkapeli".

Jypeli Solutionin/Projektin luominen Visual Studiossa

  • Valitse Create new projecttai yläpalkista File / New / Project (tai Ctrl + Shift + N). Mac: Valitse New alkuikkunasta tai yläpalkista File / New Solution
  • Valitse projektin tyypiksi FysiikkaPeli.
    • mikäli sinulla ei näy menussa Jypeliä, tämän dokumentin lopussa on ohjeet konsolisovelluksen tekemiseksi ilman Jypeli-projektimallia.
  • Anna projektin nimeksi Portaat.
  • Kirjoita tai selaa (Browse) poluksi C:\MyTemp\OMATUNNUS\ohj1\ohjaukset\ohjaus2 (tai mikä onkaan oma demohakemistosi). HUOM! Suositellaan aina tekemistä ensin paikalliselle levylle, esim. C:\MyTemp\omatunnus\.... Muista siirtää lopuksi TÄRKEÄT tiedostot U-asemallesi. (Mikroluokassa työskennellessä)
  • Anna solutionin nimeksi demo2.
  • Jätä Place solution and project in the same directory-boksi tyhjäksi. Mac: Klikkaa Create a project directory within the solution directory täytetyksi.
  • Klikkaa Create.
  • Klikkaa Solution Explorerissa kooditiedoston Portaat.cs nimeä. Koodissa pitäisi näkyä:
public class Portaat : PhysicsGame
{
    public override void Begin()
    {
        // TODO: Kirjoita ohjelmakoodisi tähän

        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
    }
}
  • Korvaa TODO-rivi riveillä:
        Level.Background.Color = Color.Black;
        PhysicsObject pallo = new PhysicsObject(200,200,Shape.Circle);
        pallo.Color = Color.Blue;
        Add(pallo);
  • Muotoile sisennykset "kauniiksi" : Edit / Advanced / Format Document (Pikakomento löytyy Format Document vierestä, voit vaikka opetella sen ulkoa). Mac: Edit / Format / Format Document.
  • Kirjoita luokan dokumentaatiokommentti näppäilemällä luokan esittelyrivin yläpuolelle kolme kauttaviivaa ///. Kirjoita <summary>-tagien väliin selvitys luokan toiminnasta (eli että piirretään portaita)
  • Kirjoita vastaavasti Begin -metodin kommentit.
  • Kokeile kääntää (Ctrl+Shift+B), tai sitten voit tehdä käännös+ajon yhtä aikaa (F5). Nämä pikanäppäimet näet menun kohdasta Debug.
  • HUOM! Jos ajoyrityksessä (painamalla F5) tulee virheitä, niin Visual Studio ehdottaa, että ajetaanko viimeisin toimiva versio. Mutta tätähän me emme halua, vaan korjata ohjelmamme jotta se toimisi. Joten vastaa ''No''.

Konsoliprojekti

Oletetaan että sinulla on solution jo olemassa. Lisätään solutioniin toinen projekti demo 2:n tehtävää 1 varten. (Mikäli ei ole Solutionia, niin voit aloittaaFile/New/Project).

  • Klikkaa Solution Explorerissa solutionin demo2 nimeä hiiren oikealla.
  • Valitse Add/New Project...
  • Valitse Jypeli/ConsoleMain
  • Anna nimeksi Lausekkeita
  • Paina Create.
  • Jotta projekti voidaan ajaa, klikkaa Solution Explorerissa sen nimeä Lausekkeita hiiren oikealla ja valitse Set as StartUp Project.
  • Solution Explorerissa tuplaklikkaa hiirellä tiedoston nimeä Lausekkeita.cs.
  • Lisää koodiin rivi, joka tulostaa jotakin:
    • mene pääohjelman aaltosulkujen {} väliin
    • kirjoita cw ja paina Tab Tab
    • täydennä sulkujen sisään "Terve!"
  • Ohjelman voit ajaa painamalla Ctrl-F5. Mikäli painat F5, ohjelma vain välähtää.
# demo2tehtavaa
  • Jatka tekemällä Demo 2 tehtävää 1. Kun olet aina päätellyt mitä tulostuu, vaihda pääohjelman koodi vastaavaksi ja kokeile pitikö arvauksesi paikkansa.

  • Muuta pääohjelman koodiksi esimerkiksi:

         int a = 1;
         int b = 2;
         int c = 3;
         int x = a + b * ((2 - c) / a + b);
         System.Console.WriteLine(x);
  • aja painamalla Ctrl-F5

Pikaoppi debuggauksesta:

  • klikkaa hiirellä rivin int x kohdalla harmaata vasenta marginaalia rivinumeroiden vasemmalla puolella. Pitäisi tulla punainen pallukka.
  • Voit myös siirtää kursorin haluamallesi riville ja painaa F9. (Tai shift+F10 -> Breakpoint -> Insert breakpoint)
  • Aja ohjelma painamalla F5.
  • Ajo pysähtyy riville ennen kuin x:lle on annettu arvo.
  • Katso alalaidasta muuttujien arvoja.
  • Paina F10 niin suoritetaan rivi x =
  • Katso mitä on muuttujien arvot
  • Jatka ajaminen loppuu painamalla F5

Huomioita Jypeli-projekteista

Jypeli-projektissa Main-pääohjelma menee Ohjelma.cs-tiedostoon, joten jos copy-pastetat koodin (esimerkiksi demo2/tehtävä4), niin poista Main-pääohjelma Portaat-luokan sisältä.

Konsoliprojekti ilman Jypeli-projektimallia

Ohjeet jos ei ole Jypeli-mallia

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.