컴퓨터 프로그래밍은 하나 이상의 관련된 추상 알고리즘을 특정한 프로그래밍 언어를 이용해 구체적인 컴퓨터 프로그램으로 구현하는 기술을 말한다.한편 코딩은 작업 흐름에 따라 프로그래밍 언어의 명령문을 사용해 위의 프로그램을 작성하는 일, 혹은 그 코드를 작성하는 작업으로
컴퓨터 프로그래밍 패러다임을 분류하는 여러 기준이 있다. 구조와 비구조, 값과 함수, 흐름과 이벤트, 스칼라와 배열 등 현재 필자도 모르는 다양한 기준 속에서 해당 기준을 선택한 이유는 최종 목적지가 Reactive이기 때문이다. 목적지를 이해하기 위한 수단으로 공부를
절차지향이라고 많이 알려져 있는 절차적 프로그래밍은 번역 때문에 오해의 여지가 크다. Prodedural에 해당하는 프로시저를 그냥 절차 혹은 절차지향이라고 번역했기 때문이다. 절자적 프로그래밍은 절차를 중시하는 프로그래밍이라는 뜻이 아니라 (사실 모든 프로그램은 절차
순차적, 비구조적 프로그래밍말 그대로 순차적으로 코드를 적어나가는 것이다. 필요한게 있으면 계속 순서대로 추가하며 구현하는 방식이다. 단순할 때야 직관적으로 느껴지겠지만 규모가 커질 수록 직관성이 현저하게 떨어진다.이런 비구조적 프로그래밍에서는 goto문을 활용한다.
최신 언어들은 대부분 다 반영하는 프로그래밍 패러다임이다. 사실 이렇다고 말하지만 swift만 제대로 써봤기 때문에... swift가 그렇다. 새로운 시각과 관점이 필요하기에 명령형에 익숙한 사람들에게 전환이 쉽지 않다고 한다. 그래도 앞으로 대세이기 때문에 꼭 알아두
드디어 프로그래밍의 여러 축을 넘어 프로토콜 지향 프로그래밍으로 넘어왔다. 개인적으로 다음 글인 반응형 프로그래밍과 함께 가장 눈여겨보고 중점적으로 고려해야 겠다(사실은 배워가고 적용해야 겠다) 생각한 패러다임이다. 이 패러다임의 이해를 위해 프로토콜, 익스텐션, 제네
시리즈를 시작할 때도 이야기했지만, 프로그래밍 패러다임을 정리하려는 계기는 Rx 때문이었다. Rx를 프로젝트에 적용하고 나름 열심히 공부하며 사용했지만, 이게 왜 함수형 프로그래밍인지, 반응형 프로그래밍은 뭔지, 선언형은 뭔지, 선언형과 명령형은 차이가 뭔지, 그럼 내
Open System Interconnection reference model네트워크 프로토콜 디자인과 통신을 계층으로 추상화해서 설명하는 모델이다. 통신이 일어나는 과정을 단계별로 알 수 있고 오류 발생시 해당 단계를 수정하면 되는 장점이 있다.하위 단계일수록 하드웨
패킷은 정보 기술에서 패킷 방식의 컴퓨터 네트워크가 전달하는 데이터의 형식화된 블록이다. 패킷은 제어 정보와 사용자 데이터로 이루어지며, 페이로드라고도 한다.특정 동작을 수행할지 말지 결정하는 (보통 1비트인) 변수를 플래그라고 부른다TCP FLAG 6가지 구성, 이
모든 자원(Resource)을 HTTP URI(Uniform Resource Identifier)로 표현하고, '행위'에 해당하는 HTTP Method(GET, PUT, POST, DELETE)를 통해 해당 자원에 대해 CRUD를 지시하는 소프트웨어 아키텍처의 형식 하