반응형

분류 전체보기 97

자바스크립트는 왜 어려울까? 호이스팅, 클로저, this, 프로토타입 쉽게 이해하기

자바스크립트 기초 정리 - 변수, 호이스팅, 클로저, 객체, 배열, 함수, 프로토타입변수, 호이스팅(Hoisting), 클로저(Closure)자바스크립트는 동적(Dynamic) 언어이기 때문에 변수의 타입을 미리 선언할 필요가 없다. 데이터 타입은 프로그램이 실행되는 과정에서 자동으로 결정되며, 변수의 타입을 확인하려면 typeof 연산자를 사용한다.var puppy = "cute";ES6 이전에는 변수를 선언할 때 var를 사용했다.const puppy = "cute";let dog = "lovely";하지만 ES6 이후에는 var 대신 const와 let 사용을 권장한다. 이는 var가 가진 변수 호이스팅(Hoisting) 과 Function-Level Scope 로 인해 발생할 수 있는 문제를 방지..

Backend/Node.js 2026.06.06

Node.js란 무엇일까? 싱글 스레드인데 빠른 이유와 동작 원리 알아보기 (이벤트 루프, 비동기 처리, 설치 방법)

Node.js란 무엇인가?Node.js는 서버나 프레임워크라고 착각하는 경우가 많은데, 공식 홈페이지에서 볼 수 있듯이 Node.js는 자바스크립트 런타임(JavaScript Runtime) 이다.런타임(Runtime)이란 간단하게 말해 실행 환경, 실행기라고 생각하면 된다. 즉, 자바스크립트로 작성된 코드를 실행해 주는 환경이라는 뜻이다.Node.js는 웹 브라우저 밖에서 우리가 작성한 자바스크립트 서버 코드를 실행해 주는 환경이다. 런타임이란 프로그램이 구동되고 있는 환경을 의미하는데, 원래 자바스크립트를 실행하는 엔진은 브라우저 내부에 존재한다. 그래서 브라우저 안에서만 자바스크립트 코드를 실행할 수 있었다.Node.js는 브라우저에서 실행할 수 있는 자바스크립트 코드를 우리의 컴퓨터에서도 실행할 ..

Backend/Node.js 2026.06.04

[정보보안기사 필기 - 1과목 시스템 보안] 2021년 3월 기출 문제 핵심 정리

정보보안기사 필기 시험을 공부하면서 헷갈리기 쉬운 개념들을 초보자도 이해할 수 있도록 쉽게 정리했다.1. DLP(Data Loss Prevention)DLP 핵심 키워드정보 유출 방지메일, SNS, 웹사이트 등을 통해 외부로 나가는 정보 통제특정 경로 차단DLP란?회사 직원이 다음과 같은 행동을 했다고 가정해보자.USB로 회사 파일 복사개인 메일로 회사 문서 전송카카오톡/SNS 업로드웹하드 업로드클라우드 드라이브 업로드이때 DLP는 다음과 같이 판단한다.“회사 기밀인데?”“개인정보가 포함됐는데?”“외부로 나가면 안 되는 정보인데?”그리고 아래 작업을 수행한다.차단경고기록 저장즉, 정보가 외부로 유출되는 것 자체를 막는 보안 솔루션이다.DLP 종류1) 네트워크 DLP네트워크를 통해 나가는 정보를 감시한다...

프론트엔드 핵심 SEO 검색엔진최적화의 기본

SEO의 기본SEO(검색엔진 최적화, Search Engine Optimization)는 많은 사용자들이 구글, 네이버와 같은 검색엔진으로 웹사이트를 검색했을 때 그 결과를 페이지 상단에 노출시켜 많은 사람들이 볼 수 있도록 최적화하는 방법입니다. 앱의 배포가 완료된 이후에 SEO 관리를 하며 지속적으로 많은 사용자의 유입을 추구해야 합니다. 지금부터 간단하게 SEO 하는 방법을 알아보겠습니다.1. 캐노니컬 태그 설정캐노니컬 태그는 한 페이지를 가리키는여러 개의 주소가 존재할 때, 검색 엔진의 로봇이 어떤 주소가 원본인지 알 수 있도록 하기 위해 사용하는 태그이다.당신이 검색엔진의 로봇이라고 생각해보자. 수집한 주소 중 몇 개의 주소가 같은 페이지를 가리키고 있다. 그렇다면 다음 중 어떤 주소가 페이지를..

Coding/etc 2024.11.21

데이터베이스 작업 중 메모리 비효율 문제

"새 데이터를 처리한 뒤, 필요한 기존 데이터만 가져와 작업 흐름을 단순화하라." 1. 문제 요약발생 날짜: 2024.11.20.문제 제목: 데이터베이스 작업 중 메모리 비효율 문제문제 설명:Django 애플리케이션에서 데이터베이스의 기존 기사를 먼저 모두 가져온 뒤, 새 기사를 처리하고, 두 결과를 합쳐 사용하는 로직이 과도한 메모리 사용 문제를 초래.특히, 기존 기사, 새 기사, 합친 기사 데이터를 모두 메모리에 적재하면서 불필요한 데이터 중복 및 메모리 낭비 발생. 2. 발생 배경Django 기반 애플리케이션에서 검색 쿼리를 받아 네이버 뉴스 API에서 새 기사를 가져온 뒤, 기존 데이터와 비교 및 추가 작업을 수행하는 기능 구현 중 의문점 발생.기존 코드는 다음과 같은 순서로 동작 ..

