반응형
반응형

📝UI

유저인터페이스라는 말로 웹디자인 모바일 앱 디자인 같이 눈으로 보이는 것들 즉 시각적인 디자인을 의미합니다.

가독성이나 편리한 위치 편리한 체크박스 등으로 사용자가 편하게 쓸 수 있고 사람들을 더 끌어오는데 필요

 

📝UX

User Experience 유저들이 그 웹페이지를 보고 경험하고 느낀 것들 불편함 , 편리함, 나이에 따라 다르게 해야 한다

 

📝가상디스크

주기억장치에서 보조기억장치가 없을 때 디스크의 역할을 해줍니다

 

📝스풀

주변장치들이 CPU에 비해 느려서 발생하는 대기시간을 줄이기 위해 고안된 기법 (디스크 일부 사용)

스풀과 일반적인 버퍼의 차이점은 버퍼의 경우 여러 프로그램에 데이터들을 모아서 한번에 전송하지만 

스풀러의 경우 예를 들어 한 인쇄물이 완료될때까지 다른 인쇄물이 끼어들 수 없는 거 처럼 한 군데에서의 것만 모아서 전송합니다.

 

📝로더

디스크 내용을 메모리로 끌고 온다

 

📝FAT

디스크에 저장되어 있는 파일이 있으면 디스크 영역 위치에 대한 정보를 가지고 있다.

 

📝인자 vs 매개변수

인자 (Argument)

int A (int ab) {
   cout >> ab;
}

[ab] 가 인자값이다.
매개변수 (Parameter)

A(ac); 

ac가 파라미터값이다.

 

반응형
반응형

📝프로그래밍

순서를 만드는 행위를 의미한다

 

📝프로그래밍언어

컴퓨터 시스템을 구동시키는 소프트웨어를 작성하기 위한 형식언어이다 (자바, C, C++등..)

 

📝마크업언어

프로그래밍 능력은 가지고 있지 않고 태그로 구성되어있다

  • HTML

 

📝스크립트 언어

프로그래밍에서 스크립트(script)라는 용어는 다른 프로그램에 의해 번역되어 수행되는 프로그램 명령어의 집합입니다.

C++이나 Java와 같이 컴파일 과정을 거쳐 컴퓨터의 프로세서(CPU)가 이해할 수 있는 상태로 변환하여 사용하는 것과는 달리, 스크립트 언어는 텍스트 형태로 된 여러 명령어들을 다른 프로그램이 읽어서 번역하고 실행하는 방식을 채택합니다.

 

예를 들어, JavaScript웹 브라우저에 내장된 JavaScript 해석기가 번역을 하여 실행합니다.

PHP 프로그램PHP에 의해, JSP 프로그램Tomcat이나 웹로직(weblogic) JRun과 같은 JSP 컨테이너에 의해 해석됩니다.

 

스크립트 언어는 일반적으로 배우기가 쉽고 프로그래밍 속도가 빠르다는 장점이 있습니다.

그러나 실행 속도가 일반적으로 느리고 제한된 범위 내에서 사용되는 등의 단점도 있습니다.

이는 컴퓨터가 매번 서버에서 번역을 하여 실행하기 때문에 발생하는 현상입니다.

 

세밀한 제어가 어려울 수 있고 실행 속도가 다른 언어에 비해 느릴 수 있습니다

스크립트 언어는 주로 서버측(Server side)에서 실행되거나 클라이언트측(Client side)에서 실행되는데, 서버측에서 실행되는 언어는 주로 HTML 결과물만을 생성하므로, 라이언트측에서 실행되는 언어에 비해 보안성이 뛰어나며 서버측의 DB 연동 등과 같은 유연한 기능을 구현할 수 있습니다

따라서, JavaScript와 같은 클라이언트 측 스크립트 언어는 주로 보조적인 수단으로 사용되며, 서버측에서 실행되는 스크립트 언어는 서버 기능을 보다 강화하고 보안성을 강화하기 위해 활용됩니다.

 

