[모두를 위한 컴퓨터 과학 CS50 2019] 1. 컴퓨팅 사고 - 4)5)스크래치

2021. 10. 14. 15:21·CS: Computer Science/CS50 2019
728x90

boostcourse의

모두를 위한 컴퓨터 과학(CS50 2019) - David J. Malan (데이비드 J. 말란)

 

www.boostcourse .org/cs112


1. 컴퓨팅 사고 Computational Thinking, Scratch

4)스크래치: 기초
5)스크래치: 심화

스크래치

 

MIT 의 미디어 랩에서 만든 스크래치라는 그래픽 언어를 다뤄봤다.

퍼즐 조각처럼 보이는 블럭들을 끌어놓는 방식으로 연결시켜 컴퓨터가 무엇을 할지 단계적으로 프로그래밍할 수 있는 언어이다.

알고리즘을 구성하는 요소로 함수, 조건, 불리언, 루프 등이 있음을 게임을 통해 알게되고 만들어 볼 수 있다.

 

https://scratch.mit.edu/

 

스크래치 블록

 

게임 안에서 블록의 종류에 따라 프로그램이 수행하는 일의 종류가 달라진다. 

입력이 주어졌을 때 블랙 박스를 거쳐 출력이 되는 컴퓨터의 작동 원리를 생각해보면, 하나의 블록이 블랙 박스의 역할을 한다. 

 

이 게임 안에는 각 블록에 알고리즘을 구성하는 요소를 색깔과 직관적인 단어로 표현되어 있다. 처음 코딩을 배우는, 비전공자들에게는 어떻게 입력하고 알고리즘에 따라 출력하는지 보여준다. 원래는 태그들, 코딩을 하여 동작하여야 하는 것들을 직관적으로 잘 만들어냈음을 볼 수 있다. 이외에도 블록들을 각각 묶어 리팩토링을 하는 과정도 볼 수 있었다. 

 

예를 들어 숫자를 셀 수 있도록 하기 위해서는 'counter' 라는 변수를 사용하는 주황색 블럭을 옮겨 붙이면 된다. 

변수와 루프, 변수와 조건문 등 조건문을 활용하여 복잡한 프로그램도 가능하며 생활코딩님의 WEBn 시리즈에서 배운 HTML, CSS, JS 수업의 내용을 직관적으로 구현해내면서 배울 수 있는 게임이다.

 

이 게임과정을 통해 생활코딩님의 강의를 통해 배웠던 내용들을 좀 더 직관적으로 쉽게 다시 이해되게 하는 강의이다.

저작자표시 (새창열림)

'CS: Computer Science > CS50 2019' 카테고리의 다른 글

[모두를 위한 컴퓨터 과학 CS50 2019] 1.컴퓨팅 사고 - 3)알고리즘  (0) 2021.10.14
[모두를 위한 컴퓨터 과학 CS50 2019] 1. 컴퓨팅 사고 - 2)정보의 표현  (12) 2021.10.11
[모두를 위한 컴퓨터 과학 CS50 2019] 1. 컴퓨팅 사고 - 1) 2진법  (4) 2021.10.11
'CS: Computer Science/CS50 2019' 카테고리의 다른 글
  • [모두를 위한 컴퓨터 과학 CS50 2019] 1.컴퓨팅 사고 - 3)알고리즘
  • [모두를 위한 컴퓨터 과학 CS50 2019] 1. 컴퓨팅 사고 - 2)정보의 표현
  • [모두를 위한 컴퓨터 과학 CS50 2019] 1. 컴퓨팅 사고 - 1) 2진법
ro117youshin
ro117youshin
코딩 / 외국어공부 (영어, 중국어) / 독서 등 자기계발을 기록합니다.
  • ro117youshin
    Taking an extra step
    ro117youshin
  • 전체
    오늘
    어제
    • 분류 전체보기 (153)
      • DDD (5)
      • JAVA (13)
      • Spring Boot (2)
      • Spring (4)
      • MySQL (1)
      • C (1)
      • Algorithm & Data Structure (34)
        • study (15)
        • programmers (0)
        • boj (18)
        • assignments (1)
      • CS: Computer Science (6)
        • CS50 2019 (4)
        • Network (2)
        • Database (0)
      • Git (3)
      • foreign language (16)
        • English (0)
        • Chinese (16)
      • BOOK (2)
      • ETC (2)
      • youtube.com|user|egoing2 (64)
        • WEB1 - HTML & Internet (5)
        • WEB2 - CSS (9)
        • WEB2 - JavaScript (18)
        • JavaScript Immutability (0)
        • DATABASE1 (4)
        • DATABASE2 MySQL (12)
        • JAVA1 (16)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 글쓰기
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    HSK6급공부
    css
    객체
    ddd
    생활코딩
    조건문
    코딩공부
    BOJ
    Domain Driven Design
    중국어공부
    js
    도메인 주도 설계
    알고리즘문제
    최범균
    HSK6급
    HSK6급모의고사
    variable
    HTML
    javascript
    Java
    나의 앱 만들기
    자바
    HSK6급필수어휘
    개발공부
    Java자료구조
    baekjoon
    JAVA1
    백준
    mysql
    DATABASE2
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
ro117youshin
[모두를 위한 컴퓨터 과학 CS50 2019] 1. 컴퓨팅 사고 - 4)5)스크래치
상단으로

티스토리툴바