# PysimpleGUI 기술 관련 소식

> Clean Markdown view of GeekNews topic #12283. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=12283](https://news.hada.io/topic?id=12283)
- GeekNews Markdown: [https://news.hada.io/topic/12283.md](https://news.hada.io/topic/12283.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2023-12-11T10:08:29+09:00
- Updated: 2023-12-11T10:08:29+09:00
- Original source: [github.com/PySimpleGUI](https://github.com/PySimpleGUI/PySimpleGUI)
- Points: 4
- Comments: 1

## Topic Body

### PySimpleGUI 소개

- PySimpleGUI는 모든 수준의 파이썬 프로그래머가 GUI를 만들 수 있게 하는 파이썬 패키지임.
- "layout"을 사용하여 GUI 창을 정의하고, tkinter, Qt, WxPython, Remi 중 하나를 사용하여 창을 생성하고 상호 작용함.
- PySimpleGUI 코드는 기본 프레임워크를 직접 사용하는 것보다 간단하고 짧으며, "boilerplate code"를 많이 구현함.
- 필요한 경우 프레임워크의 위젯과 창에 직접 접근할 수 있어, PySimpleGUI API를 통해 노출되지 않거나 접근할 수 없는 설정이나 기능도 확장 가능함.

### "GUI Gap" 극복

- 파이썬은 많은 사람들을 프로그래밍 커뮤니티로 끌어들였으나, 대부분의 파이썬 프로그램은 "커맨드 라인" 기반이며, 일반 사용자에게는 접근성이 떨어짐.
- GUI를 추가하면 프로그램이 더 접근하기 쉬워지고, 사용자 범위가 확장됨.
- GUI는 일부 프로그램과 상호 작용을 더 쉽게 만들고, 명령줄 인터페이스에 익숙한 사용자에게도 도움이 됨.

### 오픈 소스 사용 인정

- PySimpleGUI 또는 PySimpleGUI 계정의 저장소에서 사용된 패키지 목록 제공.
- 프로젝트에서 오픈 소스 소프트웨어를 사용하는 경우 사용된 패키지에 대한 정보를 제공하는 것이 좋음.

### "바" 넘기기

- GUI 프로그래밍 학습 장벽이 높다는 의견에 대해, PySimpleGUI 프로젝트는 이를 낮추려고 시도함.
- 사용자들이 PySimpleGUI를 통해 성공적으로 GUI 프로그램을 만들고 기쁨과 감사를 표현하는 이메일을 받음.

### 교육 자료

- PySimpleGUI 공식 Udemy 코스가 있으며, 쿠폰 코드를 사용할 수 있음.
- www.PySimpleGUI.org에서 문서를 찾을 수 있으며, 다양한 문서와 쉽게 검색할 수 있는 기능을 제공함.
- 수백 페이지의 문서와 예제 프로그램을 통해 빠르게 효과적으로 배울 수 있음.

### GN⁺의 의견

이 글에서 가장 중요한 것은 PySimpleGUI가 파이썬 사용자들이 GUI를 쉽게 만들 수 있도록 도와주는 도구라는 점입니다. 초보자부터 전문가까지 모든 수준의 개발자가 사용할 수 있으며, 다양한 프레임워크와 통합할 수 있는 능력을 제공합니다. 이 글이 흥미로운 이유는 프로그래밍에 대한 접근성을 높이고, 더 많은 사람들이 자신의 아이디어를 실현할 수 있게 만드는 PySimpleGUI의 잠재력을 보여주기 때문입니다.

## Comments



### Comment 21322

- Author: neo
- Created: 2023-12-11T10:08:29+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=38579161) 
- Jira 시간 로깅을 위해 PySimpleGUI를 사용한 프로젝트
  - Jira 웹사이트 사용의 불편함으로 인해, 할당된 이슈 목록과 로그 및 코멘트 추가 버튼이 있는 데스크톱 앱 개발에 관심.
  - Tkinter 사용 시 UI 디자인에 어려움을 겪었으나, PySimpleGUI를 통해 속도가 크게 향상됨.
  - Jira API와 연동하여 원하는 기능을 구현하고 UI 개발을 배울 수 있는 좋은 프로젝트였음.

- GUI 프레임워크에 대한 흥미와 PySimpleGUI의 장점
  - 네이티브 데스크톱 경험이 웹 기반 UI보다 우수하다고 생각함.
  - PySimpleGUI의 간소화된 이벤트 루프와 다중 백엔드 접근 방식이 혁신적이라고 평가.
  - 데이터 구조와 함수를 기반으로 자동으로 GUI를 생성하는 아이디어에 대한 관심 표현.

- PySimpleGUI의 미적 측면과 스타일링의 어려움
  - PySimpleGUI의 예제가 90년대 스타일로 보이지만, CLI를 사용할 수 없는 비기술 사용자를 위한 프로토타이핑/내부 도구에 적합.
  - 네이티브 UI의 성능은 좋지만 스타일링이 웹페이지보다 어려움.
  - Python GUI에서 Flutter나 SwiftUI와 같이 적은 노력으로 멋진 외관을 제공하는 컴포넌트에 대한 질문.

- PySimpleGUI에 대한 개선 제안
  - 리스트 대신 삽입 순서를 기억하는 딕셔너리 사용 제안.
  - PyQt를 사용한 경험에서 속성/시그널 설정과 위젯 중첩을 동시에 수행하는 방식이 유용했음.
  - 간단한 GUI를 빠르게 구축하는 데 도움이 되는 라이브러리로서 PySimpleGUI에 감사함.

- VB6나 Delphi/Lazarus의 사용 편의성에 근접한 진전
  - 인터랙티브 GUI 빌더의 필요성과 이를 통한 개발 편의성 향상에 대한 기대감 표현.
  - WxPython과 WxFormBuilder의 호환성 문제를 경험하고, 이를 해결하기 위한 노력과 PySimpleGUI에 대한 긍정적인 평가.

- Python 데스크톱 애플리케이션 개발의 패키징 문제
  - 다수의 의존성이 있는 경우, 배포 가능한 바이너리를 생성하는 기존 도구들의 문제점.
  - PyInstaller나 cx_freeze 사용 시 발생하는 동적 모듈 로딩 문제와 누락된 파일 문제.
  - Java의 jar와 같은 표준화된 독립 프로그램 패키징 방법의 필요성 제기.

- CustomTKinter에 대한 선호도
  - CustomTKinter의 우아하고 현대적인 테마와 시스템에 따른 라이트/다크 테마 지원에 대한 선호.

- VB6의 빠른 애플리케이션 개발 공백에 대한 의견
  - VB6의 드래그 앤 드롭 GUI 빌더의 힘과 그에 대한 공백을 채울 수 있는 도구의 부재에 대한 놀라움.

- CLI 인터페이스를 가진 도구에 GUI를 추가하는 고려
  - 데스크톱 리눅스를 사용하지 않는 사용자를 위해 CLI 도구에 GUI를 덧붙이는 아이디어에 대한 고민.
  - 이러한 변환을 시도한 다른 사람의 경험과 예상되는 도전 과제에 대한 궁금증.

- PySimpleGUI를 사용한 비소프트웨어 팀의 경험
  - 빠른 UI 개발에 유용하지만 복잡성이 증가함에 따라 유지 관리와 탐색이 어려워짐.
  - 스타일링이 미흡했으나, 단기간 프로토타이핑에 적합할 수 있음.
