반응형

분류 전체보기 35

Git 브랜치 전략: 공통 기능을 A, B 브랜치에 동시에 반영하는 방법 _ git cherry-pick 사용해보기

[Git 브랜치 전략: 공통 기능을 A, B 브랜치에 동시에 반영하는 방법] 버전이 다른 A 브랜치와 B 브랜치가 있다. 나는 C라는 변경사항을 A 브랜치와 B 브랜치에 공통적으로 반영해야 하는 상황이었다.두 개의 버전을 유지하면서도 신규 기능(C)을 어떻게 안정적으로 적용할 수 있을지 고민하게 되었다. 상황 정리A 브랜치: 안정된 운영 버전 (게시판 기능 없음)B 브랜치: 개발 버전 (게시판 기능 있음)C: 두 버전에 모두 들어가야 하는 신규 공통 기능 방법 1️⃣ A에서 작업 브랜치(C)를 생성하여 양쪽에 머지하기첫번째 방법으로는 A 브랜치에서 C 브랜치를 생성 후 작업 후A 브랜치에서 C 브랜치로 머지 하고 B브랜치에서 C 브랜치를 머지하는 방법이 있다. 첫번째 방법의 경우는 C브랜치에서 작업 ..

기술 공부/Git 2025.04.21

[정보처리기사] 디자인 패턴

