ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • <TIL> 220315 큐, 라우터, 포스트맨, 펑(500)
    클래스/└ TIL 2022. 3. 16. 00:29
    728x90

     

    🌱

     

    자료구조: 큐

    FIFO의 특성을 가지는 큐는 아래와 같이 구현합니다(파이썬).

    class Node:
        def __init__(self, item, next):
            self.item = item
            self.next = next
    
    
    class Queue:
        def __init__(self):
            self.front = None
    
        def push(self, value):
            if not self.front:
                self.front = Node(value, None)
                return
    
            node = self.front
            while node.next:
                node = node.next
            node.next = Node(value, None)
    
        def pop(self):
            if not self.front:
                return None
    
            node = self.front
            self.front = self.front.next
            return node.item
    
        def is_empty(self):
            return self.front is None

     

    노드: 익스프레스 라우터

    익스프레스의 라우터를 활용하면 프로젝트 내의 미니 프로젝트를 생성하는 것과 비슷합니다.

    라우터의 URL을 기준으로 새로운 URL을 가지치기 할 수 있습니다.

     

    포스트맨

    포스트맨은 API 테스트 프로그램입니다.

    API 설계시 간편하게 활용할 수 있습니다(생산성 업업!).

     

    오늘의 실수

    알고리즘을 공부하다보면 조건식이 복잡하게 얽히는 경우 조건을 하나씩 누락하는 경우가 있습니다. 의사코드 작성시 빠트린 조건이 없는지 확인하는 습관이 필요합니다.

    파이썬 클래스의 프로퍼티에 데이터를 입력할 때 self를 종종 누락합니다. 파이썬에서는 클래스 내에서 코드를 작성할 경우 self에 주의해서 작성해야 합니다.

    포스트맨 연습을 해보면서 post 요청을 보냈는데 서버가 꺼져버렸습니다. json parcer를 누락했기 때문입니다. 데이터를 전달할 때 자료의 형태를 신경써야 합니다. 단순한 연습이었지만 서버가 꺼졌다는 사실은 충격적이었습니다. 코드 한줄한줄 신경써서 작성해야 겠습니다.

    알고리즘 풀이를 파이썬으로 해놓고 백준 사이트에서 제출할 때 노드로 제출해서 틀렸습니다. 언어 설정이 틀렸다고는 상상도 못하고 한동안 머리를 싸맸습니다. 기본 설정을 당장 파이썬으로 바꾸어 버렸습니다(실은 어제 바꾸려고 했는데 미룬 제 잘못입니다. 간단히 할 수 있는 건 바로 해야 합니다).

     

    728x90
And bytes to code before I sleep.