성실한 사람이 되자

성실하게 글쓰자

This is spear

Programming 29

friend in C++ (cpp)

friend 키워드를 한번 알아보도록 하겠습니다~ friend 키워드는 전역 함수 클래스, 멤버 함수 앞에 사용할 수 있습니다. private 멤버에 대한 접근은 내부 접근만 가능하고 외부 접근은 불가능하지만 friend 키워드에 의한 접근은 가능합니다. 또한 특정 클래스 입장에서 다른 전역 함수나 클래스 또는 다른 클래스의 멤버 함수를 자신의 friend 키워드로 선언할 수 있습니다. 꼭 friend 키워드를 설정한 함수에서만 접근 가능하니 유의해주시기 바랍니다. friend 키워드의 참고사항 중 첫 번째는 friend 함수 선언의 위치를 확인해야합니다. 선언하는 영역(private, public)과 무관합니다. 두 번째로는 클래스 내에서 friend를 이용한 함수 선언 시에만 이 friend 키워드를..

Programming/CPP 2020.10.16

explicit keyword in C++ (cpp)

explicit 키워드를 간단하게 말하자면, 생성자의 역할이 달라지지 않도록 도와주는 역할을 합니다. explicit 키워드는 간단하게 생성자 앞에 추가하면 됩니다. 우선 예제를 보도록 하겠습니다. 실제로 매개변수가 하나인 경우 클래스명을 생략하여 형 변환이 일어나 생성 가능하도록 할 수 있습니다. class CNumber { private: int x; public: CNumber() : x(0) {}; CNumber(int a) : x(a){} }; int main(int argc, char const *argv[]) { CNumber N1; CNumber N2(1); CNumber N3 = CNumber(2); // 매개변수가 1개일 경우 클래스명 생략이 가능하다. CNumber N4 = 3; re..

Programming/CPP 2020.10.16

PyCharm 파이썬 interpreter 없음 오류 ( Please select valid Python Interpreter)

Pycharm Interpreter 관련 설정을 하는 법을 작성했습니다. 이렇게 실행되는 걸 볼 수 있습니다. 마지막으로 아래의 Interpreter를 지정해도 설정 안 되는 건 단순 파이참 IDE의 문제가 아니라 컴퓨터 내에서 파이썬을 찾지 못하거나 파이썬이 없거나 마지막으로 파이썬까지의 접근 권한이 없기 때문입니다. 만약 접근 권한이 문제라면 해당 루트 아이디로 들어가서 직접 설치하는 방법을 추천드립니다.

Programming/Python 2020.09.13

현재 스트리밍 서비스를 이끌고 있는 주 기술/ 아파치 카프카 (Apache Kafka - 이벤트 스트리밍 플랫폼)

스마트폰 보급과 함께 사용자가 데이터의 양이 급격하게 증가하면서 빅데이터 들을 처리하는 기술이 눈에 띄게 중요해졌습니다. 기본적인 데이터 처리하는 방식에서는 파일을 저장하고 그 다음 읽는 게 순서였지만, 데이터 전송 속도 증가와 빅데이터 처리 기술의 고도화로 인해 파일 저장과 동시에 읽을 수 있게 되었습니다. 이러한 기술을 스트리밍 서비스라고 부릅니다. 그래서 유튜브와 같이 스트리밍 서비스에서 실시간으로 데이터를 처리하는 곳에 사용되는 기술 중에 하나를 소개할까 합니다. 간단한 카프카의 소개 카프카는 이벤트 스트리밍 플랫폼입니다. 특정한 이벤트 전송로인 파이프라인을 관리하여 여러 스토리지 간의 연결을 통합, 관리 프로그램입니다. 쉽게 표현하자면 대량의 데이터를 분산 관리해주는 시스템입니다. 카프카의 장점..

Programming/KAFKA 2020.08.26

앵귤러 CLI 윈도우에서 ng 명령어 사용하기 (환경 변수 설정)

안녕하세요~ 앵귤러 프로젝트를 생성하고 싶은데 ng 명령어를 사용할 수 없을 때... 윈도에서 환경변수 설정하는 방법을 적어보려고 합니다. 앵귤러 Cli 설치 확인하기!! 우선 앵귤러 Cli를 설치하셔야 합니다. 만약 설치 안 하셨다면 밑에 포스트를 확인하시면 됩니다. https://imspear.tistory.com/72 맥 OS 에서 명령어 ng/앵귤러 CLI설치하기 (앵귤러 CLI/ng가 설치가 안될때) https://angular.io/cli Angular angular.io 앵귤러를 시작하기 위해서는 앵귤러 CLI를 설치해야 합니다. 하지만 맥북에서는 접근자의 권한이 없으면 이렇게 다운로드가 실패합니다. npm install -g @angular/cli.. imspear.tistory.com 저..

앵귤러를 이용한 단일 페이지 제작/SPA(single-page application)

Using Angular routes in a single-page application 요즘 단일 페이지로 웹을 만드는게 유행이죠 SPA에서는 모든 응용 프로그램 기능이 단일 HTML 페이지에 있습니다. 사용자가 응용 프로그램 기능에 액세스하면 브라우저는 새 페이지를로드하는 대신 사용자에게 중요한 부분 만 렌더링해야합니다. 이 패턴은 응용 프로그램의 사용자 경험을 크게 향상시킬 수 있습니다. 사용자가 응용 프로그램을 탐색하는 방법을 정의하려면 경로를 사용하십시오. 사용자가 응용 프로그램의 한 부분에서 다른 부분으로 이동하는 방법을 정의하기 위해 경로를 추가 할 수 있습니다. 예기치 않은 또는 무단 동작으로부터 보호하기 위해 경로를 구성 할 수도 있습니다. 앵귤러 프로젝트 튜토리얼로 제공하는 싱글 페이지..

비쥬얼 코드(Visual Code)에서 앵귤러(Angular) 프로젝트 설치 및 앵귤러(Angular) CLI 실행하기

ng 명령어 사용방법 https://imspear.tistory.com/72 맥 OS 에서 명령어 ng/앵귤러 CLI설치하기 (앵귤러 CLI/ng가 설치가 안될때) https://angular.io/cli Angular angular.io 앵귤러를 시작하기 위해서는 앵귤러 CLI를 설치해야 합니다. 하지만 맥북에서는 접근자의 권한이 없으면 이렇게 다운로드가 실패합니다. npm install -g @angular/cli.. imspear.tistory.com 저 같은 경우에는 visual code비쥬얼 코드(Visual Code) 밑에 있는 터미널에서 ng명령어를 사용해 앵귤러 프로젝트를 생성했습니다. 터미널에서 실행해주세요 ng new hi-angular 실행하면 이렇게 프로젝트가 생성이 됩니다. vis..

맥 OS 에서 ng 명령어 사용방법/앵귤러 CLI설치하기 (앵귤러 CLI/ng가 설치가 안될때)

https://angular.io/cli Angular angular.io 앵귤러를 시작하기 위해서는 앵귤러 CLI를 설치해야 합니다. 하지만 맥북에서는 접근자의 권한이 없으면 이렇게 다운로드가 실패합니다. npm install -g @angular/cli 접근자의 권한을 주기 위해 앞에 sudo를 붙여주고 맥북 사용자의 비밀번호가 필요합니다. sudo npm install -g @angular/cli 마지막 ng 명령어가 되는 것 까지 확인 했습니다. 맥에서는 터미널을 통해 다운로드 받을때 관리자 권한이 필요합니다. 관리자의 권한이 필요할 때 명령어 제일 앞에 sudo를 붙여주면 관리자의 권한으로 실행할 수 있게 해줍니다.

자바스크립트의 데이터 타입(var, let, const, hoisting)

자바스크립트의 데이터 타입 문자열 문자열 데이터 타입은 문자 데이터를 문자열로 저장한다. 문자 데이터같은 경우 작은따옴표나 큰따옴표를 이용해서 지정한다. var ThisIsString = "hi"; 숫자 var num = 1 ; 불린 이 데이터 타입은 true 또는 false인 단일 비트를 저장한다. 불린은 플래그로 사용될 때가 많다. var yes = true; var no = false; 배열 인덱스 배열은 일련의 개별 데이터 항목이 하나의 변스명으로 저장된 형태다. 자바스크립트에서는 같은 배열에서 여러 타입의 객체를 담을 수 있다. var array = ["node0", "node1", "node2"]; var firs_is_zero = array[0] /node0 ; 객체 리터럴 자바스크립트는 객..

자바스크립트 변수 정의

변수 정의 자바스크립트에서 변수를 정의하려면 var , const, let 키워드가 존재합니다. 변수를 정의할 때 변 수 앞에 키워드를 작성하면 됩니다. 하지만 값을 넣지 않고 콘솔에 로그를 적는다면 undefined라고 정의되지 않는 변수라고 화면에 출력됩니다. var myValue; console.log(myValue); 변수 안에 값을 넣는다면 콘솔에는 Some Text 라고 출력이 됩니다. var myValue = "Some Text"; console.log(myValue); 이 부분도 위에 변수 선언하는 방법과 같습니다. var myValue; myValue = "Some Text"; console.log(myValue); var 과 let은 hoisting 이냐 아니냐의 차이고 const는 변..