네트워크
-
[Careerthon] 함수형 프로그래밍이란?네트워크/CS Study 2023. 11. 9. 17:40
함수형 프로그래밍이란? 명령형과는 다른 선언형 프로그래밍 패러다임의 일종으로 함수단위로 프로그래밍을 하는 것을 의미한다. 이때 함수는 순수함수만을 이용해야한다. 이 순수함수라고 함은 같은 input값에 대해서 항상 같은 output을 생성하는 것으로 외부의 상태를 변형하지 않고 side-effect가 없는 함수를 의미한다. 예를 들면 함수 밖의 num라는 값이 선언 되어있고 이 값이 함수 내부에서 활용이 된다면 num의 값에 따라서 함수의 return값이 달라지기에 순수함수라고 할 수 없다. 장점으론 모듈화와 유지보수가 용이하고 핵심개념에 대해서는 불변성을 유지하는 것이 중요하다 고차함수란 함수의 반환 값으로 다른 함수를 사용하거나 함수의 반환값으로 또 다른 함수를 사용할 수 있는 함수이다.
-
[Careerthon] 프로그래밍 패러다임네트워크/CS Study 2023. 11. 9. 17:31
개요 프로그래밍 패러다임이란? 종류와 특성 프로그래밍 패러다임 프로그래밍 분야에 적용할 수 있는 이론이나 틀,체계라고 볼 수 있다. 개발자가 어떻게 프로그래밍을 할 것인가란 의문에 대해서 특정 관점이나 방식을 바탕으로 프로그밍을 실시하게 되기에 상당히 개념 중심의 내용이다. 프로그래밍의 변화 절차적 프로그래밍(PP, Procedure Programming) 객체지향 프로그래밍(OOP, Object Oriented Programing) 함수형 프로그래밍(FP, Functional Programing) 등장의 시기는 역순이지만 각광받는 시기는 절차에서 함수로 내려온다. 단순히 등장순서에 따라서 우월을 판단하는 것이 아닌 접근방식과 사용환경에 따라서 유동적으로 활용이 된다. 종류와 특성 방법 및 목적에 따라 ..
-
[Careerthon] MVC, MVP, MVVM 패턴네트워크/CS Study 2023. 11. 8. 13:06
개요 디자인패턴이란? MVC패턴 MVP패턴 MVVM패턴 MVC패턴과 MVVM의 차이 디자인패턴 디자인 패턴은 올바른 설계를 빠르게 만들 수 있도록 도와주는 문제해결방법으로 같은 실수를 반복하지 않기 위해서 특정 상황에서 발생하는 문제 패턴을 발견하고 해결방안을 기록해둔 것입니다. 건축학에서 비롯된 이 개념은 소프트웨어를 구축한다는 면에서 동일하게 적용되어 개발자들이 사용하고 있습니다. 라이브러리나 프레임워크가 도와주지 못하는 애플리케이션의 구조를 만드는 데 많은 도움을 주는 것이 바로 디자인패턴입니다. 장점 서로 같은 패턴을 알고 의사소통을 하면 훨씬 효율적이다 다른 개발자나 팀과 소통이 필요한 경우 패턴을 알고 있다면 패턴에 담겨있는 내용과 특성 등에 대해 쉽게 얘기할 수 있다. 내가 생각하고 있는 디..
-
[Careerthon] 페이징과 세그멘테이션네트워크/CS Study 2023. 11. 7. 15:57
개요 왜 알아야하는가? 사전지식 페이징 세그멘테이션 왜 알아야하는가? 어떠한 프로그램을 실행했을 때 컴퓨터에서는 메모리 공간에 프로그램을 연속적으로 할당을 하게 되는데 이때 프로그램의 할당과 해제가 반복되면서 메모리 공간이 조각조각 나뉘어 총 메모리가 충분함에도 메모리 할당이 불가능하게 되는 상태가 되는데 이러한 현상을 메모리 단편화라고 한다. 이러한 메모리 단편화를 막는 기법으로 페이징과 세그멘테이션이 있다. 사전지식 메모리관리기법에 대한 내용과 가상메모리에 대한 개념을 알 필요가 있다 연속메모리기법과 불연속메모리기법 페이징 프로세스를 일정한 크기의 페이지로 분할에서 메모리에 적재하는 방식이다. 메모리 공간이 연속적이어야 한다는 제약을 없애는 메모리 관리 방법이다. 우측의 이미지를 통해서 PMT(Pag..