'컴퓨터공학과'에 해당되는 글 2건

  1. 2008/05/25 컴공학생들이 해보는 짝프로그래밍의 고찰 (2)
  2. 2008/04/20 학교는 개발툴 전쟁? (4)

애자일방법론을 아시나요?

본인은 애자일방법론을 아주 좋아합니다.(현재 열심히 배우고 있습니다)

쉽게 애자일방법론을 말하자면

알파 -> 베타 -> 베타 -> RC1 -> RC2

위와 같은 순환으로 점진적으로 App를 완성시킨다는 것이죠. 처음 핵심만 만들고 점점 살을 붙이는 격이라 하겠습니다.

위키백과 - 애자일








이에 반면에 폭포수는 프로젝트마다 다르겠지만 대부분 위에 왼쪽 사진과 같습니다.(ㄷㄷㄷ)

여기서 말하고 싶은것은 애자일이 가지는 짝프로그래밍입니다.

짝프로그래밍을 말하려 하는 배경은 본인은 틈틈이 많은 학생들의 코드를 유심히 관찰해 보았습니다. 역시 학생이다 보니 명명법을 비롯해 제대로 된게 하나 없죠. 이것은 배워야 하는 문제이니 스스로가 노력해야겠죠.

하지만 문제는 모두 로직과 스타일이 다른데 스스로가 제대로 한 건지 못한 건지 모른다는 것입니다. 심지어 자신이 잘 짜고 있다고 믿는 학생도 있습니다. 출력만 예쁘게 잘 나오면 장땡인가 봅니다.

자 그럼 본론으로 코드는 사람마다 모두 다르다고 합니다. 맞습니다. 사람의 환경이 서로 다르니깐요. 그래서 인도나 미국회사들은 정해진 스타일의 틀을 지정하죠. 그래야 유지보수가 한결 쉬워지니깐요.

그런데 학생들은 자신의 코드에 대해 망각에 빠진 채 아무런 지적 없이 코딩을 한다는 것이죠. 하지만 정확히 지적하냐는 건 힘들기에 배제하겠습니다.


한컴퓨터로 두명이상이 코딩하기?

처음 이런 소리 들으면 도저히 이해가 안될 것입니다.(저도 그랬으므로)

하지만 애자일 관련 도서나 블로그를 보면 짝프로그래밍의 장점이 분명 있다는 것이고 프로젝트에 있어 매우 효과적이라는 것입니다. 짝프로그래밍 하다가 성격 안 맞으면 욕나오겠지만 유지보수 안돼서 버그나서 욕나오는거랑 맘먹을 것입니다.


그럼 어떻게 짝프로그래밍을 해야 할까요?

일단 학교 숙제를 가지고 서로 한다는건 엄두도 안날 것입니다. 왜냐면 코드가 같으면 낙제니깐요.ㅎㄷㄷ

또 짝이라 하지만 포기한 학생들 분명 있습니다. 즉 한명만 열심히 코딩 할 수도 있다는 것이죠.

그러므로 수업정책상 하기힘든 방법일 것 같네요.

하지만 스스로가 발전되길 바라는 학생이 있을 것입니다. 그런 학생들이 모여 서로 구현을 하려 한다면 분명 발전이 생긴다는 것 입니다.


결론!

프로그래밍 공부는 책을 가지고 반복

프로그래밍 구현은 두명 이상이 한명은 코딩치고 나머지 참여자는 같은 모니터를 보면서 의견내보고(여건이 안되면 어쩔수....)


장점.

컴퓨터대 개인으로 인해 생기는 망상이 깨진다.

코드가 더 정교하게 된다.

단점.

서로 잘났다 하는 친구랑 하면 싸움이 난다.


애자일하면 이렇게 된다.(잘 뭉치면 승리한다)

짝프로그래밍의 장단점에 대해 잘 정리된 글이네요. http://mars.egloos.com/1635173


생각

분명 팀 과제는 있지만 현실은 팀이 아니고 웬수라고들 합니다. 이런 상태에 이런 방법까지 제안한다면 A+ 받기 힘들죠.

