🌈 프로그래밍

    [ Nest JS ] PostgreSQL 설치 pgAdmin으로 Server와 DB를 구축해보자

    안녕하세요? 수구리입니다. 이번 포스팅에서는 PostgresSQL 이라는 DB를 소개하고 설치법과 Nest 프로젝트에 연동하는 방법에 대해서 알아 보자! 어느 곳에서든지 DataBase는 필수이다. MongoDB라는 비정형 DB와 MySQL이라는 정형 DB는 많이 보기도 하고, 익숙한데, Postgres는 처음 사용해보는 DB라서 어떨지 매우 궁금한 상태로 포스팅을 작성하는 중이다. 우선, 설치할 두 가지는 다음과 같다. 1. PostgresSQL 2. pgAdmin 여기서 pgAdmin은 DB를 보는 도구이다. [ Windows 에서 PostgresSQL 설치 ] PostgreSQL: Windows installers PostgreSQL: Windows installers Windows installe..

    [ Clean Code ] 클린 코딩을 하는 8가지 방법

    안녕하세요? 수구리입니다. 이번 포스팅에서는 클린 코딩을 하는 8가지 방법과 간단한 예시들을 통해서 알아보겠습니다. 클린 코딩이 필요한 이유? 좋은 품질의 코드는 이해하기 쉽고 명확함. 또한 수정하기 쉬우며 확장하기가 쉽다. 따라서, 클린 코딩이 필요하다! 1. Naming Convention 개발자들 사이에서 공통적인 관습이 있다. 자바에서 변수 및 클래스의 이름 짓는 예시를 살펴보자. class UserService { private String firstName; public String getFirstName() { return firstName; } } 모든 변수나 함수 클래스들은 CamelCase 스타일로 한다. 변수와 클래스의 차이점은 위의 예시에서 볼 수 있듯이 클래스는 첫 자가 대문자이다..

    [ Code Refactoring ] 코드 리팩토링에 대해서 알아보자

    안녕하세요? 수구리입니다. 이번 포스팅에서는 Code Refactoring에 대한 내용에 대해서 알아보려고 합니다. 코드 리팩터링이란? 리팩터링은 사용하지 않는 코드 또는 중복된 코드를 지우고, 코드의 로직을 깨끗하고 이해하기 쉽게 디자인하는 것 이 개념은 Martin Fowler와 Kent Beck에 의해서 정의되었다고 한다. 이는 종종 최적화, 디버깅, 방어 코드 추가, 테스트하기 좋은 코드로 만드는 것과 혼동될 수 있다. 리팩터링의 목적 흔히 "리팩터링을 한다."라는 의미는 개발자의 실수를 만드는 것을 방지하는 것임에 유의하자 디자인에 작고 안전한 구조적 변화를 추가하는 것으로 리팩토링을 시작할 수 있는데 주의할 점은 항상 같은 동작, 기능을 수행해야 한다는 것이다. 리팩토링을 하면서 지속적으로 코..

    [ Nest JS ] Hot reload 설정하기

    안녕하세요? 수구리입니다. 이번 포스팅에서는 Nest 프로젝트에서 Hot reload 설정하는 방법에 대해서 알아보겠습니다. 우선 Hot reload란 무엇인지 알아야 겠죠? 대게 한 프로젝트를 빌드하고 실행했다고 생각해보겠습니다. 내가 원하는 결과가 바로바로 나온다면 정말 정말 좋겠지만.. 그렇지 않은 경우가 대부분일 겁니다. 따라서 원하는 결과에 도달할 때까지 빌드와 실행을 계속 반복하면서 작업을 한다면 아주 비효율적이라고 생각합니다. 그러므로 이 Nest에서 제공하는 Hot reload 기능을 적용하면 서버를 실행 중에 코드 부분이 바뀌어서 Ctrl + S를 누른다면 바로 그 수정사항이 반영되어서 알아서 빌드하고 서버를 재시작해줍니다. 이렇게 간단하게 알아보았고.. 그러면 바로 적용을 해보도록 하겠..

    [ MFC ] list control header 클릭 시 정렬 기능 이벤트 구현

    안녕하세요? 수구리입니다. 이번 포스팅은 MFC에서 자주 쓰이는 list control에 대한 내용입니다. list control은 테이블 모양을 하고 있으며, header에는 클릭 시 이벤트를 추가할 수 있습니다. 위의 사진이 MFC에서 list control을 사용한 부분입니다. 지금 상태는 Usage rate라는 list control header 부분에 마우스를 올려놓은 상태입니다. 이벤트를 아직 설정하지 않았으므로 클릭 시 아무런 동작을 하지 않고 있는데, 하나씩 추가해 주도록 하겠습니다. 우선 하려는 것은 각 header(PID, Name, Usage rate)를 클릭 시 오름차순 정렬을 하고 한번 더 클릭 시 반대로 내림차순으로 정렬을 하려고 하는 것입니다. 우선 우리가 제어하려고 하는 li..

    [ Wmi Delphi Code Creator ] WDCC 사용법을 알아보자

    안녕하세요? 수구리입니다. 이번 포스팅에서는 WDCC라는 유용한 오픈소스를 소개해볼까 합니다. [ WMI란? ] 우선, WMI는 무엇인지에 대해 간략하게 알아보자면.. Windows Management Instrumentation이라고 합니다. 이는 윈도우 관리 도구를 뜻하며, 기본적으로 윈도우 2000 이상의 MS 운영 체제에 이미 다 설치가 되어있습니다. 이를 사용하여 윈도우의 리소스에 접근해 여러 가지 설정 및 관리를 할 수 있습니다. 그래서 이런걸로 뭘 할 수가 있느냐? 대표적으로 작업관리자를 열고, 성능 tap에 들어가면 하단에 리소스 모니터라고 있습니다. 이 리소스 모니터에 표시되어지는 모든 정보들을 WMI를 사용해 가져올 수도 있고, 로컬 컴퓨터뿐만 아니라 원격으로도 PC를 제어할 수도 있다..

    [ MFC ] Ontimer와 SetTimer, KillTimer 사용법

    안녕하세요? 수구리입니다. 이전 포스팅에서는 간단한 MFC Thread 예제를 살펴보았었는데요 최근에 간단한 프로젝트로 pc의 작업 관리자에서 리소스 모니터처럼 PC의 자원들 (CPU, RAM, DISK 등..)을 실시간으로 모니터링하는 Win32 app을 만들어보고 있습니다. 그래서 생각한게 CPU 사용량을 가져오기 위한 Thread, RAM의 사용량을 가져오기 위한 Thread 등등을 생각하고 있었는데 Thread 기능과 비슷한? Ontimer와 SetTimer함수가 있더라고요 그래서 제가 진행하고 있는 코드에서 어떤 식으로 활용했는지 기록해보겠습니다. [ Ontimer와 SetTimer? ] 우선 위의 함수들은 WM_TIMER라는 이벤트가 발생할 경우 콜백되어지는 함수입니다. WM_TIME을 설정하..

    [ MFC ] AfxBeginThread를 사용한 Timer 예제

    안녕하세요? 수구리입니다. 오랜만에 MFC를 다루게 되었습니다. 이번 포스팅에서는 Thread와 관련하여 포스팅을 하게 되었습니다. Thread에서 가장 중요한 것은 바로 Sleep 함수입니다. 보통 Thread를 돌린다고 한다면, 거의 대부분 무한루프를 돌리는 경우가 많습니다. 따라서, 만약 Sleep이 없이 여러 Thread를 돌리게 된다면 어떤 특정 Thread가 PC의 리소스(자원)를 독점하여 사용하므로 다른 Thread는 PC의 자원을 할당받지 못해 정상적으로 동작하지 않게 됩니다. 따라서 각 Thread마다 일정 시간 동안의 Sleep을 주어서 모든 Thread에게 골고루 자원을 나누어 주어야 합니다. 이번 예제에서는 현재 날짜와 시간에 대한 정보를 가져오는 Timer Thread에 대한 예제..

    [ Nest JS ] 기본 프로젝트에서 Nest 로직 흐름

    안녕하세요? 수구리입니다. 지난 포스팅에서는 Nest JS가 무엇인지, 어떤 특징을 가지는지, 어떻게 프로젝트를 생성하고 또 Nest가 기본적으로 만들어주는 파일들과 실행까지 알아보았었죠? 지난 포스팅을 안 보셨다면 보고 오시는 것을 추천드립니다. 2021.10.13 - [프로그래밍/Nest JS] - [ Nest JS 소개 ] Nest JS 프로젝트 시작하기 [ Nest JS 소개 ] Nest JS 프로젝트 시작하기 안녕하세요? 수구리입니다. 한창 Nest JS에 대해서 공부를 했었는데 차근차근 복습할 겸 정리를 해보도록 하겠습니다. 아래에는 Nest의 공식문서가 있습니다. 공식문서를 기반으로 정리를 한 내용 tasddc.tistory.com 이번 포스팅에서는 Nest가 무엇인지는 알았으니.. "loc..

    [ Nest JS 소개 ] Nest JS 프로젝트 시작하기

    안녕하세요? 수구리입니다. 한창 Nest JS에 대해서 공부를 했었는데 차근차근 복습할 겸 정리를 해보도록 하겠습니다. 아래에는 Nest의 공식문서가 있습니다. 공식문서를 기반으로 정리를 한 내용입니다. [ Nest JS 공식문서 ] 네스트JS 한국어 매뉴얼 사이트 네스트JS 한국, 네스트JS Korea 한국어 매뉴얼 docs.nestjs.kr [ Nest JS ? ] Nest는 효율적이고 확장 가능한 Node.js 서버 측 애플리케이션을 구축하기 위한 프레임 워크이다. progressive JavaScript를 사용하고 TypeScript로 빌드가 지원된다. 이는 개발자가 순수 JavaScript로 코딩할 수 있다는 의미이다. Nest는 OOP(Object Oriented Programming), FP..