IT/기타 38

[SonarQube] 정적 분석 결과 해석하기

(1) Bugs - 버그가 일어날 위험이 있는 코드 (2) Vulnerabilities - 보안 취약성 (3) Security Hotspots - 보안적으로 취약하여 직접 검토가 필요한 코드 (4) Code Smells - 유지보수가 어려운 코드 - Debt라는 시간 단위로 표시되고, 높을수록 유지보수에 좋지 않음 (5) Coverage - 코드 커버리지 (단위 테스트가 코드를 얼마나 검증하고 있는지) - 외부 라이브러리 등을 통해 코드 커버리지 리포트 파일이 생성되어야 볼 수 있음 (6) Duplication - 코드 중복률

IT/기타 2023.09.01

[SonarQube] Java, Kotlin, JavaScript(TypeScript) 정적 분석, 커버리지 분석

SonarQube를 Docker로 설치하는 방법은 아래 포스트를 참고해주세요. [Docker] 도커 이미지(Image) 다운로드 및 컨테이너(Container) 생성/실행/삭제하기(feat. SonarQube) [Docker] 도커의 개념, linux에서 도커 설치 1. 도커(Docker)란? 컨테이너 기반의 가상화(하나의 하드웨어를 여러 개의 가상 머신으로 분할하는 것) 플랫폼. 프로그램 실행에 필요한 모든 프로그램 파일 doringri.tistory.com 중요해서 볼드체로 표시합니다. 이전 포스트에도 설명되어 있는 부분이지만, Java 8을 분석해야 한다면 꼭 8.9.0버전 이하의 소나큐브를 다운받으셔야 합니다. Java 8 이후의 버전은 latest 버전의 소나큐브를 다운받아주시면 됩니다. 이런 ..

IT/기타 2023.09.01

[Docker] 도커 이미지(Image) 다운로드 및 컨테이너(Container) 생성/실행/삭제하기(feat. SonarQube)

[Docker] 도커의 개념, linux에서 도커 설치 1. 도커(Docker)란? 컨테이너 기반의 가상화(하나의 하드웨어를 여러 개의 가상 머신으로 분할하는 것) 플랫폼. 프로그램 실행에 필요한 모든 프로그램 파일과 환경들을 갖춘 이미지(Image), 그리고 doringri.tistory.com 저번 게시물에서 도커가 뭔지, 그리고 리눅스에 도커를 설치하는 방법까지 포스팅했습니다. 이번에는 도커허브에서 도커 이미지를 다운받고, 그 이미지를 통해 로컬에 컨테이너를 만든 다음 실행해보겠습니다. 1. 도커 이미지 다운받기 회사에서 현재 사용 중인 정적 코드 분석 툴인 SonarQube의 이미지를 받아오도록 하겠습니다. Docker Hub Container Image Library | App Container..

IT/기타 2023.08.13

[Docker] 도커의 개념, linux에서 도커 설치

1. 도커(Docker)란? 컨테이너 기반의 가상화(하나의 하드웨어를 여러 개의 가상 머신으로 분할하는 것) 플랫폼. 프로그램 실행에 필요한 모든 프로그램 파일과 환경들을 갖춘 이미지(Image), 그리고 그 이미지가 실행되는 격리된 환경인 컨테이너(Container)가 핵심이다. 장점 : 이미지는 개발환경까지 포함하는 개념이다. 즉, 이미지를 공유한다면 공유받은 사람은 그 소프트웨어를 실행하기 위한 환경을 세팅할 필요가 없다는 뜻이다. 매우 간편하고 쉽다. 게다가 용량도 가볍다. 단점 : 리눅스 기반이라, 리눅스에서 실행되는 소프트웨어만 지원한다. 물론 도커 자체는 Hyper-V를 이용해 윈도우에서도 돌릴 수 있다. 또 다른 단점은 가상화 플랫폼인지라 호스트 서버가 죽으면 모든 컨테이너가 같이 죽는다는..

IT/기타 2023.08.12

[Oracle, Eclipse] - Apache Tomcat을 이용해 웹 화면 구성

Oracle과 Eclipse 연동은 끝났었으니 Oracle의 테이블을 웹 화면에 띄우는 작업을 할 수 있습니다. 이를 위해 Apache Tomcat을 써서 진행합니다. 아파치 톰캣에 대해 간략히 설명하자면 Apache는 정적인 웹 콘텐츠인 HTML을 돌리는 웹 서버이고, Tomcat은 동적인 데이터를 처리(DB 연동도 얘가 함) 하는 WAS(Web Application Server) 입니다. Apache Tomcat은 이 두 가지가 합쳐져 있다고 생각하시면 됩니다. 0. Oracle, Tomcat 포트 충돌 사전 확인 Tomcat은 기본적으로 8080 포트를 사용합니다. Oracle도 똑같이 8080 포트입니다. (주의!: Oracle 리스너 포트는 1521입니다) 보통 Tomcat을 8080으로 설정하..

IT/기타 2023.07.11

Oracle 테이블 생성, 데이터 추가/조회/수정/삭제

※ SQL Developer와 SQL*Plus 의 2가지 방법을 모두 정리합니다. ※ SQL*Plus에서 작업한 후엔 commit; 명령을 통해 커밋해줘야 SQL Developer에서 새로고침을 했을 때 정상 반영이 됩니다. 1. 테이블 생성 (SQL Developer에서) (SQL*Plus에서) create table reservation_tbl ( lentno varchar2(3) primary key, custname varchar2(20), bookno varchar2(3), outdate date, indate date, status char ); 2. 데이터 추가 (SQL Developer에서) (SQL*Plus에서) insert into reservation_tbl values(1, '김한국..

IT/기타 2023.07.10

Oracle 설치, 세팅 및 Eclipse와 연동

NCS 자격평가 대비 기록용으로 정리합니다. 1. 오라클(11g Express Edition) 설치 XE Prior Release Archive Getting Started: Support Oracle Database Express Edition (XE) is a community supported edition of the Oracle Database family. Please go to the Oracle Database XE Community Support Forum for help, feedback, and enhancement requests. Note: Oracle Support Ser www.oracle.com 2. 오라클 developer 설치 Oracle SQL Developer Down..

IT/기타 2023.07.09

[TDD] 실전에서 사용해본 TDD(Test-Driven Development)

현재 회사에서 TDD 방식으로 개발중에 있습니다. TDD를 도입한 건 현재 진행 중인 프로젝트부터라 경험이 많지는 않지만, 조금이나마 도움이 되실 분들이 있을까 해서 포스팅합니다. 사실 테스트 코드 때문에 울부짖은 적이 한두번이 아니긴 합니다만... 앗... 위 짤은 무시하셔도 됩니다.^^ TDD란? 이 포스팅을 보실 정도면 대충 TDD가 어떤 것인지에 대해서는 알고 계시겠지만 간략하게 개념을 설명하고 넘어가자면, TDD는 Test Driven Development(테스트 주도 개발)의 약자입니다. 코드의 전반적인 설계를 테스트 코드로 한다는 건데, 쉽게 말해서 테스트 코드를 먼저 작성하고 그 테스트를 통과하도록 소스 코드를 짜면 됩니다. TDD를 도입하기 전까지 기존의 방식은, 소스 코드를 먼저 작성하..

IT/기타 2023.05.27