직업은 선물 트레이더

한학기동안 만든 텀프로젝트 작품들

잊어버린 과거

 

갑자기 텀프로젝트 팀작업이 많아져서 체감상 많이 힘들었던 한학기였습니다.

단어 명칭마저 불분명합니다. '팀' 단위로 작품을 만드는 팀프로젝트인지 혹은

학학기(=Term) 동안 진행하는 텀프로젝트를 의미하는건지;;

저는 혼용해서 썼던 것 같습니다.

어차피 다른사람이라 얘기할 땐 "ㅌ 프로젝트" 라는 발음만 대충 말해도 다 알아먹기 때문에..

물론 텀프로젝트나 팀프로젝트 둘다 의미는 맞는 것 같습니다.

 

어찌되었든, 저번에 말씀드린대로?

이번학기 텀프로젝트때 어떤 작품을 만들었는지 포스팅 해보겠습니다.

팀 단위로 작업을 분업하여 프로젝트를 진행한 것이며 숨겨야될 데이터가 있는 것 도 아니고

소스 또한 공개되지않기에 조금 걱정은 되지만, 안심하면서'' 올려봅니다. 

 

 

 

음..첫번째 소프트웨어 공학입니다.

 

이 교과에서 배운 것을 토대로, 팀별로 자유로운 주제 속에서 '설계'를 해보는 프로젝트였습니다.

설계라하면.. UML로 몇가지 다이어 그램 그려보는 정도지요.

 

저희조는 광고선별 시스템을 설계해보았습니다.

간단히 설명하자면, 어떤 광고를 설치해야 가장 효과적일까에 대한 고민을 프로그램이 대신 해주는 것입니다.

 

 

서버와 클라이언트로 나뉘어져있고, UML로 만들어보았습니다.

대략 분량은 요구분석 명세서가 A4기준 20p 정도 되고, UML 그리는 설계가 35p 정도 됩니다.

위에 클래스 다이어그램은 화면이 작아 큰 분류 기준으로 그렸지만

나중에 설계하고보니 클래스가 총 26개나 나오더라구요. 

물론.. 분량만 그렇다는거고, 실제 이 것을 기초로 코딩은 못할겁니다;;

처음 설계해보는거기에 오류가 당연히 많을거라 생각합니다.

 

 

 

 

두번째는 네트워크 프로그래밍입니다.

 

이전에 한번 이 교과관련해서 코딩하면서 작성했던 포스팅이 있는데;;

파일입출력함수 사용을 많이 해본적 없기에.. 개인적으로 굉장히 많은 노력을 했다고 생각한 작품입니다.

기본적으로 멀티쓰레드 기반으로 작동되는 채팅+파일전송 프로그램입니다.

 

 

말쓰고 엔터누르면 채팅 기능이 되고,

귓속말기능과 1:1 파일전송 그리고 1:N파일전송이 가능합니다.

파일전송은 바이너리 모드로 동작하기에 exe파일이건 dat파일이건 뭐건 상관없이 보내집니다.

 

 

 

 

다음은 운영체제입니다.

 

이건 텀프로젝트라고 하기 좀 그렇네요, 분량이 비교적 다른것들보다 적고

인원도 혼자 아니면 두명정도로 편성해서 하라고 하신거 보면 말입니다.

 

단순 페이징 기법을 구현하는 프로그램을 C로 작성해서 만들어오라는 프로젝트였습니다.

예전엔 C++로 내줬드니 어떤 클래스하나 다운받아서 페이징이랑 똑같은 기능한다고

그냥 제출한 학생이 있었다나.. 

 

 

프로그램 자체는 비교적 간단합니다.

릴리즈 버전으로 만들었기에 직접 실행해보실분은 실행해보셔도 됩니다ㅋ

들어가 있는 기능은 메모리에 프로세스가 적재될 때 비연속적으로 될 수 있다는 점 정도가 되겠네요.

 

다운로드 링크 :paging.exe

 

 

 

 

다음은 컴퓨터활용 입니다.

 

엑셀과 파워포인트를 배웠던 교양과목입니다.

기말고사를 텀프로젝트로 대신하여 진행되었습니다.

주제는 자유롭게하여, 프리젠테이션을 만들어 발표하는 것이었는데요,

저희조에선 세계속 재미있는 이야기라는 주제로 만들었었습니다.

 

 

 

 

애니메이션이 모든 페이지에 포함되어있는,

이정도 퀄리티로 30p 정도 분량 만들어서 발표분량은 8분으로 진행했습니다.

중간에 말을 놓치면 8분이 훌쩍 넘어가기에 생각외로 고민했던 기억이 납니다.

 

 

 

 

마지막으로 윈도우프로그래밍입니다.

 

C++기반으로 MFC로 프로그래밍 하는 과목이었습니다.

텀프로젝트 주제는 자유였는데, 창의적 기능이 들어가야 한다길래 조원들 모두 엄청 고민했던 기억이 납니다.

그래서 정한 주제는, 해상구조물 지지대의 생명체 제거 시스템.. 입니다.

 

간단히 설명하자면, 튜브구조체에 위아래로 칼날을 장착한뒤 지지대에 이 튜브구조체를 설치하면

밀물과 썰물차에 의해 위아래로 움직이면서 산호등의 해양생물들을 제거하는 그런 시스템입니다.

제거해야하는 이유는, 해양생물의 배설물에 의해 지지대가 부식되기 때문이죠.

 

 

주요 사용한 함수로는 Alphablend, Transbitblt 정도가 되겠고 더블버퍼링이 적용 되어있습니다.

근데 문제는.. 아주 기초적인것만 배워서 그런지... 이거 만들때 무조건 onDraw에 에 우겨넣어 버렸다는거..

주석없이는 코드해석이 불가능할 정도로 복잡 해지는 결과롤 초래했죠.

이게 절차지향 언어인지, 객체지향 언어인지.... 할정도로..

지금도 MFC를 떠올리면 두가지밖에 생각이 안납니다. View클래스의 onDraw와 pDC ㅋ

 

이거도 릴리즈 버전으로 만들었기에 궁금하신분은 실행해보셔도 좋을 것 같아요.

 

다운로드 링크 :crash.zip

 

 

ps. 이제 이정도까지 해보니까. 왠만한 코딩작업은 할 수 있겠다는 자신감이 들었습니다. 

코딩하다보니까 파일입출력도 그렇고, 몰랐던 함수나 기능도 책찾아가면서 만들다보니 그런가 생각이 듭니다.이렇게 써놓으면 별거 없는거같은데 막상 만들 때 생각하면..

자바 텀프로젝트가 없다는거에 너무 감사했을정도;;;;;

혹시 학부이하 과정의 학교과제 C코딩 때문에 쩔쩔 매는 과정에 봉착하신분이 있다면,

도와드릴 수 있을지도???? ''?? 댓글달아주시면 됩니다ㅋ 

 

(다른사람들은 어떨까?? 텀프로젝트 검색(Click))