본문 바로가기

반응형

Programming

(163)
함수 호출 시 괄호 사용 ......submitForm(event) { event.preventDefault(); alert('Submitted');} 위 코드에서 괄호를 사용하지 않고 함수 호출 시 event.preventDefault() 설정에 따라 페이지 새로고침(form 태그의 submit에 대한 기본 동작)을 하지 않는다. 반면 괄호를 사용하여 함수 호출 시 페이지를 새로고침한다. 함수를 괄호 없이 호출하면 함수에 대한 참조를 전달한다. Vue가 컴포넌트 템플릿을 해석할 때 메소드 이름이 괄호 없이 사용된 것을 확인하고, 이벤트 발생시 해당 메소드를 참조하도록 설정한다. Vue는 자동으로 이벤트 객체를 해당 이벤트 핸들러 메소드에 전달한다. 이 과정을 통해 메소드는 이벤트에 대한 모든 정보를 알 수 있고, 이벤트의 ..
Javascript 이벤트 핸들링 웹페이지 내에서 클라이언트의 상호작용을 감지하기 위해 이벤트 핸들러 함수를 사용한다.이벤트 핸들러 함수는 특정 이벤트가 발생했을 때 실행되며, 이 함수는 이벤트에 대한 정보를 포함하는 이벤트 객체를 매개변수로 받을 수 있다. Vue.js에서는 v-on 디렉티브(또는 @로 축약하여 사용)를 사용하여 DOM 이벤트를 감지하고 메소드를 호출한다. 이벤트 객체는 Vue에서 자동으로 함수로 전달되지만, 때로는 이 이벤트 객체를 직접 다루거나 추가 인자를 전달할 필요가 있다. setName(event, lastName) { this.name = event.target.value + ' ' + lastName;} 위 코드에서 input 태그의 v-on:input 디렉티브는 입력 필드에 텍스트 입력이 있을 때마다 s..
[Data Structure] 재귀함수를 활용한 피보나치 수열 구현 2024년 4월 7일(일) 오늘은 재귀함수를 활용한 피보나치 수열 구현에 대한 학습을 진행했다. 재귀함수 개념이 참 머릿속에 그려지는 듯 하면서도 이내 뭉그러진다. 재귀함수를 공부하면서 Visualization 도구의 도움을 많이 받았다. 나의 코드가 메모리에 어떻게 올라가고 동작하는지 시각화하여 보여주기 때문에 이해가 한결 수월했다. https://pythontutor.com/ Online Python Tutor - visualize, debug, get AI help for Python, Java, C, C++, and JavaScript Online Compiler, Visual Debugger, and AI Tutor for Python, Java, C, C++, and JavaScript Pyt..
홍정모 교수님 C++ 강의 후기 https://www.youtube.com/watch?v=UqCZda8DLGc 강의 시간은 3시간 남짓이다. 나의 경우 강의 시간의 2배에 가까운 시간이 흐른 후에 강의를 끝낼 수 있었다. 강의는 실습 위주이며 절대 강사가 먼저 답을 알려주지 않고 문제에 대한 답을 생각할 시간을 준다. 그래서 모르는 개념을 검색하고, 문제 풀이에 대한 디버깅에 시간이 많이 소요되었다. 만족스러운 강의였다. 이제껏 프로그래밍 관련 강의를 적지 않게 수강했는데, 강사와 강의의 질도 중요하지만 공부의 질이 절대적으로 중요하다는 사실을 이번 강의를 통해 알 수 있었다. 작은 문제라도 허투루 넘기지 않고 스스로 답을 찾기 위해 노력했다. 답답한 마음에 앞으로 감기를 눌러 강사가 제시한 답을 보고 다시 풀어보기도 했지만, 나름대..
[Network] Proxy Server(프록시 서버) 프록시 서버 기본 개념 프록시 서버란 통신의 주체(사용자의 PC 또는 웹서버) 사이에서 중개인 역할을 하는 하드웨어 또는 소프트웨어 형태의 서버를 말한다. 프록시 서버를 사용하는 이유 사용자가 익명으로 통신할 수 있다. 프록시 서버는 자신의 IP 주소를 따로 가지고 있다. 사용자의 요청을 외부에 최종 전달하는 것은 프록시 서버이기 때문에 외부에서는 사용자의 PC 또는 서버의 실제 IP가 아닌 프록시 서버의 IP가 노출된다. 캐싱을 통한 효율적인 리소스 관리 가능. 프록시 서버는 사용자의 요청을 캐시 형태로 저장한다. 동일한 요청이 다시 들어오면 최초에 했던 것처럼 요청을 처리하지 않고(목적지 서버에 사용자 요청을 전달하고, 응답을 받는 것) 프록시 서버에 있는 캐시를 사용자에게 반환하는 방식으로 요청을 ..
[Network] 서브넷 마스크 32비트의 IP 주소는 두 부분으로 구분된다. 호스트(컴퓨터 또는 프린터나 라우터와 같은 기타 장치)를 식별하는 부분 호스트가 속한 네트워크를 식별하는 부분 그리고 서브넷 마스크의 역할은 IP 주소 어디까지가 네트워크 부분인지 명시하는 것이다. 서브넷 마스크의 특징 서브넷 마스크는 IP 주소처럼 32비트이고, 0과 1이 32개 나열된 형태를 가진다. 1은 네트워크 주소를 나타내며, 0은 호스트의 주소를 나타낸다. 서브넷 마스크는 반드시 연속한 1과 연속한 0의 형태를 가진다. 1과 0이 혼합된 형태는 존재하지 않는다. ex. 11110000(O), 101010(X) IP 주소와 마찬가지로 비트를 나열하면 구분하기 어려우므로 8비트씩 10진수로 변환하여 '.' 으로 구분하여 표시한다. 서브넷 마스크 표시 ..
iptables 설정 방법 리눅스 환경에서 방화벽 설정을 한다는 것은 '어떤 패킷의 출입을 허가/거부 하거나 패킷에 대한 처리를 구체적으로 명시하는 것' 이라고 할 수 있다. 구체적인 패킷 처리는 처리 내용의 집합인 '정책(policy)'의 정의에 따라 결정된다. RHEL, CentOS, Fedora 등의 다양한 리눅스 배포 버전에서는 Firewalld를 기본(default) 방화벽 툴로 제공한다. Firewald는 zone-based(동일한 zone에 포함된 인터페이스 사이에서만 통신할 수 있도록 하는 것) 개념을 기반으로 동작하기 때문에 해당 기능을 제공하지 않는 iptables보다 좀 더 세부적인 통신 설정을 할 수 있다. 따라서 개인의 상황에 맞추어 Firewalld 또는 iptables를 사용하면 된다고 한다. iptab..
아파치 웹서버(httpd)의 시작 페이지 설정 리눅스 환경에서 Apache 웹서버(httpd)의 root 디렉토리를 지정하려면(서버 구동 시 참조하는 디렉토리) /etc/httpd/conf/ 경로의 httpd.conf 파일에서 DocumentRoot 부분을 수정하면 된다. root 경로에서 '어떤' 파일을 참조해야 하는지 지정하려면 어떻게 할까? 마찬가지로 httpd.conf 파일에서 DirectoryIndex 부분을 수정하면 된다. DirectoryIndex는 클라이언트가 디렉토리를 요청할 때 어떤 리소스를 불러올지 참조하는 하나 또는 그 이상의 파일 이름 리스트이다. 일반적으로 파일 이름으로 명시한다. 기본 설정은 아래와 같이 index.html 파일을 참조하도록 설정되어 있다. DirectoryIndex index.html 만약 사용하고 싶지 ..

반응형