그리고 코드는 그저 네이버검색에 의존하여 나온 코드 위주이고 또는 스스로 생각해낸 코드이니 서로 독특하죠.

그래서 개인이 작성한 코드를 학생들끼리 서로 교환하고 서로 지적받고 물어봐야 한다고 생각을 합니다.

즉 분명히 코드의 피드백은 있어야 한다고 생각을 합니다.

크리에이티브 커먼즈 라이선스
Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이선스에 따라 이용하실 수 있습니다.

현재 다양한 개발을 위해 적합한 툴을 전도하고 있습니다.

전도의 이유는 아직까지 10년 전의 툴로 10년 전의 기술을 하고 있다는 게 저는 납득이 되질 않거니와 기술도 재미없기 때문에 학생들의 의욕도 없다는 것이죠.

VS?

그래서 VS 2008 무료판을 받고 즐겁게 재미있게 역량을 보이길 바라고 있습니다.
그런데 관점은 전혀 다르게 보고 판단 한다는 것입니다.

대표적인 피드백은 다음과 같습니다.

1. 배우는 입장은 아무것이나 해도 된다.

2. 자기의 취향에 맞춰야 한다.

말로만 비춰보면 100% 맞는 말입니다. 틀린 거 하나 없습니다.
저는 참고로 메모장으로 공부 하였습니다. 하지만 컴파일러는 현재 나오는 것으로 했죠.

"아무거나?"
네! 메모장이 되었든 드림위버가 되었든 이클립스가 되었든 비주얼스튜디오가 되었든 아무거나 하시길 바랍니다.

"취향?"
웹이 되었든 임베디드가 되었든 윈도우즈용이 되었든 맥용이 되었든 원하는 것을 하세요.

사용자 삽입 이미지adobe dreamweaver CS3

사용자 삽입 이미지

하지만 학생들의 관점은 바로 언어(특히 C,C++,C#,자바)라는 것과 또 그 외에 아무것도 모른다는 것입니다. 다른 쉬운 것들 편한 것들 아주 재미있는 것들이 허다한데 C가 개발의 시작점이라 인식이 완전히 박혀 있는 상태입니다. 이 글을 읽어도 아마도 당연히 C가 기초라고 못마땅하실 것입니다.

사실 VS6.0을 해본 저도 아이콘 변경이나 그림삽입 같은 멀티미디어적인 요소에 엄청난 삽질을 해야만 하였고 디버깅도 어지럽게 네이티브코드로 가버리는 등 온갖 삽질투성이게 됩니다. 저는 이런 것이 배움에 있어 더디게 한다고 문제 삼아 왔지만 학생측은 당연시 해왔고 그로 인해 언어는 어렵다라는 인식만 가중되고 있게 됩니다.

다시 한번 위에 피드백을 보자면 배우는데 왜 10년 전 도구와 기술을 배우나요?  그리고 취향이 고전적인가요? 또 현재 컴퓨터에 10년 전 프로그램 찾아보세요. VS6.0 말고 무엇이 있나요? (추가 : 스타크래프도 있네요.)

(추가 - C가 않좋다는 것은 절대 아닙니다. 해당프로젝트에 걸맞으면 C도 당연히 써야죠! 언어가 구식이라는 것을 지적하는게 아닙니다.)

세상은 바뀌고 있고 그 세상에 맞춰 기술은 변화하고 있습니다. 스스로도 변화해야 할 것입니다.

저의 관점은 간단히 말하자면 이렇습니다.

· 코딩은 짧게 생각은 깊게 하라.

· 다양하게 해보고 그 중에 원하는 것을 깊게 하라.

· 자신의 창조물을 만들어라.

지금 하고 있는 기술로는 저의 관점을 충족할 수가 없을 것입니다. 학교의 방침은 따르시되 스스로가 길을 만들어 나가길 바랍니다.

그 길은 자신이 우물 안에 있다는 것을 깨달을 때 더 잘 보일 것입니다.

본인 또한 그 길이 잘 보이도록 노력하겠습니다.

크리에이티브 커먼즈 라이선스
Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이선스에 따라 이용하실 수 있습니다.
1 

글 보관함

get rsstistory!