🤔클린 코드가 무엇인가요? 말 그대로 읽기 쉬운 코드가 바로 클린 코드. 저명한 개발자들은 클린 코드를 다음과 같이 정의했습니다. "클린 코드는 단순하고 직접적이며, 최대한 읽기 쉽고 수정하기 쉽습니다. 클린 코드는 의도를 명확하게 표현하며, 작성자의 의도대로 동작합니다. 이는 잘 작성된 소설을 읽는 것처럼 읽기 즐거워야 합니다." -로버트 C. 마틴(Robert C. Martin)의 책 "Clean Code: A Handbook of Agile Software Craftsmanship” "클린 코드는 어떤 사람도 수정하고 싶어하지 않도록 작성하는 코드다." - 워드 커닝햄(Ward Cunningham, 애자일(Agile) 개발 방법론과 익스트림 프로그래밍(Extreme Programming)의 창시자)..
객체지향 프로그래밍과 절차지향 프로그래밍의 차이를 알기위해 먼저 객체지향이 무엇인지, 절차지향이 무엇인지에 대해 알아봅시다. 🤔객체지향 프로그래밍(OOP, Object-Oriented Programming)이란? 소프트웨어 개발 패러다임 중 하나로, 객체(Object)와 그 객체들 간의 상호작용을 모델링하여 프로그램을 구성하는 방법론입니다. 코드 재사용성과 유지보수성을 향상시키는 등의 장점을 가지고 있어 현대적인 프로그래밍 언어들에 널리 사용되고 있습니다. 😀객체지향 프로그래밍의 특징 클래스와 객체 클래스는 객체를 만들기 위한 템플릿으로 객체를 정의하는 프로퍼티와 메서드의 집합입니다. 객체는 클래스로 만들어진 인스턴스로 실제 메모리에 할당된 데이터를 가지고 있습니다. 캡슐화 캡슐화는 클래스의 세부사항을 ..
저에겐 API라는게 개발 공부를 하면서 많이 사용하고, 들어본 것이지만 설명해보라 한다면 어떻게 설명해야 될지 잘 모르겠는 그런 개념 입니다. 그래서 이번에는 API가 무엇인지 정확하게 알고, RESTful API에 대해서 알아보도록 합시다! 🤔API란 무엇일까? API는 정의 및 프로토콜 집합을 사용하여, 두 소프트웨어 구성 요소가 통신할 수 있게 하는 메커니즘 입니다. Application Programming Interface의 줄임말 입니다. 이는 고유한 기능을 가진 소프트웨어(Application)사이의 상호 서비스 계약(Interface)라고 할 수 있습니다. 🤔REST API? 오늘날 웹에서 가장 많이 사용되고 유연한 API REST (Representational State Transfer..
티디딕…? TDD…? 처음 들어 봅니다. 그래서 짚고 넘어가려고 합니다! 🤔TDD 가 뭐야? TDD (Test Driven Developmnet)란 소프트웨어 개발 방법의 하나입니다. 소프트 웨어를 개발하는 과정에서 테스트코드를 작성하고 이를 기반으로 실제 코드를 작성하는 방법을 말합니다. TDD의 단계는 다음과 같습니다 테스트 작성 (TEST) : 구현되지 않은 기능에 대한 테스트 케이스를 작성합니다. 테스트 실행 및 실패 확인 (RED) : 테스트를 실행하고 실패하는지 확인합니다. 코드작성 (GREEN) : 실제 코드를 작성합니다. 최소한의 코드만으로 작성하여 테스트에 통과하는 것이 목표입니다. 💪TDD의 장점? 신뢰성 향상 : 익숙하지 않은 기능을 개발할 때 테스트 케이스를 작성함으로 써 버그 발생..
많이 들어본 함수형 프로그래밍. 오늘은 함수형 프로그래밍이 무엇인지 짚고 넘어갑시다. 🤔함수형 프로그래밍이란? 함수형 프로그래밍은 자료 처리를 수학적 함수의 계산으로 취급하고, 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임의 하나입니다. 프로그래밍 패러다임? 프로그래머에게 프로그래밍의 관점을 갖게 해주고, 결정하는 역할을 합니다. 구조적 프로그래밍과 비구조적 프로그래밍, 명령형과 선언형, 절차적(PP)과 객체지향(OOP)과 함수형 등 여러가지가 있습니다. 🤔함수형 프로그램의 원리? 함수형 프로그래밍은 선언형 프로그래밍 패러다임을 따르고 있습니다. 계산 가능성, 결정문제, 함수정의, 함수응용과 재귀를 연구하기 위해 개발된 형식 체계인 람다 대수에 근간을 두고 있습니다. 다수의 프로그래밍 언어들은 람다 ..
MVC - MDN Web Docs 용어 사전: 웹 용어 정의 | MDN MVC (모델-뷰-컨트롤러) 는 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 널리 사용되는 소프트웨어 디자인 패턴입니다. 소프트웨어의 비즈니스 로직과 화면을 구분하는데 중점을 두고 developer.mozilla.org 🤔MVC란 무엇인가? MVC(Model - View - Controller)는 사용자 인터페이스, 데이터 및 논리 제어를 구현하는데 사용되는 소프트웨어 디자인 패턴입니다. MVC에 기반을 둔 다른 디자인 패턴으로는 MVVM(모델-뷰-뷰모델), MVP(모델-뷰-프리젠터), MVW (모델-뷰-왓에버) 가 있습니다. 🤔MVC의 목적? 소프트웨어의 비지니스 로직과 화면을 구분하여 효율성을 향상시킵니다. 🤔MVC의 원..