Veiledning til Elevator Saga

Elevator Saga: styring, strategitips og svar med lenker til spillet og fullstendige instruksjoner.

Spill Elevator Saga

Programmering av en heiskontroller

Rediger funksjonene JavaScript, init og update, og trykk deretter Start for å kjøre kontrolleren.

Kontroller og full veiledning

Testing av en idle-hendelse før du legger til rutingsregler

En hendelsesbasert kontroller kan gi en heis en ny oppgave når den blir idle.

Kontroller og full veiledning

Test én kontrollerbeslutning før du legger til en rutingpolicy

Start med JavaScript i spillets init- og update-funksjoner og trykk Start for å se simuleringen. Bruk API-referansen i spillet for den nøyaktige oppførselen til idle og goToFloor. En første øvelse er å forstå når en ledig heis får sin neste oppgave. Se den hendelsen og den resulterende bevegelsen før du legger til flere forhold, slik at du kan forklare hvilken del av kontrolleren som har utstedt en forespørsel.

Inspiser deretter passasjerdestinasjoner. Bevegelse alene betyr ikke at passasjerer blir servert. Les floor_button_pressed-hendelsen i referansen og sammenlign forespørsler med ruten du observerer. Hvis flere heiser gjentar samme rute, kan noen køer fortsatt vente. Bygg fra en liten kontroller du forstår i stedet for å kopiere en kompleks policy og anta at den tilfredsstiller gjeldende utfordrings passasjer- eller ventetidsmål.

Sammenlign en kodeendring med utfordringens faktiske mål

Før du starter simuleringen, les kravet for å bestå utfordringen og velg én atferd å inspisere, for eksempel tomgangstid, gjentatte stopp eller passasjerer som venter i en bestemt etasje. Endre en beslutning og kjør på nytt. Hyppigere bevegelse av heisen garanterer ikke at kontrolleren klarer utfordringen. Sammenlign de synlige køene og det viste resultatet med målet i stedet for å bruke bevegelse som eneste tegn på suksess.

Når du redigerer destinationQueue direkte, følg referansens krav om å ringe checkDestinationQueue slik at den reviderte køen trer i kraft; normale goToFloor forespørsler håndterer allerede destinasjoner i kø. Hold disse tilnærmingene forskjellige mens du feilsøker. Dette senteret beskriver en nettleserprogrammeringssimulering, ikke programvare for en ekte heis eller et produksjonssikkerhetssystem. Det garanterer ikke at én kontroller vil bestå hver utfordring. Bruk den nøyaktige API-dokumentasjonen inne i spillet, og registrer deretter hvilken hendelse og ruteendring som forbedret den spesielle testen du nettopp kjørte.

For en konkret gjennomgang, se en etasje med kø mens en heis blir inaktiv. Identifiser hvilken behandler som sender den neste goToFloor-forespørselen og om den forespørselen tjener de ventende passasjerene eller sender heisen et annet sted. Endre det ene rutevalget, og sammenlign deretter utfordringsresultatet. Hvis flere behandlere konkurrerer, forenkle kontrolleren til du kan forklare rekkefølgen av forespørsler. Bruk API-referansen for de eksakte støttede hendelsene. Å observere én kø og én beslutning om gangen gir deg bevis for en revisjon uten å hevde at det er en universell optimal kontroller.

Elevator Saga tips og strategi

Kryss av et tips for neste runde. Denne listen endrer ikke spillet og lagrer ikke fremgangen din.

Elevator Saga spørsmål og svar

Hvilket språk skriver jeg?

Kontrolleren bruker JavaScript, med init- og update-funksjoner i spillets editor.

Betjener denne en ekte heis?

Nei. Det er en programmeringssimulering utelukkende i nettleserspillet.

Kan jeg bruke den til å øve på koding?

Ja, spesielt hendelsesdrevet kontroll og testing av små endringer. Spillet er basert på magwos MIT-lisensierte Elevator Saga-prosjekt; det er ikke et sertifiseringskurs.

Hvorfor venter passasjerer selv om heisen beveger seg?

En gjentatt rute betjener ikke alle ønskede etasjer automatisk. Behandle floor_button_pressed og bruk goToFloor til reisemålene. Sammenlign køene med målet før du legger til stopp. Endrer du destinationQueue direkte, må du kalle checkDestinationQueue; goToFloor behandler vanlige forespørsler allerede.

Kontroller og full veiledning

Kontroller og full veiledning

Spill Elevator Saga