본문 바로가기
반응형

분류 전체보기760

TDD 테스트 주도 개발 ( TDD )은 소프트웨어가 완전히 개발되기 전에 테스트 케이스 로 변환되는 소프트웨어 요구 사항에 의존 하는 소프트웨어 개발 프로세스 이며 모든 테스트 케이스에 대해 소프트웨어를 반복적으로 테스트하여 모든 소프트웨어 개발을 추적합니다. 이것은 소프트웨어가 먼저 개발되고 테스트 케이스가 나중에 생성되는 것과 반대입니다. 1. 테스트 추가새 기능의 추가 는 기능의 사양이 충족되는 경우 통과하는 테스트를 작성하는 것으로 시작됩니다 . 개발자는 사용 사례 및 사용자 스토리 에 대해 질문하여 이러한 사양을 찾을 수 있습니다 . 테스트 주도 개발의 주요 이점은 개발자가 코드를 작성 하기 전에 요구 사항에 집중할 수 있다는 것 입니다. 이는 단위 테스트가 코드 뒤에 만 작성되는 일반적인 관행과 대.. 2022. 2. 1.
스프링 이니셜라이저 http://www.start.spring.io/ gradle 쓸때 도구 같은 거 2022. 1. 29.
Ubuntu에 java 설치 설치 확인 java -version 이게 뜨면 설치된거 안되어잇으면 설치하면 됩니다~ apt-get update sudo apt-get install openjdk-8-jdk 설치완료 후 환경설정을 해야한다. which javac로 위치 확인이 가능하다 하지만 보통 /usr/bin/javac 이 경로입니다. 이경로를 sudo vi /etc/profile에 아래를 입력해주면됩니다. (vim이 업데이트 안되어있으면 sudo apt install vim 를 입력하면됩니다. export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 export PATH=$JAVA_HOME/bin/:$PATH export CLASS_PATH=$JAVA_HOME/lib:$CLASS_PATH 이런식으.. 2022. 1. 28.
JAR, WAR 차이점 및 특징 JAR (Java Archive) WAR (Web Application Archive) 모두 JAVA의 jar 툴을 이용하여 생성된 압축(아카이브) 파일이며 어플리케이션을 쉽게 배포하고 동작시킬 수 있도록 있도록 관련 파일(리소스, 속성파일 등)들을 패키징해주는 것이 주 역할입니다. 개발하시다 보면 두 파일 형식은 많이 보셨을 거라 생각됩니다. Maven 등을 통해 내려받는 라이브러리들은 CLASS 파일들이 묶인 jar파일로 구성되어 있는 것을 확인 하실 수 있습니다. 그리고 서비스 배포시에는 프로젝트를 WAR 포맷으로 묶어서 /webapps 등의 지정된 경로에 넣고 Tomcat 등의 웹 컨테이너(Web Contaioner)를 이용하여 deploy하는 식으로 서비스를 많이 올리곤 하셨을 거에요. 그럼 이.. 2022. 1. 28.
컴파일과 빌드 차이 평소 이클립스와 같은 IDE를 사용하기 때문에 컴파일과 빌드의 개념에 대해 잘 알지 못했다. 단지 소스코드를 작성하고 이클립스에서 run을 실행하면 알아서 모든 과정이 자동으로 실행되기 때문이다. 그래서 컴파일과 빌드란 단어를 잊고만 살았었다... 옛날에 전공서적에서 어렴풋이 본 기억만 날뿐...ㅎㅎ 컴파일과 빌드란 무엇이고 그 차이점에 대해서 알아보자. 1. 컴파일(Compile) 컴파일이란 개발자가 작성한 소스코드를 바이너리 코드로 변환하는 과정을 말한다. (목적파일이 생성됨) 즉, 컴퓨터가 이해할 수 있는 기계어로 변환하는 작업이다. 이러한 작업을 해주는 프로그램을 가르켜 컴파일러(Compiler)라 한다. 자바의 경우, 자바가상머신(JVM)에서 실행가능한 바이트코드 형태의 클래스파일이 생성이 된다.. 2022. 1. 28.
MAVEN 정의 https://goddaehee.tistory.com/199 [Maven] Maven 이란? (정의, 예제) [Maven] 메이븐 이란? (정의, 예제) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ 메이븐 알아보기 ] 입니다. : ) 1. 빌드 (Build) #1 빌드란? - 소스코드 파일을 컴퓨터에서 실행할 수 있는 독립 goddaehee.tistory.com 기초사용법 https://javacan.tistory.com/entry/MavenBasic Maven 기초 사용법 본 글에서는 Maven을 이용해서 프로젝트를 생성하는 방법과, 디렉토리 구조, POM 파일 기본 구성, Maven 라이프 사이클 그리고 Maven 프로젝트를 이클립스 프로젝트로 생성하는 방법을 살펴보도록 하 javacan.ti.. 2022. 1. 28.
MAVEN 정의 https://goddaehee.tistory.com/199 [Maven] Maven 이란? (정의, 예제) [Maven] 메이븐 이란? (정의, 예제) 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ 메이븐 알아보기 ] 입니다. : ) 1. 빌드 (Build) #1 빌드란? - 소스코드 파일을 컴퓨터에서 실행할 수 있는 독립 goddaehee.tistory.com 기초사용법 https://javacan.tistory.com/entry/MavenBasic Maven 기초 사용법 본 글에서는 Maven을 이용해서 프로젝트를 생성하는 방법과, 디렉토리 구조, POM 파일 기본 구성, Maven 라이프 사이클 그리고 Maven 프로젝트를 이클립스 프로젝트로 생성하는 방법을 살펴보도록 하 javacan.ti.. 2022. 1. 28.
에이전트(IT, 소프트웨어 분야) 에이전트 (소프트웨어)(agent) : 사용자의 개입 없이 주기적으로 정보를 모으거나 또는 일부 다른 서비스를 수행하는 소프트웨어 프로그램이다. 대략 프로그램이란 느낌이 있었는데 이게 맞는지도 조금 의심스럽다. 2022. 1. 28.
jenkins 원격 배포(ssh 활용) 서버내에 원격으로 vm에 배포를 ssh방식으로 하려고 한다. 플러그인 설치 jenkins 관리에서 플러그인 관리에서 public over ssh 를 설치한다. Publish over SSH 설정 프로젝트가 생성되면 환경설정을 하기위해 Jenkins 관리를 선택 후 시스템 설정 해당 서버의 passphrase(암호)와 key를 입력하고 원격으로 연결할 서버의 정보를 SSH server에 입력합니다. 낮은버전 배포할 서버 설정 원격 서버에 ssh로 ci/cd 구성하기위해 프로젝트인가를 설정하는데 bitbucket에서 가져오는데 maven을 많이 쓴다고 해서 maven project를 선택하였다. bitbucket을 쓸거라 git을 선택해서 소스코드를 bitbucket에서 가져옵니다. 배포할 서버의 정보를 입.. 2022. 1. 27.
Ubuntu gateway 설정(vm 인터넷 안됨) 서버 VM에 고정ip 할당한다고 공유기 설정을 변경하였더니 VM에서 인터넷이 되지 않았다. 브릿지 설정이라 그냥 되야 하는데 왜 안되는지 헤매다가 겨우 찾았다. 원인을 너무 우분투 VM에서 찾으려고 하니까 안됐다. 네트워크를 변경하였으니 네트워크에서 찾았어야 했다. 그래서 기본네트워크 설정을 보니 설정이 안되어있었다. 아마도 네트워크 설정하면서 기본네트워크 변경이 되었던것 같다 설정을 하자면 다음과 같다. route로 기본네트워크를 확인한다. 맨위 인터페이스에 보면 192.168.1.1인데 호스트pc에서 게이트웨이가 192.168.0.1로 되어있어 인터넷이 되질 않았다. (왜그런지는 찾아봐야할것같다.) 그런 다음 route del default 로 기존에 있던 gateway를 삭제후 route add d.. 2022. 1. 27.
AJP https://ehdvudee.tistory.com/20 AJP 프로토콜 모든 것을 분석 해보자 개요 AJP(Apache JServ Protocol)은 Web Server에서 받은 요청을 WAS로 전달해주는 프로토콜이다. 해당 프로토콜은 Apache HTTP Server, Apahce Tomcat, 웹스피어, 웹로직, JBOSS, JEUS, 등 다양한 WAS에서 지원한.. ehdvudee.tistory.com 출처) https://itmemo.tistory.com/238 https://ganzi-tilong.tistory.com/7 https://joont.tistory.com/55 mod_jk를 알기전에 AJP를 먼저 알아야 할듯 함 ■ AJP 란? AJP는 웹서버(Apache) 뒤에 있는 어플리케이션.. 2022. 1. 26.
스레드덤프(thread dump) [Thread] : 쓰레드의 개념에 대해서는 이전의 글 https://wiserloner.tistory.com/548나, 혹은 이후에 병렬 프로그래밍을 정리하며 적을 것입니다. - 자바는 JVM을 사용하기에, 가장 단순한 형태의 프로그램도, 수개의 쓰레드로 이루어져 있습니다. (내 프로그램 + JVM 자체 쓰레드) (스레드 경합) - 공유 자원에 대해서, 여러 스레드가 동시에 요구를 할 때 일어나는 현상으로, 서로 다른 쓰레드 간에 자원을 가져가기 위한 경합이 자주 발생합니다. - 경합이 심해지면, 어느 쓰레드가 자원을 소유하지 못하고 멈춰버리는 '데드락'이 걸리기도 합니다. - 경합은, 어느 자원에 있어서, 한 스레드가 그것을 사용함에 있어서 잠궈놓은 '락'에 대해, 다른 스레드가 기다리느라 생기는 현.. 2022. 1. 26.
반응형