소개 Python에서 함수는 일급 객체 함수(First-Class Function) 입니다. 일급 객체 함수는 함수를 변수처럼 사용할 수 있다는 의미입니다. argument 로 넘겨줄수 있으며, return 할수도 있고, assign도 할 수 있습니다. 이러한 특징을 이용해서 Closure 을 만들 수 있는데요. Closure가 무엇인지? 언제쓰면 좋은지? 어떻게 구현하는지?에 대해서 정리를 해보도록 하겠습니다. Closure 가 무엇인가? Closure는 일종의 프로그래밍 기법입니다. 위키페디아에서 말하기를 […]
Javascript Fetch vs Axios 차이 비교
소개 Javascript에서 HTTP Requests 를 위한 방법에는 Fetch 와 Axios 두가지가 있습니다. Fetch 가 Built-in APIs 로서 별도의 설치 없이 모던 브라우저에서 사용이 가능하지만, Axios 가 사용하기 쉽고 브라우저 하위 호환성 등 몇몇 이유로 인해 개발자들 사이에서 많이 사용이 되고 있는데요. 네이티브 APIs 를 선호하는 개발자라면 Fetch 를 별도의 설치나 임포트 없이 사용하고 싶어 할 […]
Javascript Module 자바스크립트 모듈 에 대하여
소개 Javascript Module에 대해서 이해하고 조금 더 효율적인 코딩을 위한 방법들을 정리해보고자 합니다. Module이 무엇인지? Module 을 사용하면 무엇이 좋은지? 어떻게 사용하는지? 에 대해서 정리해보도록 하겠습니다. Javascript Module 이란? 프로그래밍에서 모듈(Module)이란 간단히 말해 코드들의 묶음이라고 볼 수 있습니다. 그렇다면 코드를 어떻게 묶을 것인지에 대한 고민을 하게 되는데, 여기서 좋은 모듈화에 대한 기준이 나옵니다. 높은 독립성을 […]
HTML 구조 이해
소개 Fontend 개발에 있어 HTML 사용은 기본이 됩니다. 웹 페이지를 이루는 기반으로써 구성요소는 무엇인지, 어떻게 구조화하는 것이 좋은지, 구조화에 필요한 box 모델에 대해서 한번 정리 해보려 합니다. HTML(Hyper Text Markup Language) 웹을 이루는 가장 기초적인 마크업 언어로, 콘텐츠의 구조와 의미를 정의하는데 사용됩니다. 기본적으로 HTML 을 이루는 요소는 아래와 같습니다. 요소는 속성도 가질 수 있습니다. HTML을 […]
Mindmap 마인드맵 추천 Simple Mind
소개 직장을 다니면서도 빠르게 변화하는 IT 환경에 발을 맞추기 위해 자기개발을 꾸준히 하려 노력을 합니다. 공부를 하는데 있어 반복 학습이 중요하다고 개인적으로 생각을 하고 있는데요.그런 반복 학습, 기억력, 정리 방법에 사용되는 최고의 도구는 마인드맵이라고 생각을 하고 있어요.그래서 마인드맵 앱을 이용해서 시간이 날때면 틈틈히 정리하고 되새기는걸 반복하려고 노력을 하고 있어요. 많은 마인드맵 앱을 설치하고 사용해보다가 찾아서 […]
Python Decorators 데코레이터 구현
소개 Python open source 나 framework 코드를 보면 함수 앞에 @를 통해 사용되는 Decorators 를 많이 볼 수 있습니다. 이 데코레이터를 이용하면 보다 효율적인 코딩을 할 수 있는데요. 이것이 무엇인지, 언제 사용하는 것인지, 어떻게 사용하는 것인지를 정리 해볼까 합니다. Decorators 가 무엇인가? Python에서 함수(Function)는 일급함수(First-class Functions)입니다. 일급함수가 무엇인가요?? 일급함수는, 그리고 파이썬에서 함수는 중첩 함수로도 만들수가 […]
Python Multiprocessing (파이썬 멀티프로세싱)
소개 Python 에서 병렬처리를 위한 threading 과 Multiprocessing 중에서 이번에는 Multiprocessing 에 대해서 정리해보고자 합니다. 앞선 포스팅을 통해서 각각의 특징을 정리해보았었는데요. 다시 한번 간단히 정리해보자면, Multiprocessing 은 CPU bound 작업에서 보다 더 유리한 면을 가지고 있습니다. CPU bound 작업이라고 하면 I/O bound (Networking, File upload, download )작업과 대조되는 작업으로, CPU 사용이 더욱 많은 작업을 말합니다. […]
Python Thread 파이썬 쓰레드
소개 Python 에서 Threading 은 I/O bound 작업에 보다 더 적합하다고 앞선 포스팅에서 말씀드렸는데요. 이번엔 직접 Threading 을 구현해 보면서 사용법을 정리해볼까 합니다. Threading 모듈을 활용한 old 한 방법을 먼저 살펴보고, python 3.2 버전부터 등장한 concurrent.futures 모듈을 활용한 좀 더 간편한 thread 사용에 대해서 정리를 해볼까 합니다. Threading 모듈 이용(Old 방식) threading 모듈을 이용한 old […]
Python Threading(쓰레딩) vs Multiprocessing(멀티프로세싱) 비교
소개 프로그램을 만들다 보면 네트워킹 작업이나 파일시스템 관련 I/O 작업등과 같이 synchronous 하게 작업하지 않아도 되는 로직들이 많이 생기게 됩니다. 프로그램 성능 향상을 위해서는 이러한 작업들은 식별하여 병렬 처리를 하도록 로직 처리를 하는 것이 좋은 방법이 될 수 있어요. Python 에서는 이러한 병렬 처리를 위해서 threading 과 multiprocessing 을 지원하고 있습니다. 각각은 무엇이고, 어떻게 동작을 […]
Multipass 이용한 kubernetes 로컬 구축
multipass + kuberspray 이용한 kubernetes 로컬 구축 저는 사용중인 macOS 에 multipass 를 이용하여 노드를 가상머신으로 구축하고, 이 위에 kubernetes 를 구현하여 k8s 테스트 환경으로 사용하고 있습니다. 애플실리콘을 지원하면서 무료인 가상머신 관리자가 마땅치 않은 가운데 multipass 라는 괜찮은 가상머신 관리자를 발견하여 이전 블로그에서도 거론하였듯이 이용하고 있지요. 그래서 multipass 를 이용하여 Kubernetes 를 로컬 랩탑에 구축하는 […]