[Day 27] RGB Challenge + 게임 사고방식 + Auto CRLF

RGB Challenge

화면을 조작하는 방법

  1. appendChild, removeChild 등의 메소드로 DOM 객체를 실제로 만들어서 직접 넣고 빼는 경우
    • 내가 요소를 몇개를 만들어야 하는지 모르는 경우(HTML, CSS 에서 미리 만들어둘 수 없는 경우)
    • ex. todoLIst 를 만드는 경우
  2. style을 조작해서 display: none 등으로 숨겨놨다가 특정 이벤트 발생 시 display: block 등으로 보여주는 경우
    • 내가 무엇을 표시해야 하는지 코드 작성 시점에서 이미 알고 있는 경우

게임을 만들 때의 사고방식

  • 사용자가 입력하면(또는 시간이 지나면) 원래 그려놨던 화면을 다른 화면으로 바꿔줘야 한다.
  • 화면을 바꾸기까지의 내부 절차
    • 그려져 있는 화면에서 사용자 입력이 발생하거나 시간이 경과하면 화면을 다시 그려야 한다. but! 냅다 그리는 게 아니라 기억하고 있는 것들을 기반으로 다시 그려야 한다.
    • 프로그램이 기억하고 있는 모든 것들을 우리는 **상태(STATE)** 라고 부른다.
    • 사용자의 입력(또는 일정 시간 경과)이 발생하면 상태가 변경된다.
    • 그리고 이 상태를 기반으로 화면을 다시 그린다.
    • 이 사이클을 반복한다!!
  • 우리가 화면을 바꾸기까지의 생각과 절차를 코드로 옮겨주는 것이 리액트(REACT)!!!
    • 리액트는 상태를 변경했을 때 화면을 자동으로 다시 그려준다!

협업 시 주의할점 (Github)

  • 윈도우 개행문자 - CRLF(/r/n)
  • 맥 개행문자 - LF(/n)
  • Git에는 개행문자를 자동으로 바꿔주는 기능(Auto CRLF)이 있다. (설정해야 쓸 수 있는 기능)
    • CRLF로 작성된 파일을 커밋할 때에는 LF로 바꿔서 깃 저장소에 저장한다.
    • Git 저장소의 LF 파일을 작업영역으로 끌어올 때에는 CRLF로 바꿔서 끌어온다.
    • 기능이 켜져 있는지 확인하는 법
      • Git Bash에서 git config --global core.autocrlf
    • 안켜져있다면 키는 법
      • Git Bash에서 git config --global core.autocrlf true

댓글남기기