절차형 프로그래밍은 로직이 순차적이고 연속적인 계산 과정으로 이루어져 있으며 일이 진행되는 방식을 그대로 코드로 구현하는 접근 방식이다.
절차에 따라 코드가 실행되기 때문에 가독성이 좋고 실행 속도가 빠르다는 장점이 있다. 다만 모듈화가 어렵고 유지보수성이 떨어진다는 단점이 있다.대표적인 예로 Fortran을 활용한 대기 과학 관련 연산 작업과 머신 러닝의 배치 작업이 있다.
반복문을 활용하여 최댓값을 찾는 절차를 표현한 예시
const ret = [1, 2, 3, 4, 5, 11, 12]
let a = 0
for (let i = 0; i < ret.length; i++) {
a = Math.max(ret[i], a)
}
console.log(a) // 12
여러가지 프로그래밍 패러다임을 알아보았는데, 여기서 어떤 패러다임이 제일 좋은거냐 물어보면 답은 "그런 것은 없다"라는 것이다.
비즈니스 로직이나 서비스의 특징을 고려해 적합한 패러다임을 선택하는 것이 중요하다.
하나의 패러다임을 통일해 서비스를 구축하는 것도 좋지만,
여러 패러다임을 조합해 상황과 맥락에 맞는 장점만 취하는 것도 효과적인 방법이다.
백엔드 머신 러닝 파이프라인에는 절차형 프로그래밍을 적용해 순차적인 작업을 구성하고,
거래 관련 로직에는 함수형 프로그래밍을 적용해 데이터의 변화를 최소화하는 설계를 활용할 수 있다.
이를 통해 각 패러다임의 장점을 극대화하며 효율적이고 유지 보수 가능한 시스템을 개발할 수 있다.