📝어셈블러

어셈블리어를 기계어로 변환

 

📝어셈블리어

 

📝정적타입언어

소스 코드를 보고 변수의 타입을 판단

 

📝동적타입언어

실행할 때 변수의 타입을 판단 (파이썬의 특징)

 

📝기계어

0 , 1 로 표현 되는 것들을 의미한다. 이것들이 모여서 글자를 이루거나 숫자를 이루거나한다.

 

📝저급언어

기계어에 가까운 언어 예) 어셈블리어

 

📝고급언어

인간이 이해하기 쉬운 언어 기계는 바로 이해할 수 없기 때문컴파일로 통해 기계어로 바꿔야한다 ( 자바 , C , C++ ...)

 

반응형
반응형

📝UTF-8

유니코드사에서 모든 언어를 표현하기 위해 만든 코드표

길이가 앞에 뭐가 붙냐에 가변적으로  1바이트로 읽을지 2바이트 읽을지 .. 정한다

[영문 1바이트 한글 3바이트] 문자 한개를 표현하기 위해 8bit 필요하고 문자 하나를 표현하기 위한 바이트 범위 1~ 4바이트 모바일에도 잘 쓰이기 때문에 UTF-8을 자주 사용

 

📝UTF-16

문자 한개 16bit 필요하고 문자 하나를 표현하기 위한 바이트 범위 2~4 [영문 2바이트 한글 2바이트]

 

📝인코딩

사람이 인지할 수 있는 형태(글자나 숫자등..)의 데이터를 약속된 규칙에 의해 컴퓨터가 사용하는 0과 1로 변환하는 과정

 

📝디코딩

인코딩된 파일(0 1 로 만들어버린)을 읽어내는 과정

 

📝MS949

한글 확장 완성형

 

📝CP949

한글 완성형

 

📝MS949 vs CP949

MS949의 경우 CP949와 같다는 말이 많지만 MS949의 경우 똠방각하 표현이 가능하지만 하다

CP949의 경우 똠방각하 표현이 불가능 또한 MS949라는 건 자바에서만 사용한다

즉, CP949끼리는 CP949끼리 통신하고 MS949의 경우 MS949끼리 통신하는게 좋다

 

📝EUC-KR

EUC는 아시아계 문자를 표현하기 위해 개발한 코드 체계이다.

EUC-KR = KSC5636 + KSC5601

 

📝KS-5601

자주 쓰이는 2350자만 가나다 순으로 배열이 되어있다.

한글 문자수는 11176개라 나머지 8000여개는 없는 셈이다.

 

📝KSC5636

영문자에 대한 표준 기존 ASCII Code에서 역슬래쉬(\)를 원(\) 표시로 대체

 

📝ISO-8859-1

서유럽 언어 표기에 필요한 문자 코드

 

  • 이미 깨져서 생성된 String 객체의 바이트 배열은 어떤 방식으로든 복구 불가능하다
  • EUC-KR < CP949 범위가 더 넓다

 

 

 

반응형
반응형

📝마이크로프로그램

마이크로 명령어들이 모인 프로그램을 처리한다 ROM에 있음

 

📝마이크로명령어

load 나 save같은 기능을 만들기 위해 들어간 아주 작은 명령어

 

📝시스템소프트웨어

컴퓨터를 위해 개발된 것 (운영체제 같은 것)

 

📝운영체제

시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록

 

📝ALU

연산처리 해주는 장치

 

📝CU

제어장치

 

📝PC (프로그램 카운터)

다음 명령어 주소를 기억한다

 

📝OP - Code

Operation 즉, 연산자를 의미한다.

📝Operand

값이 저장되어 있는 주소를 의미한다.

반응형
반응형

📝조합논리회로

논리 게이트의 조합으로 만들어지는 회로

 

📝순서논리회로

기억능력을 가지고 있는 회로 (플립플롭으로 만들어짐)

 

📝플립플롭

