PART 1 앱 인벤터 프로젝트 10 퀴즈 만들기와 퀴즈 풀기. PART 1 앱 인벤터 프로젝트 10 퀴즈 만들기와 퀴즈 풀기.

Slides:



Advertisements
Similar presentations
일정 관리 다이어리 제작 JSP Programming with a Workbook. 학습 목표  사용자의 일정을 관리할 수 있는 다이어리에 대하여 알아보자. JSP Programming with a Workbook2.
Advertisements

1 차시 : SW 코딩으로 배우는 3D 기초작품 및 톱니바퀴 만들기 1)SPL3D 프린팅 툴 설치하기 2) 도형 추가하기 3) 도형 연산 명령어 익히기 4)3D 프린터 출력을 위한 STL 파일 내보내기 5) 하트모양 만들기 6) 하트모양 열쇠고리 만들기 7) 변수와 수식.
난이도 : 초급 제1장 앱 인벤터 소개 및 준비.
한국기술교육대학교 아두이노 기반 펌웨어 개발 (기본과정) 5일차 강사: 김영준 목원대학교 겸임교수.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
제 7 장 함수 사용을 통해 엑셀 정복하기.
You YOungseok 데이터베이스 테이블 및 인덱스 You YOungseok.
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
Index SendMemo 기능 Q & A 팀 소개 배경 및 목적 구현
Ⅰ. 클라이언트 스크립트 Ⅱ. 서버 스크립트 그렇다면 프로그래밍 언어를 수행하는 컴퓨터의 개념적인 구조를 살펴 본다면, 프로그래밍 언어가 무엇인지 이해하는데 도움이 될 것입니다. 현재 컴퓨터 구조의 모태가 되고 있는 폰 노이만 구조는 그림에서 보는 것과 같이, 명령어와.
Image & Video processing
제14장 동적 메모리.
MS-Access의 개요 1강 MOS Access 2003 CORE 학습내용 액세스 응용 프로그램은 유용한 데이터를
제 09 장 데이터베이스와 MySQL 학기 인터넷비즈니스과 강 환수 교수.
블록 속성 정의와 추출 속성 정의 블록을 만들 객체들에 문자를 사용하여 속성을 설명하는 꼬리표에 해당하는 태그를 정의하는
웹 서버 동작 HTTP 클라이언트가 서버와 대화하는 방법과 데이터를 서버에서 클라이언트로 전송 하는 방법을 정의한 프로토콜
5장 Mysql 데이터베이스 한빛미디어(주).
forms 객체 입력상자 체크상자, 라디오 버튼 목록상자
쉽게 풀어쓴 C언어 Express 제17장 동적메모리와 연결리스트 C Express Slide 1 (of 13)
4장. 웹로직 서버상에서의 JDBC와 JTA의 운용
[ ] 호서대학교 현장실습지원센터 홈페이지 안내 교수 매뉴얼.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
3.2 SQL Server 설치 및 수행(계속) 시스템 데이터베이스 master
1. C++ 시작하기.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
Power Java 제14장 배치 관리자.
학습목표 학습목차 다른 홈페이지의 HTML 파일 코드를 보는 방법에 대해 알아봅니다.
ASP.NET AJAX 비동기 게시판 작성 2007 컴퓨터공학실험( I )
KHS JDBC Programming 4 KHS
5장 Mysql 데이터베이스 한빛미디어(주).
스크래치 언어 이해 스크래치 이용법 습득 고양이가 말을 하며 움직이는 예제 작성
인터넷응용프로그래밍 JavaScript(Intro).
10장 tkinter로 GUI 만들기.
30강 JAVA 그래픽 JAVA GUI(Graphic User Interface)란? AWT 컴포넌트? Swing 컴포넌트?
2015학년도 PHP 기말 레포트 로그인 홈페이지 제작.
2장. 데이터베이스 관리 시스템 데이터베이스 관리 시스템의 등장 배경 데이터베이스 관리 시스템의 정의
영상처리 실습 인공지능연구실.
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
USN(Ubiquitous Sensor Network)
FileMaker를 이용한 데이터 관리 옥현진(KICE).
LabVIEW WiznTec 주임 박명대 1.
리스트(List)를 이용한 자료 관리 이점숙 /
인천대학교 웹과 인터넷 수업 개요 및 내용 소개.
PART 1 앱 인벤터 프로젝트 02 페인트 통. PART 1 앱 인벤터 프로젝트 02 페인트 통.
빌드 성공.
화상대화 매뉴얼 한국지역정보개발원.
01. 개요 네트워크에 있는 컴퓨터와 그룹에 대한 NetBIOS 이름에 대응되는 IP 주소를 찾아주는 서비스
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
청각장애인용 APP 구성 및 사용법.
PART 1 앱 인벤터 프로젝트 12 원격 로봇. PART 1 앱 인벤터 프로젝트 12 원격 로봇.
디버깅 관련 옵션 실습해보기 발표 : 2008년 5월 19일 2분반 정 훈 승
연구성과 등록.
Homework #12 (1/2) 프로그램을 작성하고, 프로그램과 실행 결과를 프린트하여 제출한다.
.Net Web Application 2007 컴퓨터공학실험(Ⅰ)
안드로이드 앱 개발과정 Step1. 기초과정 강사 : 정 훈 희.
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
JSP Programming with a Workbook
함수, 모듈.
9 브라우저 객체 모델.
Android -Data Base 윤수진 GyeongSang Univ. IT 1.
Power Java 제14장 배치 관리자.
CHAP 15. 데이터 스토리지.
프로젝트 결과 발표 네트워크정보통신과 강동성 이현미.
Power Point 예제 디자인 적용 (서식) - (디자인적용) - (원하는 디자인 선택)
7 생성자 함수.
6 객체.
20 XMLHttpRequest.
연구실안전관리시스템 안전교육 이수방법 사무국 시설과.
Ⅰ. 데이터베이스 정의 Ⅱ. MS SQL 서버 Ⅲ. 데이터베이스 인터페이스
Presentation transcript:

