본문 바로가기

전체 글232

기본기 닦기(5) - API,Rest API ㅇ API(Applicaition Programming Interface) 개념 : 한 프로그램에서 다른 프로그램으로 데이터를 주고 받기 위한 방법. 이렇게 한줄로도 설명가능하다.쉬운예시로 리모컨에 버튼이 하는역할이 API라고 생각하면 쉽다. 다른 예를 들어보면, 날씨 앱이나 지도 앱을 통해 어떻게 API가 사용되는지 생각해보자. 날씨 앱은 실시간으로 날씨 정보를 DB로부터 받아오는 것처럼, API는 앱과 다른 소프트웨어 간에 데이터를 주고받는것이다. 구성 : 앞에 POST는 HTTP 메서드로써, 주로 DB에 새로운 데이터를 넣을때, 리소스를 생성할 때 사용한다. POST 메서드 말고도 다양하게 존재한다. 이것들은 밑에서 알아보자. 다음으로 서버의 주소. 밑의 예시는 로컬에서 테스트할때라 localhos.. 2024. 1. 3.
기본기 닦기(4) - 프로세스/스레드, ㅇ 프로세스/스레드 만약 한 게임을 온라인상에서 pc에 다운로드 받는다고 생각해볼때, 다운로드받는동안 마우스커서도 안움직이고, 아무런 동작이 되지 않는다고 치면 많이 답답할 것이다. 하지만 옛날엔 이런방식이었다. 옛날엔 한번에 하나의 작업만 해낼 수 있었다. 하지만 현재는 그렇지 않다. 바로 pc가 여러개의 프로세스를 한번에 작업할 수 있는 멀티태스킹이 가능해졌기 때문이다. 작업관리자를 보면 여러개의 프로세스가 동시에 실행되고 있는걸 확인 할 수 있고, 고유의 PID도 있다는것을 확인 할 수 있다. 여러 프로세스를 함께 돌리는 작업은 동시적, 병렬적, 또는 혼합으로 이뤄진다. 동시성은 프로세스하나가 이것조금 저것조금 하면서 여러작업을 돌아가면서 일부분씩 진행하는것을 의미하고, 병렬성은 프로세서하나에 여러.. 2024. 1. 2.
기본기 닦기(3) - OOP의 4가지특징과 SOLID 간만에 쓴다. 연말이라고 너무 해이해졌다. 다시 열심히 해보자. 오늘은 OOP의 5대원칙(SOLID), 4가지 특징에대해 포스팅 해보겠다. ㅇ OOP의 4가지 특징 OOP는 다들 알다시피 객체지향프로그래밍이다. 객체지향 프로그래밍의 4가지 특징은 캡상추다. 캡슐화 : 쉽게말하면 데이터와 해당 데이터를 다루는 메서드를 클래스라는 캡슐에 넣어 객체의 내부 구현을 외부로부터 숨기고, 외부에선 오직 공개된 메서드를 통해서만 객체와 상호작용을 하도록 만든것이다. 왜 이렇게 할까? 정보은닉을 통한 장점으로 외부의 직접적인 접근을 방지해 객체의 내부 구현이 바뀌더라도 외부 코드에 미치는 영향이 최소화된다. 이는 유지보수성도 좋아진다. 구현방법은 멤버변수에 접근제어자를 private로 설정하고 getter/setter.. 2023. 12. 28.
기본기 닦기(2) - 빌드/컴파일, 웹서버/내장서버 ㅇ 빌드 프로젝트를 만들고 개발하는 과정에서 빌드라는걸 들어보거나 해봤을것이다. 근데 이걸 왜 해야하고 빌드가 대체 뭐하는 걸까? 빌드란 소스코드 파일을 실행 가능한 산출물로 변환하는 것이다. 정말 잘 정리해두신 블로그가 있어 거기서 발췌 해 봤다. 빌드? 프로그래머가 작성한 소스 코드를 실행할 수 있는 독립적인 형태(.war, .jar)로 변환하는 과정 및 결과를 말한다. 변환하는 과정에는 컴파일 과정도 포함이 된다. 예를 들어 개발자가 이클립스나 인텔리제이와 같은 IDE로 java코드를 작성하면 개발자는 '실행'버튼을 눌러서 코드의 결과물을 볼 수 있다. 그런데 개발자가 아닌 사용자가 코드의 결과물을 보려면? 사용자가 자바를 설치하고 IDE를 설치하고 해당 코드를 가져와서 실행을 눌러야 하는가? 아니.. 2023. 12. 22.