U E D R , A S I H C RSS

Java Script/2011년스터디/3월이전


1. 진행 방식

  • 금요일은 공부해온 것을 발표하고 그 다음 화요일은 자신이 작성한 코드를 발표한다.
  • 자바스크립트 완벽 가이드의 목차를 참고하여 진행한다.
    • 목차를 보고 매주 적당한 분량으로 챕터를 묶어 그 주 공부할 부분을 정한다.
  • 그 주 공부할 부분은 모두 같이 공부한다.
    • 서로 다른 챕터를 공부하여 발표하면 남이 공부한 부분은 겉핥기 식으로만 알게 되는 경우가 많아서.
  • 발표는 각자 한 챕터씩 맡아 발표한다.
    • 발표할 부분은 금요일에 모여 제비뽑기로 결정한다.
    • 발표할 부분이 정해지면 소개할 샘플코드를 찾는다.

2. 규칙

  • 다른 참가자들이 오지 않을때는 3시 10분까지 기다린다.
    • 그 이후에도 오지 않는 사람은 기다리지 않고 바로 진행한다.
  • 모든 참가자는 잘 모르겠는 것, 궁금한 것, 더 공부하고 싶은 것 등 질문을 3가지 이상 준비한다.
  • 공부한 내용은 3분 이상 발표한다.
  • 발표자를 제외한 사람들은 들은 내용과 샘플 코드에서 가장 인상깊은 점 3가지를 고른다.
  • 매 회 스터디 끝나고 10분간 그날의 스터디를 돌아보는 시간을 갖는다.

3. 진행

3.1. 1월

3.1.1. 출석체크

4일 7일 11일 14일 18일 21일 25일 28일
김수경 O O O O O O O X
박정근 O O O O X X X X
서지혜 O O O O O O O X
윤종하 X(몸살) X(신검) O X O X O O
정의정 O X(공사) 중간에 빠짐

3.1.2. 7일

  • 과제 : 1장 ~ 7장 공부해오기
  • 3시 ~ 6시 @ 6피
  • 김수경
    • 의문점
      • var로 생성한 변수는 delete할 수 없다는데 실제 해보니 되었다.
      • for each문을 사용하는 법.
    • 알게된 것
      • 블록 단위의 유효범위가 없다.
      • var a = 1,,3; a.length -> 3, var a = ,,; a.length -> 2; 인 이유
      • 리터럴의 정의
    • 인상깊었던 것
      • var a; -> 지역변수, a; -> 전역변수
      • void 연산자를 사용하면 피연산자의 값에 상관없이 undefined를 반환한다.
      • 다음 코드 실행 시 첫 출력은 undefined이고 다음 출력은 local이다.

var scope = "global";
function f(){
 alert(scope);
 var scope = "local";
 alert(scope);
}
  • 박정근
    • 의문점(해결)
      • 레이블의 의미 -> C의 goto와 비슷.
      • try/throw/catch/finally 의 사용 -> finally는 모든 try, catch를 나와서 사용
      • 가비지 컬렉션 -> 모든 인스턴스가 사라진 쓸모없는 '가비지'는 알아서 처리함
    • 인상깊었던점
      • 문자나 숫자, ""사이에 들어가 것들을 '리터럴'이라고 부르며 따로 구분한다.
      • new bolleon(false)는 flase와 같지 않고 객체로써 인식!! if(new booleon(false)) 따위로 쓰면 안됨
      • 변수 선언시에 'var a=3'같은 식은 지역변수, 'a=3' 같은식은 전역변수 이다.
  • 서지혜
    • 의문점
      • var로 선언한 변수는 delete가 안된다더니 되는데?!
      • with함수 사용시 발생할 수 있는 오류에 대해 알고싶다...(책에서는 생략함)
    • 알게된 것
      • var a = ,,;에서 a의 길이가 2인 이유(해결! 맨 마지막 콤마의 뒤는 무시됨)
    • 인상깊었던 것
      • 레퍼런스로 함수를 직접 보면서 하니까 한눈에 들어와 좋았다
      • 모르는게 생겼을 때 코드를 직접 타이핑해 결과를 보며 스터디하니 이해가 잘 갔다(굿)
      • 와 세명이서 하는데 3시간 걸렸어!!

  • 돌아보기
    • 오늘 스터디의 좋았던 점
      • 서지혜 - 공부할때는 다 아는 것 같았던 것도 직접 설명해보니 잘 모르고 넘어간 것이 있다는 것을 알게되었다.
      • 김수경 - 대충 보고 넘어갔거나 잘 이해를 못했던 것도 같이 스터디하고 고민해보니 더 명확히 알게되었다.
      • 박정근 - 직접 화면을 띄워 코딩을 하며 진행하니 더 이해하기 좋았다.
    • 다음 스터디에 적용하고 싶은 점
      • 서지혜 - 말로만 설명하는 것보단 코드를 보며 설명하도록 하겠다.
      • 김수경 - 집에서 레퍼런스만 대충 찾아보지 않고 책도 좀 참고하여 공부하겠다.
      • 박정근 - 좀 더 정확한 최신자료를 참고하겠다.

