Functional Programming in Data Engineering with Python — Part 1

Preface 📖

This is an introduction to a series on functional programming in data engineering using Python. Here I lay out some of the fundamental concepts and tools found in functional programming using Python code.

이 글은 파이썬을 이용한 데이터 엔지니어링의 함수형 프로그래밍을 소개하는 part.1 시리즈이다. (원작자의 글은 위의 URL을 참고하기 바란다.) 여기서 나는 파이썬 코드를 이용해서 함수 프로그래밍에서 발견되는 몇가지 기본 개념과 도구들을 정리할 것이다.

What is functional programming?🎛️

Functional programming is a declarative type of programming used to build bug-resistant programs and applications through the use of functions.

함수형 프로그래밍은 보그 방지 프로그램과 함수를 사용하여 application을 빌드하는 선언적인 프로그래밍 방식이다.

In other words, it’s a computing paradigm that emphasizes the use of pure functions and immutable data structures for mitigating side effects instead of specifying the steps on how to perform tasks (imperative programming).

다른 말로, 이것은 작업 수행 방법에 대한 단계를 지정(명령형 프로그래밍 방식)하는 대신 사이드 임팩트를 지향 하기 위해서 **순수 함수(Pure function)**와 불변의 데이터(Immutable Data) 구조를 사용하는 것을 강조하는 하나의 컴퓨팅 패러다임이다.

What is a function?🔄

A function is an object that turns inputs into outputs. So you put something in it, and something else comes out of it, with internal operations making it possible behind the scenes.

함수는 입력을 출력으로 바꿔주는 하나의 오브젝트이다. 그래서 당신은 오브젝트에 뭔가를 넣으면, 그 안에서 또 다른 것이 나오고, 내부적인 작업들이 뒤에서 가능하게 한다.