백지에서 새로운 기능을 구현하는것은 어렵습니다. 그렇게 느끼는 가장 큰 이유는 어디서부터 시작해야할지 모르기 때문입니다. 우리가 지금까지 20여 년에 걸쳐 뭔가를 해결해본 경험들 중 가장 많은 비중을 차지했던건 단순한 문제들이었습니다. 그래서 저는 이전 포스팅에서 구현하고자 하는 기능을 머리 속에만 담지 말고 그 기능들을 분할하고 클래스별로 역할을 나누라는 제안을 했습니다. 그러나 클래스별로 역할을 나눠도 사실 뭔가를 하기에는 딱히 답이 나오지 않습니다. 그래서 또 하나의 제안을 하겠습니다. 구현하고자 하는 기능을 문제로 만드세요. 구현하고자 하는 기능을 문제로 만들어보면 프로그램을 제작하는데 접근하는 시각이 조금 달라집니다. 일단 '문제' 라는 건 우리가 오랫동안 풀어왔던 그 문제의 언어 형식과 비슷하..
Works/PyWallpaper
건물을 짓기 전에는 설계를 먼저 해야 합니다. 프로그램도 마찬가지입니다. 프로그램을 제작하기 전 설계를 해야 합니다. 그건 규모와 상관 없이 중요한 일입니다. 무슨 일을 하기 전에 계획을 세우는 건 당연한건데, 저는 PyWallpaper를 제작하면서 설계 과정을 따로 거치지 않았습니다. 그랬던 것에 대한 반성 겸 이 글을 보고 프로그램을 만드는 누군가가 저와 같은 실수를 하지 않길 바라며 프로그램 구조 설계를 앞부분에 배치해서 글을 씁니다. 프로그램 구조 설계하기 - 요구사항 작성하기 백지에서 뭔가를 시작한다는 건 쉬운 일이 아닙니다. 저도 마찬가지였습니다. 저는 전문 프로그래머도 아니고 프로그래밍을 제대로 배워본 적도 없습니다. 그럼에도 이렇게 백지에서 시작하는 것은, 윈도우의 배경화면을 더 아름답게 ..
4K 모니터를 구입했습니다. 최근에 자취를 새로 하게 되면서 이런 저런 물건들을 많이 구입했습니다. 처음에는 한성 ULTRON 3278 QHD New 제품을 구입했었습니다. 제가 입주해서 모니터를 구입한 시기는 2월 말 - 3월 초 사이. 코로나 바이러스 여파로 인해 물건 수급에 차질이 빚어지면서 물건을 3월 말에나 받아볼 수 있게 되어버렸습니다. 그러나 저는 다른 무엇보다 모니터가 가장 필요한 상황인지라 눈물을 머금고 해당 모델 델 주문을 취소한 다음 LG 32UK50T를 구입하게 되었습니다. 4K 모니터를 구입하자, 이상한 일이 벌어졌다 (쓸데없이 눈만 높아졌다) 모니터가 4K라고 한들, 생각보다 쓸데가 없습니다(...) 유튜브로 4K 영상 몇 번 보는게 다입니다. 넷플릭스 역시 하드웨어 사양 문제로..