Coding/etc 2024.11.20

[Error] TCP/IP 연결 에러 해결 방법: Is the server running on that host and accepting TCP/IP connections?

1. TCP/IP 연결 에러 발생Django 프로젝트나 다른 애플리케이션을 PostgreSQL과 연동할 때다음과 같은 에러 메시지를 마주칠 수 있습니다.Is the server running on that host and accepting TCP/IP connections?이 에러는 주로 PostgreSQL 서버가 실행 중이지 않거나서버가 올바르게 TCP/IP 연결을 수락하지 않을 때 발생합니다.해결하지 않으면 데이터베이스 연결이 불가능하며, 애플리케이션이 제대로 작동하지 않습니다. 2. 에러 원인이 에러는 다음과 같은 이유로 발생했을 가능성이 큽니다.PostgreSQL 서버가 실행되지 않았거나 중지된 경우TCP/IP 연결이 비활성화된 경우데이터베이스 서버의 호스트 설정이 올바르지 않은 경우 3. 에러 ..

Coding/Error 2024.10.14

[NLP(자연어 처리)] 영화 리뷰 데이터 분석과 시각화: TensorFlow, Pandas, Matplotlib 등

영화 리뷰 데이터를 로드하고, 전처리 및 시각화하는 과정을 보여드리겠습니다. 목표TensorFlow, Pandas, Matplotlib 등의 라이브러리를 사용하여 데이터를 처리IMDb 데이터셋을 사용하여 긍정 및 부정 리뷰를 분석하고, 데이터의 분포와 특성을 파악 1. 데이터 로드먼저, 필요한 라이브러리를 임포트합니다.import osimport reimport pandas as pdimport tensorflow as tffrom tensorflow.keras import utils os: 디렉토리 작업re: 정규 표현식pandas: 데이터 조작tensorflow와 tensorflow.keras.utils: 데이터 다운로드 및 로드 IMDb 영화 리뷰 데이터셋을 다운로드하고 압축을 해제합니다.data_..

AI/NLP 2024.05.23

[NLP(자연어 처리)] 검색 엔진을 위한 TF-IDF와 Similarity 연산

검색 엔진을 위한 TF-IDF와 Similarity 연산검색 엔진의 핵심은 사용자가 입력한 문장과 유사한 문서를 찾아내는 것입니다. 이를 위해 TF-IDF와 Similarity 연산을 조합하여 활용합니다. TF-IDF란?TF-IDF(Term Frequency-Inverse Document Frequency)는 문서 내 단어의 중요도를 나타내는 통계적 수치입니다.Term Frequency(TF): 특정 단어가 문서 내에 얼마나 자주 등장하는지 측정합니다.Inverse Document Frequency(IDF): 단어가 전체 문서에서 얼마나 흔하지 않은지를 측정합니다.TF-IDF를 사용한 키워드 추출예를 들어, 1000개의 문서에서 각 문서당 10개의 키워드를 TF-IDF로 추출한다고 가정해봅시다. 새로운 ..

AI/NLP 2024.05.22

[Setup] JAVA 인텔리제이 IntelliJ IDEA Community Edition 다운로드 및 설치 방법 (Windows/macOS)

최고의 Java 및 Kotlin IDE인 IntelliJ IDEA를 다운로드하세요 (jetbrains.com) 최고의 Java 및 Kotlin IDE인 IntelliJ IDEA를 다운로드하세요 www.jetbrains.com 요즘은 Java 및 Kotlin 개발 환경으로 이클립스보다 인텔리제이를 많이 쓰죠? 그래서 오늘은 IntelliJ IDEA를 설치하는 방법에 대해 포스팅해 보겠습니다. 위 링크로 들어가면 인텔리제이를 설치할 수 있는 사이트가 나오고요. 홈페이지에서 유료버전인 Ultimate 버전뿐만 아니라 무료 버전인 Community Edition도 제공하고 있습니다. 원하는 버전을 선택하여 다운로드합니다. Community Edition는 아래로 스크롤을 조금 내려보면 있어요! 저는 이걸로 다운..

Coding/Setup 2024.04.11

[Django 주식 검색 웹 만들기 06] 주식 정보 테이블 디자인 및 데이터 출력 방법

1. 부트스트랩의 Tables 섹션을 활용하여 테이블 디자인 선택 이제 원하는 키워드만 뽑아내도록 합시다. 다시 부트스트랩 Content로 이동하여 Tables 섹션을 찾습니다. 원하는 테이블 디자인을 찾은 후 해당 부분을 복사합니다. 2. home.html 파일에 테이블 디자인 코드 삽입 그리고 home.html 파일에 붙여넣기를 하고, {{ stock }} 부분은 삭제합니다. 필요없는 컬럼들을 제거하여 아래와 같이 테이블을 구성해줬어요. {% extends 'stocks/base.html' %} {% block content %} # First 1 Mark 2 Jacob 3 Larry {% endblock %} 3. 데이터 딕셔너리 형식을 활용하여 키워드(key)와 값을(value) 테이블에 출력 표..

반응형