💻 프로그래밍
-
Python 에서 몽고반점 말고 몽고디비(MongoDB) 다뤄보기💻 프로그래밍/Python 2021. 9. 26. 22:33
안녕하세요! 운동하는 개발자 Jay 입니다! 오늘은 몽고반점 ... 아 아니 몽고디비(MongoDB)에 대해서 알아보고 간단한 사용법 및 DDD(Domain Driven Development) 개념 중 Repository를 Pymongo를 사용해서 간단하게 구현해 보겠습니다! 1. What is MongoDB 저는 이번에 이직을 하면서 처음 MongoDB를 사용해봤는데요. (아직 제대로 사용은 안해봤구 그냥 보기만 해 봤네요...ㅎㅎ 그래서 지금 블로그로 정리하면서 공부중) NoSQL 종류 중 하나로 JSON과 같은 동적 스키마형 도큐먼트들(몽고 DB는 이러한 포맷을 BSON이라 부름)을 선호함에 따라 전통적인 테이블 기반 관계형 데이터베이스 구조의 사용을 삼가합니다. 이로써 특정한 종류의 애플리케이션을..
-
비동기로 Third-party API 처리하기 (feat. aiohttp, asyncio)💻 프로그래밍/Python 2021. 4. 7. 16:13
안녕하세요! 운동하는 개발자 제이입니다! 오늘은 비동기로 Third-party API를 처리하는 방법, 그리고 제가 왜 비동기를 사용했는지에 대한 과정을 설명해보겠습니다. 제가 비동기에 관심을 갖게 된 이유는 현재 개발 중인 토이 프로젝트에서 Github API를 호출하기 때문입니다. 근데 단순히 1번 호출해서 사용하는 게 아니라 Github 사용자에 따라 10번 일수도 100번 일수도 있습니다. 현재 개발 중인 토이 프로젝트는 등록한 Github 유저의 정보를 가지고 API를 호출해서 정보를 보여주는 서비스입니다. 여기에 DB에 read, write 등의 작업들을 하게 되면 엄청난 시간이 걸리게 됩니다. 지금까지 가장 오래 걸리는 user의 경우 43초 정도가 걸렸네요... 코드와 실행결과를 보면서 좀..
-
Ruby On Rails 맛보기 - model💻 프로그래밍/Ruby On Rails 2021. 3. 14. 20:13
안녕하세요! JAY입니다. 지난 포스팅에 서는 Rails의 Controller. View에 대해 간단히 알아봤습니다. 이번 포스팅에서는 Model에 대해서 알아보겠습니다. 잠깐 스포하자면...Model이 가장 복잡한 것 같습니다. 특히 Django 개발자에게는 말이죠... 이유는 아래에서 설명해보겠습니다. 1. Model 선언 👨💻 Model 선언에 앞서 Rails의 database config에 대해 살펴보겠습니다. rails는 config/database.yml에 DB에 대한 정의를 할 수 있습니다. 기본적으로 생성된 걸 보면 환경에 맞게 DB 세팅을 다르게 해 놨네요. 일단 기본적으로 정의된 sqlite3로 사용해보겠습니다. Rails에서 model을 만들때는 아래 명령어로 만들 수 있습니다. r..
-
Ruby On Rails 맛보기 - controller, view💻 프로그래밍/Ruby On Rails 2021. 3. 14. 11:26
안녕하세요! 운동하는 개발자 JAY입니다. 이번 포스트에서는 Ruby On Rails를 살짝 맛보기(?) 정도로 알아보려고 합니다. 디테일은 각 기능에 대해 따로 포스팅을 할때 알아보겠습니다. 일단, Rails의 경우 MVC패턴으로 Model, Controller, View 로 이루어진 프레임워크입니다. 이번 포스팅에서는 controller와 view를 통해 간단한 웹페이지를 출력해보도록 하겠습니다. 1. Ruby On Rails 시작하기 이번에도 구름 IDE 를 이용해서 빠르게 Rails를 실행해보겠습니다. 대시보드에서 컨테이너 생성을 클릭하면 이렇게 사용하고 싶은 기술들을 볼 수 있습니다. 저희는 Rails를 선택하고 컨테이너를 생성해줍니다. 컨테이너를 생성하면 기본적으로 Rails 프로젝트가 생성됩..
-
Ruby VS Python 뭐가 다를까? [2부]💻 프로그래밍/Ruby On Rails 2021. 3. 13. 15:25
안녕하세요! 이번에는 Ruby VS Python 비교 두 번째 포스팅입니다. 이번 포스팅에서는 method, class, exception(예외처리) 등 에 대해 비교해보고 느낀 점을 공유해보겠습니다. 👨💻 문법 비교 1. method (함수) - Ruby♦️ def test_method(temp = "default") return "hello world! #{temp}" end puts test_method puts test_method('무야호!') puts test_method '무야호~' cs - Python🐍 def test_method(temp="default"): return f"hello world! {temp}" print(test_method()) print(test_method('무..
-
Ruby VS Python 뭐가 다를까? [1부]💻 프로그래밍/Ruby On Rails 2021. 3. 12. 23:06
안녕하세요! 운동하는 개발자 JAY입니다. 오늘은 비스~~읏 하다고 알려져(?) 있는 Ruby와 Python 에 대해서 뭐가 다른지 어떻게 사용되는지 비교해보려고 합니다. Deep한 내용은 아니고 문법적으로 무엇이 다르고, 장단점 등을 비교해보려고 합니다. 아! 두 언어의 문법을 비교하기전 제가 사용한 언어 버전에 대해서 먼저 공유하겠습니다. python : 3.8.5 ruby: 2.6.5 그리고 Ruby 공부 하려고 개발환경을 따로 세팅하려다가 구름 IDE를 사용하면 편하게 스터디용(?)으로 사용할 수 있더라고요. 무료로 5개의 컨테이너를 만들 수 있고 ruby뿐만 아니라 다양한 서버 프레임워크를 공부하기 쉽습니다. 저는 구름 IDE에서 컨테이너 만들어서 스터디를 했습니다! 👨💻 문법 비교 1. 문자..
-
Redis로 Cache Server를 만들어 보자! (feat. django-cacheops)💻 프로그래밍/Django 2021. 2. 18. 07:28
안녕하세요! 운동하는 개발자 Jay입니다 😄 오늘은 이름하여 c.a.c.h.e 를 Django에서 사용해보려고 합니다. 지금 진행 중인 토이 프로젝트가 있는데, 이 프로젝트에서 캐시를 써보려고 해요! 캐시란 무엇이고 왜 사용하는지를 하나씩 알아가 보겠습니다! 1. What is Cache? 💰 (Cache is Cash.... 는 드립) 캐시(Cache)란 자주사용하는 데이터를 미리 복사해 놓은 저장소를 말합니다. 쉽게 설명하자면 내 키(key와 키를 이용해 뒤에서 설명까지 이어지기 위한 라임 this is 언어유희) 를 알고 싶은데, 매번 키를 재는 게 아닌 처음 재논 키의 정보를 저장해놔서 원할 때마다 그 정보를 보는 게 캐시입니다. 좀 더 Django와 연관 지어서 설명해보겠습니다. Django에서..
-
Django + Rest Framework 에서 Service Layer를 구성하는 방법💻 프로그래밍/Django 2021. 2. 13. 09:17
안녕하세요! 지난 포스팅에서는 비즈니스 로직을 넣는 위치에 대해 정리해봤는데요! 이번에는 그중 Service Layer를 통해 비즈니스 로직을 정리하는 과정 등에 대해 정리해보려고 합니다. 1. Service Layer 란? 🤔 간단히 말하자면 비즈니스 로직을 Service로 분리하고, 이런 비즈니스 로직들이 Class(클래스)나 Function(함수)으로 이루어진 형태(?)입니다. 예를 들어 쇼핑과 관련된 API를 호출할 때, 장바구니에 물건을 담거나, 장바구니에 담긴 아이템들의 카테고리를 나눠 카운트를 한다거나 하는 모든 것들을 비즈니스 로직이라고 할 수 있습니다. 그리고 이런 비즈니스 로직을 View, Model이 아닌 Service라는 곳으로 위치시킨걸 Service Layer라고 합니다. Ser..