본문 바로가기

전체 글

(81)
HTTP Chunked Message를 알아보자 # if 0 두달간의 노예 일상을 이제야 끝나고,, 너무 오랜만에 들여다본 블로그,, 개발자로 지내고 있지만,, 일하고 싶지는 않은 그런 삶,, 갑작스럽게 HTTP 프로토콜을 구현해야할 일이 생겨서, 규격 참고하고 구글링 하며 공부한 주제로 오늘은,, 해볼까 합니다,, #endif HTTP 라는 단어는 많이 들어보셨을거라고 생각합니다 그 중에서, Chunked 라는 단어는 조금 생소할 수도 있는데 규격대로만 생각한다면 그리 어렵지 않은 (구현은 까다로울 겁니다..) HTTP Chunked Message를 알아보도록 할겁니다,, - 아주아주 간단한 HTTP Protocol 설명 - HTTP Header와 Body를 읽는 방법 - HTTP Chunked Message란 무엇인가 1. HTTP(HyperTex..
C++ 대문자/소문자 변환 너무 바빠서 긴 포스팅 글의 마무리를 못하고 있다.. 일단 가벼운거라도 올려야 들 억울할 것 같다 1. std::transform 사용 2. std::toupper & std::tolower 사용 3. boost::to_upper 와 to_lower 사용 1. std::transform 구글에 "C++ 대소문자 변환" 이라고 검색하면 아마 가장 먼저 보이는 라이브러리이지 않을까 싶다 사용 방법을 보기전에 cppreference에 있는 함수 형태를 먼저 보겠다 * 헤더 #include 헤더는 요렇고,, * 함수 원형(?) template OutputIt transform( InputIt first1, Inpu..
C++ Function Object (함수 객체)를 알아보자 Lamda (람다) 포스팅을 하기 위해 공부하던 중,, 이상하게 글이 안써졌다. 기초 없이 사용할려고 하니까 그런것 같아서 함수 객체에 대해 먼저 공부를 해보려고 한다 1. 함수 호출 연산자 함수 객체를 사용해보기 전에, 함수 호출 연산자를 봐보겠다 아주아주 간단한 예시를 들어보겠다 #include #include using namespace std; int myPlus(int num1, int num2) { return num1+num2; } int main(void) { int num1 = 10; int num2 = 20; cout
C++ std::map을 사용해보자 C 개발을 하다보면 느끼는게 하나 있다 정말,, 자료구조 관리하기 힘들다라는거다 (나만 그럴지도 모른다) 그래서 C++에서 STL이 제공하는 여러 자료구조를 사용하면서 너무 편리했다 cf) STL (Standard Template Library) 표준 라이브러리로, std:: namespace를 붙여서 사용하면 된다 하지만 한 두개 사용할 수록, 작은거 하나도 헷갈려서 정리하기로 했다 - map 정의 방법 - map 요소 삽입 - map 요소 검색 - map 요소 삭제 - map 순회 - map 크기 구하기 0. map이 뭔가요? 위키백과: 다수 프로그래밍 언어에서, map은 고차 함수로서 전해진 함수를 배열의 모든 요소에 적용(apply)하여 그 결과 배열을 전달한다. KEY와 VALUE 형태로 되어있..
C++ 전역 변수와 정적 변수를 알아보자 전역변수와 지역변수는 많이 들어볼 용어이다. 지역변수는 함수 안에서 선언하여 사용하는 변수이고, 전역 변수는 지역변수와 다르게 전체에서 사용한다는 의미로 받아들인 다면, 간단하게 이해가 가능하다 실제 코드에서도 사용하기 어렵지 않다. 간단한 예시를 들어본다면 string globalVar; void test() { string localVar; } 위치만 바뀐다고 생각해도 괜찮을 정도이다. (물론 문법이 추가될 수는 있다.) 그러면 정적(Static) 변수는 무엇인지, 전역변수랑 차이가 뭔지 알아보려고 한다. (지역변수는 따로 정리하지 않아도 될 것 같아서 패쓰 😀) 개념에 대한 설명은 아래에 자세히 적을거고, 급한 분들을 위해 어떻게 쓰는지만 먼저 정리하자면 1. 전역 변수 사용 extern strin..
심볼릭 링크(Symbolic Link) 심볼릭 링크를 알아볼거다 구글링 하면서 명령어만 알고 싶었던 적이 더 많아서, 명령어->설명 순으로 정리해야겠다 - 심볼릭 링크 생성 커맨드(생성, 변경, 삭제) - 심볼릭 링크란 무엇일까 1. 심볼릭 링크(Symbolic Link) Command 1) 심볼릭 링크 생성 CMD> ln -s {링크걸고 싶은 파일} {링크 이름} 위와 같이 쓸 수 있다 합계 0 drwxr-xr-x. 2 pp pp 48 12월 17 17:17 . drwxr-xr-x. 3 pp pp 17 12월 17 16:58 .. -rw-r--r--. 1 pp pp 0 12월 17 16:59 library.so.0 -rw-r--r--. 1 pp pp 0 12월 17 17:17 library.so.0.1.0 만약 링크 걸고 싶은 파일이 lib..
SMTP를 알아보자 서버에서 이메일 전송하는 걸 구현하기 위해 알아보던 중.. SMTP를 사용하게 되었는데 평소에 아웃룩에서 설정할 때나 사내 메일을 설정할 때도 봤던 친구라 간단히 정리해보려고 한다 - SMTP란 무엇인지 - SMTP 서버가 뭔지 - SMTP&DNS - SMTP 사용 Port - SMTP 라이브러리 1. SMTP (Simple Mail Transfer Protocol) 위키백과: 간이 전자 우편 전송 프로토콜은 인터넷에서 이메일을 보내기 위해 이용되는 프로토콜이다. 풀네임을 해석한 정말 간단한 설명이다 보통 SMTP는 메일서버끼리 메일을 주고받거나, 아니면 SMTP 서버(ex. gmail, naver)에 메일 클라이언트가 연결을 맺고 다른 서버에 메일을 보내는 형식으로 사용된다 특징만 간단히 정리하면 다음..
Jenkins Pipeline / Pipeline Script 작성 젠킨스가 뭔지는 이전 글에서 나만 알아들을 수 있게 정리했다 그냥 CI 툴이구나. 이것저것 할 수 있구나만 알면 된다 어파치 해봐야 알수있다 ㅠㅠㅠ 요번글에는 젠킨스 Pipeline 기능 사용하는 방법을 정리하려고 한다 - 젠킨스 새로운 Item 만드는 방법 - Pipeline 기능 사용 방법 - Pipeline Script 작성법 - 빌드 및 로그 확인 방법 1. 새로운 Item 만드는 방법 젠킨스 대쉬보드에서 새로운 Item (영어면 New Item)을 누르면 아래(↓)의 화면이 나온다 친절하게 설명하고 있는 젠킨스가 시키는대로 하면 된다 - 만들 Item의 이름을 마음대로 적어주고 - Pipeline을 메뉴를 선택한다 - 그리고 OK 버튼을 누른다 Freestype project처럼 기본 프로젝트로..