Programming/기초

컴퓨터는 멀티 태스킹을 하는게 아니다? [ 멀티 태스킹 == 여러가지 일을 동시에 ] 컴퓨터(CPU)는, 여러가지일(Process)을 아주 조금씩 번갈아가면서 처리한다. 1번 > 2번 > 3번 ..... 다시 1번 > 2번.... 그러므로, CPU를 하나만 사용하는 싱글 코어 시스템에서는, 진정한 멀티 태스킹은 없다. 하지만, 현재는 반도체 크기를 줄이는데 거의 한계점에 다다르었으며, ( 3나노미터 공정 ) CPU의 코어수를 늘리는 방향으로 나가가고 있다. ( 이제 기본이 거의 8코어 .. ) Context Switching 위에서, 컴퓨터(CPU)가 다음작업(Process)으로 넘어가는 행위를 뜻한다 이후에 일어나는 일 다음 프로세스의 정보를 불러오기 위해 메모리 검색 CPU 캐시 메모리 초기화 프로세..
기계어는 0과 1로 이루어졌기에, 간단한 프로그램도 코드가 매우길고, 읽기도 힘들다. 코드의 길이를 줄이고, 사람이 읽기 편하게 "어셈블리어"를 만들었다. 👉 어셈블리어 기계어를 사람이 읽기 쉬운 단어와 1대 1로 대응 시킨 것 [ 예시 ] - 설명하기 위한 예시이므로 실제와 다름 기존 기계어 : 0100000000000000000010010 명령어 작성 - 데이터를 전송해라 어셈블리어 : mov 명령어 작성 - 0100000000000000000010010 명령을 실행해라 필요성 우리가 자주사용하는 프로그래밍 언어를, 더 잘 활용할 수 있다 ( 쌉고수 ) 주의사항 CPU마다, 다른 언어를 사용한다!! ( 어셈블리어가 다름 ) 👉 어셈블러 어셈블리어로 쓰여진 명령들을, 기계어 명령들로 바꿔주는 프로그램 ..
Version Name 사용자에게 보여주기위한 버전 이름 1.0.3 Version Code Google에서, 앱버전을 구분하기 위한 코드 +숫자 형식으로 사용한다. 1.0.3+3 버전 코드만 잘 올려주면 만사어게이~~
해시테이블이란? Key, Value 두가지 모양으로 데이터를 저장하는 방법( 자료구조 )중 하나. Key 값을 Hash함수에 넣어 얻은 값을, 표의 index로 사용하고, Value를 저장한다.
1. 세션 로그인 로그인 과정 1. Client가 Server로 로그인 요청 ( 아이디, 비밀번호 ) 2. 회원정보가 맞는지 확인 ( DB와 비교 ) 3. Server가 Session정보 생성 ( 작은 데이터 저장소 ) 4. 만들어진 SessionID 응답 ( Server > Client ) 5. Client의 Cookie 속에 SessionID 저장 6. 다음 요청부터, SessionID를 함께 보냄 ( 요청보낸 유저가 누군지 알 수 있도록 ) 7. Server가 받은 SessionID를, Session에 저장되어 있는 내용과 비교하여 사용자 인증 문제점 네이티브앱 같이 Session이 없는 환경에서 사용이 불가능 -> 토큰 로그인으로 해결 2. 토큰 로그인 1. Client가 Server에 로그인 요..
Bus Factor란? 프로젝트를 진행하고 있는 팀원중, "몇명이 버스에 치여야" 프로젝트가 망하는지 나타내는 지수 ㅋㅋ Bus Factor가 낮다? 프로젝트에서 중요한 역할을 하는 인원이 너무 적다. 한 사람이 프로젝트를 짊어지고 있다. -> 걔 죽으면 프로젝트 망함 ㅋㅋ
👉 ORM 이란? Object-Relational Mapping 관계형 데이터베이스에 저장된 데이터를, 객체 지향 프로그래밍 언어의 객체와 1대1 대응(매핑) 시키는 기술 ⭐️ 기능 객체를 만들면, 이를 SQL로 변환하고, 자동으로 DB를 관리해준다!
👉 바인딩이란? 프로그래밍에서, 이름과 값을 연결하는 행위 // x란 이름에, 10이란 값을 연결한다 x = 10
👉 폭포수 ( Waterfall ) 1. 필요한것 분석 - 모든 요구 사항 명세서 작성 ( SRS ) 2. 분석 - 요구 사항이 현재 기술로써 가능한지, 비용적인 부분을 충족하는지 3. 구조 설계 - 소프트 설계 명세서 작성 ( SDS ) 4. 코드 구현 5. 테스트 - 버그 리포트 작성 6. 관리 👉 애자일 ( Agile ) 1. 필요한것 분석 - 하나의 요구 사항 2. 구조 설계 3. 코드 구현 4. 테스트 5. 출시 6. 반복! 👉 데브옵스 자동화를 통한 효율적인 앱 서비스를 운영 자동 테스트 자동 배포 자동 오류 감지 [ 대표적인 데브옵스 ] AWS로 EC2를 만들고, 로드밸런서를 통해 이를 자동으로 관리 Docker로 앱 컨테이너를 만들고, Kubernetes로 컨테이너를 자동으로 관리
MOONCO
'Programming/기초' 카테고리의 글 목록 (2 Page)