PART 1 앱 인벤터 프로젝트 10 퀴즈 만들기와 퀴즈 풀기

데이터를 공유하는 앱 사용자가 문제를 생산 예) 선생님이 <퀴즈 만들기> 앱으로 문제를 만들어두 면, 학생은 <퀴즈 풀기> 앱으로 문제를 풀어봄 예) 엄마가 <퀴즈 만들기> 앱으로 가족과 관련된 문제 를 만들어두면, 자녀는 <퀴즈 풀기> 앱으로 문제를 풀 어봄 이 장에서는 이처럼 서로 연동되는 두 개의 앱을 제작 데이터 공유를 위해 웹 데이터베이스에 데이터를 저장 하는 TinyWebDB 사용

무엇을 만드는가? <퀴즈 만들기> 앱의 기능 <퀴즈 풀기> 앱의 기능 사용자는 입력 양식에 문제와 정답을 입력 문제-정답 쌍을 화면에 표시 문제와 정답을 웹 데이터베이스에 저장 <퀴즈 풀기> 앱의 기능 8장의 <대통령 알아맞히기> 앱과 비슷 다른 점은 문제를 웹 데이터베이스에서 가져 온다는 사실

무엇을 배우는가? 정적 데이터와 동적 데이터 8장의 <대통령 알아맞히기>는 정적 데이터를 다룸 문제와 정답이 블록에 고정되어있음  이런 방식을 하드코딩이라 함 앱을 여러 번 사용해도 문제 집합이 같음 뉴스, 블로그, 페이스북, 트위터 앱은 시간에 따라 데이터가 변하는 동적 데이터 사용자가 데이터를 생산해냄 앱은 사용자에게 정보 입력, 수정, 공유 기능을 제공함 동적 데이터를 처리하려면 list를 사용해야 함 (예, 9장의 <실로폰> 앱)

무엇을 배우는가? <퀴즈 만들기>와 <퀴즈 풀기> 앱을 만들면서 배우는 것들 사용자가 데이터를 입력하는 입력 양식 for each 블록과 색인 변수를 사용하여 여러 리스트의 항목에 접근 데이터 영구 저장: <퀴즈 만들기>는 문제와 정답을 웹 데이터베이스에 저장하고, < 퀴즈 풀기>는 데이터베이스에서 문제와 정답을 가져옴 데이터 공유: TinyWebDB 컴포넌트를 이용하여 데이터를 웹 데이터베이스에 저장

