개발지식

· 개발지식
리팩토링이란? 리팩토링은 소프트웨어의 코드 구조를 변경하는것을 말합니다. 즉, 기존의 나쁜코드들을 청소하여 깨끗한 코드(클린코드)를 만드는게 목적입니다. 그렇다면 왜 리팩토링을 하는것일까요? 코드를 이해하기 쉽게 만들기위해서 성능을 높이기 위해서 안정성을 높이기 위해서 리팩토링은 언제 하나요? 1.에러(문제)가 여러번 발견됐을 때 ( 리팩토링을 하면서도 에러가 발견될 수도있습니다.) 2. 기능을 추가 하기 전(코드가 작동을하는지 기능을 추가하면서 기존코드와 통일감을 주기위해서) ex) API URI 설계중에도 URI를 변경하는것도 리팩토링이 될 수있습니다. 3. 코드 리뷰할 때 예외 ) ⭐배포, 운영직전⭐에는 리팩토리를 해서는 안됩니다.
· 개발지식
라이브러리와 프레임워크 라이브러리와 프레임워크 되게 많이 듣는 단어인데요. 비슷한 거 아닌가? 생각이 들지만 조금씩 차이가 있습니다. 오늘은 그 차이에 대해서 설명하려고 합니다. 프레임워크는 원하는 기능을 개발할 수 있도록 필요한 기능을 가지고 있는 뼈대입니다. 라이브러리는 개발을 할 때 특정 기능을 모아둔 코드, 함수들의 집합을 말합니다. 쉽게 얘기하면 프레임워크는 하나의 방, 라이브러리는 하나의 소품이라고 할 수 있는 것입니다. 라이브러리란? 라이브러리는 내가 원하는 걸 가져다 쓸 수 있다는 장점이 있지만 양이 많기 때문에 찾는 시간이 오래 걸리는 단점도 가지고 있습니다. 프로그래밍을 할 때 활용할 수 있는 도구들의 집합이다. class나 function으로 정의하며 필요할 때 호출해서 사용한다. 라..
· 개발지식
CS란? CS는 Computer Science의 약자로 컴퓨터 과학입니다. 컴퓨터 과학이라는 이름 그대로 컴퓨터와 관련된 다양한 지식들을 포함하고 있는데요 소프트웨어, 하드웨어, 알고리즘, 자료구조, 네트워크, 데이터베이스, 요즘 많이 나오는 인공지능과 같은 다양한 지식을 합쳐서 CS라고 부르는 것이죠. 그렇다면 저 많은 과목들 중에 어떤 과목을 집중적으로 배워야 할까요? CS에 모든 것을 알면 좋겠지만 전부 다 익히는 건 힘든 일이라는 것을 너무 잘 알고 있습니다. 그래서 흔히 5대 과목이라 불리는 자료구조, 알고리즘, 운영체제, 데이터베이스와 네트워크에 대해서 익히고 이 이후에 조금씩 다른 과목으로 넓혀가는 걸로 생각하면 좋을 것 같습니다. 도저히 어떻게 접근을 해야 할지 모르겠다면 정보처리기사 준비..
· 개발지식
REST 하다는 말이 무엇일까? 쉽게 말해 "웹의 장점을 최대한 활용한 통신방식"이라는 말입니다. 그렇다면 REST의 특징에는 어떤 게 있을까요? REST란? REST는 Representational State Transfer의 약자로 리소스의 이름으로 구분하여 정보를 주고받는 것을 말합니다. 이때 REST는 HTTP 프로토콜을 그대로 활용하기 때문에 웹의 장점을 최대한으로 활용할수 있는 아키텍처 스타일인데요 네트워크 상에서 클라이언트와 서버를 이어주는 통신 방식 중에 하나입니다. REST의 특징 1. Server-Client 구조 : 서버는 API를 제공하고 클라이언트는 인증이나 세션, 로그인 정보들을 관리하는 역할을 구분하고 있어 서로의 의존성을 줄일 수 있습니다. 2. Stateless(무상태성) ..
· 개발지식
API는 Application Programming Interface의 약자로 똑같은 함수를 다시 만들 필요 없이 원하는 기능의 라이브러리 함수를 사용함으로써 보다 효율적인 프로그래밍이 가능하게 하고 라이브러리에 접근하기 위한 규칙들을 정의한 것을 말합니다. 또한 우리가 필요한 데이터베이스에 직접적으로 접근을 하는 게 아니라 API가 매개체가 되어 데이터베이스에서 데이터를 가져와주고 데이터를 넣어주는 역할을 합니다. API를 들어보셨다면 그다음으로 들어보셨을 단어가 바로 REST API입니다. API는 과거에 HTTP 형식을 따르지 않고 만들었지만 최근에는 HTTP 규약을 잘 따른 API를 만들기 시작했는데 그게 바로 REST API입니다. 그렇다면 RESTful API는 어떤 걸까요? REST API ..
· 개발지식
화면을 구성하고 만드는 작업을 프론트엔드 보이지 않는 서버에서 작업을 하는 게 백엔드라고 많이들 알고 있습니다. 그렇지 않나요? 이 두 개념을 조금 더 이해할 수 있게 설명해보려고 합니다. 프론트엔드 프론트엔드가 하는 일은 어디까지 인걸까요? 화면만 만드는게 프론트엔드 영역일까요? 흔히 클라이언트라고 부르는 부분을 프론트엔드가 작업한다라고 하는데요. 사실 클라이언트는 크게 두 가지 의미를 갖고 있습니다. 첫 번째, 클라이언트는 사이트를 이용하는 사용자를 말합니다. 이때 사용자가 바로 서버에 데이터를 요청하는 것이 아니라 프론트엔드에 요청을 하게 되는 것입니다. 두 번째, 또 하나로는 클라이언트 자체가 프론트엔드인 겁니다. 백엔드 보이지 않는 서버에서 작업을 하는 백엔드, 백엔드는 요청을 받으면 데이터 처..
코드둥
'개발지식' 카테고리의 글 목록 (2 Page)