JRE, JDK란? 처음 Java를 설치하려고 보니 JRE, JDK 등이 존재하는 것을 확인할 수 있다. 둘의 차이는 무엇일까? 참고) [JAVA] 자바(JAVA)란? 자바의 특징 자바(JAVA)란? 자바는 C언어에 객체 지향적 기능을 추가하여 만든 C++과 달리, 처음부터 객체 지향 언어로 개발된 프로그래밍 언어이다. 자바는 자바 가상 머신(JVM, Java Virtual Machine)을 사용하여 운 code-lab1.tistory.com [JAVA] JVM(Java Virtual Machine)이란? JVM(Java Virtual Machine)이란? JVM은 Java Virtual Machine, 즉 자바 가상 머신의 약자를 따서 줄여 부르는 용어이다. JVM은 OS와 Java 애플리케이션 사이의..
Git은 파일을 Commited, Modified, Staged 이렇게 세 가지 상태로 관리한다. 각 상태의 의미는 다음과 같다. Commited : 데이터가 로컬 데이터베이스에 안전하게 저장됨 Modified : 수정한 파일을 아직 로컬 데이터베이스에 커밋하지 않은 상태 Staged : 현재 수정한 파일을 곧 커밋할 것이라고 표시한 상태 Git Directory는 Git이 프로젝트의 메타데이터와 객체 데이터베이스를 저장하는 곳으로 Git의 핵심이다. 다른 컴퓨터에 있는 저장소를 Clone 할 때 이 Git 디렉터리가 만들어진다. Working Directory는 프로젝트의 특정 버전을 Checkout한 것이다. 쉽게 말하면 내가 작업하고 있는 프로젝트의 디렉터리를 뜻한다. Git Directory는 지..
Git 저장소 만들기 Git 저장소를 만드는 방법은 크게 두 가지가 존재한다. 1. 아직 버전관리를 하지 않는 로컬 디렉토리 하나를 선택해서 Git 저장소를 적용하는 방법 2. 다른 어딘가에서 Git 저장소를 clone 하는 방법 기존 디렉토리를 Git 저장소로 만들기 버전관리를 하지 않던 기존 프로젝트를 Git으로 관리하고 싶다면 프로젝트의 디렉토리로 이동한 후 다음과 같은 명령을 실행한다. Mac, Linux 의 경우 터미널로 다음과 같이 프로젝트 경로로 이동할 수 있다. $ cd /Users/user/my_project Windows의 경우 아래와 같이 git bash를 이용할 수 있다. 프로젝트의 디렉토리에서 Git Bash Here 기능을 이용하면 터미널 창이 뜨게 된다. 이후엔 동일하게 아래와..
맥북(macOS)에 깃(Git) 설치하기 MacOS에 깃을 설치하기 위해서는 먼저 homebrew를 설치해야 한다. 아래 사이트에 접속하면 homebrew를 설치할 수 있다. https://brew.sh/ Homebrew The Missing Package Manager for macOS (or Linux). brew.sh Install Homebrew의 명령어를 복사한 뒤 mac의 터미널 창에 붙여넣기해서 실행시켜주면 끝이다. 나는 sudo access를 하기 위해 비밀번호를 입력하라고 나와서 노트북 비밀번호를 입력해줬다. 이후 터미널에 brew --version 명령어를 이용해 homebrew가 잘 설치되었는지 확인해보자. 위와 같이 버전이 잘 뜨면 설치가 잘 된 것이다. brew install gi..
윈도우 10(Window 10) 깃(Git) 설치하기 1. Git 설치 파일 다운로드 윈도우 10에서 깃은 공식 홈페이지에서 다운로드할 수 있다. https://git-scm.com/downloads Git - Downloads Downloads macOS Windows Linux/Unix Older releases are available and the Git source repository is on GitHub. GUI Clients Git comes with built-in GUI tools (git-gui, gitk), but there are several third-party tools for users looking for a platform-specific exp git-scm.com -..
버전 관리 시스템(Version Control System)이란? 버전 관리 시스템(이하 VCS)은 파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 꺼내 올 수 있는 시스템이다. 많은 개발자들이 소스 코드를 관리할 때 VCS를 사용하지만, 거의 모든 컴퓨터 파일의 버전을 관리할 수 있다. VCS를 사용하면 각 파일을 이전 상태로 되돌릴 수 있고, 프로젝트를 통째로 이전 상태로 되돌리거나 시간에 따라 수정 내용을 비교해 볼 수도 있다. 누가 문제를 일으켰는지 추적할 수 있고 누가 언제 만들어낸 이슈 인지도 알 수 있다. 또한 파일을 잃어버리거나 잘못 고쳤을 때도 쉽게 복구할 수 있다. 따라서 VCS를 이용하면 위와 같은 장점을 누릴 수 있다. VCS는 다음과 같은 종류로 세분화 된다. ..
EAI란 무엇인가? EAI(Enterprise Application Integration)은 말 그대로 기업 애플리케이션 통합이다. EAI는 데이터를 교환하고 제공하는 서비스를 호출하여 기업 내 애플리케이션 사이의 통신을 제공하는 프로세스이다. EAI가 애플리케이션을 통합하고 서로 통신을 보장하면 비즈니스를 새롭고 혁신적인 방식으로 운영할 수 있다. 쉽게 말해, 기업 내의 다양한 애플리케이션들이 서로 상호 작용하기 쉽게 도와주는 솔루션이 EAI라고 생각하면 된다. EAI의 등장 배경 전통적인 비즈니스 환경에서 애플리케이션들은 별도의 비즈니스 단위 혹은 기능 내에서 서로 독립적으로 동작하고 사용하는 데이터를 잘 공유하지 않았다. 따라서 이러한 방식은 비즈니스 간의 상호연동이 쉽지 않고 많은 시간이 걸리며 ..
객체 지향 프로그래밍, 함수형 프로그래밍이란? 프로그래밍 패러다임은 크게 두 가지 종류로 나눠볼 수 있다. 명령형(Imperative) 프로그래밍과 선언형(Declative) 프로그래밍. 객체 지향 프로그래밍(OOP)은 명령형 프로그래밍, 함수형 프로그래밍은 선언형 프로그래밍에 속한다. 객체 지향 프로그래밍은 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 프로그래밍 패러다임 중 하나이다. 함수형 프로그래밍은 자료 처리를 수학적 함수의 계산으로 취급하고 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임의 하나이다. 특히, 함수형 프로그래밍은 최근 들어 각광 받는 프로그래밍 패러다임이라고 할 수 있다. 개발 속도를 높여 생산성을 높이고, ..
프로그래밍 패러다임 프로그래밍 패러다임(Programming Paradigm)은 프로그래머에게 프로그래밍의 관점을 갖게 하고, 결정하는 역할을 한다. 이러한 프로그래밍 패러다임은 다음과 같이 크게 두 가지로 나눌 수 있다. 명령형 프로그래밍 : 프로그래밍의 상태와 그것을 변경시키는 구문의 관점에서의 연산을 설명 절차적 프로그래밍 : 프로시저(Procedure)를 이용해 순차적인 처리를 중요시 여기는 패러다임 객체 지향 프로그래밍 : 객체들의 집합으로 프로그램의 상호작용을 표현 선언형 프로그래밍 : 어떻게(How) 할 것인가 보다는 무엇(What)을 할 것인가를 표현 함수형 프로그래밍 : 순수 함수(Pure Function)를 조합하고 프로그램을 만드는 방식 함수형 프로그래밍은 초창기부터 소프트웨어 개발의..
명령형(Imperative) 프로그래밍 명령형 프로그래밍이란 프로그램의 상태와 상태를 변경시키는 구문의 관점에서 연산을 설명하는 프로그래밍 패러다임의 일종이다. 쉽게 설명하자면, 컴퓨터가 수행할 명령들을 순서대로 써 놓은 것이라고 볼 수 있다. 이러한 명령형 프로그래밍은 "how to solve it", 즉 어떻게 그것을 해결할 것인가에 관심이 있다. 거의 대부분의 컴퓨터 하드웨어는 명령형으로 구현된다. 거의 모든 컴퓨터 하드웨어들은 기계어를 실행하도록 설계되어 있는데, 보통 이것이 명령형으로 써져 있다. 포트란, ALGOL, C언어 등이 명령형 프로그래밍 언어의 일종이다. 선언형(Declarative) 프로그래밍 선언형 프로그래밍은 보통 두 가지 뜻으로 통용된다. 첫 번째는 프로그램이 무엇을 해야 할지..