▒   yong27의 생각들   ▒  

이름: yong27 (yong27@nownuri.net) ( 남 )
홈페이지: http://biohackers.net
2002/4/11(목) 01:18 (MSIE5.5,WindowsNT5.0) 218.147.213.84 1024x768
Object oriented programming  
최근 프로그래밍 경험이 많아지면서 OOP에 대한 감이 새록새록 와닿고 있다.
얼마전 풀었던 EightQueenProblem 이랑 ( http://biohackers.net/wiki/EightQueenProblem ), 하루한시간씩 투자하고 있는
Design patterns 스터디를 통해서 아싸~ 재밌게 OOP를 익히고 있다.

OOP를 잘 이용하기 위해선, 문제를 풀고자 할때
그 문제속에 등장하는 객체들을 잘 선별하고, 그 객체에게 책임을 떠넘기는거다.

가령, reverse complement를 구현한다 하면, 일단 보이는 객체는 서열이다.
그리고 그 객체가 하는 대표적인 일은 자신의 서열을 뒤집는거다.
따라서,

Class Seq:
def reverse(self):
self.seq.reverse()

따위로 구현될 수 있다. 뒤집는건 그 객체가 하는일이다.

또 느끼는 점 한가지. June씨도 강조하는 것이기도 한데
리팩토링을 하다보면 자동적으로 Design patterns가 나타난다는것...
중요한것은 incremental development이란얘기... 음미해 볼만 하다.

생물정보학문제를 풀면서 과연 OOP가 도움될까 하는 의구심이 있을 수 있으나,
이건 문제를 바라보는 또다른 시각을 제공할 수 있다고 하니 그게 장점일 수 있고,
(Procedual 이나 OO 나 모두 상호 변환가능하다고 하니..)
나중에 세포모델링같은 임무가 주어진다면 요긴하게 쓰일것 같다.
다 떠나서, OOP는 프로그래밍의 추세다 보니, 익혀서 손해볼건 없다.


  이름   메일   관리자권한임
  내용 입력창 크게
                    답변/관련 쓰기 폼메일 발송 수정/삭제     이전글 다음글    
번호제 목짧은댓글이름첨부작성일조회
58   재밌게 살기?!   ghost   04/23-13:42  546
57       Re.. 바로그거지..   yong27   04/25-22:56  610
56   Object oriented programming   yong27   04/11-01:18  569
55   DC와 MD를 한번에   yong27   04/08-12:14  552
54   Pair programming with June   yong27   03/21-01:24  587
53   새로운환경에서의 프로그램개발   yong27   03/14-00:54  544
52   여럿이서 프로그램만들기   yong27   03/07-00:18  539
51   테크노트 업그레이드  1 yong27   03/03-19:13  638
50   나다 짜샤~!   김청일   1/10 [21:28]  636
49   금연선언~  4 yong27   1/2 [00:38]  931

 
처음 이전 다음       목록 홈 알림 쓰기

ⓒ Copyright 1999~   TECHNOTE-TOP / TECHNOTE.INC,