2011-02-04 6 views
2

저는 2 년차 대학생이며 제 능력을 확장하는 것이 좋은 생각이라고 생각했습니다. 저는 올해 말에 Tkinter를 사용하여 C 프로그램을위한 GUI를 완성하기 위해 파이썬을 사용할 것입니다.하지만 사이드 프로젝트도 만들고 싶습니다. 파이썬은 그것을 할 수있는 훌륭한 언어처럼 보입니다.파이썬을 배우기위한 좋은 측면 프로젝트입니까?

필자는 코드 작성을위한 여러 단계의 프로젝트를 원합니다. GUI와 명령 행 버전이 있어야합니다. 그러면 SQL과 다른 데이터베이스에 대해 더 알고 싶습니다. 기술).

나는 음악 플레이어를 만들 수 있다고 생각했습니다. 먼저 음악 파일을 재생하는 명령 줄 프로그램을 만든 다음 GUI에서 pygtk를 사용하여 확장하십시오.

나는 파이썬 경험이 없다고 생각하지만, C와 자바에서 강력한 배경을 가지고있다. 예기치 않게 나를 막을 수있는 어려움이있을 것인가? 필자는 이전에 음악 응용 프로그램을 제작 한 적이 없으며, 예를 들어 음악 라이브러리를 유지하는 것과 관련하여 확실하지 않습니다.

추천 할만한 다른 프로젝트가 있습니까, 약 한 시간 정도 밤에 3 개월 동안 완료 할 수 있습니까? (또는 완료되지 않은 경우에도 중요한 작업 프로그램을 꺼내십시오.)

감사합니다.

답변

10

나는 파이썬 경험이 없다고 생각하지만, C와 자바에서 강력한 배경을 가지고 있습니다. 예기치 않게 나를 막을 수있는 어려움이 있습니까?

예.

예전처럼 음악 응용 프로그램을 만든 적이 없으며 음악 라이브러리를 유지하는 것과 관련해서는 잘 모릅니다.

당신을 멈추게 할 것입니다.

원하십니까?

1 단계. 예/아니오 질문을하지 마십시오.

2 단계 작게 시작하십시오. [아래 참조]

3 단계. 파이썬 튜토리얼부터 시작하십시오.

4 단계. 관련 프로젝트를 찾고 코드를 다운로드하여 읽습니다.


시작 작은.

"약 한 시간 밤, 3 개월". 90 시간.

언어를 이해하기에 충분한 파이썬 자습서를 40 시간 할당하십시오. 일반적으로 80 시간을 제안하지만 예산이 부족합니다.

사운드 재생 API가 플랫폼에서 어떻게 작동하는지 알아보기 위해 40 시간을 추가로 할당합니다. 이것은 너무 많은 시간일지도 모르지만 항상 이상한 신비가 있습니다. OS API 및 장치 드라이버 문제는 종종 해결하기 어려운 문제입니다.

PyGTK 응용 프로그램을 제대로 실행하기 위해서는 40 시간을 충분히 배분해야합니다.일반적으로 GUI 디자인에는 새로운 개념이 많이 포함되어 있으므로 언어 ​​자습서에서는 다루지 않으므로 적어도 120 시간은 할당해야합니다. 다시 말하지만 예산이 부족합니다.

SQL 및 데이터베이스 디자인과 ORM API를 학습합니다. 아마 40 시간. 여기서 실수 할 수있는 실수가 많습니다. 실수를 저 지르려면 시간이 필요합니다.

기존 파일 시스템 API에 구축 된 일종의 "뮤직 라이브러리"를 만드는 데 40 시간을 추가로 할당합니다. 여기에는 추가, 변경 및 삭제에 대한 사용 사례를 정의하고 이러한 사용 사례를 구현하는 방법을 파악해야합니다.

"더 작게"시작하고 싶다는 제안에 대한 나의 근거입니다.

+0

필자는 파이썬의 기초부터 확실히 시작할 것입니다. 그러나 나는 너무 크고 시작한다고 믿지 않는다. 그 목표는 단순히 달성하고자하는 목표입니다. 내가 말했듯이,베이스 포인트는 음악 파일을 재생하는 명령 행 프로그램 일뿐입니다. 아마도 .ogg 나 .flac과 같은 것일 수도 있습니다. – Blackbinary

+0

작게 시작하는 데 감사드립니다. 그러나, 내가 언급했듯이, 나는 3 개월이 끝날 때까지 전체 작업 프로젝트가 필요하지 않습니다. 오랫동안 내가 일하는 것이 있다면, 모든 기능이 거기에 있지는 않더라도 괜찮습니다. 이 경우 한 번에 하나의 파일을로드하고 재생할 수있는 GUI 응용 프로그램을 사용하는 것이 좋습니다. 라이브러리가 없거나 데이터베이스가 없으며 파일 지원이 제한되어 있습니다. 마찬가지로 파이썬을 배우는 많은 시간이 줄었고 유사한 프로젝트의 코드를 볼 수 있습니다. – Blackbinary