범주핵심 의미대표 역할생성(Creational)객체를 어떻게 만들지에 초점인스턴스 생성 방식 제어구조(Structural)객체나 클래스를 어떻게 구성할지관계 설계/확장성행동(Behavioral)객체들 간의 행동과 책임 분배통신 방식 정의 1. 생성(Creational) 패턴패턴설명키워드Abstract Factory관련된 객체들을 팩토리(공장) 묶음으로 생성서로 호환되는 객체군 생성Factory Method객체 생성의 인터페이스는 정의, 구현은 서브 클래스에서생성 책임 분리Builder복잡한 객체를 단계적으로 생성조립 공정Singleton하나의 인스턴스만 생성되고 공유됨전역 인스턴스Prototype기존 객체를 복제(clone) 해서 새 객체 생성복사로 생성암기 팁: 싱-팩-빌-프-앱 (싱글톤, 팩토리, 빌..

[정보처리기사 실기] 악성코드 종류 개념 정리

Worm (웜)설명: 스스로 복제하면서 네트워크를 통해 퍼지는 악성코드특징: 감염된 컴퓨터끼리 알아서 옮김 (USB 안 써도 퍼짐)📌 요약: 스스로 퍼지는 전염병!   Trojan horse (트로이 목마)설명: 겉은 멀쩡한 파일처럼 보이지만, 몰래 악성코드가 들어있음특징: 사용자가 스스로 설치하게 유도📌 요약: 겉은 정상, 속은 악성! (사기꾼 앱)   Backdoor (백도어)설명: 시스템 몰래 들어오는 비밀문을 만들어, 해커가 나중에 쉽게 침입할 수 있도록 함특징: 보안 우회해서 무단 접근 가능📌 요약: 몰래 드나드는 뒷문!   Virus (바이러스)설명: 다른 파일에 붙어서 활동하는 악성코드. 실행해야 감염됨특징: 사람이 실행시켜야 퍼짐📌 요약: 붙어서 감염되는 전통 악성코드!   Rans..

[정보처리기사 실기] 소프트웨어 테스트 커버리지 기준 정리

구문 커버리지 (Statement Coverage)정의: 모든 코드 문장(구문)이 한 번 이상 실행되었는지를 확인.목표: 코드 내 존재하는 모든 문장을 적어도 한 번 실행하는지 테스트.포인트: 문장이 실행되었는가?🧩 예: if, for, return 등 문장 단위로 실행 여부 확인.   결정 커버리지 (Decision Coverage)정의: 조건문의 결과(True/False)가 각각 한 번 이상 발생했는지 확인.목표: 분기점(if/while 등)에서 True/False 모두 테스트포인트: 결정(분기 결과)가 두 방향으로 모두 실행되는가?🧩 예: if (x > 5) → True일 때도, False일 때도 테스트해야 함.   조건 커버리지 (Condition Coverage)정의: 조건식의 각 조건이 T..

카테고리 없음 2025.04.04

[C] window _ Visual Studio Code에서 C언어 컴파일 하기 _ 개발 환경 세팅

컴파일러 설치 (MinGW)MinGW 에 접속해 최신 버전을 다운로드한다.   설치 선택 절차는 아래와 같다.mingw-developer-toolkit → mingw32-base → ming32-gcc-g++→ msys-base 선택 클릭 → Mark for Installation          시스템 환경변수 세팅    내가 설치한 MinGW 설치경로 입력기본값 : C:\MinGW\bin     컴파일러 설치 확인프롬프트 접속  g++ --versiongdb --version해당 명령어를 입력  위의 사진과 같게 뜬다면 정상설치 완료   VScode에서 컴파일 하는 법.c의 확장자로 test 파일 생성test.c 라는 파일을 만들었다. #include void main(){ char str[][..

기술 공부/C 2025.04.02

[React] 에러 해결하기 _ Cannot destructure property 'language' of '(0 , useLanguage(...))' as it is undefined.

error 메세지Cannot destructure property 'language' of '(0 , useLanguage(...))' as it is undefined.  오류 발생 지점 분석 // src/components/ui/languageSelector/LanguageSelector.jsimport React from "react";import { Globe } from "lucide-react";import { useLanguage } from "../../../contexts/LanguageContext";import "../../../styles/components/languageSelector/_LanguageSelector.scss";const languages = [ { code: ..

[React] 에러 해결하기 _ Module Error (from ./node_modules/sass-loader/dist/cjs.js)

에러 메세지 ERROR in ./src/App.js 16:0-30Module not found: Error: Can't resolve './styles/globals.css' in 'C:\workspace\solfany-playground\src'ERROR in ./src/styles/globals.scss (./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[7].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[7].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[1].oneOf[..

[DB] Trigger 만들기 _ Dbeaver

트리거 대상이 되는 테이블 더블 클릭  tirgger 탭선택 → 배경 마우스 클릭create new trigger 클릭  트리거 이름 작성  source 안에 트리거 코드 작성   저장해주기   Tirgger 목록 조회하기SHOW TRIGGERS FROM loite_dev;   Tirgger 삭제하기DROP TRIGGER IF EXISTS trg_after_insert_user;   생성된 Tirgger 확인  트리거 작동 확인해보기test2 사용자를 신규 생성하고 저장   트리거를 적용 시켜둔 테이블에도 정상 생성된 것을 확인할 수 있다.

[DB] 트리거(Trigger)란?

✅ 트리거(Trigger)란?트리거(Trigger)는 데이터베이스에서 특정 이벤트(INSERT, UPDATE, DELETE 등)가 발생했을 때 자동으로 실행되는 프로시저이다.예를 들어:새로운 주문이 들어올 때마다 재고를 자동으로 감소시키기회원가입 시 가입일자를 자동으로 기록하기데이터 삭제 시 백업 테이블에 자동으로 복사하기트리거는 데이터의 무결성을 유지하고, 자동화된 작업을 수행하며, 업무 규칙을 강제하는 데 유용합니다.트리거의 주요 특징자동 실행: 지정된 이벤트 발생 시 자동으로 실행됨롤백 가능: 트리거 실행 중 오류 발생 시 변경사항을 취소할 수 있음연쇄 작업: 하나의 이벤트가 여러 테이블에 영향을 미칠 수 있음✅ 트리거를 사용하는 이유데이터 무결성 보장: 관련된 테이블 간 동기화 자동 처리중복 코드..

반응형