본문 바로가기

전체 글

(35)
[You Don't Know Js Yet] 1장 👉 챕터의 목표- 자바스크립트의 명세서를 정의할 때 일어난 담론과 배경 알아보기1.1 책에 대하여초보자용 책이 아니다!내용을 다 이해하면서 넘어가라!1.2 Javascript 이름의 유래. Javascript는 Java 친구인가?javascript가 만들어질 때는 당시 유행하던 java를 사용하는 개발자들에게 어필하고, 당시에 가벼운 프로그램이라는 뜻으로 유행하는 script 단어를 합쳐서 java + script 가 된 것이다. 오라클이 소유한 상표가 아닌 TC39에서 지정하고 ECMA 표준 기구에 의해 공식화된 명칭으로 JS를 부르면서 ECMAScript가 된다. 2016년부터는 ECMAScript에 개정 연도를 붙이기 시작했다.1.3 명세서TC39는 JS의 공식 명세를 관리하는 위원회다. TC39..
파이썬으로 공부하는 자료 구조 자료 구조를 파이썬으로 공부해보기자료 구조자료 구조는 크게 선형 자료구조와 비선형 자료구조로 나눌 수 있다.배열 배열은 데이터(원소)를 순서대로 가지고 있으며 변경 가능한 선형 자료 구조다. 배열은 인덱스를 통해 어떤 원소든 쉽게 접근할 수 있지만, 원소를 추가하거나 삭제할 때는 비효율적이다. 파이썬에서 배열은 list이며, 내부적으로 동적 배열로 구현되어 있다. 객체들이 연속한 메모리에 있지 않지만, 객체의 메모리 주소가 연속한 메모리에 저장되어 있어 인덱싱이 가능하다.배열와 관련된 연산의 시간 복잡도연산시간 복잡도비고len(a) O(1)  a[i] O(1)  a[i:j] O(k) i 부터 j - 1까지 k개에 대한 조회가 필요하다.elem in a O(n)처음부터 끝까지 순차 탐색한다.a.count(..
컴파일러(Compiler)와 인터프리터(Interpreter) C언어는 빠르고, python은 느리다?컴퓨터와 소통하기컴퓨터는 0과 1로 되어있는 정보만 이해할 수 있지만, 우리가 0과 1로 코딩하는 것은 너무 힘들다. 그렇다면 python과 같은 사람이 이해하기 쉬운 프로그래밍 언어로 코드를 작성하고 나중에 컴퓨터가 이해할 수 있는 0과 1로 바꾸는 것은 어떨까? 컴파일러(Compiler)와 인터프리터(Interpreter)가 바로 고수준의 언어로 작성된 소스 코드를 기계어로 번역해주는 역할을 하며, 이 두 가지 방식에는 차이점이 있다.기계어란?CPU가 직접 해석하고 실행할 수 있는 명령어로 CPU 아키텍쳐마다 다를 수 있다.컴파일러컴파일러는 소스 코드를 한 번에 기계어로 변환한 뒤 실행한다. 대표적인 컴파일 언어로 C, C++ 등이 있으며, 컴파일 과정은 언어별..
ASCII 유니코드 UTF-8? utf-8 인코딩을 안해서 문자가 깨진 적이 한 두 번이 아니었다... 제대로 이해하고 넘어가자컴퓨터에서 문자는 어떻게 나타내지? 컴퓨터는 0과 1을 통해 숫자를 나타낸다. 그렇다면 컴퓨터는 "a", "가"와 같은 문자는 어떻게 나타낼까?0과 1을 이용해선 숫자밖에 나타낼 수 없기 때문에 각 문자를 대응되는 숫자로 정리해두면, 사용자가 특정 문자를 입력했을 때 이를 컴퓨터가 이해할 수 있는 숫자로 변환할 수 있게 된다. 이처럼 사용자가 입력한 문자나 기호들을 컴퓨터가 이용할 수 있는 신호로 만드는 것을 인코딩이라고 한다.  ASCII1963년 미국에서는 위에서 설명한 것처럼 문자를 해석하기 위한  정보 교환용 표준 부호 체계를 만들었고, 이를 ASCII(American Standard Code for I..
2진법 10진법 16진법 대학교 1학년 때 배우고 까먹어버린 진법... 복습하기 위해 글로 정리하기로 했다.비트와 바이트디지털 세계는 2진법으로 정보를 나타내는 게 제일 효율적이다. 그래서 컴퓨터는 0과 1 두 개의 숫자만 사용해 수를 나타내는 2진법을 사용한다. 0 또는 1의 값을 가지는 디지털 데이터의 가장 작고 기본적인 단위를 비트(bit)라고 한다. 컴퓨터는 모든 데이터를 비트로 나타낸다. 하지만 비트 한 개로는 많은 양의 데이터를 나타낼 수 없기 때문에 여러 비트를 사용해 정보를 나타낸다. 일반적으로 8개의 비트를 묶어서 데이터를 처리하며, 8개의 비트가 모인 형태를 1 바이트(byte)라고 한다. 1 바이트는 28=256만큼의 데이터를 표현할 수 있다. 2진법과 10진법2진법으로 나타낸 숫자는 어떤 숫자를 어떻게 해석..
[노마드코더 React 10주 스터디 회고] 열정 만수르 React 4기 스터디를 시작한 계기2024년은 노마드코더와 함께 했다고 봐도 무방하다. 작년 12월에 시작했던 플러터 챌린지를 시작으로 앞으로의 목표를 대학원 진학과 취업에서 고민하다가 점차 마음이 개발자로 기울어져 올해 초에는 클린 코드 북클럽 챌린지까지 참여하게 되었다. 클린 코드 챌린지를 하면서 커리큘럼에 맞춰 꾸준히 공부하면서 공부 습관을 만들 수 있는 노마드코더 챌린지의 장점을 다시 느끼며 프론트엔드 쪽으로 공부를 꾸준히 해보고 싶다는 생각으로 react 10주 스터디 4기를 신청했다. 그리고 프론트엔드 공고를 봤을 때 사용 기술에 아직 써보지 못했거나 익숙하지 않은 기술이 대부분이 었는데 react 10주 스터디에서 해당 기술을 모두 배워볼 수 있겠다는 생각도 들었다. 생각보다 할 만 한 것 같은데...살려..
[주간회고록] 10주차 주간 회고록 9주차 기간: 2024년 4월 10일 → 2024년 4월 16일🗒️ 핵심 3줄 요약눈과 척추, 손목을 지켜야 한다…일주일 남았는데 불태워보자고!졸작 파이팅🎯 이번 주 목표❌ 건강하기👏 칭찬하고 싶은 점주말에 졸업 논문이랑 학회 논문 벼락치기로 다 씀😭 고치거나 버려야 할 점미리미리 하자…밤에 늦게 자거나 무리하지는 말자! 깨어있을 때 열심히 하자고.스터디 초반에 비해 많이 해이해진 것 같다. 캐럿마켓 초반부에 강의를 너무 못 들었더니 점점 따라가기 벅차다 느껴 그런 것 같다. 일주일 동안 할 수 있는 만큼 최대한 해보자! 15만원 환급 받아야지!!!🏃 일일 스프린트더보기2024년 4월 17일✅ 논문 개요 작성✅ 캐럿마켓 클론코딩 밀린 강의 다 ..
[주간회고록] 9주차 주간 회고록 9주차 기간: 2024년 4월 10일 → 2024년 4월 16일🗒️ 핵심 3줄 요약모두 반가웠습니다종강회도 가야지아프지 말자!🎯 이번 주 목표✅ 모각코 잘 다녀오기👏 칭찬하고 싶은 점일주일치 밀린 강의 하루 만에 몰아 듣고 과제 제출한 점😭 고치거나 버려야 할 점과제 다 해놓고 까먹고 제출 안 한 점강의 내용만 따라가지만 말고 내걸로 만들어야 하는데…🏃 일일 스프린트더보기2024년 4월 10일✅ 주간 회고록 작성하기✅ 듀오링고✅ 회의 진행 및 디자인 통일성 맞추기2024년 4월 11일✅ 영상 편집✅ 듀오링고2024년 4월 12일✅ 휴식✅ 듀오링고2024년 4월 13일✅ 모각코✅ 연구 발표자 전달 및 미팅 내용 정리✅..