Skip to content
This repository has been archived by the owner on Apr 25, 2020. It is now read-only.

sullivanproject/2018-SullivanProject-MakeChatbot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 

Repository files navigation

학교 관련 챗봇 제작 (Kakaotalk Chatbot)

설리번 선생님

  • 당진: 인상민
  • 목포: 임재민

예상 난이도

★★★☆☆ (중)

교육 대상

프로그래밍에 관심이 있는 중학생 1학년 ~ 고등학생 3학년

교육 목적

  1. 자신의 학교, 생활에 관련된 실용적인 챗봇을 만들어 직접 사용하면서 성취감을 얻는다.
  2. 차시마다 챗봇이 한단계 한단계 업그레이드 됨을 보며 자신의 성장을 직접적으로 확인할 수 있게 한다.

수업 방식

  1. 파이썬의 문법을 배워가며 챗봇을 한단계 한단계 업그레이드 시킴
  2. api, 라이브러리를 래핑하여 프로그래밍을 처음 배우더라도 매우 쉽게 사용할 수 있는 라이브러리를 제작
  3. 중간중간 지루해질 때 마다 간단한 컴퓨터 꿀팁

강의 일정

  • 소요시간 2시간 (수업 시간 45분50분, 쉬는 시간 10분15분)
  • 약 8~10차시

1차시

목표: 설리번 프로젝트 소개, 친해지기!

  • OT (1교시)

    • 설리번 프로젝트 소개 (설리번 프로젝트는 무엇인가요? 왜 만들어졌나요?)
    • 설리번 선생님 소개 (설리번 선생님은 왜 설리번 선생님이 되셨어요?)
    • 헬렌들의 소개 (우리들은 왜 여기에 왔을까요?)
    • 프로그래밍에 대한 소개 (프로그래밍이 무엇이고 우리가 이런 어려워 보이는 것을 할 수 있는거예요?)
    • 커리큘럼의 소개 (우리는 곧 이것을 할 거예요!! 멋지죠?)
  • 프로그래밍 맛보기 (2교시)

    • print('Hello World')를 배우기
    • print로 자기소개를 해보기 (예쁘고 멋지게 출력해보기)
    • 헬렌들과 설리번 선생님과의 까까와 함께하는 네트워킹

2차시

목표: 간이 챗봇 만들기!

  • 변수 and 입력 (1교시)
    • 변수의 개념 (컴퓨터 안에 저장되는 상자예요!)
    • int (int는 정수를 저장해요)
    • string (string은 문자들을 저장해요)
    • input (input 함수를 사용하면 변수에 값을 입력할 수 있어요)
  • if문 and 간이 챗봇 만들기 (2교시)
    • if문 (if문은 조건이 맞으면 실행이 돼요!)
    • 간이 챗봇 만들기 (input과 if로 간이 챗봇을 만들어 보아요!)

3차시

목표: 간이 챗봇을 한번에 여러번 작동시키기!

  • 반복문 (1교시)
    • for문의 개념 (for문은 반복을 시킬 때 사용 돼요!)
    • for문의 간단한 응용 (for문으로 1부터 n까지의 더하기, 1부터 n까지 x의 배수만 출력하기를 해보아요!)
    • 간이 챗봇에 while문 추가하기 (간이 챗봇을 프로그램을 종료하지 않고 여러번 작동시켜보아요!)
    • 간이 챗봇에 n까지의 합을 구하는 기능 추가하기 (간이 챗봇에 1부터 n까지의 합을 구하는 기능을 추가해 보아요!)
  • 함수 (2교시)
    • 함수의 개념 (함수는 미리 작성해 놓은 코드를 한 줄의 명령어로 한번에 실행을 시켜줘요!)
  • 쉬어가는 타임 (여유 시간, 유동적으로 필요에 따라 아래 3가지 중에 선택하여 실시)
    • 설명이 부족한 부분이 있었으면 보충 설명
    • 자신의 간이 챗봇에 넣고 싶었던 것들을 추가
    • 간단한 컴퓨터 팁

4차시

목표: 함수를 이용해 코드를 이쁘게 만들자

  • 함수 (1교시)
    • 함수의 개념 복습 (아 맞아 함수는 이런 것이었어요!)
    • 함수의 사용법 (함수는 이렇게 쓰는 거예요!)
  • 간이 챗봇에 함수 적용 (2교시)
    • 간이 챗봇에 함수를 적옹시키기 (if ~: 함수() 쓰니까 코드가 에뻐졌어요!)

5차시

목표: 외부 라이브러리를 사용하여 급식을 받아오기!

  • 외부 라이브러리 (1교시)
    • 라이브러리의 개념 (라이브러리는 이런 것이에요!)
    • schapi 설치 (외부 라이브러리는 이렇게 설치를 할 수 있군요!)
    • schapi 설명 (schapi라는 라이브러리는 급식을 불러오는 라이브러리군요!)
    • 라이브러리 도큐먼트를 보는법 (schapi라는 라이브러리는 이렇게 사용하면 되네요!)
  • schapi 실사용(2교시)
    • 리스트 자료형 (리스트는 여러가지 데이터를 한 변수에 담을 수 있게 해주는 자료형이에요!)
    • schapi를 이용하여 급식 데이터를 받아와보기 (우아! 급식 정보가 이렇게 받아와졌어요!)
    • 간이 챗봇에 급식을 보는 기능을 추가하기 (챗봇에 실용적인 기능이 생겼어요! 내가 이걸 해냈다니 너무 멋진 것 같아요!)

6차시

목표: 카카오톡에 챗봇을 연결하기

  • 카카오톡 플러스친구 (1교시)
    • 카카오톡 플러스 친구 만들기 (플러스 친구를 만들었어요! 이제 카카오톡에서 내 챗봇을 쓸 수 있는 건가요?)
    • 플러스 친구에 넣을 기능 생각하기 (기능이 헬렌이 구현하기 힘든 기능이면 설리번 선생님이 7차시에 모듈로 구현을 해옴) (내 챗봇에서는 급식도 보고, 고양이도 보고싶어요!)
  • 카카오톡 플러스친구 자동응답 라이브러리(가칭 kakaoPF-bot, 카카오톡 rely api를 플라스크와 래핑하여 제작 예정) (2교시)
    • kakaoPF-bot 설명 (kakaoPF-bot은 카카오톡 챗봇을 쉽게 만들 수 있는 라이브러리군요!)
    • 간이 챗봇에 kakaoPF-bot을 적용하여 카카오톡에서 사용할 수 있는 챗봇 제작 (카카오톡에서 제 챗봇을 사용할 수 있다니 저 너무 대단한거 같아요!! 친구들한테 자랑하고싶어요!)

7차시

목표: 자신만의 챗봇을 완성

  • 자신만의 챗봇을 제작, 마무리
    • 6차시 1교시 때 계획했던 기능을 구현하고 추가함
    • 도움이 필요하면 설리번 선생님이 도움을 제공

8차시

목표: 자신이 만든 챗봇, 느낀 점 발표, 쫑파티

  • 발표 (1교시)
    • 자신이 만든 챗봇 및 느낀 점 발표 (저 이렇게 멋진 챗봇 만들었고 활동 재미있었어요!!)
  • 쫑파티 (2교시 ~)
    • 맛있는 것을 먹으러 갑시다!!

Releases

No releases published

Packages

No packages published

Languages