반응형
- VSCode 프로젝트 전체를 한 번에 출력하기 1. Extensions > Print 설치 2. 터미널에서 repomix 실행 node.js가 없는 경우 설치해 줍니다. https://nodejs.org/ko/download/npx repomix 3. repomix-output.xml 파일을 출력 전체 디렉터리 구조와 프로젝트 내의 모든 파일의 내용이 하나의 repomix-output.xml 파일에 저장됩니다.1번에서 설치한 Print 등의 확장 프로그램을 이용하여 출력하거나 PDF로 저장할 수 있습니다. 2026.06.19
- 객체와 자료구조 자료구조 자료구조는 데이터만을 공개하고, 동작은 별도의 클래스에서 수행하게 됩니다.따라서 동작을 추가하기가 쉽습니다.Square, Circle의 자료구조를 구현하고 Geometry에 너비를 반환하는 메서드 area() 를 작성한 상태에서기존의 Square나 Circle를 건드리지 않고도 둘레를 구하는 perimeter() 메서드를 추가할 수 있습니다.// 1. 순수하게 데이터만 가진 '자료구조'public class Square { public double side; // 데이터 노출}public class Circle { public double radius; // 데이터 노출}// 2. 동작(로직)을 전담하는 클래스public class Geometry { public double a.. 2026.03.24
- AWS Solutions Architect Associate 합격 후기 시험 소개 AWS Solutions Architect Associate, 줄여서 SAA-C03 이라고 하는 이 자격증은 AWS에 있는 기본적인 서비스들에 대해 이해하고 활용할 수 있는 사람에게 부여됩니다.시험은 객관식으로 이루어지며 총 130분 동안 65문제를 풀어야 합니다.집에서 원격 감독 하에 응시할 수도 있고 근처에 시험 센터가 있다면 오프라인 응시도 가능합니다.언어는 영어 또는 한국어로 선택할 수 있고 비영어권 국가에서 영어를 선택할 경우 30분이 추가로 주어집니다.(단, 시험 접수 전에 미리 신청을 해야합니다!)영어에 익숙하더라도 모국어에 비해 느릴 수 있어서 한국어를 선택하는 게 조금 더 안전해 보입니다.정 이해가 안 되면 영어 원문을 볼 수도 있습니다. 다행히 번역이 나쁘지 않아서 원문을 봤.. 2025.12.29
- 리눅스에서 공격을 탐지하고 차단하는 방법 (fail2ban, modsecurity, iptable) ModSecurity는 오픈 소스 웹 애플리케이션 방화벽(WAF)으로서, 들어오는 HTTP 요청을 분석하여 악의적인 공격 패턴(예: SQL 인젝션, XSS)을 탐지하고 해당 요청을 거부(Deny)하는 역할을 합니다지속적, 반복적인 공격 시도를 하는 사람을 IP로 차단하기 위해서는 ModSecurity가 남긴 로그를 감시하면서 공격자를 감지, 차단하는 fail2ban이 추가적으로 필요합니다.또, fail2ban 자체적으로 차단 기능을 가지고 있지는 않기 때문에 iptable이나 firewalld 같은 방화벽 프로그램이 활성화 상태여야 합니다. ModSecurity 설치 및 사용 방법 (이하의 내용은 CentOS 7 환경을 기준으로 합니다.) 우선 mod_security와 mod_security_crs을 설.. 2025.09.19
- [Leetcode] Longest substring without repeating characters 1. 개요 주어진 문자열에서 가장 긴 부분 문자열(연속된 문자로 이루어진 부분)의 길이를 반환합니다.부분 문자열은 중복되는 알파벳을 가지고 있지 않아야 합니다.예) abcdabefgabcda는 a를 2개 포함하므로 탈락입니다.cdabefg에는 중복되는 문자가 없고 가장 깁니다.따라서 정답은 7입니다. 2. 나의 풀이 가장 간단한 방법은 모든 부분 문자열을 구한 다음, 각 문자가 중복되지 않고 가장 긴 것을 찾는 것입니다.저는 전체 문자열에서 시작 문자 char를 선택한 다음,char로 시작하는 부분 문자열을 모두 구하는 방식으로 풀었습니다.class Solution: def lengthOfLongestSubstring(self, s: str) -> int: answer = 0 .. 2025.09.18
- [Leetcode] add two numbers 1. 개요 링크드 리스트 형태의 두 숫자를 더한 결과를 링크드 리스트로 반환합니다.예)L1: 3 -> 2 -> 1 (123)L2: 6 -> 5 -> 4 (456)123 + 456 = 579 이므로정답: 9 -> 7 -> 5 2. 나의 풀이 class Solution: # 클래스 안에 정의한 함수는 인스턴스 메서드로 취급되므로, 첫 번째 인자가 self여야 한다. def getNum(self, node: Optional[ListNode]): if node is None: return 0 num = node.val next = node.next i = 1 while next: num += (10 ** .. 2025.09.17
반응형