programming language 67

Prototype이란?

Prototype 이란 뭘까? 우선 영어 사전을 검색해 보자 . 검색해 본 결과 원형이라는 말이다. 어떤 원형인지 그것을 이제부터 같이 알아갈 것이다. 생성자 함수가 있을 때 new 연산자로 인스턴스를 만들게 되면 그 인스턴스에는 constructor의 prototype이라고 하는 프로퍼티의 내용이 Prototype이라고 하는 프로퍼티로 참조를 전달하게 된다. 이게 무슨말이냐면 Constructor.prototype이랑 instance[[Prototype]]가 곧 같은 객체를 바라본다는 말이다. 그런데... [[Prototype]]는 접근가능한 것이 아니라 정보를 보여주기만 할 뿐으로, 실제 동작상으로는 instance와 동일시가 된다. 그래서 밑의 그림처럼 삼각형이 된다. 그래서 이게 어쨋다는 건지는 ..

Closure란?

close ? closure? closure를 검색하면 "폐쇄"라는 뜻이 나온다. 뭐를 폐쇄하는지? Closure를 더 검색해보자. MDN 사이트를 확인하자 눈여겨 봐야 할 부분이 "함수와 함수가 선언된 어휘적 환경의 조합이다" 라는 부분이다 다시 정리하면 "에워싸여져 함께 묶여진 함수"라고 할 수 있다. => 둘러쌓인 LexicalEnvironment의 참조 라고 볼 수 있다. 다시 다른말로 보자면 위 그림들을 보자면 뭐... 글 그대로 읽고 그림을 본다면 이해가 갈 것이다. 그러면 특별한 현상이 뭔지 이제 알아가보자. 우선 전에 해봣던 것을 복습해보자. var outer = function(){ var a = 1; var inner = function(){ console.log(++a); }; inn..

Callback Fucntion 이란?

의미를 파악해 보자. ???? call me back~ 뭔가 전화를 다시 걸라는 건가...? (내 번호 안알랴줌) 그 느낌 그대로 callback을 다시 본다면 단어 뜻 자체가 회신하다/답신하다 라는 뜻을 지닌다. 그러면 callback function 은 회신하는 함수가 된다. 함수를 하나 처리하고 나서 회신을 준다는 것이다! 이말은 즉 콜백함수에 대한 제어권을 내가 넘기고자 하는 대상한테 위임하는 것이다. 이 콜백을 어떻게 처리할지는 제어권을 넘겨받은 대상이 전적으로 관여를 한다. 넘겨줄 제어권에는 다음과 같은 항목이 있다. 실행 시점 매개 변수 this 1. 실행 시점 setInterval(function(){ console.log('1초마다 실행될 겁니다.'); }, 1000); setTimeou..

This란?

전에 Context에 대해 공부해보았다. 다시 보고 싶다면 링크를 달아두겟다옹 히힛 https://tech-monster.tistory.com/41 Context 란? 내가 공부하고자 하는 전반적인 내용이 아래 블로그에 담겨있다. https://poiemaweb.com/js-execution-context Execution Context | PoiemaWeb Execution Context(실행 컨텍스트)는 scope, hoisting, this, functi.. tech-monster.tistory.com 여기 inner안에 보면 ThisBinding이라는 아이가 있다. 이건 뭥미? 우선 제대로 알기 전에 이 문장을 기억하란다 thisBinding은 실행 컨텐스트가 활성화될 때 한다! 실행 컨텍스트가 ..

Context 란?

내가 공부하고자 하는 전반적인 내용이 아래 블로그에 담겨있다. https://poiemaweb.com/js-execution-context Execution Context | PoiemaWeb Execution Context(실행 컨텍스트)는 scope, hoisting, this, function, closure 등의 동작원리를 담고 있는 자바스크립트의 핵심원리이다. 실행 컨텍스트를 바로 이해하지 못하면 코드 독해가 어려워지며 디버 poiemaweb.com 솔직히 나는 글을 정리하는게 너무 귀찮아서 남이 잘 적은 글을 보는 편이다 ㅋㅋ Context란 뭘까? 사실 javascript공부하면서 context라는 단어를 필자는 처음 듣는다 ㅋㅋ(부끄...) context하면 맥락이라는 뜻이다. 사전을 보면..

Primitive Type vs Reference Type

사실 자바스크립트는 생각도 안하고 있다가 최근 Spring Data Jpa 관련 강의를 전부 공부해서 미니 프로젝트를 만들려고 보니 React + Spring boot 연동을 할 수가 있다고 한다! 그래서 이 기회에 javascript에 대해 다시 공부하고 React도 공부하고 Spring Boot를 Spring Data Jpa를 적용해서 미니 프로젝트를 만들 예정이다. 후... 벌써부터 숨가쁘네... 할게 왜이렇게 많은거야ㅠ 히ㅣㅎㅅ https://velog.io/@yunsungyang-omc/%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EA%B8%B0%EB%B3%B8%ED%98%95%EA%B3%BC-%EC%B0%B8%EC%A1%B0%ED%98%9..

DTO? VO? 개념 정리 및 사용 이유

https://kafcamus.tistory.com/13 DTO란 무엇인가, VO와의 비교 오늘은 다음의 고민 때문에 글을 작성하게 되었다. DTO가 정확히 뭘 의미하는 거지? DTO를 꼭 써야하는 이유가 뭐지? DTO랑 VO를 많이 비교하던데, 뭐가 다른거지? DTO란 무엇인가 DTO(Data Transfer Object, kafcamus.tistory.com 필자는 최근에 김영한 팀장님의 JPA 강의를 전부 들었다. 이제 간단하게 미니 프로젝트를 통해서 공부를 진행할 생각인데 모호한 개념들을 몇개 정리하고자 한다. DTO는 뭐고 VO는 뭘까? 위에 블로그에 보면 잘 정리가 되어있다. 위에서 DTO를 써야 하는 이유에 대하 잘 설명을 해주셨다. 그리고 실제로 Spring Data Jpa를 사용할 때에도..

7. 데몬

데몬?? 데몬 들어보면 왜자꾸 유희왕 데몬이 생각나징 데몬도 이런 것이라 보면된다 즉, 늘 세팅되잇는 프로그램이다. 그 하나의 사례로 웹 서버를 설치할 것이다. sudo apt-get install apache2 를 입력하면 다운된다. 다음 경로에 들어가서 확인해 보면 apache2가 다운된 것을 확인할 수 있다. 그리고 sudo service apache2 start를 입력해 보면... 뭔가 돌아가고 돌아온다. 확인해 보려면 ps aux 를 입력하면 현제 실행중인 프로세스 리스트를 전부 출력한다. 이중에서 골라서 출력하려면 ps aux | grep apache2를 입력하면 된다. 멈추려면 sudo service apache2 stop CRON - 정기적 실행 crontab -e 하면 실행하기를 원하는 ..

6. 리눅스 / 2021-07-17 (whereis , $PATH / process )

사실 우리가 쓰는 흔한 명령어인 ls 혹은 rm도 어딘가에 파일 경로안에 위치해 있고 그것을 우리는 불러서 쓰는 것 뿐이다. 그래서 whereis ls를 하면 그 파일의 위치를 출력해준다. man ls를 하면 ls 에 대한 상세한 정보를 알려준다. 근데 뭔가 이상하지 않은가? 보통 파일을 실행하려면 그 저장된 경로에 가서 실행을 하는데 ls 의 경우에는 어디에서든지 실행해도 문제가 없다.! ' 그것은... PATH설정 때문이다. ($PATH) echo $PATH하니까 뭐가 많네! 25강 : process란 무엇인가? SSD, HDD => 우리가 흔히 아는 저장장치 (Storage) / 가격 낮고, 용량 크고, 속도 낮다 RAM => memory / 가격 높고, 용량 작고, 속도 빠르다. cpu => 중앙..

7. 리눅스 공부 / 2021-07-13

19강 - Shell Script 1 : intro 우선 위와 같은 명령을 실행했다고 하자 script라는 directory를 생성했다. 그리고 touch a.log b.log c.log로 log 파일 3개를 script 디렉토리에서 생성! 그다음에는 이것을 bak이라는 directory안에 복사한 것이다 그러면 복사가 된 것을 확인할 수 있다. 그런데... 만약에 script 디렉토리에 있던 log파일들이 수정이 되어서 수정을 한다면 복사한 내용들도 다시 복사해야 할 것이다. 이러한 반복되는 작업들을 처리하는데 유용한 것이 Shell Script이다! 20강 Shell Script 사례 그럼... Shell Script 사례들을 한번 보자! 우선 파일을 Shell Script를 만들기 위해서 nano에..