본문 바로가기

분류 전체보기33

[Chap 04] 변수 4.1 변수란 무엇인가? 왜 필요한가? 애플리케이션 - 데이터를 다룸 복잡한 애플리케이션이라도 데이터를 입력(input)받아 처리하고 결과를 출력(output)하는 것이 전부 ➔ 변수 : 데이터를 관리하기 위한 핵심 개념 10 + 20 위 식을 계산할 때, 컴퓨터는 CPU를 사용하여 연산하고, 메모리를 사용하여 데이터를 기억함 ➔ 메모리(memory) : 데이터를 저장할 수 있는 메모리 셀(memory cell)의 집합체 : 메모리 셀 하나의 크기는 1바이트(1 byte = 8 bit) : 컴퓨터는 1바이트 단위로 데이터를 저장하거나 읽어들임 : 각 셀은 고유의 메모리 주소를 가짐 : 메모리에 저장되는 데이터의 종류에 상관없이 모든 값은 2진수로 저장됨 이러한 메모리 값에 저장된 값에 접근하기 위한 것이.. 2024. 3. 27.
[Chap 02] 자바스크립트란? 2.1 자바스크립트의 탄생 - 1995년, 웹 브라우저 시장 점유율 90%를 차지하던 넷스케이프 커뮤니케이션즈가 웹페이지의 보조적 기능 수행을 위해 개발한 경량 프로그래밍 언어 - 이름의 변천사 : 모카(Mocha) ➔ 라이브그크립트 (LiveScript) ➔ 자바스크립트(JavaScript) - 자바스크립트 탄생 이후 자바스크립트 파생 버전인 JScript가 출시되어 자바스크립트는 위기를 맞게 됨 2.2 자바스크립트의 표준화 JScript와 자바스크립트는 표준화되지 못하고 적당히 호환되었음 ➔ 각 회사는 자사 브라우저의 시장 점유율을 높이기 위해 자사 브라우저에서만 동작하는 기능을 경쟁적으로 추가하기 시작함 ➔ 브라우저에 따라 웹페이가 정상적으로 동작하지 않는 크로스 브라우징 이슈 발생 ➔ 표준화된 자.. 2024. 3. 20.
[Chap 01] 프로그래밍 1. 1 프로그래밍이란? 프로그래밍 : 컴퓨터에게 실행을 요구하는 일종의 커뮤니케이션 ➔ 요구사항을 명확히 이해한 후 정확하고 상세하게 요구사항을 설명해야 함 : 기계, 즉 컴퓨터는 0과 1밖에 알지 못하기 때문 ➔ 이때 필요한 것이 컴퓨팅적 사고를 통한 문제 해결 능력 : 컴퓨터와 사람은 사고, 인지의 방식이 다르기 때문 1. 2 프로그래밍 언어 문제 해결 능력을 바탕으로 정의된 문제 해결 방안은 컴퓨터에게 전달되어야 함 이때, 명령 수행의 주체는 컴퓨터이므로 기계어로 명령을 전달해야 함 단, 기계어 코드는 너무 복잡하기 때문에 사람이 이해할 수 있는 약속된 구문인 프로그래밍 언어를 통해 프로그램을 작성 이렇게 작성된 프로그래밍 언어는 컴파일러 혹은 인터프리터를 통해 기계어로 번역됨 프로그래밍 언어 =.. 2024. 3. 19.
[JS Algorithm] 이진 탐색(Binary Search) 문제 이진 탐색이란? - 데이터가 정렬된 배열에서 특정 값을 찾는 알고리즘 - 탐색 범위를 절반씩 좁혀가며 데이터를 탐색하는 방식 JS를 통한 이진 탐색 구현 배열 내에서 내가 찾아야 하는 target값이 주어졌을 경우, 해당 배열의 몇 번째에 내가 찾는 값이 있는지 찾아내보자 구현 순서 ( 1 ) 배열을 정렬한다. ( 2 ) 시작 값(start)과 끝 값(end)을 설정한다. ( 3 )start가 end와 같아질 때까지 반복문을 돌린다. ( 4 ) 반복문 내에서, 시작 값과 끝 값의 중간 값(mid)을 정의한다. ( 5 ) 배열의 mid값과 target값을 비교한다. ( i ) mid mid 앞에 있는 값들은 필요하지 않기 때문 ( ii ).. 2024. 3. 19.