3.1.3. 11일

  • 과제 : 7일날 자신이 발표한 부분을 직접 실습할 수 있는 코드 최소 1개 짜오기. 7일 스터디 불참자는 스스로 챕터 선정하여 코드를 짜오면 된다.

3.1.4. 14일

  • 과제 : 8장 ~ 12장 공부해오기
  • 5시 ~ 7시 @ 6피
  • 박정근
    • 의문점
      • 클로저의 정의와 사용...ㅠ
    • 알게된 것
      • 최상위레벨의 범위와 함수의 정의

function func(){
	여기가 최상위 레벨
	if(){
		여기는 차상위 레벨
		이곳에서는 함수의 정의가 불가능 하다.
	}
}
  • 인상깊었던 것
    • 자바스크립트에서 함수의 전달인자가 개수의 제한이 없다는 점
    • 함수가 데이터로써 사용될수 있다는점
      • var a = new Array(3);
      • a0 = function(x) { return x*x; };
      • a1 = 3;
      • a2 = a0(a1); //a2에는 9가 저장된다.
    • 프로토타입의 정의와 사용 상속부분이 다른 언어와는 다르다.
  • 서지혜
    • 의문점
      • 클로저의 정확한 정의를 알고싶다. 유효범위와 관계있다는 것은 알았음
      • 슈도 클래스란 함수로서 선언되기 때문인가?
    • 알게된 점
      • Argument는 실행중인 함수의 정보를 정의한다 : 함수에 넘기는 파라메터가 유동적임..
      • 중첩된 함수는(내부 함수) 익명 함수이면안됨
      • 자바스크립트는 급조된 기능이 몇몇 있는 것 같음(네임스페이스를 객체로 선언함)
  • 김수경
    • 의문점
    • 알게된 점

3.1.5. 18일

  • 과제 : 8장 ~ 12장 코드 짜보기 or 찾아오기
  • 김수경
    • 의문점
      • 네임스페이스 사용 시 org.zeropage.namespace는 되고 org.zeropage.namespace.function1은 안 되는 이유
      • 익명함수를 사용한 Dynamic programming
      • 함수 내부에서 arguments 객체에 함부로 접근할 경우 생길 수 있는 문제점
    • 알게된 점
      • 함수 안에 익명함수 중복으로 쓸 경우 즉시 호출하거나 변수에 넣어 호출 가능하게 만들어야 한다.
  • 서지혜
    • 의문점
      • 네임스페이스 생성시 {}를 해주어야 하는이유
      • 네임스페이스 사용 시 org.zeropage.namespace는 되고 org.zeropage.namespace.function1은 안 되는 이유
      • 자바스크립트에서의 다이나믹 프로그래밍이란 뭐지?
      • 종하가 가져온 코드

Object.prototpye.toString.apply();   // [Object Global]
Object.prototpye.toString.apply(o);   // [Object Array]
  • 알게된 점
    • 존 레식이 클래스를 구현한 코드를 보았다!!
    • 자바스크립트의 상속이 기존 객체지향 언어와 다름을 알게되었다
    • 슈퍼클래스, 서브클래스화를 배웠다

3.1.6. 21일

  • 과제 : 13장 ~ 15장 공부해오기

3.1.7. 25일

  • 과제 : Toy Program 짜오기
  • 서지혜
    • 이건 토이도 아니다

3.1.8. 28일

  • 과제 : 16장 ~ 18장 공부해오기

3.2. 2월

3.2.1. 출석체크

1일 4일 8일 11일 15일 18일 22일 25일
김수경 O 취소 O O X O
서지혜 O 취소 O O X O
박정근 X(아파서) 취소 O O O O
윤종하 X 취소 X X X X

3.2.2. 1일

  • CSS, Event, Form Element

3.2.3. 4일

  • 설 연휴라 취소

3.2.4. 8일

  • 프로젝트 결정
    • 동네 메신저 앱

3.2.5. 11일

  • 프로젝트 대신 오픈 소스 코드 분석하기로 결정
    • jQuery, Sizzle, JSON-js 중 고민하다 간단한 JSON-js를 분석하기로 함
    • 분석한 내용은 위키에 정리하고 정모에서 세미나 하기로 함

3.2.6. 15일

  • 과제
    • json2.js 소스 끝까지 읽어오기 : 어떤 기능들이 있는지 파악할 것
    • 자율적으로 function 3가지 골라 어떻게 작동하는지 이해할 것

3.2.7. 18일

  • 과제
    • json2.js 소스 끝까지 읽어오기 : 어떤 기능들이 있는지 파악할 것
    • 자율적으로 function 3가지 골라 어떻게 작동하는지 이해할 것

3.2.8. 22일

  • 과제
    • JavaScript/2011년스터디/JSON-js에 쓴 의문점 해결해오기
    • 오늘 분석 못한 남은 부분 공부해오기

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2011-03-29 12:03:18
Processing time 0.1079 sec