Programming

    [React] React.js 강좌 3. Fragments

    React Fragments React에서 컴포넌트가 여러 엘리먼트를 반환하도록 사용하는 것이 일반적인데, Fragment는 DOM에 의미 없는 div를 사용하지 않고 여러 하위 노드들을 그룹화해서 사용할 수 있습니다! render() { return ( ); } 예를 들어 Table과 테이블 아래의 Column을 세팅해주는 컴포넌트가 있다고 가정합니다. class Table extends React.Component { render() { return ( ); } } class Columns extends React.Component { render() { return ( Hello World ); } } 이때 Table의 출력결과는 아래와 같이 나옵니다. Hello World 결과를 보면 tr 아래에..

    [Cassandra] unauthorized error from server code=2100 unauthorized 에러 해결

    [Cassandra] unauthorized error from server code=2100 unauthorized 에러 해결

    [Cassandra] unauthorized error from server code=2100 unauthorized 해결 카산드라를 압축 해제하는 형태로 리눅스에 설치해서 실행을 시키고 접속을 하는 과정중에 계정 생성도, 계정 조회도 안되는 문제를 발견할 수 있었습니다. 접속한 계정은 초기 계정인 cassandra/cassandra입니다. 아니... 초기 설정 그대로 사용한 거고, 초기 계정 그대로 사용했는데 권한 문제가 생기는게 말이 돼!? 그냥 apt-get install cassandra 같은 패키지 형태로 받을 걸 그랬나...하고 고민하다가 구글 좀 뒤져봤는데 해결 방법이 있더군요. 1) 카산드라설치폴더/bin/cassandra.yaml 파일을 열어줍니다. 2) authenticator: All..

    [NoSQL] Cassandra(카산드라) 설치 방법 (tar.gz)

    [NoSQL] Cassandra(카산드라) 설치 방법 (tar.gz)

    Cassandra 설치 방법 (tar.gz) 카산드라를 다운받는 방법 중에, 압축 파일을 받고 특정 위치에 설치하는 방법입니다. 1. cassandra 홈페이지에서 압축 파일 다운로드 https://cassandra.apache.org/ Apache Cassandra | Apache Cassandra Documentation Since 2016, application engineers at Bloomberg have turned to Cassandra because it’s easy to use, easy to scale, and always available. We serve up more than 20 billion requests per day on a nearly 1 PB dataset acros..

    [C#] ERROR CS8107: '기본 리터럴'기능은 C# 7.0에서 사용할 수 없습니다.

    [C#] ERROR CS8107: '기본 리터럴'기능은 C# 7.0에서 사용할 수 없습니다.

    비쥬얼 스튜디오 2017 버전에서 프로젝트를 불러와 빌드했을 때 이러한 에러가 발생했습니다. 아마도, 해당 프로젝트가 보다 높은 버전에서 작성되었기 때문에 빌드할때 이러한 문제가 발생하는 것 같은데요. 에러 우측에 보면 해당 프로젝트 리스트가 나와있는데 이 프로젝트의 속성에 들어가시고 빌드 - 고급을 선택해줍니다. 여기서 빌드 언어 버전을 C# 7.1이상으로 잡아주면 에러 없이 빌드가 정상적으로 동작합니다.

    [React] React.js 강좌 2. 클래스형 Props & State 정리

    [React] React.js 강좌 2. 클래스형 Props & State 정리

    클래스형 Props & State 정리 1. 개념 React에서 자주 사용되는 Props와 State의 개념과 차이점입니다. Props란, 컴포넌트가 가지고 있는 프로퍼티로 자식 컴포넌트가 부모 컴포넌트로부터 값을 받고 싶을 때, props를 통해 받아올 수 있습니다. 일반 객체 지향에서 특정 function의 인자(parameter)로 생각하면 좋습니다. 위는 객체 데이터를 표시하거나 변경 사항등을 알리기 위해 사용되며 읽기전용이므로 값을 수정할 수 없다는 특징을 가지고 있습니다. State는 private한 속성을 지니며 컴포넌트에 의해 완전히 제어되고 있다는 특징을 가지고 있습니다. 즉, 컴포넌트 내부에서만 사용할 수 있는 속성인 것이고, Local State라고도 부릅니다. 2. 기초 세 단계의 ..

    [React] React.js 강좌 1. 기초 개념 정리

    [React] React.js 강좌 1. 기초 개념 정리

    React.js 기초 개념 정리 1. 리엑트란? 웹페이지에 인터랙션이 자주 발생하고, 동적인 UI를 기존의 Javascript만으로 표현하면 개발과 수정이 일어날때마다 DOM을 직접 수정해야하기 때문에 코드가 난잡해지는 문제가 발생하곤 합니다. 처리해야할 이벤트도 다양해지고, 관리해야할 상태 값이나 DOM의 구조도 다양해지게 된다면 이에 따라 처리해야하는 업데이트 규칙도 복잡해지기 마련입니다. 리엑트는 이러한 문제점을 개선하기 위해 아래와 같은 방법을 사용합니다! View에서 어떠한 상태가 바뀌었을 때 그 상태에 따라 DOM을 어떻게 업데이트 할지를 정하는 것이 아니라, 아예 View를 다 날려버리고 새로 보여주면 코드가 난잡해지는 것을 방지할 수 있지 않을까, 하는 아이디어에서 리엑트가 탄생했습니다. ..

    [ECMAScript] Javascript ES6 기초 문법 정리

    ES6 기초 문법 정리 1. Class class Car { constructor(name) { this.brand = name; } present() { return 'I have a ' + this.brand; } } const mycar = new Car("Ford"); mycar.present(); Brand라는 변수에 대해서는 따로 정의하지 않아도 적용이 된다.Class의 constructor 생성자로 파라미터를 받고 클래스를 초기화 시키는 구조. 따라서 brand를 호출하면 생성자로 초기화 했던 Ford라는 string이 출력이 된다. class Car { constructor(name) { this.brand = name; } present() { return 'I have a ' + thi..

    소스 코드 분석을 위한 소나 큐브(Sonar Qube) 사용법

    소스 코드 분석을 위한 소나 큐브(Sonar Qube) 사용법

    1. 소나 큐브 다운로드 https://www.sonarqube.org/downloads/ Download | SonarQube Get the latest LTS and version of SonarQube the leading product for Code Quality and Security from the official download page. www.sonarqube.org 커뮤니티 버전을 다운받고 압축된 파일을 마음에 드는 곳에 풀어줍니다. 이 글을 작성 당시의 소나큐브 버전은 9.1.0버전입니다. 소나큐브는 소스 코드를 분석하기 위한 툴로 여기서는 C#으로 작성한 코드를 기준으로 테스트 해보려고 합니다. 압축을 푼 경로에서 bin 폴더에 들어가서 해당 운영체제에 맞는 폴더에 들어가서 Sta..

    [Java] Birt Project 사용방법

    [Java] Birt Project 사용방법

    Birt(Business Intelligence and Reporting Tools), 즉 비즈니스 인텔리전스 및 보고 도구 프로젝트는 리치 클라이언트 및 웹 애플리케이션, 특히 Java 및 Java EE 기반 애플리케이션에 대한보고 및 비즈니스 인텔리전스 기능을 제공하는 오픈 소스 소프트웨어 프로젝트다. 1. Birt 설치 https://download.eclipse.org/birt/downloads/drops/ 해당 사이트에 들어가서 최신 버전을 선택하고, designer-all-in-one을 받아준다. 프로그램을 받으면 위와 같이 eclipse 플러그인 형태의 프로그램을 받을 수 있는데, birt project는 이 이클립스를 사용해서 관리한다. 2. Birt 예제 사이트 https://www.ec..

    [Jenkins] 젠킨스란?

    [Jenkins] 젠킨스란?

    1. 젠킨스(Jenkins)란? 모든 언어의 조합과 소스 코드 레포지토리에 대한 지속적인 통합(Continuous integration, CI)과 지속적 배포(continuous delivery, CD) 환경을 구축하기 위한 도구다. 빌드, 테스트, 배포 프로세스를 자동화하여 소프트웨어 품질과 개발 생산성을 높일 수 있다. 편리한 설정 웹 기반의 콘솔로 다양한 인증 기반과 결합이 가능하며 권한 관리 기능을 통해 안전한 빌드/배포 환경을 구축할 수 있다. 수많은 플러그인을 사용하여 자동화 할 수 있어 반복되는 작업을 줄일 수 있다. 빌드/배포의 결과에 대해 통지 받을 수 있는 설정이 간편하고 다양한 채널을 통해 빠르게 피드백을 받을 수 있다. 안정적인 빌드/배포 환경 소스 버전 관리 툴과 연동하여 코드 변..