javascript 5

[공개SW컨트리뷰톤] 공개SW컨트리뷰톤 참가기

R 관련 프로젝트를 마무리 하고 당분간 프로젝트 안해야지 라고 굳게 마음을 먹고 제출 준비를 하던 날, 공개SW컨트리뷰톤 행사를 보게 되었다. 이거다 라고 생각하고 바로 지원서를 썼다. 예전부터 오픈소스 프로젝트를 해보고 싶었고 그 문화의 일부분에 속해있고 싶었기 때문이다. 오픈소스란? 오픈 소스(open source, 문화어: 공개원천)는 소프트웨어 혹은 하드웨어의 제작자의 권리를 지키면서 원시 코드를 누구나 열람할 수 있도록 한 소프트웨어 혹은 오픈 소스 라이선스에 준하는 모든 통칭을 일컫는다. 출처) 위키 예전에 오픈소스 라는 것을 처음 들었을 때는 힘들게 만든 것을 왜 공개를 하나 싶었다. 하지만 그럴 만한 이유가 있으니까 개인, 기업들이 공개를 하는 것이다. 내가 못했던 것들, 우리 팀들이 못했..

[자바스크립트] 스코프, 변수 호이스팅(hoisting), ES6에서의 개선점

호이스팅 (hoisting)자바스크립트 (ES5) 에서 변수선언에 있어서 var 키워드는 스코프(scope)의 제일 위로 옮겨져서 선언이 된다. 이것을 호이스팅(hoisting)이라고 한다. 1234567function foo() { for(var i=0; i1) { // var customer = "Mary"; // } })(); console.log("outside : " + customer); Colored by Color Scriptercs 주석 처리를 한 상태에서는 customer는 전역 변수이므로 출력결과가 둘다 Joe 가 된다. 하지만 주석을 해제하면 function 안의 customer는 undefined가 된다. ES5에서는 변수 선언이 선언 범위의 제일 위로 올라가게 된다. 즉 저 fu..

프로그래밍/ 2017.12.08

[인턴 일지] 스프링 각종 코드 수정 작업 중, 잔 버그 해결

직원 등록 form 에서 3개의 페이지에 걸친 직원 들의 정보를 입력하고 REGISTER 버튼을 누르면 DB에 접근해서 데이터를 넣게 된다. 문제가 없을 줄 알고 DB에 엑셀을 이용해서 데이터를 넣고 있었다. 하지만 실제 사용자가 쓰는 곳은 웹 ui상이므로 나도 테스트 기간에는 데이터를 웹에서 직접 입력한다. 그런데 생각보다 많은 예외와 에러가 발생한다... validation 체크가 확실하게 다 되지 않아 unexpected 한 값이 넘어가는 것을 잡지 않아서 톰캣 로그에서 error가 터진다. 대표적인것은 Duplicate PRIMARY KEY 이다. DB 직원 정보 테이블은 SSN Number (소셜 시큐리티 넘버) 를 주요키로 가지게 된다. 이것은 중복된 값이 들어갈 수가 없다. 사용자는 첫 페이..

[JavaScript] 자바스크립트 코딩 스타일 규칙 정리

Maintainable Javascript by Nicholas C.Zakas 를 보며 기본기를 공부 중이다. 좋은 내용들을 요약해 보겠다. 아마존에서 책을 구입했다. 좋은 개발자와 좋은 코딩을 위한 주옥같은 책인 것 같다. Basic FormattingIndentation Level들여쓰기 정도이다. 들여쓰는 스타일은 2가지로 나뉜다. Tab과 Space가 그것들이다. Tab을 이용했을 때의 장점 - 에디터에 따라 탭 크기를 조절할 수 있다 Tab을 이용했을 때의 단점 - 시스템이 다르게 해석할 수가 있다. Space를 이용했을 때의 장점 - 모든 에디터와 시스템이 동일하게 취급한다.- 에디터 설정으로 tab을 누르면 일정 숫자의 space를 누르게 할 수 있다. 이 책의 저자는 4칸의 space를 선..

프로그래밍/ 2017.12.02

자바스크립트 프로토타입

자바스크립트에는 Object, Function, Array 등과 같이 다양한 기본 객체들이 있고 모든 객체는 자바스크립트의 객체 대빵인 Object를 확장하고 있다. 이러한 면을 보면 Java와 굉장히 비슷해 보여서 객체지향 언어라고 생각하기 쉽다. 하지만 자바스크립트는 이벤트와 함수 기반 언어이고 객체지향언어는 아니다. 자바스크립트는 함수 기반 언어인 Scheme을 기반으로 만들어진 뒤 Java에서 다양한 개념들을 가져왔다. 따라서 객체지향 언어는 아니지만 이에 비슷한 특징들을 지원한다. 여기서 프로토타입(Prototype)이라는 것이 나온다. 자바스크립트는 객체지향 개념을 지원하기 위해 프로토타입을 사용한다. 프로토타입을 이용해 대표적으로 구현할 수 있는 개념은 "상속" 이다. 그럼 프로토타입이 무엇..

프로그래밍/ 2017.03.08
반응형