형상관리 도구 종류 그 중 SVN이란? 형상관리 도구(Version Control System 또는 Source Code Management)는 소프트웨어 개발 프로젝트에서 코드와 리소스의 변경 내역을 관리하고 추적하는 데 사용되는 소프트웨어 도구이다. 다양한 형상관리 도구가 존재하며, 형상관리 도구는 대규모 프로젝트에서는 필수이다. 형상관리, 협업, 소스코드 공유 등등 가독성 있게 관리하기 쉽게 만들어주는 도구이며 회복 및 백업도 용이하게 할 수 있다. 형상관리 도구에 대해 설명을 하자면, 형상관리 도구 종류 Git Git은 분산형 버전 관리 시스템으로, 가장 널리 사용되고 인기 있는 형상관리 도구 중 하나 소스 코드 변경 내역을 추적하고, 여러 개발자가 협업할 때 코드 충돌을 관리 브랜치를 통한 기능..
레드마인이란? 레드마인(Redmine)은 오픈 소스 프로젝트 관리 및 이슈 추적 시스템입니다. 소프트웨어 개발 프로젝트나 다른 협업 작업을 관리하는 데 사용됩니다. 레드마인은 Ruby on Rails로 작성되었으며, 웹 기반 인터페이스를 통해 사용자들이 프로젝트를 추적하고 관리할 수 있도록 합니다. 레드마인 주요 기능 이슈 추적: 프로젝트의 이슈(버그, 기능 요청, 작업 등)를 생성하고 추적할 수 있습니다. 이슈에는 우선순위, 상태, 담당자, 기한 등의 정보를 포함시킬 수 있습니다. 레드마인은 이슈들을 팀 내에서 협업하고 해결하는 데 도움을 줍니다. 프로젝트 관리: 프로젝트를 생성하고 관리할 수 있습니다. 프로젝트에는 이슈, 일정, 파일, 문서 등을 관리할 수 있으며, 프로젝트 참여자 간의 소통과 협업을..
롬복이란? 롬복(Lombok)은 자바 개발을 보다 편리하게 만들어주는 라이브러리이다. 롬복은 반복적이고 상투적인 코드를 줄여주고, 더 간결하고 가독성이 좋은 코드를 작성할 수 있도록 도와주는 역할을 한다. 롬복에서 사용되는 어노테이션은 수고를 덜어주는 기능이 있다. 예를 들어, 일반적인 자바클래스에서는 getter/setter을 작성하여 값을 설정해줬다면 롬복을 사용하면 그런 수고를 할 필요가 없다는 것이다. 롬복의 장점 코드 간소화: 롬복은 자동으로 일반적인 코드를 생성해주는 기능을 제공한다. @Getter, @Setter, @ToString, @EqualsAndHashCode와 같은 롬복의 애노테이션을 사용하면, 해당 필드나 메서드를 자동으로 생성할 수 있다. 이로써 개발자는 일일이 게터(Getter..
코드 리팩토링 리팩토링은 소프트웨어 개발 과정에서 코드를 재구성하고 개선하는 과정이다. 리팩토링의 목적은 코드의 가독성, 유지보수성, 재사용성, 성능 등을 향상시키는 것이며, 리팩토링은 기능을 변경하지 않으면서 코드의 내부 구조를 변경하여 코드의 품질을 개선하는 작업이라고 할 수 있다. 리팩토링을 하는 이유코드 품질 향상: 리팩토링은 코드의 가독성과 유지보수성을 개선하여 버그를 줄이고 코드를 이해하기 쉽게 만듦. 코드의 품질을 향상시키고 오류 발생 가능성을 낮추는 데 도움이 된다.유지보수 용이성: 리팩토링은 코드를 구조화하여 모듈화하고 응집성을 높이는 등의 작업을 수행한다. 코드의 변경이 필요한 경우 해당 부분만 수정할 수 있으며, 다른 부분에 영향을 주지 않는 장점이 있다.재사용성 향상: 리팩토링은 ..
들어가기 전 Spring과 Spring Boot는 모두 Java 기반의 웹 애플리케이션 개발을 위한 프레임워크입니다. Spring 관련 책을 보시면 순수 Spring을 시작하기 위해 환경설정하는 것만 100P가 넘을 정도입니다. 간단하게 설명을 하자면 아래와 같이 말할 수 있습니다. Spring : 자바기반 프레임워크 Spring Boot : Spring을 빠르고 쉽게 설치하게 도와주는 도구 Spring Spring은 JAVA 기반의 오픈 소스 애플리케이션 프레임워크로서, 엔터프라이즈 애플리케이션 개발을 위한 포괄적인 솔루션을 제공하는 프레임워크입니다. Spring은 애플리케이션의 기반 인프라스트럭처를 제공하고, 개발자가 비즈니스 로직에 집중할 수 있도록 여러 가지 기능을 제공합니다. Spring은 엔터..
SQL 인젝션에 대하여 SQL 삽입공격이라고 하는 SQL 인젝션(SQL Injection)은 웹 애플리케이션에서 발생하는 보안 취약점 중 하나로, 악의적인 사용자가 애플리케이션의 입력 폼 등을 통해 악의적인 SQL 문을 삽입하는 공격 기법입니다. 이를 통해 공격자는 데이터베이스에 대한 액세스 권한을 얻거나, 데이터베이스의 데이터를 조작하거나 삭제하는 등의 악의적인 행위를 할 수 있습니다. SQL 인젝션 취약점 데이터베이스 정보 노출: 인젝션 공격을 통해 악의적인 사용자는 데이터베이스의 정보를 노출시킬 수 있습니다. 예를 들어, SQL 인젝션을 이용하여 데이터베이스의 테이블 이름, 칼럼 이름, 데이터 등을 조회할 수 있습니다. 데이터베이스 데이터 조작: 악의적인 사용자는 인젝션을 통해 데이터베이스의 데이터..
자바스크립트 변수 선언 var와 let의 차이점 let과 var는 모두 자바스크립트에서 변수를 선언할 때 사용되는 키워드입니다. let과 var의 차이점 let으로 선언한 변수는 블록 스코프(block scope)를 가지고, var로 선언한 변수는 함수 스코프(function scope)를 가집니다. 따라서, let으로 선언한 변수는 해당 블록 내에서만 유효하고, var로 선언한 변수는 함수 내에서 유효합니다. let으로 선언한 변수는 동일한 이름의 변수를 다시 선언할 수 없지만, var로 선언한 변수는 가능합니다. let으로 선언한 변수는 선언하기 전에는 사용할 수 없지만, var로 선언한 변수는 선언하기 전에도 사용할 수 있습니다. let과 var의 공통점 변수를 선언할 때 사용되는 키워드입니다. 변..
프로그래밍 언어에서 사용되는 동등 연산자 "= =" 우리가 흔히 아는 비교연산자 "=="(동등 연산자)는 두 피연산자가 값이 같은지를 비교하여 true나 false를 반환하게 됩니다. 그러면 "==="는 어떨 때 쓰일까요? ==와 ===는 프로그래밍에서 사용되는 비교 연산자입니다. 일반적으로 이러한 연산자는 두 개의 값이 동일한지를 확인하는 데 사용됩니다. 그러나 사용되는 프로그래밍 언어에 따라 이 연산자들의 동작 방식이 다를 수 있습니다. "=="는 동등 비교 연산자로, 비교하려는 두 값이 서로 동등한지를 확인합니다. 이 연산자는 값을 비교할 때 데이터 형식이 다른 경우에도 암묵적 형변환을 수행하여 값이 동일한지를 확인합니다. 예를 들어, JavaScript에서 1과 "1"을 비교하면 "=="는 두 값..