Slide 1

Slide 1 text

8FC4PDLFUͰ༡ΜͰΈͨ ෢ྠढ़Ұ

Slide 2

Slide 2 text

ࣗݾ঺հ w ෢ྠढ़Ұ ͚ͨΘ  w େֶ೥ੜ w ʮͪ͘Θʯͱݺ͹Εͯ·͢ w ॳ-5

Slide 3

Slide 3 text

8FC4PDLFUͰ༡ΜͰΈͨ

Slide 4

Slide 4 text

(Pͷ8FC4PDLFUࣄ৘ w HPMBOHPSHYOFUXFCTPDLFU w 5IJTQBDLBHFDVSSFOUMZMBDLTTPNFGFBUVSFT GPVOEJOBMUFSOBUJWFBOENPSFBDUJWFMZNBJOUBJOFE 8FC4PDLFUQBDLBHF w HJUIVCDPNHPSJMMBXFCTPDLFU

Slide 5

Slide 5 text

HPSJMMBXFCTPDLFU w 4FOEDMPTFNFTTBHF w 4FOEQJOHTBOESFDFJWFQPOHT w $PNQSFTTJPO &YQFSJNFOUBM  w 3FBENFTTBHFVTJOHJP3FBEFS w 8SJUFNFTTBHFVTJOHJP8SJUF$MPTFS

Slide 6

Slide 6 text

func Echo(ws *websocket.Conn) { for { var reply string if err := websocket.Message.Receive(ws, &reply); err != nil { fmt.Println("Receive failed: ", err) break } if err := websocket.Message.Send(ws, reply); err != nil { fmt.Println("Send failed: ", err) break } } } func main() { http.Handle("/", websocket.Handler(Echo)) if err := http.ListenAndServe(":8080", nil); err != nil { log.Fatal("ListenAndServe:", err) } }

Slide 7

Slide 7 text

༡ΜͰΈͨ νϟοτػೳ

Slide 8

Slide 8 text

IFSPLVʹ͋͛·ͨ͠ 63-͸ൿີ

Slide 9

Slide 9 text

ͭͬͨ͘΋ͷ w ͨͩͷνϟοτػೳ w શମͰͻͱͭͷ෦԰Λڞ༗͍ͯ͠Δ w HJUIVCDPNHPSJMMBXFCTPDLFUUSFFNBTUFS FYBNQMFTDIBUΛࢀߟʹ͠·ͨ͠

Slide 10

Slide 10 text

ͭͬͨ͘΋ͷ )6# ೖࣨɾୀࣨɾ ϝοηʔδͷ؅ཧ 4FSWFS ड৴ͷ؅ཧ ૹ৴ͷ؅ཧ JOJU QFSDPOOFDUJPO

Slide 11

Slide 11 text

ຊ౰ʹ΍Γ͔ͨͬͨ͜ͱ

Slide 12

Slide 12 text

ෳ਺ͷ෦԰Λͭ͘Δ )6# ೖࣨɾୀࣨɾ ϝοηʔδͷ؅ཧ 4FSWFS ड৴ͷ؅ཧ ૹ৴ͷ؅ཧ QFSDPOOFDUJPO

Slide 13

Slide 13 text

ཁղܾϙΠϯτ w ෦԰ͷ؅ཧ w ೖࣨͷड͚ೖΕঢ়ଶͷ؅ཧ w ਓ਺ͷ෦԰ͷ࡟আ w ύϑΥʔϚϯεͷ࠷దԽ

Slide 14

Slide 14 text

͋Γ͕ͱ͏͍͟͝·ͨ͠