전체 글
-
Layered architecture - 2/2Just Programming 2021. 11. 26. 01:27
Why do you use this 사실 저거에 대한 사진을 찾고 싶었는데 제대로 안떠서 그나마 비슷한 저걸로 골랐다. 나는 너무 당연하게 생각하고 쓰고 있긴한데, 사실 왜 쓰는지 모르고 쓰면 너무 바보같기 때문에 바보가 아닌 척하기 위해 억지로 질문을 해봤다. 이 글을 쓴 계기가 신입에게 주어지는 첫 과제, React 프로젝트 이야기라는 영상을 본 것인데. 이 영상에서도 나오듯이 필요하기 때문에 쓰는 것이다. 많은 사람들이 이미 모듈별로 나눠서 코드를 작성하겠지만, 반대의 경우. 하나의 클래스 혹은 하나의 스크립트, 하나의 함수에 모든 기능을 다 넣은 경우가 있을 것이다. (혹시 당신이 그런 경우라면 가슴에 손을 얹고 잠시 지난 날을 반성하는 시간을 갖자.) 지난 날의 과오에 대해 묵념. 문제가 뭘까 ..
-
Layered architecture - 1/2Just Programming 2021. 11. 25. 23:48
유튜브 영상을 보다가 layered architecture라는 말이 나와서 이에 대한 글을 적어보기로 했다. 참고로 이 글은 ReactJS 관점에서 작성된 글이다. 하지만 프론트엔드, 백엔드, 옵스, 게임 개발 어느쪽에서 생각해도 비슷할 것이라고 본다. 이 글은 뭘 적을지에 대한 정리없이 그냥 막 적은 글이다. 읽기 불편할 수 있다. 읽기 힘들다면, 키워드만 쏙쏙 뽑아가길 바란다. (티스토리 기본 에디터는 뭔가 내 맘에 들지 않는다. 별도의 에디터를 찾아봐야겠다.) 글을 쓰다가 너무 길어져서 2개로 나눠 적었다. 이 글은 Layered architecture가 무엇인지에 대해 다룬다. TL;DR Layered architecture = 다층 구조 = 목적에 따라 모듈을 나눈 것 신입에게 주어지는 첫 과제..
-
숲의 은둔자에서 교수, 변화하기에 늦은 것은 결코 없다.E.T.C 2021. 10. 26. 17:56
인생 도돌이표 그만 치자. 이 영상에서 이 강의에 대해서 알게 되었다. 그리고 원본 영상이 궁금해서 영상을 보게 되었다. Sociopath 이 영상은 처음부터 내 눈길을 사로잡았다. Charles Bradley의 Why is it so hard라는 노래가 생각났다.이 사람은 과연 어떤 힘든 삶을 살아온걸까? 못된 생각일지도 모르겠지만, 편하게 살아온 사람 보다는 힘들게 살아온 사람에게 더 눈길이 가곤 한다. 그에게는 어떤 어려움이 있었을까. 그는 자신이 소시오패스라고 설명한다. 강연 중 농담을 하긴 하지만, 잘웃지 않는 것을 보면 그런 것 같기도 하다.아마 그는 자신이 이러한 특징에 대해 잘알고 있는 듯하다. 그는 남들보다 사고력이 좋았을 거라고 생각하고 아마 이를 통한 장점이 있었을 것이라고 생각된다...
-
form tag using vanilaJSWeb Programming/Front End 2021. 10. 25. 19:04
Form tag using VanilaJS Prevent form redirect form 태그를 통해 submit하게 되면 submit의 응답 결과를 받는 페이지로 넘어가게 된다. 이를 방지하기 위해 e.e.preventDefault()를 쓸 수 있다. 예시는 아래와 같다. // react 예시이다. const get_input_value = (e) => { e.preventDefault(); value = e.target.text_input.value; console.log('get value', value) } return ( ) 나의 경우는 onInput보다 onSubmit이 더 적절한 상황이었다. 필요한 이벤트리스너에 등록해 사용하면 되겠다. 또한 코드에서 나온 것처럼 받고자 하는 변수의 이름을..
-
Python3 with catchProgramming Language/Python3 2021. 10. 25. 19:01
with statement python에서 with문을 사용하는 것은 파일을 읽을 때, 장점이 있다. with open("./note.txt") as f: text = f.read() # f.close() with문이 종료할 때 별도로 .close()를 하지 않아도 종료해주기 때문에 안전하게 파일에 접근할 수 있다. 그렇다면 내 생각엔 with문으로 파일을 읽는 동안 발생하는 에러에 대해서 with except문같은 구문이 있지 않을까 생각했다. 결론 결론부터 말하면, 그러한 문법은 존재하지 않았다. 아래의 답변은 with문을 try로 감싸거나, 파일을 열 때 try로 감싸고 그 후 에러가 없는 경우 with를 쓰는 코드를 보여주고 있다. try-with from __future__ import with..
-
"private" in pythonProgramming Language/Python3 2021. 10. 25. 18:56
inheritance-of-private-and-protected-methods-in-python TL;DR python은 private이 존재하지 않습니다. 하지만 name mangling으로 private 효과를 만들 수 있습니다. 하지만 그것이 private이라는 의미는 아닙니다. (마찬가지로 protected도 없어요.) Question class Parent(object): def _protected(self): pass def __private(self): pass class Child(Parent): def foo(self): self._protected() # This works def bar(self): self.__private() # This doesn't work, I get a A..
-
`pipenv`는 정말 좋다.Programming Language/Python3 2021. 10. 25. 18:49
이거 정말 좋아. 아주 좋아. Install 일단 설치부터 하고 시작하자. 어쨌든 당신은 pipenv를 쓰게 될 것이다. 이 글에서는 미안하지만 mac기반 컴퓨터에 대해서만 다룰 것 이다. 🙇🏻♂️ brew가 설치되어 있다는 가정하에 설치한다. # 무려 fomulae ! brew install pipenv Pipenv ? pip를 대신하는 패키지관리자라고 보면 될 것 같다. 좀 더 많은 기능을 제공하는 관리자이다. 사용법은 pip와 매우 흡사하다. 간단한 세팅을 통해 사용법을 익히면 좋을 것 같다. 빈 디렉토리를 생성하고 아래의 커맨드를 따라가보자. (이 빈 디렉토리를 pipenv-prac이라고 부르겠다. 같은 이름의 디렉토리를 생성하는 것은 아래의 설명을 따라가기에 더 편할 것 이다.) # use i..
-
파이썬 내부 클래스에 대해Programming Language/Python3 2021. 10. 25. 18:42
이 글은 어디서 가져왔거나, 번역한 글인 것 같다. 그러나 작성한지 오래되어, 어디에서 가져왔는지 알 수가 없어 출처를 표기하지 못했다. 아마 영미권 작성자의 글 같은데, 한글을 모를거 같지만 심심한 사과를 전한다. 참고로 원본은 21년 5월에 작성되었다. 클래스 클래스에는 다양한 데이터 멤버와 함수가 포함되어 있으며 이러한 멤버에 액세스 할 수있는 개체를 만들 수 있습니다. 객체 지향 프로그래밍 언어 인 Python에는 이러한 여러 클래스의 객체가 많이 있습니다. 파이썬에는 클래스의 인스턴스가 생성 될 때마다 호출되는__init__라는 중요한 생성자가 있고, 클래스의 현재 인스턴스를 참조하는self 키워드도 있습니다. 중첩 클래스 (내부 클래스라고도 함)는 다른 클래스 내에 정의됩니다. 모든 객체 지향..