1비트 기억소자

 

📝논리게이트

📝CISC

마이크로프로그램 제어방식 (자유로운 명령어 길이)

 

📝RISC

하드와이어드 제어방식 (고정 명령어 길이)

 

📝클럭

메인보드클럭 발생기가 만들며 높을수록 처리속도가 빠르다 (모든 부품은 클럭신호에 맞춰 동작)

 

📝외부클럭

시피유 노스브리지 메인메모리 사이 데이터전송속도 FSB라고도 한다

 

📝내부클럭

CPU 내부 데이터 전송속도

 

📝노스브리지

CPU에 내장되어 CPU 바이오스 램 등 사이의 통신 관장

반응형
반응형

📝프로세스

단순히 실행 중인 프로그램으로 프로세스는 단순한 껍데기일 뿐, 실제 작업은 스레드가 담당

 

📝스레드

프로그램은 여러 스레드로 돌아가고 있다 일반적으로 메인 쓰레드가 있고 내가 임의대로 만들어서 사용할 수도 있다 그러면 병렬적으로 처리하는 효과로 빠르게 처리가 가능하다.

 

📝멀티스레드

하나의 프로세스 내에서 다수의 스레드가 동시에 수행되는 것이다

 

📝동기식

순서대로 처리하는 것이고 (일반적으로 프로그래밍 동작과정)

 

📝비동기식

순서대로가 아닌 방식으로 처리한다 (멀티스레드)

 

📝동적

자동으로 자발적으로 해준다.

 

📝정적

수동으로 해줘야하는 것

반응형
반응형

📝MariaDB

오라클은 MySQL을 인수하면서 상업적으로 MySQL을 이용할 시 사용료를 내도록 정책을 바꾸어 버렸습니다

그러나 오라클의 정책에 반발한 AB사에서 핵심 창업자중 한 명이었던 몬티 와이드니어스가 2009년 동료들과 나와 MySQL코드 기반으로한 오픈소스 RDBMS를 개발한 것이 지금의 MariaDB입니다

상용으로 사용하기 위해서 돈을 내야하는 MySQL과 다르게 (교육용, 개발용은 상관 없음) MariaDB는 무료로 사용할 수 있습니다

그래서인지 오픈소스와 친숙한 리눅스(linux) 진영에서는 MySQL 대신에 MariaDB를 표준으로 채택하고 있습니다 MariaDB사가 제작한 오픈소스 RDMBS 소프트웨어입니다

 

 

📝데이터베이스

여러 사용자가 공유하고 동시에 접근가능한 데이터의 집합을 의미한다

 

  1. 오류가 있어서는 안되고 중복되면 안 된다 (데이터의 무결성)
  2. 파일 저장소가 변경하더라도 작성된 응용 프로그램은 전혀 영향을 받지 않는다 (데이터의 독립성)
  3. 접근이 허가된 사람만 접근 (보안)
  4. 데이터의 중복을 최소화 할 수 있다. (데이터 중복 최소화)
  5. 유지보수가 쉽다
  6. 데이터 손상이 발생해도 원래 상태로 복원 또는 복구할 수 있다

 

📝RDBMS (관계형 데이터베이스)

데이터베이스는 테이블이라는 최소 단위로 구성되어 있습니다.

 

아이디 회원 이름 주소
Dang 당탕이 경기도 부천시 중동
Jee 지운이 서울 은평구 중산동

 

📝CRUD

  • Create , Read , Update, Delete의 약어이다
    • CRUD를 구현하는게 기본적이다.

 

예를 들어서 게시판의 경우 게시글을 등록(Create) 게시글을 삭제(Delete) 게시글을 변경(Update) 게시글을 읽기(Read)

또한 아이디 생성, 아이디 삭제, 아이디 정보변경, 아이디 접속 같은 경우이다