+0

@BlackBinary : "완료되었습니다 ... 3 개월 동안"질문입니다. "3 개월이 끝날 때까지 전체 작업 프로젝트가 필요하지 않습니다."라는 의견이 귀하의 의견에 포함됩니다. ** 명확히하기 위해 ** 업데이트 **를 고려하십시오. –

2

프로그램을 작성하면 언어를 배우는 데 도움이되지만 IMHO가 오픈 소스 Python 프로젝트의 개발 팀에 합류하면 다른 개발자가 작성한 고품질 코드를 읽으면 더 많은 것을 배우게됩니다. 당신이 혼자서 발견 할 수없는 언어.

내 제안은 작지만 고품질의 파이썬 오픈 소스 프로젝트를 찾고, 코드를 읽고, 코드가 무엇인지 이해하고, 기여를 시작하는 것입니다. 당신이 사용하거나 좋아하는 프로젝트를 선택하는 것이 도움이 될 수 있습니다.

+0

이것은 의미가있는 것 같습니다, 나는 볼 수 있고 사용할 수있는 것을 보게됩니다. 조언 해주셔서 감사합니다. – Blackbinary

0

XBMC을 살펴보면 응용 프로그램 자체가 방대하고 C/C++로 작성되었지만 Python으로 addons을 작성할 수 있습니다. 그들의 위키에서 시작하는 것에 대한 좋은 양의 정보가 있습니다.

HOW-TO write plugins for XBMC

XBMC

HOW-TO write Python Scripts

는 미디어 센터, 그래서 음악에 있다면 가능성은 분명히있다.

+0

XMBC의 플러그인이 파이썬으로 작성되었다는 것을 알지 못했습니다. 이것은 좋은 프로젝트처럼 보입니다. XMBC에서 음악 가사를 사용할 수 없기 때문에 가사 스크립트를 쓸 수 있습니다. 실제 프로그래밍은 노래 이름과 아티스트를 사용하여 가사를 다운로드해야하는 것이 쉽지 않으므로 좋은 연습이 될 것입니다. – Blackbinary

2

나는 당신을 위해 좋은 사업 아이디어를 가지고 있지 않지만, 하나의 좋은 방법은 파이썬이 '파이썬 도전'입니다 알아가는 시작 :

http://www.pythonchallenge.com/ 내가 몇 년 전에 그것을 자신을 시도했다. pythonic way에서 생각하는 데 익숙해지는 좋은 방법입니다.

+0

흠, 재미 있겠지 만, 아마도 제 벨트 아래에서 먼저 연습을해야 할 것입니다. 확실히 두뇌 티저에 좋습니다. – Blackbinary

0

나는 프로젝트를 시작하면서 매우 낙관적이었다. (내 POV에서 보았을 때). 커맨드 라인 클라이언트는 tutorials 이후에 파이썬, 인자, 텍스트 등을 쓰는 것과 잘 어울릴 것입니다. gstreamer이나 또 다른 매우 높은 수준의 라이브러리를 사용하기를 기대합니다. 실제 연주는 그렇게하기가 어렵지 않을 수도 있습니다.

작은 단계의 데이터베이스는 친숙한 프로젝트 여야합니다. 나는 그런 식으로 일을했는데 대부분은 SQL을 배우고 배우려고 노력했지만 (그 중 한 명은 일반적으로 사용하지 않는다), 나는 그 분야에서 매우 광범위한 기술을 가지고 있다고 생각하지 않는다.

PyGtk (또는 gtk3)도 그 자체로서의 경험 일 것입니다. simple 일 수도 있고, 이벤트 및 스레드의 rabbithole을 안내 할 수도 있습니다. :)

프로그래밍이 가능하다면, 하루에 매우 유용한 파이썬 덩어리를 선택하고 일주일에 작성된 유용한 유용한 작은 도구를 많이 얻을 수 있기를 기대합니다. 그러나 당신의 질문에 모든 것을 집어 넣는 것은 그렇게 빨리 일어나지 않을 것입니다. 어쨌든 나는 당신이 조각으로 프로토 타이핑을 시작할 수 있고 자신의 이익에 의해 동기 부여를받는 동안 많은 것을 배울 수있는 좋은 아이디어/개념이라고 생각합니다.

Windows를 사용하면 물론 어렵지만 불가능하지는 않습니다.

관련 문제