본문 바로가기

공부/TIL•기타22

Global 09/24  Global 이란Node.js 에는 global 이라는 객체가 존재한다.전역에 어떤 변수를 선언하게 되면, 해당 변수는 global 객체에 정의되게 됨.어디서나 참조할 수 있는 singleton 패턴의 객체와 원리와 사용이 비슷한 것 같다.(별개로, 브라우저 위에서 동작하는 JS 런타임 환경에서는 windows 객체에 정의됨)global 에 직접 정의를 하는 것과, 전역에 정의하는 것은 동일하게 취급된다.사용할 때는, global은 생략이 가능.global 의 정의는 여기서 확인할 수 있고,global 객체 내부에는 setInterval, setTimeout 등 JavaScript 에서 기본으로 제공하는다양한 변수들이 존재하는데, 사실 프론트 개발에 사용하고 있지 않다 보니몇 종류만 사용해 .. 2024. 10. 22.
Node.js 란? 09/23 Node.jsJavaScript 로 작성된 코드는 기존에는 인터넷 브라우저 위에서만 실행할 수 있었다.구글이 V8엔진을 사용해서 크롬을 출시 한 후, V8 엔진 기반으로 만들어진 Node.js(V8) 이 등장하게 되었다.결론 : Node.js 는 JavaScript 실행 환경(=런타임)Node.js 이후 JavaScript 브라우저 없이 실행할 수 있게 되어, 프로그래밍 언어처럼 사용하기 시작했음. Node.js 의 강점요청이 매우 많은 서비스에 대응하기 좋아서, SNS나 채팅 서비스에 많이 사용됨. (Non-blocking)코드가 짧고 쉬워서 빠른 개발이 가능. (Pivoting 잘됨)개수는 많지만 크기는 작은 데이터 실시간으로 주고 받는 데 적합. Node.js 의 단점단일 쓰레드로 처리되.. 2024. 10. 17.
.ini 09/09  INI (Initialization) 파일ini 포맷은 설정 파일에 대한 표준이라고 할 수 있다.응용 프로그램이 실행될 때 필요한 초기화 정보를 담고 있는 파일로,단순 구조의 텍스트 파일이며 영역, 키, 값의 세 가지로 이루어진다.키 (Key) / 값 (Value)INI 파일의 가장 기본적인 요소로, 등호(=) 로 키와 값을 구분한다.key = value영역 (Section)한 줄에 [대괄호] 로 분류할 수 있다. 다른 영역을 지정하지 않으면 문서의 끝까지 적용된다.주석 (Comments)세미콜론(;) 을 사용하여 주석으로 처리할 수 있다. 사용처필요하다고 생각되는 정보는 무엇이든 기록할 수 있다.일반적으로는 최근에 불러왔던 파일들의 목록,최근에 실행되었을 때의 윈도우 위치와 모양 등을 기록.. 2024. 10. 7.
결합도 / 응집도 08/22 결합도 (Coupling)결합도는 모듈과 모듈 간의 상호 의존성을 나타내는 정도이다.이상적인, 독립적인 모듈일수록 결합도는 낮아야 한다.결합도가 높은 class의 문제점은,연관된 다른 class가 변경되면 같이 변경 해줘야 한다.class를 이해하기 위해, 연관된 다른 class도 함께 이해해야 한다.class의 재사용이 힘들다.결합도가 낮은 class의 특징은,OCP(Open Close Principle)의 원칙을 지킨다. 확장에는 개방되고, 변경에는 폐쇄되어야 함.다형성이 좋다. 결합도의 종류자료 결합도 (Data Coupling)모듈간의 인터페이스로 전달되는 파라미터를 통해서만 상호 작용이 일어나는 경우.결합도가 제일 낮고 제일 좋은 형태.스탬프 결합도 (Stamp Coupling)모듈간.. 2024. 10. 7.
TDD(테스트 주도 개발) 09/12 단위 테스트 (Unit Test)단위 테스트는 하나의 모듈을 기준으로 독립적으로 진행되는 가장 작은 단위의 테스트 이다.반대되는 개념은 통합 테스트(Integration Test) 로,모듈을 통합하는 과정에서 모듈 간의 호환성을 확인하기 위해 수행되는 테스트이다.단위 테스트를 작성해야 하는 이유는,코드를 수정하거나 기능을 추가할 때 수시로 빠르게 검증 가능.리팩토링 시에 안정성 확보.개발 및 테스팅에 대한 시간과 비용 절감.그렇다고 무작정 테스트를 하는 것이 좋지는 않고, 좋은 테스트를 작성해야 장점을 살릴 수 있다.좋은 테스트의 기준은 FIRST의 규칙을 따르는데,F ast : 테스트는 빠르게 동작하여 자주 돌릴 수 있어야 한다.I ndependent : 각각의 테스트는 독립적이며 서로 의존.. 2024. 9. 14.
Method Chaining 08/02Method Chaining 이란method 가 객체를 반환하게 되면, 그 반환 값인 객체를 통해 또 다른 함수를 호출할 수 있다.이런 프로그래밍 패턴을 method chaining 이라고 한다.기본적으로 oop 로 코딩을 하다 보면 알게 모르게 자연스럽게 많이 사용하게 되는데,문장을 마치지 않고 호출을 이어갈 수 있기 때문에, 가독성을 향상시키는 데 도움이 된다.주의할 점은,한 문장에서 여러번의 메소드 호출이 이뤄지므로, 에러가 발생하는 지점을 하나씩 확인 해야 된다는 점.return 값이 메소드마다 다르기 때문에 최종적으로 할당되는 값은 최초 원하던 값이 아닐 수 있다는 점.상속 관계에서 부모의 메소드를 호출하면 부모의 타입으로 변경되므로 명시적 캐스팅을 필요로 한다는 점.=> 이때는 오히려.. 2024. 9. 8.