Python Koans는 http://rubykoans.com/에서 찾을 수 있는 Edgecase의 "Ruby Koans" 포트입니다.
Python Koans는 테스트를 통과하여 Python 프로그래밍 언어를 학습하기 위한 대화형 튜토리얼입니다.
대부분의 테스트는 Assert 함수의 누락된 부분을 채워 수정 됩니다. 예:
self . assertEqual ( __ , 1 + 2 )
__ 부분을 적절한 코드로 바꾸면 문제를 해결할 수 있습니다.
self . assertEqual ( 3 , 1 + 2 )
때때로 이미 작성되어 실패한 일부 테스트가 발생하는 경우가 있습니다. 이러한 경우 진행하려면 일부 코드 구현을 완료해야 합니다. 예를 들어, 삼각형이 등변인지, 이등변인지, 부등변인지 알려주는 코드를 작성하는 연습이 있습니다.
Python을 배울 수 있는 좋은 방법일 뿐만 아니라 테스트 주도 개발(TDD)을 맛볼 수 있는 좋은 방법이기도 합니다.
Python Koans는 GitHub에서 사용할 수 있습니다.
Git으로 복제하거나 소스를 zip/gz/bz2로 다운로드할 수 있습니다.
최신 버전의 Python Koans를 다운로드하거나 체크아웃하는 것 외에도 Python 인터프리터를 설치해야 합니다.
이 글을 쓰는 시점에서 우리는 Python 3을 지원합니다. 정책은 최신 프로덕션 버전을 유지하려고 노력하는 것입니다.
최신 Python 버전으로 작업할 수 있어야 하지만, 이전 버전에서는 문제가 발생할 가능성이 높습니다.
여기에서 Python을 다운로드할 수 있습니다.
Python을 설치한 후 Python 실행 파일이 포함된 폴더가 시스템 경로에 있는지 확인하세요. 즉, 명령 콘솔에서 Python을 실행할 수 있어야 합니다. python3
이거나 Windows의 경우 python.exe
입니다.
문제가 있는 경우 다음이 도움이 될 수 있습니다.
Windows 사용자는 Python 경로를 설정하기 위해 배치 파일 run.bat
의 행을 업데이트할 수도 있습니다.
SET PYTHON_PATH=C:Python39
Jake Hebbert는 여기에서 사용할 수 있는 몇 가지 스크린캐스트를 만들었습니다.
https://www.youtube.com/watch?v=e2WXgXEjbHY&list=PL5Up_u-XkWgNcunP_UrTJG_3EXgbK2BQJ&index=1
또는 읽고 싶은 경우:
*nix 터미널 또는 Windows 명령 프롬프트에서 다음을 실행합니다.
.. 코드 블록:: sh
파이썬 contemplate_koans.py
또는:
python3 contemplate_koans.py
제 경우에는 Windows에서 Python 3을 사용하고 있으므로 명령 셸(cmd.exe)을 실행하고 다음을 실행합니다.
분명히 테스트가 실패했습니다.
AssertionError: False는 True가 아닙니다.
또한 문제가 어디에 있는지 정확하게 알려줍니다. . .\koans\about_asserts.py
이것은 쉽습니다. 테스트를 통과하려면 False
True
로 변경하기만 하면 됩니다.
조만간 예상 값이 무엇인지 확실하지 않은 테스트에 직면하게 될 것입니다. 예를 들어:
class Dog :
pass
def test_objects_are_objects ( self ):
fido = self . Dog ()
self . assertEqual ( __ , isinstance ( fido , object ))
여기가 Python 명령줄이 유용할 수 있는 곳입니다. 이 경우 명령줄을 실행하고 시나리오를 다시 만들고 쿼리를 실행할 수 있습니다.
스니퍼를 사용하면 테스트를 지속적으로 실행할 수 있습니다. koans 디렉터리의 파일을 수정하면 테스트가 다시 실행됩니다.
이를 설정하려면 스니퍼를 설치해야 합니다:
python3 -m pip install sniffer
또한 시스템에 따라 이러한 라이브러리 중 하나를 실행해야 합니다. 이는 파일이 변경될 때 자동으로 스니퍼를 트리거합니다. 그렇지 않으면 스니퍼가 파일이 변경되었는지 확인하기 위해 폴링해야 합니다.
리눅스의 경우:
python3 -m pip install pyinotify
Windows의 경우:
python3 -m pip install pywin32
Also available here:
https://github.com/mhammond/pywin32/releases
macOS의 경우:
python3 -m pip install MacFSEvents
설정이 완료되면 다음을 실행하면 됩니다.
sniffer
koans 파일 중 하나를 수정하면 테스트가 자동으로 실행되는 것을 볼 수 있습니다. 스니퍼는 scent.py
에 의해 제어됩니다.
Ruby Koans 지침을 인용하면 다음과 같습니다.
"테스트 중심 개발의 진언은 항상 빨간색, 녹색, 리팩터링이었습니다. 실패한 테스트를 작성하고 실행하고(빨간색), 테스트를 통과하게 만든 다음(녹색) 리팩터링합니다(즉, 코드를 보고 다음과 같은지 확인합니다). 이 경우에는 koan을 실행하여 실패(빨간색)하는지 확인하고, 테스트를 통과(녹색)한 다음 잠시 시간을 내어 테스트를 통해 무엇을 가르치는지 확인해야 합니다. 의도를 더 잘 전달할 수 있도록 코드를 개선합니다. (리팩터링)."
다양한 언어와 프레임워크를 위한 다른 훌륭한 Koan 프로젝트가 많이 있습니다. 대부분은 GitHub에서 찾을 수 있습니다. 또한 Bitbucket에는 약간의 koans 활동이 있습니다.
번역은 언제나 환영입니다! 다음 중 하나를 작업해야 한다면 이 README에 자유롭게 추가하세요.
https://github.com/mswell/python_koans_br
Python Koans의 기반이 되는 원본 Ruby Koans를 만들어 주신 Jim Weirich와 Joe O'Brien에게 감사드립니다! 또한 Ruby Koans는 Metakoans에서 차용한 것이므로 Ara Howard에게도 감사드립니다!
또한 Python Koans에 기여해주신 모든 분들께 감사드립니다! 저는 FPIP의 Mikes가 결합하여 시작한 코드 베이스를 인수함으로써 큰 출발을 했습니다. 여기 그들의 아주 멋진 Python 팟캐스트를 위한 작은 플러그가 있습니다:
Mike Pirnat @pirnat와 Kevin Chase @kjc에게도 여러 차례 공동 관리자로 참여해 주셔서 큰 감사를 드립니다.