제목 : 내가 Node.js 에서 Spring 으로 백엔드 영역을 변경하려는 이유Node.js 환경의 한계점과 지식의 만류귀종내가 이 글을 작성하는 이유는,나는 대학교에서 소프트웨어학으로 시작하여,C, C++, Java 순으로 언어를 배웠다.내가 컴퓨터 언어를 배운 것은 간단했었다.그 당시엔, "컴퓨터" 전공자들은 취업이 쉬웠다는 것.이러한 마인드로 어떻게 공부가 될까,당연히 신입생 시절 공부하지 않고 술마시러 가는 날이 잦았다.학점을 망치고 1학년 2 학기 시작하기 전, 군대를 갔다 왔다.또한, 3학년 2 학기 시작하기 전, 나는 세상이 궁금하여 무작정 사업등록을 하고,남대문의 허름한 지하 사무실을 구해 모았던 종잣돈으로 모든 제품을 가리지 않고 팔았다.양말, 장갑, 모포, 체크무늬 잠옷, 마스크(코로..
분류 전체보기
제목 : CSS grid 란 무엇이고, 어떻게 사용할까?이 글을 작성하는 이유 :아주 최근에 작성한 CSS 에 대한 글 몇 개와 연동하여알아야 할 지식으로 생각하여 CSS grid 에 대해서 다루게 되었다.이전 글은,미리 알아두면 좋았을 CSS 기초 및 응용 예제CSS 레이아웃, display 에 대해서 알아놓자예제와 함께 알아보는 CSS flex 와 Flexbox위의 3 글이며,레이아웃의 핵심인 Flexbox 와 더불어, Grid 에 대해서도 알아보려고 한다.혹시라도 CSS 에 대해서 잘 모르시는 분이 있다면,위의 3 개의 글을 순차적으로 읽고 오시면 도움이 됩니다.그리고, 질문은 환영이기 때문에,rhdwhdals8765@gmail.com으로 메일을 보내주시면 감사하겠습니다.내가 예제를 블로그에 만드는..
제목 : 예제와 함께 알아보는 flex 와 Flexbox이 글을 작성하는 이유 :다양한 크기의 디바이스가 웹에 접속하는 시대이기 때문에,디바이스 크기에 따른 유연한 확장과 축소가 필수인 시대가 되었다.핸드폰부터 노트북, 커다란 모니터까지 호환이 가능한 스타일링을 추구하는 시대,즉, "반응형 웹 디자인" 이 필수적인 시대가 되었다.2000년대 초중반, HTML 태그를 통해 일방적인 정보의 소통 (Server --> Visitor)이 이루어지며, 우리가 하얀 바탕에 기본적인 태그를 작성했을 때의 스타일이 주를 이루었다.table, ul, ol, li, iframe 과 같은 간단한 태그를 이용하여정보의 가독성을 확보하고자 하였다.그리고 시간이 흘러 2020년 중반이 되었다.제각각의 규칙을 가지고 있었던 사이트..
제목 : CSS 정렬의 핵심, display 속성에 대해서 알아보자부제 : flex, grid, block 등등에 대해서 알아보자.이 글을 작성하는 이유리액트를 배운 적은 정말 많았다.2년전 책으로 리액트를 배울 때도,리액트를 공식문서로 찾아가 배울 때도, 심지어 프로그래머스 부트캠프에서도 리액트를 배웠다.그러나, 페이지 Layout 및 Common Component Design 및 Item Listing 과정에서,"왜 이 컴포넌트의 css 에 display : flex 를 넣는가?" 를 알려주지 않았다.동영상이나 책, 혹은 공식문서에서 알려주는 대로 css 파일을 따라 치는 것은 당연히 문제가 되질 않았다.background, width, height, color, border, .... 등등CSS P..
제목 : 미리 알아두면 좋았을 CSS 기초 및 응용예제부제 : 다시 처음부터 배우기 시작하는 CSS이 글을 작성하는 이유나는 React 를 통해서 웹 제작을 배우기 시작했다.HTML, CSS, JS 의 기초적인 지식보다 먼저 배우게 된 React 강의는뒤이어 알려주게 된 SCSS or SASS 라고 불리는 스타일링 파일을 가르쳐 주었다.당연히 강사에게 잘못은 없지만, 이 파일이 진정한 CSS 형태가 아니며,편의를 위해 개발되었으며, TypeScript 처럼 "트랜스파일링" 이 필요한 파일 이라는 것은생각보다 오랜 시간이 지난 이후에 알게 되었다.나는 CSS 에 대해서는 잘 알지 못한다. DOM 이라는 것을 문서로 배우며, CSSOM 이라는스타일링 객체 모델이 존재한다는 것을 알게 되었지만, 이는 결국 지..
제목 : Node.js 의 혼란 속에서 NestJS 가 제시한 질서란부제목 : 다양한 언어와 프레임워크를 둘러본 시각으로서의 NestJS이 글을 작성하는 이유다양한 프로그래밍 언어, C, C++, Java, JavaScript, TypeScript, .. 를 작성하여 프로그램을 제작해 보며,기존 언어들을 넘기 위해 개발 생산성과 프로그램 성능을 둘 다 잡은 신생 프로그래밍 언어RustGoZig를 살펴보며, 현대식 프로그래밍 언어가 어떤 점을 표방하고 만들었는지 분석하며 보았다.Rust 는 어떤 느낌이었냐면Rust 는 Memory Address Borrow 라는 통칭 "메모리 빌림" 에 초점을 두고 있었다.기존 C, C++ 에서 발생하는 메모리 누수를 원천적으로 차단하기 위해 만들어진 대표적인 언어의 기능..
제목 : 멀티 스레드의 특성과 C 에서의 사용법 - 1편이 글을 작성하는 이유는?사실 컴퓨터를 배우는 입장에서 보면, 멀티 스레드라는 개념을 맞닥들일 일이 많지는 않을 것이다.배우는 과정에서도알고리즘자료구조네트워크인프라등등..이를 중점으로 배우게 된다.프로세스와 스레드는 운영체제에서 효율적으로 관리하고,사용자 스레드 단에서도 프레임워크가 굳이 프로세스를 복잡하게 작성하지 않게 도와주며,심지어는 굳이 스레드를 생성하지 않고, Docker or K8s(쿠버네티스) 와 같은"Infra Ochestration"(오케스트레이션) 과 같은 도구들로 단숨에 동일한 프로그램을 복제 할 수 있다.사실상 그 상위인 가벼운 운영체제를 복제한다고 볼 수 있다.물론, 이러한 주제들 또한 단순 프로그래밍 수준이 아니라,각 프로그..
제목 : create-react-app 은 레거시화 되었다. - 빠르게 변화하는 웹 진영 템플릿에 대한 생각이 글을 작성하는 이유 :create-react-app 이라는 명령어는 주로$ npx create-react-app 혹은$ npm init create-react-app 이러한 명령어로 기본 템플릿이 생성되었다.처음부터 제작할 필요가 없이, 개발 환경을 곧바로 세팅해 주는 마법의 명령어는얼마나 파급력이 있었는지 "CRA" 라는 명칭으로 불릴 정도였다.그러나, 현재 이 명령어는 Deprecated 되었다. 공식적으로 더 이상의 지원은 없다.이 말은, 앞으로 나올 지속적인 신 기능이 CRA 명령어를 통해서는 곧바로 적용이 되지 않는다는 것이다.이에 대한 자세한 내용은create-react-app 레포지..
제목 : C, 그리고 fgets 라인 입력만으로 입력 토큰화 메서드 제작하기이 글을 작성하는 이유물론, C 에서의 특정 기본 라이브러리나,C++ 의 특정 기본 라이브러리를 가져와서 하나의 문자열을 토큰화 할 수 있다.그러나, 나는 내가 가진 기존의 개발자 역량에서, 엔지니어 역량으로 이끌기 위해 여러 제약을 걸었다.(알고리즘 문제에 제한해서.)stdio.h 라이브러리만 사용한다.동적 메모리 할당 메서드만 extern 키워드로 가져온다.입출력은 모두 fgets fgetc fputs 와 같이, '\0' 을 참조하는 메서드로 해결한다.필요한 모든 유틸리티 메서드와 구조체를 "직접" 작성하여 해결한다.작성한 코드는 헤더 파일로 만들어 재사용하지 않으며, 하나의 문제마다 모두 재작성하여 사용한다.이러한 제약을 ..
제목 : C 프로그램에서 정수, 문자열 상호변환 메서드 만들기이 글을 작성하는 이유C 에서도 문자열을 수로 바꾸는 메서드가 존재한다.이러한 내장 메서드는 어셈블리 급으로 최적화를 해 놓았고,또한 검증되었기 때문에 사용하는 것이 더 정확하고 편하다.그러나, 나는 C 언어로 알고리즘을 푸는 데 있어, 제약을 걸었다.stdio.h 내장 라이브러리를 제외한 모든 유틸리티 메서드를 "직접" 제작하는 것.물론, malloc, free, realloc, calloc 과 같은동적 메모리 할당과 해제에 필요한 메서드는 extern 으로 가져와서 사용한다.나는 이러한 제약을 스스로 걸어서, 각 라이브러리가 "어떻게" 동작하는지 이해하기 위해이러한 제약을 지키고 있다.(물론 어떤 문제들은 까마득하기도 하다.)알고리즘 문제를..