전체 글
-
[docker] ARM 환경에서 docker compose up 실패 문제 트러블슈팅DevOps/Docker 2024. 12. 19. 02:46
새로운 프로젝트인 defee를 진행하면서, docker를 다시 사용해 보았다.이전에 정글에서 C프로젝트를 진행하면서 한 번 사용해본 적 있긴 했지만, 정확하게 어떤 역할을 하는지에 대해서 잘 모르고 하라는 대로만 했었던 기억이 있다.자세한 것들은 기억나지 않지만 한가지 명확하게 기억나는 것이 있다."실리콘 기반의 mac은 뭔가 다르다..."는 것이었다.이번에도 백의 서버와 db를 직접 띄워보고 사용해보기 위해서 repository를 클론 받아 docker를 띄워보는데 역시나 간단히 되지 않았다.해결 과정과 docker에 대한 간단한 개념 학습을 기술해보겠다.[!WARNING]저의 실행 환경은 Silicon MacBook Air M2, Docker Desktop을 사용하였고 docker desktop 설정..
-
[UJAD] 문제 해결 접근법ComputerScience/Algorithm 2024. 12. 11. 17:00
🚨 이 글은 'Colt Steele'의 'JavaScript 알고리즘 & 자료구조 마스터클래스' 강의를 듣고 정리한 글입니다.https://www.udemy.com/course/best-javascript-data-structures/?couponCode=BFCPSALE24문제 해결 접근법What is an algorithm?A process or set of steps to accomplish a certain taskWhy do i need to know this?Almost everything that you do in programming involves some kind of algorithm.It is the foundation for being a succesful problem solvi..
-
[MIFB_22] Javascript 배열 활용예제Language/JavaScript 2024. 12. 10. 23:38
JavaScript Array(배열) 활용 예제문제 1.다음의 소스코드는 boolean 데이터를 저장하고 있는 배열에 대한 어떤 처리를 보여준다.실행 결과에서 제시하는 것과 같이 배열에 저장되어 있는 값들을 반전(true는 false로, false는 true로) 변환하는 처리를 완성하시오.const check_list = [true, false, false, true, true];console.log("before -->" + check_list);// implementconsole.log("after -->" + check_list);나의 풀이const check_list = [true, false, false, true, true];console.log("before -->" + check_list)..
-
[MJDD] 3장 자바스크립트 개발 환경과 실행 방법Language/JavaScript 2024. 12. 5. 16:34
🚨 이 글은 '모던 자바스크립트 Deep Dive (이웅모 저)'를 읽고, 정리한 글입니다.자바스크립트 개발 환경과 실행 방법3.1 자바스크립트 실행 환경자바스크립트는 크게 브라우저 또는 Node.js 환경이 있다. 두 환경은 용도에 따라 다르다.브라우저 환경은 HTML, CSS, 자바스크립트를 실행해 웹페이지를 브라우저 화면에 렌더링 하는 것이 주된 목적이지만, Node.js는 브라우저 외부에서 자바스크립트 실행 환경을 제공하는 것이 목적이다. 결국 서로 제공되는 기능이 다를 수 있다.예를 들어, DOM API의 경우 Node에서는 지원되지 않는다. 반대로 파일 시스템은 브라우저에서 가능하지 않다. 보안상의 이유이다.DOM API와 같은 클라이언트 사이드의 API를 Web API라고 한다.브라우저는 ..
-
[UJAD] 배열과 오브젝트의 성능 평가ComputerScience/Algorithm 2024. 12. 5. 14:18
Objects Big O[!IMPORTANT]자바스크립트에서 객체(Object)의 삽입, 제거, 조회, 검색 등의 주요 연산과 관련 메서드들의 시간복잡도는 대부분 O(1)이다. 이는 객체가 해시 테이블을 기반으로 구현되었기 때문이다.When to use objectsWhen you don't need orderWhen you need fast access or insertion and removalBig O of objectsInsertion: keys and values - O(1)자바스크립트 객체는 해시 테이블을 기반으로 동작하므로, 키를 해시 함수에 전달해 해당 키의 위치를 계산하고 값을 저장한다. 해시 충돌이 적은 경우 삽입은 상수 시간에 이루어진다.Remove: keys and values - ..
-
[MJDD] 2장 자바스크립트란?Language/JavaScript 2024. 11. 28. 16:57
🚨 이 글은 '모던 자바스크립트 Deep Dive (이웅모 저)'를 읽고, 정리한 글입니다.자바스크립트란?2.1 자바스크립트의 탄생1995년 당시 웹브라우저를 지배하던 넷스케이프 커뮤니케이션즈(Netscape ommunications)가 웹페이지의 보조적인 기능을 수행하기 위해 브라우저에서 동작하는 경량 프로그래밍 언어를 도입한다.이것이 브랜던 아이크(Brandan Eich)가 개발한 자바스크립트이다.1996년 3월 "Mocha"로 넷스케이프의 네비게이터2에 탑재되고, 9월 "LiveScript"로 명명되었다가 다시 당시 유행했던 Java에 편승하고자 "JavaScript"로 최종 명명되었다.2.2 자바스크립트의 표준화그러다 1996년 8월에 "대" 마이크로소프트 사께서 자바스크립트의 파생 버전인 "J..
-
[MJDD] 1장 프로그래밍Language/JavaScript 2024. 11. 28. 15:28
🚨 이 글은 '모던 자바스크립트 Deep Dive (이웅모 저)'를 읽고, 정리한 글입니다.프로그래밍1.1 프로그래밍이란?책에서는 프로그래밍을 컴퓨터에게 실행을 요구하기 위한 커뮤니케이션으로 비유하여 설명한다.하지만 프로그래밍을 하기 이전에 해결해야할 문제(요구사항)을 명확하게 이해하고 나서 문제 해결 방안을 정의할 필요가 있음을 강조한다.이때 문제 해결 능력이 요구된다.대부분의 문제는 복잡하고 명확하지 않을 수 있기 때문에, 문제를 단순하게 분해하고 자료를 정리하고 구분하여 순서에 맞게 행위를 배열하는 과정이 필요하다.다시 말해 프로그래밍이란 0과 1밖에 모르는 기계가 알 수 있도록 정확하고 상세하게 요구 사항을 설명하는 작업이고, 그 결과물이 코드라고 볼 수 있다.인상깊었던 말은 "모호하고 대략적인..
-
[UJAD] Big O NotationComputerScience/Algorithm 2024. 11. 27. 22:30
🚨 이 글은 'Colt Steele'의 'JavaScript 알고리즘 & 자료구조 마스터클래스' 강의를 듣고 정리한 글입니다.https://www.udemy.com/course/best-javascript-data-structures/?couponCode=BFCPSALE24What is Big O?We have multiple implementations of the same function.How can we determine which one is best?Who Cares?for technical interview, code competitionto discuss trade-offs between different approachesmake us to know what slows down the ..