네트워크/CS Study
-
[Careerthon] 선형자료구조네트워크/CS Study 2023. 11. 10. 11:30
개요 자료구조란? 비선형자료구조 자료구조란? 전산학에서 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법 효율적인 알고리즘을 사용할 수 있게 해준다. 분류) 선형자료구조란 : 데이터를 순차적으로 나열시킨 형태 비선형자료구조 : 하나의 데이터 뒤(안)에 여러개의 자료가 존재한다. 선형자료구조 많은 수의 데이터를 사용할 때 index와 데이터의 1 : 1 구조이기에 자주 활용 된다 index를 이용하여 데이터에 접근이 빠르다 추가 삭제시 번거롭다. Array 가장 기본적인 자료구조 논리적 저장순서와 물리적 저장순서가 일치한다. index로 해당 element에 접근한다 삽입, 삭제 과정에서 해당요소를 삭제하는 작업 + 빈공간에 대해 index를 shift해줘야하는 작업까지 요구 됨 O(n)의 시간을..
-
[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의 차이 디자인패턴 디자인 패턴은 올바른 설계를 빠르게 만들 수 있도록 도와주는 문제해결방법으로 같은 실수를 반복하지 않기 위해서 특정 상황에서 발생하는 문제 패턴을 발견하고 해결방안을 기록해둔 것입니다. 건축학에서 비롯된 이 개념은 소프트웨어를 구축한다는 면에서 동일하게 적용되어 개발자들이 사용하고 있습니다. 라이브러리나 프레임워크가 도와주지 못하는 애플리케이션의 구조를 만드는 데 많은 도움을 주는 것이 바로 디자인패턴입니다. 장점 서로 같은 패턴을 알고 의사소통을 하면 훨씬 효율적이다 다른 개발자나 팀과 소통이 필요한 경우 패턴을 알고 있다면 패턴에 담겨있는 내용과 특성 등에 대해 쉽게 얘기할 수 있다. 내가 생각하고 있는 디..