본문 바로가기

컴퓨터일반/프로그래밍

(40)
[React] 4일차: 배열 메서드(map, filter)로 동적 리스트 렌더링하기 리액트 개발에서 가장 많이 하는 작업 중 하나는 서버에서 가져온 데이터(배열)를 화면에 리스트 형태로 보여주는 것입니다.오늘은 자바스크립트의 배열 메서드인 map()과 filter()를 리액트에서 어떻게 활용하는지 정리해 보겠습니다.1. map() 메서드로 리스트 렌더링하기map()은 배열의 각 요소를 돌면서 새로운 형태(JSX)로 변환해 주는 역할을 합니다. 리액트에서는 반복되는 UI를 만들 때 필수적으로 사용됩니다.기본 사용법:JavaScript const users = ["Ryon", "Alice", "Bob"];function UserList() { return ( {users.map((user, index) => ( {user} ))} );}2. ..
[MyBatis] 대용량 데이터 처리: ExecutorType.REUSE vs BATCH MyBatis를 사용하면서 수만 건 이상의 데이터를 처리할 때 성능 저하를 겪어본 적 있으습니다.단순한 반복문(Loop)으로 insert나 update를 호출하면 매번 데이터베이스와 통신(Network Round-trip)이 발생하여 속도가 급격히 떨어집니다.이때 MyBatis의 ExecutorType 설정을 변경하는 것만으로도 상당한 성능 개선을 이룰 수 있습니다. 1. ExecutorType.REUSE: Statement 재사용REUSE 모드는 이름 그대로 PreparedStatement를 재사용하는 방식입니다.동작 원리: 동일한 SQL 문을 실행할 때, 매번 새로운 Statement 객체를 생성하지 않고 이전에 생성된 객체를 캐싱하여 다시 사용합니다.장점: SQL 파싱 비용과 Statement 생성..
[React] 3일차: 컴포넌트의 심장, Props와 State 완벽 이해 리액트 공부 3일차입니다!오늘은 리액트 컴포넌트가 데이터를 다루는 두 가지 핵심 방식인 Props와 State에 대해 이야기 합니다.이 두 개념만 제대로 이해해도 리액트의 절반은 이해했다고 할 수 있습니다.1. Props (Properties)Props는 부모 컴포넌트가 자식 컴포넌트에게 전달하는 '읽기 전용' 데이터입니다. 마치 함수의 매개변수(Parameter)와 비슷합니다.특징: 자식 컴포넌트 입장에서는 전달받은 Props를 직접 수정할 수 없습니다. (불변성)용도: 컴포넌트의 재사용성을 높이기 위해 외부에서 데이터를 주입할 때 사용합니다.JavaScript // 자식 컴포넌트function Greeting(props) { return 안녕하세요, {props.name}님!;}// 부모 컴포넌트에..
[React] 2일차: 리액트 개발을 위한 필수 자바스크립트(ES6+) 정리 리액트는 자바스크립트의 최신 문법(ES6 이상)을 적극적으로 활용합니다.리액트 컴포넌트를 더 깔끔하고 효율적으로 작성하기 위해 반드시 알아야 할 세 가지 핵심 문법을 정리해 보겠습니다.1. 화살표 함수 (Arrow Function)리액트 컴포넌트를 정의하거나 이벤트 핸들러를 만들 때 기본적으로 사용되는 방식입니다. function 키워드 대신 =>를 사용하여 간결하게 표현할 수 있습니다.기본 문법:JavaScript // 일반 함수function add(a, b) { return a + b; }// 화살표 함수const add = (a, b) => a + b;특징: 한 줄로 작성할 경우 return과 { }를 생략할 수 있어 코드가 매우 짧아집니다. 리액트에서는 특히 함수형 컴포넌트를 선언할 때 표준처럼..
[React] 1일차: 리액트와 첫 만남 – 핵심 개념과 JSX 완벽 정리 리액트(React) 공부를 시작하며 배운 핵심 내용을 정리해 봅니다.리액트는 현재 프론트엔드 개발에서 가장 인기 있는 라이브러리 중 하나로, 사용자 인터페이스(UI)를 구축하기 위해 사용됩니다.1. 리액트(React)란 무엇인가?리액트는 페이스북(현 Meta)에서 개발한 UI 라이브러리입니다. 단순히 화면을 그리는 것을 넘어, 복잡한 웹 애플리케이션의 상태를 효율적으로 관리하고 화면을 빠르게 업데이트하는 데 최적화되어 있습니다.컴포넌트(Component) 기반: UI를 독립적인 단위인 '컴포넌트'로 쪼개서 관리합니다. 마치 레고 블록을 조립하듯 화면을 구성할 수 있어 재사용성이 높습니다.Virtual DOM (가상 DOM): 실제 DOM을 직접 수정하는 대신, 메모리에 가상의 DOM을 두고 변경 사항만 ..
엑셀 VBA 암호화 해제 코드 엑셀을 사용하다 보면 과거에 설정해둔 VBA(Visual Basic for Applications) 프로젝트 비밀번호를 잊어버려 곤란한 경우가 종종 있습니다.외부 프로그램 설치 없이, 오직 VBA 코드만으로 VBA 프로젝트 암호 잠금을 무력화하는 방법에 대해 알아보겠습니다. 해당 코드는 이전에 어디선가 검색해서 알아낸 코드인데, 정확하게 출처를 찾지 못했습니다.개인 정리 차원에서 포스팅하니, 혹시 원본 코드 작성자 분이나, 해당 코드가 문제가 될 경우 댓글 주시면 조치하도록 하겠습니다. 작동 원리: 메모리 후킹(Memory Hooking)이 코드는 단순히 암호를 찾아내는 방식이 아닙니다.엑셀이 암호 입력창을 띄우려고 할 때, 윈도우 API를 사용하여 "암호가 맞다"는 신호를 강제로 보내도록 메모리를 일..
Java 컴파일시 deprecated API 오류 발생 "uses or overrides a deprecated API." 저딴 오류가 발생한다면.. 자바 버전이 올라가면서 특정 명령어가 안돌아 간다는 것을 의미한다. 나 같은 경우는.. String encodeStr = URLEncoder.encode("특수&문자"); 이 부분이 문제가 되었다. String encodeStr = URLEncoder.encode("특수&문자","UTF-8"); 이렇게 변경해서 해결 완료...
[VB] 파일 암호화 파일을 암호화 시키는 가장 기본적인 방법입니다 블럭단위로 입출력을 하기 위해서 이진모드로 처리를 하겠습니다 암호화 / 복호화 되는 전체구조를 파악하기 위해서 제작되었으니 암호화 관련 학습이 아니더라도 아래의 내용을 학습하는데 도움이 되리라 판단됩니다 1. Const 선언과 활용법 2. Type문 및 레코드 처리 3. For~Next문 4. Binary I/O 및 Get,Put 5. Drive,Dir,File 컨트롤 활용 1. 초기화면을 살펴보겠습니다 2. 암호화를 한 화면입니다 처리할 폴더로 이동한 다음 파일을 선택하고 를 누릅니다 그러면 아래와 같이 처리가 완료되었다는 메세지가 나옵니다 3. 원본 파일과 암호화된 파일의 내용을 보겠습니다 4. 소스 코드를 살펴보겠습니다 변수의 선언을 요구합니다 Opti..