Ohjaus 2

Avaa tarkemmat ohjeet aikavälin antamisesta

# ryhma

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 demoista ensimmäisenä tehtävät 5 ja 1.

Alla ohjeet on Visual Studiolle, mutta Xamarinille (nykyään VS for Mac) ja MonoDevelopille ne ovat hyvin analogiset. Seuraavat videot ovat VS2015 ja Xamarinille Windowsissa, menujen paikat ovat hieman erilaisia Macissä, mutta muuten toimi Macissä samalla tavalla. Linuxissa MonoDevelop toimii täsmälleen samoin.

# 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.

  1. HUOM syksy 2019!

    Jypelin projektimallit ovat mikroluokan koneilla rikki. Lataa tiedosto mono.zip, ja pura se hakemistoon joka sinulla on vastaava kuin:

     U:\My Documents\Visual Studio 2019\Templates\ProjectTemplates\Visual C#\

    Huom U-asema, ei C! Eli edellä mainitun zip-tiedoston purkamisen jälkeen sinulle pitäisi muodostua em. hakemistoon seuraavat hakemistot:

     Jypeli-Windows
     MonoGame
  2. Käynnistä Visual Studio 2019 (huomaa että mikroluokissa on useita eri versioita, ole tarkkana että valitset oikean). Jos et ole aiemmin käynnistänyt Visual Studiota, kysytään käyttöympäristön valintaa. Valitse Visual C# ja klikkaa Start Visual Studio. Jos ohjelma kyselee sinulta vielä GhostDoc-asetuksia, voit klikata Skip.

    • Jos kuitenkin vahingossa klikkasit jotain muuta kuin C#:a, niin ei hätää, toimi seuraavasti:
      1. Valitse ylhäältä Tools / Import and Export Settings...,
      2. Valitse Reset all settings,
      3. Valitse Yes, save my current settings ja paina Next,
      4. Valitse haluamasi ympäristö.
  3. Rivinumerot näkyviin. Tools / Options / Text Editor / All languages / General -> Line numbers. Jos haluat niin voit suurentaa tai pienentää myös fonttia Tools / Options / Environments / Fonts and Colors. Tilapäisesti myös Ctrl + hiiren rulla.

Kohtaan 2: Visual Studio 2019 ei taida kysyä käyttöympäristöä, mutta ainakin käytettävää väriteemaa kysytään ensimmäisenä. Tämän jälkeen se pyytää kirjautumaan sisään. Kirjautumiseen voit käyttää yliopiston käyttäjätunnusta muodossa käyttäjätunnus@jyu.fi, mikäli olet aktivoinut oma-palvelussa Office 365.

17 Sep 19

Mikroluokissa toi c:tarkoittaa This PC:n alla olevaa Documents kansiota, joka oikeasti sijaitsee verkkolevyllä. Oppilailla ei ole oikeuksia C:llä olevaan Documents kansioon.

Kiitos, korjasin ohjeen :) -MR

18 Sep 19 (edited 18 Sep 19)

HUOMAA että Jypelin pohjat eivät löydy, jos laitat kielifiltteriksi C#. Hae templatea selaamalla (all) tai etsimällä suoraan esim. nimellä "Fysiikkapeli".

REFRESHAA SELAIN AINA VÄLILLÄ SILLÄ OHJEITA MUUTETAAN

Jypeli Solutionin/Projektin luominen Visual Studiossa

  • Valitse Create new projecttai yläpalkista File / New / Project (tai Ctrl + Shift + N)
  • Valitse projektin tyypiksi FysiikkaPeli(Physics2d). (Huom! Älä tuplaklikkaa)
    • 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.
  • Anna solutionin nimeksi demo2.
  • Jätä Place solution and project in the same directory-boksi tyhjäksi.
  • Klikkaa Create.
  • Klikkaa Solution Explorerissa kooditiedoston Portaat.cs nimeä. Koodissa pitäisi näkyä:

Jos Physics2d ei toimi, voit yhtä hyvin käyttää myös SimplePhysicsiä. Tämä on kuitenkin vain ongelman siirtämistä…

19 Sep 19
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 (voit vaikka opetella ulkoa tuon pikakomennon Ctrl-K D (tai vanhemmissa versioissaCtrl-E D) ).
  • 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''.

Ctrl-K D

18 Sep 19

Konsoliprojekti

Oletetaan että sinulla on projekti 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.