diff --git "a/README_\352\270\260\353\247\220\352\263\274\354\240\234\353\263\264\352\263\240\354\204\234.md" "b/README_\352\270\260\353\247\220\352\263\274\354\240\234\353\263\264\352\263\240\354\204\234.md" index 8a9e38862bef30724141472e1131631ca068e620..3671c2889714ab760ba409353f5ede37a6d62e29 100644 --- "a/README_\352\270\260\353\247\220\352\263\274\354\240\234\353\263\264\352\263\240\354\204\234.md" +++ "b/README_\352\270\260\353\247\220\352\263\274\354\240\234\353\263\264\352\263\240\354\204\234.md" @@ -35,10 +35,13 @@ Audacity 원본코드에 직접적으로 적용하기 전에 wxPython을 활용 우선, 간단한 창(wxWindow)에 텍스트(wxStaticText)를 추가하고 이 텍스트의 폰트(wxFont)를 변경하는 것으로 시작했다. 이 단순한 예제를 활용해 wxFont와 SetFont()를 통한 폰트 설정이 제대로 동작하는지 확인했다.  +main_panel에 폰트변경을 설정하여 static text가 변하는 것을 확인할 수 있었다. + 그 다음으로는 패널(wxPanel)과 그 안에 추가적인 패널이 포함된 복잡한 구조에서도 동일한 폰트 변경이 가능한지, MenuBar의 폰트도 변경이 가능한 지 실험을 진행했다. 이 과정을 통해 폰트 변경 코드를 어느 위치에 넣어야 전체 프로그램에 일괄적으로 적용되는지를 확인하고자 했다.  +main_panel에 폰트변경을 설정하여 panel 내부의 text와 button이 바뀌는 것을 확인할 수 있었다. 하지만 MenuBar의 경우에는 폰트를 바꿀 수 있는 방법이 확인되지 않았다. wxMenuBar는 wxWindow에 붙어 상단의 메뉴바를 표시해주는데, wxMenuBar의 함수에는 폰트를 설정할 수 있는 SetFont가 없었고 상위의 wxWindow의 폰트를 변경해도 MenuBar의 폰트가 변경되지는 않았다. wxMenuBar 하위의 wxMenu는 내부에 wxMenuItem을 통한 항목추가로 SetFont가 가능하다는 것을 확인했다. @@ -236,13 +239,17 @@ AUDACITY_DLL_API wxFrame &GetProjectFrame( AudacityProject &project ) # 느낀점 -맨 처음 프로젝트를 시작할 때, 저는 C++를 사용해보지 않은 상태였다. 이전에는 Python이나 C와 같은 다른 프로그래밍 언어를 배웠지만, C++은 처음 접해보았다. 이로 인해 프로젝트 초반에는 Audacity의 코드를 이해하는 데 어려움을 겪었다. C++의 문법과 특성을 익히지 않은 상태에서는 코드를 해독하고 프로그램의 동작 원리를 이해하는 것이 쉽지 않았다. 그러나 프로젝트를 진행하며 저는 C++의 기본적인 문법을 학습하고 Audacity의 코드를 이해하려 노력했다. Audacity의 구조와 클래스들 간의 상호작용을 파악하면서 점점 코드를 읽고 이해하는 데에 자신감을 쌓을 수 있었다. C++의 객체지향 프로그래밍 개념을 활용해 코드를 분석하고 수정하는 과정에서 저의 프로그래밍 능력이 크게 성장했다. -또한, 웹 페이지를 제작해본 경험은 있었지만, 애플리케이션을 빌드해본 경험은 없었다. 이번 프로젝트를 진행하며, Audacity를 빌드해 폰트 변경을 확인했다. 이 과정에서 빌드를 처음 진행해봐 파일이 꼬이고, 설정이 잘못되는 등의 시행착오가 있었지만, 이를 통해 코드에서 애플리케이션으로의 빌드 과정을 이해할 수 있었다. +박영민 +맨 처음 프로젝트를 시작할 때, C++를 사용해보지 않은 상태였다. 이로 인해 프로젝트 초반에는 Audacity의 코드를 이해하는 데 어려움을 겪었다. C++의 문법과 특성을 익히지 않은 상태에서는 코드를 해독하고 프로그램의 동작 원리를 이해하는 것이 쉽지 않았다. 그러나 프로젝트를 진행하며 C++의 기본적인 문법을 학습했고 이를 통해 결과 Audacity의 구조와 클래스들 간의 상호작용을 파악할 수 있었다. + +또한, 이번 프로젝트는 코드를 작성하고 Audacity를 빌드해 폰트 변경을 확인했어야 했다. 애플리케이션을 빌드해본 경험은 없었기에 빌드 시에 파일이 꼬이고, 설정이 잘못되는 등 어려움을 겪었다. 그러나 이를 통해 코드에서 애플리케이션으로의 빌드 과정을 이해할 수 있었다. + +마지막으로, wxWidgets라는 크로스 플랫폼 GUI 라이브러리에 대해 학습하면서 GUI 애플리케이션의 개발 방법과 구조를 이해할 수 있었다. 하나의 코드가 다양한 운영체제에 사용되며 동일한 환경을 제공하는 것이 신기했다. wxWidgets이 아닌 다른 Qt, Electron과 같은 다른 크로스 플랫폼 GUI 라이브러리도 사용해보고 싶다. -마지막으로, wxWidgets라는 크로스 플랫폼 GUI 라이브러리에 대해 학습하면서 GUI 애플리케이션의 개발 방법과 구조를 이해하는 데 많은 도움이 되었다. wxWidgets를 통해 다양한 운영 체제에서 일관된 사용자 경험을 제공하는 방법과, 각 요소들 간의 관계를 시각적으로 디자인하고 코드로 변환하는 기술을 습득하게 되었다. +프로젝트를 진행하며 매 순간 ‘왜 이렇게 아는게 없고, 못하지’라는 생각을 가졌다. 아직까지 모르는 내용도 많고, 처음 시도해보는 것도 많다는 것을 깨달을 수 있었고, 더 노력해야겠다고 생각했다. -아직까지 모르는 내용도 많고, 처음 시도해보는 것도 많다는 것을 깨달았던 프로젝트였던거 같다. 이번 프로젝트를 통해 부족함을 인지했고, 더 노력해야겠다. +안관우 # 출처 - wxWidgets 문서 : https://docs.wxwidgets.org/3.0/