컴포넌트 설계

컴포넌트 설계 TinyWebDB의 ServiceURL 속성 설정 http://appinvtinywebdb.appspot.com MIT 앱 인벤터 팀이 제공하는 기본 웹 데이터베이스 서비스 전 세계 앱 인벤터 프로그래머가 같이 사용하기 때문에 다른 사람이 검색해 볼 수 있고 덧씌워 질 수도 있음 테스트 단계까지만 사용해야 함 앱을 공개할 시점에는 자신만의 웹 데이터베이스를 구축 특별한 프로그래밍 지식이 없어도 쉽게 구축 가능하고 무료임 http://appinventor.chonbuk.ac.kr “웹데이터베이스구축.pdf” 문서 참조 또는 22장 참조

문제와 정답을 저장할 빈 리스트 만들기 문제와 정답을 저장할 두 개의 리스트 미리 내용을 지정하지 않기 때문에 make a list 대신 create empty list 블록을 사용 나중에 사용자가 문제와 정답을 만들어 주면 그때 add items to list 블록을 이용하여 항 목 추가

사용자가 입력한 문제와 정답 추가하기 프로그램은 어떻게 작동하는가? 사용자가 텍스트 박스에 문제와 정답을 입력하고 [제출] 버튼은 누르면 SubmitButton.Click 이벤트 발생 먼저 add items to list 블록으로 텍스트 박스에 있는 내용을 list에 추가함 QuestionList와 AnswerList 내용을 join으로 결합하여 레이블에 표시해줌

텍스트 박스를 깔끔하게 비우기

문제와 정답 쌍을 한 줄씩 표시하기 for each in list 블록을 이용한 처리 과정

문제와 정답 쌍을 한 줄씩 표시하기 for each from to by 블록을 이용한 또 다른 코드

문제와 정답을 웹에 영구 저장하기 앱을 껐다 켜면, 4장과 7장에서 사용했던 TinyDB를 사용하면, TinyWebDB 만들어두었던 데이터가 모두 사라짐  리스트 변수는 단기 메모리 4장과 7장에서 사용했던 TinyDB를 사용하면, TinyDB는 데이터를 폰 메모리에 저장함 <퀴즈 만들기> 앱과 <퀴즈 풀기> 앱이 데이터를 공유하지 못함 TinyWebDB 데이터를 웹에 저장함 서로 다른 사용자 간에 데이터 공유가 가능 클라우드 방식

문제와 정답을 웹에 영구 저장하기 프로그램은 어떻게 작동하는가? 사용자가 문제와 정답을 일력하고 [제출] 버튼을 누를 때마다 저장 태그와 값 쌍으로 저장

문제와 정답을 웹에 영구 저장하기

데이터베이스에서 데이터 검색 프로그램은 어떻게 작동하는가? TinyWebDB: GetValue로 데이터를 요청해 놓은 다음 GotValue로 받는 두 단계 방식 실제 리스트 데이터가 온 경우와 빈 데이터가 온 경우를 if-then-else로 구분하여 처리 두 리스트가 모두 도착한 다음에야 displayQAs를 호출하여 화면에 표시해줌

<퀴즈 만들기>의 전체 앱 프로그램

<퀴즈 만들기>의 전체 앱 프로그램

<퀴즈 풀기> 앱 사용자 인터페이스 화면 (8장의 <대통령 알아맞히기>와 비슷)

<퀴즈 풀기> 앱 빈 리스트 만들기 앱이 시작할 때, 데이터베이스에 데이터 요청하기

<퀴즈 풀기> 앱 GotValue 이벤트 처리기 코딩 데이터베이스에서 데이터를 받았을 때, 정답 (answers 태그)이면 보여주지 말아야 함 문제 (questions 태그)이면 첫 번째 문제를 화면에 표시해줌

<퀴즈 풀기> 앱 나머지 프로그램 다음 문제로 넘어가는 NextButton.Click 사용자 입력이 정답인지 확인해주는 AnswerButton.Click  8장의 <대통령 알아맞히기>와 똑같으므로 그때 코드를 복사해다 사용

<퀴즈 풀기> 전체 앱 프로그램

<퀴즈 풀기> 전체 앱 프로그램

확장해 보기