따지고보면 무조건 들어가는 부분이다 그래서 게시글 CRUD구현하셨어요? 이렇게 물어본다고 한다.

 

  • Create
    • POST메서드를 사용해 서버에 정보 올려달라는 요청
  • Read
    • GET 메서드를 사용해 정보를 불러오는 요청
  • Update
    • PUT, PATCH 메서드정보를 바꾸는 요청
  • Delete
    • DELETE 메서드를 사용해 리소스 삭제
반응형
반응형

📝공통점 (C와 C++)

  1. Unix 운영체제의 개발을 위해 만들어졌고 프로그래밍 하는데 있어 제한점이 거의 없다
  2. 실행 속도가 빠르다
  3. 하드웨어에 밀접한 관계가 있다
  4. CPU의 속도나 메모리의 용량이 충분하지 않았기 때문에 프로그램의 크기는 작아야 했고 속도는 빨라야 해서 개발 되었다

 

📝차이점 (C와 C++)

  1. C++은 C보다 개발이 훨씬 유용하다(객체지향)
  2. C는 처리속도가 C++보다 빠르다

 

📝C

프로세싱파워가 약하고 공간을 적게쓰는 특징이 있다 기계어에 가까워 수동이며 기계가 빨리작동한다

유닉스(운영체제) 개발용 언어로 개발되었다 운영체제는 거의 C언어로 만들어졌다 (이식성이 강함) 컴파일 과정이 단축

 

📝C++

C에 확장판 Class의 차이가 있다 기계어에 가까워 수동이며 기계가 빨리작동한다

 

📝C#

Java랑 비슷하다 기업용 언어 수동으로 이루어지지 않는다. 개발속도가 빠르다 (편리함)

반응형
반응형

📝Float vs Double

  • float 4바이트 실수형 < double 8바이트 실수형
  • double이 정밀도 높다(소수를 더 많이 표현 가능)

 

📝실수타입 vs 정수타입

  • 정수타입이 정수 처리가 실수처리보다 10배 빠르다

 

📝아스키코드

문자와 정수가 1대1로 연결된 코드 체계 (영어만 있다) 7비트로 한 문자 표현 1비트는 패리트비트를 써서 총 8비트

( 예 ) A를 저장할시 65를 저장합니다. )

 

  • (A~Z) 26 + (a~z) 26 + (0~9) 10 = 62 + 66 (특수문자) + (회사별 국가별) 128
  • 256 = 2^8 = 1byte한 문자를 처리하는데 필요한 경우의 수를 처리 가능합니다.
  • 128 ~127 (들어갈 수 있는 정수 범위) (8비트)

 

  • binary digit (bit)
    • 0 또는 1로 표현 함 2진수 → 010000101(2)



📝Bus

메모리와 cpu 사이 통로로 속도를 관여한다

 

📝버퍼 메모리

데이터를 한 곳에서 다른 한 곳으로 전송하는 동안 일시적으로 그 데이터를 보관하는 메모리의 영역으로 출력장치의 느린 속도 보완 실행과 동시에 다음 레코드를 미리 읽어서 주기억 장치에 저장함으로써 cpu가 필요한 레코드를 기다림이 없도록 하는 것

 

 

📝캐시

데이터나 값을 미리 복사해 놓는 임시 장소를 가리킨다. (CPU와 주기억 장치 속도 차이 극복을 위해서) 

캐시는 캐시의 접근 시간에 비해 원래 데이터를 접근하는 시간이 오래 걸리는 경우나 값을 다시 계산하는 시간을 절약하고 싶은 경우에 사용한다

CPU 속도가 상대적으로 100으로 처리하면 다른곳에서 받는데 10속도가 걸려서 노는 시간이 생기므로 노는 시간을 없애준다

레지스터와의 차이는 레지스터의 경우 명령어들을 올려놓고 처리하기 위해 대기하는 거라면 캐시의 경우는 이미 처리했던 명령어이거나 데이터의 정보를 가지고 있기 때문에 빠르게 접근해서 원하는 결과값을 빠르게 줄 수 있다.

반응형