'Computer Science' 카테고리의 글 목록
본문 바로가기

Computer Science

(10)
(공부중) 객체지향 디자인패턴 OOP (객체지향 프로그래밍)특성캡슐화상속추상화다형성설계원칙 (SOLID)Single Responsibility Principle (SRP) : 클래스는 하나의 역할만 해야한다Open Close Principle (OCP)The Liskov Substitution Principle (LSP)Interface Segration Principle (ISP)Dependency Inversion Principle (DIP)디자인 패턴각 패턴이 무엇이며, 어떤 경우에 사용하는지 예시 정도 알아두기생성 패턴1) Singleton객체가 하나만 만들어져야 하는 경우 사용e.g) 전체 페이지에 똑같이 적용되는 다크모드클래스 안의 static이 아닌 변수나 메소드들은 객체가 생성될 때마다 메모리 공간을 새로 차지하지만st..
[운영체제] 프로세스와 스레드 꼬리 질문 에서 나온 내용 참고하여,[기본 질문에서 나올 수 있는 꼬리 질문들 공부](GPT3.5 내용이라 틀린 내용 있을 수 있음. 추후 검증 필요) > 프로세스와 스레드 차이실행 중인 프로그램을 프로세스라고 하고, 스레드는 프로세스 내에서 실행되는 기본 단위이다. > 멀티프로세싱과 멀티스레딩의 차이멀티프로세싱은 독립적인 프로세스를 여러 개 사용하여 작업을 병렬로 처리하는 방식이고,멀티스레딩은 한 프로세스 내에서 여러 스레드를 사용하여 작업을 병렬로 처리하는 방식이다.파이썬에서, CPU-bound 작업은 멀티프로세싱이 더 적합하고, I/O-bound 작업은 멀티스레딩이 더 적합하다.왜냐하면 파이썬 인터프리터는 GIL (Global Interpreter Lock)을 사용하여 동시에 하나의 스레드만 실행되도록 제한하..
개발자 맥북 어떤 사양으로 사야할까? [목차]RAM (통합 메모리) 크기SSD 저장 장치M3 / M3 Pro / M3 Max 칩 차이CPU 코어 (성능 코어, 효율 코어) 개념GPU 코어 개념지금 내 컴퓨터 : 2018년도 구입한 6년 반 된 LG 그램 크롬 창 몇개, VSCode, 노션 띄워놓으면 가끔 디코나 게더에서 화면 공유나 마이크 입력 안될 때 있음노션 동시 작업할 때 렉 많이 걸림.갑자기 팬이 돌아가면서 소음이 나는 경우 허다하고, 충전기 없이는 1시간정도 쓸 수 있으려나.노트북을 바꿀 시기가 와서, 맥북 사양을 알아봤다. 앞으로 일하는 데 쓸만한 최소 사양이 어느정도 될지 하나씩 따져보자.RAM (Random Access Memory, Volatile Memory)활성 상태의 데이터와 프로그램을 일시적으로 저장하는데 사용하는 휘..
[네트워크] HTTP HTTP (HyperText Transfer Protocol)웹 서비스 통신(서버와 클라이언트 간의 데이터 송수신)에 사용되는 통신 규약, 애플리케이션 계층HTTP의 역사HTTP/0.9 : GET 메서드만 지원, HTTP 헤더 XHTTP/1.0 : 메서드, 헤더, 상태코드 추가요청 헤더 : http 버전이 생김응답 헤더 : 상태코드와 content-type이 생겨 html 파일 외 다른 타입의 파일도 전송단기커넥션 (Short-lived connection) : connection 하나당 1 요청, 1 응답만 처리 가능, 매번 새로운 연결로 성능 저하 (RTT 증가) 및 서버 부하 비용 증가RTT 개선 방법이미지 스플리팅 : 한 이미지를 background - position 이라는 CSS 설정을 통해 ..
[네트워크] 비동기 메시지 전송하기 보이저엑스 백엔드 기술 질문 중 동시 사용자 1만명을 지원하는 채팅 서버를 어떻게 만들겠는가? 에 대해 공부하다가 "비동기 메시지 전달"에 대해 더 자세히 학습한 내용, 추후 실습 진행 예정 비동기 메시지 전달 방식메시지 생성 및 전송 : 클라이언트 또는 애플리케이션 서버가 메시지 생성하여 브로커 전달메시지 브로커의 역할 : 메시지 브로커가 메시지 수신하여 큐(queue)나 토픽(topic)에 일시적으로 저장, 수신자가 메시지를 처리할 준비가 될 때까지 보관메시지 수신 및 처리 : 수신자는 메시지 크로커에 연결되어 대기하다가 준비가 되면 브로커로부터 메시지를 가져와서 처리 ex) 다른 사용자에게 메시지를 전달하거나 데이터베이스에 저장비동기 메시지 전달이 효율적인 이유비동기성송신자와 수신자가 동시에 작동할..
[OS] 3. Fundamental Concepts Abstraction복잡성을 줄이기 위해 key features만 간추려 제공하는 것하드웨어의 복잡성을 줄이고, 프로그래머가 하드웨어를 손쉽게 제어할 수 있도록 인터페이스를 제공하는 것ex) API (Application Programming Interfaces)Typical System Structure운영체제는 응용 프로그램이 하드웨어 리소스에 접근할 수 있도록 하는 Interface메모리 관리, 프로세스 관리, 데이터 보안 등과 같은 컴퓨터 시스템의 주요 작업 수행 System Calls vs. Library Calls[ call to printf() ] → [ printf() in the C library → write() in the C library ]  →  [ write() system c..
[OS] 2. History of Computers and Operating Systems 기계식 컴퓨터의 효시 : Abacus (주판)전기식 컴퓨터의 효시 : ENIAC핵심 기술 : 진공관 (부피 大, 무게 大)운영체제의 효시 : Resident Monitor소프트웨어를 하드웨어와 구분짓게 하는 개념여러개의 프로그램을 메모리에 올리고 레지던트 모니터가 프로그램 실행 순서 결정 및 실행Spooling (Simultaneous Peripheral Operation Online)특히 다중 프로그래밍 환경에서 다수 프로세스들이 입출력장치를 서로 요구하는데 그 장치 수가 제한되어 있는 경우 이를 공유하기 위해 가상장치 (Virtual Device)를 각 프로세스에게 제공해주는 개념 Disk를 매우 큰 버퍼처럼 사용CPU 작업과 입출력 작업이 동시에 진행될 수 있어 컴퓨터 성능 대폭 향상UNIX현대 컴..
[DB] 학부 과정 복습 Subject Info.[ITE2038] Fall 2019데이터베이스 시스템 및 응용 Database Systems / 김상욱 교수님ContentsDBMS (database management systems)Basic conceptsSystem architectureDatabase designEntity-relationship modelRelational modelSystem componentsStorage systemsQuery processingConcurrency control and recoverySQL (structured query language)Interactive SQLApplication developmentStudy Plan24.05.23 - 06.05 (2w) 개념 1회독