객체지향프로그래밍 언어인 python의 기본문법으로 어떤 것들을 순서대로 학습하는 것이 좋을지 같이 이야기를 나눠보도록 하겠다. 우선은 객체지향프로그램이라는 말부터 파악해보도록 하자. 객체지향프로그래밍(object oriented programming)이란 컴퓨터 프로그램을 구성하는 방식의 하나라고 생각해보면 접근하기가 좋을 것이다. 컴퓨터 프로그램을 만드는 방법은 우선 어떤 프로그램으로 뼈대를 세울 것인지 선정하는 것에서 출발한다고 할 수 있다. 대표적으로 c, c+, java등의 다양한 프로그래밍 언어 중 하나를 선택하여 기본적인 프로그램의 골격을 형성하게 된다. 이때 고려해야할 부분이 해당되는 프로그램의 구동환경과의 적합성이 될 수 있을 것이다. 다시 말해, 어디서 구동되는 프로그램인지에 따라 좀 더 효율적인 프로그램을 구성할 수 있는 프로그래밍 언어를 선택하게 된다. 다음으로 고려할 부분은 사용자의 활용성, 그리고 다양성에서 찾을 수 있을지도 모른다. 다시 본론으로 들어가서 컴퓨터 프로그램을 구성하는 '명령어'라는 것에서 벗어나 서로가 독립된 단위로 구성되는 것, 다시 말해 객체들로 이루어진 프로그램 형태를 우리는 객체지향프로그래밍이라 할 수 있다고 한다. 쉽게 이야기해 프로그램을 명령어들이 나열된 형태로 절차적인 모습으로 구성되는 것이 아니라 서로가 유기적으로 연관성을 지기고 있는 객체, 하나의 덩어리들이 하나의 프로그램을 구성하여 구동될 수 있는 연관성을 보이는 것이라 할 수 있다는 것이다. 컴퓨터 프로그램을 한번이라도 만들어보거나 혹은 프로그래밍언어를 학습해본 경험이 있는 사람들은 이 말을 조금 더 쉽게 받아들일 수 있으리라 생각해 본다. 어떤 명령어가 단순하게 반복되기 위해서는 대표적으로 'for문'을 주로 사용하게 된다. 프로그래머가 설정한 범위나 조건에 맞춰 해당되는 명령어의 나열들은 반복적으로 작업을 시행하게 되는데, 이런 명령어들을 나열하는 것이 코딩의 기본적인 모습이다. 하지만, 객체지향의 경우는 '불러온다'는 개념을 활용하면 좋을 것이다. 이미 만들어진 일정한 기능들을 불러와서 활용하게된다. 여기서 일반사람들이 익히기의 장점이 있다고 할 수 있다. 모든 것을 사용자가 코딩을 진행하지 않아도 된다. 예를 들어, 어떤 기능이 필요하다면 이미 만들어져있는 모듈을 불러와서 전체적인 프로그램을 구성할 수도 있는 것이다. 우리가 원하는 프로그램의 전체적인 모습에 대한 흐름만을 기준으로 세밀한 성능은 불러와 구동될 수 있도록 엮어두면 그만인 것이다. 물론, 기본적인 규칙인 문법에 어느정도 학습은 필요하지만 타 언어에 비해서는 비교적 간단하다고 할 수 있다. 여기서 한걸음 더 나아가 사용된 명령어들을 읽어볼 때도 이러한 부분은 큰 장점으로 나타날 수 있다. 우선 파이썬 프로그래밍 언어는 어순이 인간이 사용하는 문법에 닮아 있는 부분이 크다. 에를 들어 다른 글에서도 언급한 for문의 경우 'for a in range(0,10):'이다. for은 반복, a는 변수, 즉 a를 뒤에있는 조건에 맞춰 반복한다는 것을 의미한다. range는 범위를 나타내며 이부분은 조건이 될 수 있다. 상당히 간결하면서 직관적으로 우리가 알 수 있는 모습이다. while은 또 하나의 반복순환문으로 주로 사용하게 되는데, 조건이 참인 경우 해당되는 명령어들을 조건이 거짓으로 나타날 때까지 반복하게 된다. 'while Ture:'라고 입력하게 되면 해당되는 while 반복문은 지속적으로 참이기에 무한순환실행이 가능하게 된다. 이런 무한 루프를 줄이기 위해서는 해당되는 코딩에서 'break'라는 명령어를 조건에 맞게 실행되도록 설정해주면 그만이다. 또한, 묶음 개념으로 list를 주로 사용하게 되는데 수정이 가능한 집합이라 생각하면 되겠다. 수정이 불가능한 집합은 튜플이라고 한다. 표시는 소괄호를 사요하며, 리스트의 경우 대괄호를 사용한다. 그 밖의 다른 명령어의 경우도 우리가 주로 사용하는 언어에서 가져온 것이 많아 몇몇 특별한 규칙들을 숙지하고 접근하면 비교적 쉽고 빠르게 접근이 가능하게 된다. 이런 부분들이 입문자들에게는 파이썬의 큰 장점이 될 수 있는 것이며, 거기에 더불어 다양한 라이브러리라는 객체들을 불러와서 하나의 프로그램을 구성하게 되는 것이기에 숙달된 전문가가 아니여도 충분히 완성도 높은 프로그램을 구성할 수 있다는 점이 매력적이라 할 수 있다. 물론, 새로운 것을 배우고 익히는 것이 당연하게도 쉬운일은 아닐 수 있다. 하지만, 그 과정을 거친 후 느껴지는 매력은 한층 높은 흥미를 유발할 것임이 분명할 것이다. 프로그래밍을 공부하고 싶거나 취미로 익힌다면 객체지향프로그래밍언어인 '파이썬'이 충분한 정보를 제공할 수 있을 것이다.
'기술(技術)' 카테고리의 다른 글
파이썬, print로 코드 결괏값을 깔금하게 확인하기 (0) | 2021.01.19 |
---|---|
크롬 브라우저 사용의 장점 (0) | 2021.01.19 |
wiki docs 사이트를 이용하는 방법 (0) | 2021.01.18 |
컴퓨터 한대로 다양한 네트워크 환경을 조성하는 방법, vmware (0) | 2021.01.18 |
파이썬 강좌 vs 파이썬 독학 어느것이 좋을까. (0) | 2021.01.18 |