[HoC] 첫 번째 워크샵 - JavaScript 기초

minjulee97·2019년 10월 8일
0

Hacker on Campus

  • 일시: 1주차 [2019.10.08.화]
  • 장소: 성신여대
  • 인원: 6명

0. 스터디 이름을 정해보자

우리 학교에는 성신스터디라는 제도가 있다.
이 제도를 통해 많은 학생들이 본인이 원하는 스터디에 들어가 한 학기 동안 활동을 하게 된다. 또한, 성신스터디를 하게 되면 스터디의 이름을 정해야하는 규칙이 있다. 내가 스터디장으로서 참여하게 된 프로그래밍 스터디는 성신스터디는 아니었지만 우리도 모임의 이름을 정하면 소속감도 느낄 수 있고 여러모로 좋을 것 같아 스터디의 이름을 정하게 됐다.

후보로 나온 건

  1. 저스트코드('Just Do It' 에서 변형시킨 이름이다👊)
  2. 웹웹(웹 개발의 웹을 따와서 만든 이름이다😃)

이 두 가지였는데 돌림판 게임 결과, 스터디 이름으로 '저스트코드'가 선정되었다.

스터디의 이름까지 정하고 나니 스터디장으로서 모임을 끝까지 잘 이끌어나가야겠다는 생각이 더 확실해지는 기분이었다.

1. 자기소개

드디어 오늘 저녁 6시부터 7시 반까지 첫 워크샵을 진행했다.
학교 커뮤니티를 통해 모집한 스터디 멤버들과 인사를 나눈 뒤, 일단 내가 준비한 PPT를 보여드리기 위해 빔 프로젝터에 노트북을 연결했는데 화면이 뜨지 않아서 엄청 당황했다. 다행히 스터디원분들이 이것 저것 함께 도와주신 덕분에 준비한 화면을 보여드릴 수 있었다😅

일단 본격적인 스터디를 진행하기에 앞서 먼저 자신의 전공, 이름, 프로그래밍 공부 기간, 스터디에 참여하게 된 이유에 대해 이야기를 나눠보았다. 스터디원 분들의 수준에 맞춰 스터디를 진행하기 위해서는 각자 프로그래밍에 대해 어느 정도 수준까지 아시는지 내가 알고 있어야 스터디를 진행하는 데 도움이 될 것 같아 이렇게 자기소개 하는 시간을 가졌다.
우리 스터디는 유아교육과인 나를 포함해 일문과, 컴퓨터공학과, 통계학과 이렇게 다양한 전공의 스터디원들이 함께하게 되었다. 자바스크립트는 아니지만 파이썬 등 프로그래밍을 어느 정도 접해보신 분도 계셨고 아예 처음인 분도 계셨다. 스터디를 통해 처음 만나서 자기소개를 하는 분위기가 어색하게 느껴질 수 있음에도 불구하고 다들 열심히 이야기를 해주셔서 다행이었다👍

2. 자바스크립트 기본, 변수와 타입, 비교, 조건문, 함수

자기소개를 마친 뒤, 본격적인 스터디를 진행하였다.
스터디는 내가 이번 주차에 배울 내용의 핵심 부분을 설명한 뒤, 실습과 질의응답을 함께 하는 식으로 진행되었다. 처음에는 긴장이 되어서 버벅거리면서 설명을 드렸지만, 스터디원분들이 반응을 잘해주신 덕분에 점점 긴장을 풀고 수업에 집중할 수 있었다. 자바스크립트 기본부터 함수까지 기본적인 사항에 대해서만 설명을 하려고 했는데도 역시 양이 많다 보니까 시간이 훌쩍 가 있었다. 그래도 이번 주차의 내용은 크게 어렵지 않은 수준이라서 스터디원분들도 잘 따라오시는 것 같았다.

3. 질의응답

스터디원분들께서 하셨던 여러 질문 중에 프리 코스를 통해 배운 적은 있지만 명확하게 설명이 안되는 부분이 있었는데, 그건 바로 let과 var의 차이에 대한 질문이었다.

let과 var의 차이는?

  • var는 function scope
  • let은 block scope
function greetSomeone(name) {
  var time = 'night';
  if(time === 'night') {
    var greeting = 'Good Night';
  }
  return greeting + ' ' + name;
}

greetSomeone('alice');

var 키워드로 변수를 만들고, 위 함수를 실행시켜보자.

이처럼 함수가 잘 작동되는 것을 볼 수 있다.

하지만 let 키워드로 변수를 만들고 함수를 실행시켜보면,

function greetSomeone(name) {
  let time = 'night';
  if(time === 'night') {
    let greeting = 'Good Night';
  }
  return greeting + ' ' + name;
}

greetSomeone('alice');

이와 같이 greeting이라는 변수가 정의되지 않았다고 알려준다.
그 이유는 let 키워드는 block scope이므로 block 바깥에서 해당 키워드로 선언한 변수를 불러올 수 없기 때문이다.

이렇게 블로깅을 통해 다시 한번 정리를 하고 나니까 var 키워드와 let 키워드의 차이점을 오랫동안 기억할 수 있을 것 같다. 또한 2주차 모임 때 이 부분에 대해 다시 한번 정확하게 설명을 드려야겠다.

4. 마무리

워크샵이 시작되기 전에는 조금 걱정이 되기도 했는데 막상 스터디원분들을 만나 수업을 진행하고 나니 뿌듯한 마음이 더 컸다. 첫 주차에는 나 혼자 핵심 사항에 대한 설명을 하는 식으로 수업을 진행했지만, 2주차부터는 스터디원분들도 본인이 이해한 바를 다른 분들에게 설명하는 식으로 스터디에 임할 수 있도록 진행방식을 약간 바꿔봐야겠다.
아무쪼록 앞으로 남은 7번의 만남 동안 '저스트코드' 스터디원분들이 더욱 많은 것들을 배워갈 수 있었으면 좋겠다🔥

0개의 댓글