본문 바로가기

Python94

운영 체제와 작업하기 이 주제에서는 운영 체제의 역할을 살펴보고 파이썬에서 어떻게 운영 체제에 접근할 수 있는지 알아보겠습니다. 그래서 운영체제란 도대체 무엇인가? 대부분의 컴퓨터 사용자는 컴퓨터에 운영 체제가 있다는 것을 압니다. 그것이 윈도우즈이든 리눅스나 MacOS 또는 기타 무엇이든 말이지요. 그러나 그 운영 체제가 무슨 일을 하는지 정확하게 아는 사용자는 별로 없습니다. 이 사실은 대부분의 상업적 운영 체제에 수 많은 프로그램들이 따라와서 더욱 복잡해집니다. 그 프로그램들은 실제로는 운영체제의 일부가 아니지만 없으면 컴퓨터의 효용성이 아주 떨어집니다. 이런 프로그램의 예로는 이미지 뷰어와 웹 브라우저 그리고 텍스트 편집기 등등이 있습니다. 그래서 운영 체제는 정확하게 무슨 일을 하고 왜 필요한가? 레이어 케이크 원리.. 2012. 4. 27.
데이터베이스 작업 이 주제에서는 시간이 지나면서 어떻게 데이터베이스 패키지를 통하여 데이터가 저장되고 조작되는지 살펴보겠습니다. 개인 주소록 같이 파일을 사용하여 소량의 데이터를 저장하는 법을 이미 보았습니다. 그러나 파일을 사용하면 복잡도가 급격하게 증가합니다. 데이터의 복잡도가 증가할 수록 그리고 데이터의 양이 증가할 수록 그리고 (검색, 정렬, 여과 등등) 연산의 복잡도가 증가할 수록 말입니다. 이를 극복하기 위하여 여러 데이터베이스 패키지가 존재합니다. 아래의 파일 관리를 책임지고 데이터를 보다 조작하기 쉬운 추상적인 형태로 노출시켜 줍니다. 어떤 패키지는 단순히 코드 라이브러리여서 이미 살펴 본 파일 연산을 단순하게 해 줄 뿐입니다. 예를 들어 파이썬에 따라오는 pickle 모듈과 shelve 모듈이 그런 라이브.. 2012. 4. 25.
실전에 사용되는 파이썬 실전에 사용되는 파이썬 이 섹션에서는 파이썬을 이용할 수 있는 실용 어플리케이션과 그를 도와줄 라이브러리 모듈에 집중하겠습니다. 여기에는 데이터베이스나 컴퓨터 네크워크 그리고 인터넷 같은 배경 테크놀로지에 관하여 알아야 할 뿐만 아니라 컴퓨터를 움직이는 운영체제의 기본적 특징도 알아야 할 것입니다. 프로그래밍 자습서가 목적이기 때문에 이런 테크놀로지지의 핵심 뼈대만 다루고 호기심 많은 이들을 위하여 다른 사이트로 가는 링크를 제공하겠습니다. 여기에서 선택한 주제는 파이썬 선생님 메일링 리스트에서 아주 자주 나타나는 영역을 반영합니다. 그러므로 초보 프로그래머의 욕구를 만족시킬 수 있으리라 생각합니다. 특별히 관심이 있는 분야가 다루어지지 않았다면 최종 주제에서 링크를 제공하여 적절한 사이트로 안내하여 필.. 2012. 4. 25.
사례 연구 사례 연구 이번 사례 연구를 위하여 앞서 개발한 단어 세기 프로그램을 확장해 보겠습니다. 유닉스의 wc 프로그램을 흉내내는 프로그램을 만들겠습니다. 이 프로그램은 파일에 있는 줄과 단어 그리고 문자의 개수를 출력합니다. 그렇지만 그 보다 더 나아가 문장과 절 그리고 문단의 개수를 출력하겠습니다. 이 프로그램의 개발을 단계별로 따라가겠습니다. 서서히 능력을 키워서 그것을 재사용 가능하도록 모듈로 이동시키고 최대한 확장성을 확보하기 위해 그 모듈을 OO 구현으로 변환하겠습니다. 그리고 마지막으로 그것을 사용하기 쉽게 GUI 안으로 싸 넣겠습니다. 쭈욱 파이썬을 사용할 생각이지만 약간만 수정하면 JavaScript나 VBScript로 프로그램을 구축할 수도 있습니다. 구현할 수는 있지만 독자를 위해 남겨둘 특.. 2012. 4. 25.