반응형

언제나 휴일 62

4. 미션1 클리어, Next Go Go! (언제나 휴일2, IT 소설)

4. 미션1 클리어, Next Go Go! (언제나 휴일2, IT 소설)우리 조는 배우지 않은 OpenCV를 이용하여 화상 채팅을 주제로 프로젝트를 하기로 하였다. 다른 조들보다 제안서를 일찍 통과하여 좀 더 많은 학습을 하기 위해 주말에 짱강이 요구한 예광탄을 마무리지었다. 오늘 오전 강의 시작하면서 강사님과의 미팅에서 빠른 결론이 나왔으면 좋겠다. 어제 밤에 많은 눈이 내려서 원화관으로 가는 길이 온통 하얐다. 미팅에서 무엇을 얘기할 지 생각하며 걷는 도중에 나의 발걸음을 멈추게 하는 울림이 있다. "옥찬아, 무슨 일 있어?" "지난 번에 금 씌운 이빨이 빠져서 병원에 가 봐야될 것 같애." "그래, 걱정말고 갔다 와. 내가 짱강에게 얘기할께." "고마워. 빨리 갔다 올께." 강의실에 도착하니 이미 ..

3. 풋나기 (언제나 휴일2, IT 소설)

3. 풋나기 (언제나 휴일2, IT 소설) 어제 음악 정보에 관한 소셜 네트워킹을 주제로 하여 제안서 초고를 제출하였다. 강사님께서 다른 조의 경우에는 주제 선정 과정에서 어떠한 요구도 하지 않았는데 우리 조에는 음성에 관한 기초적인 엔진을 이용하는 것을 해 보라고 해서 이를 하게 된 것이다. 어제 미팅에서 해당 프로젝트를 수행 가능하다는 것을 입증하기 위해 세 가지의 예광탄을 쏘아 보라고 하셨다. 1. wav 포맷의 파일을 분석하여 주파수 파형을 구하라. 2. 채팅 서버와 클라이언트를 구현해 보라. 3. 회원 가입을 클라이언트 서버 모델을 통해 구현해 보라. (ODBC를 이용하여 Access 파일에 회원 정보 보관) 나는 이 중에서 wav 포맷에 대한 분석을 하여 주파수 파형을 구하는 것을 하기로 하였..

2. 첫 미팅 (언제나 휴일2, IT 소설)

2. 첫 미팅 (언제나 휴일2, IT 소설) 저녁 식사를 하고 우리는 선배 기수들은 이 시기에 어떠한 프로젝트들을 했었고 현재 기술 패러다임이 어떻게 흘러가고 있는지에 대해 살펴보았다. 많은 시간동안 조사하고 얘기를 해 보았지만 무엇을 해야 할 지 과연 할 수 있을 지 막막하였다. 밤 10시 정도가 되니 동규네 조는 화상 채팅을 하겠다고 하면서 강사님과의 첫 미팅을 하기 위해 문서 작업을 하러 들어갔다. 건주네 조는 강사님이 소리에 관련하라고 지시를 하였는데 구체화시키는데 애를 먹는 모양이다. 시혁이네 조는 원격 제어를 한다고 하는데 아직 우리는 딱히 정하지 못하였다. 밤 11시가 되어 우리는 제일 먼저 얘기가 나왔던 경매를 하기로 하고 문서 작업에 들어갔다. 2011년 1월 21일, 알람 소리와 함께 ..

26. 캡슐화 최종 실습 - 구체적 구현

안녕하세요. 언제나 휴일, 언휴예요. 이번에는 캡슐화 최종 실습의 마지막 단계인 구체적 구현을 할 차례네요. 여러분께서는 먼저 구현한 후에 비교해 보세요. 이제 마지막으로 메서드를 구체적으로 구현합시다. 약속한 기능을 구현하면서 필요하면 별도의 메서드를 추가하세요. 여기에서 추가하는 메서드는 다른 형식에서 호출해서 사용하지 않는 메서드이므로 접근 지정을 private으로 지정하세요. 특히 멤버 필드의 값이 특정 범위 내에 있어서 필터링을 요구하면 설정자 메서드를 추가하여 구현하세요. 설정자 메서드에서 멤버 필드 값을 범위 내에서 조절하는 기능을 작성하면 버그를 만들 확률을 줄일 수 있습니다. 여러분께서 각자 구현해 본 후에 비교해 보세요. 여기에서는 지력, 체력, 스트레스, 연속으로 공부한 횟수는 범위가..

25. 캡슐화 최종 실습 - 테스트 코드 작성

안녕하세요. 언제나 휴일, 언휴예요. 이번에는 캡슐화 최종 실습 내용을 잘 작성했는지 확인하는 테스트 코드를 작성해 보기로 해요. 이제 시나리오를 보면서 테스트 코드를 작성하세요. 많은 곳에서 구현한 후에 테스트를 수행합니다. 그리고 테스트 코드도 테스트를 수행하기 바로 전에 작성하죠. 하지만 소프트웨어 테스트는 많은 신경을 써도 충분하지 않아 배포 후에 버그를 발견할 때도 많습니다. 소프트웨어 개발에서 잘못 작성한 것은 빨리 발견할수록 전체 비용을 줄어듭니다. 이러한 이유로 많은 연구에서 설계가 끝나면 구현 작업과 함께 시작할 것을 권하고 있습니다. 그리고 구현한 것을 빠르게 테스트를 할 수 있게 원하는 결과가 나왔는지 빠르게 판단할 수 있는 다양한 기법을 사용하고 있습니다. 여기에서는 테스트를 빠르게..

24. 캡슐화 최종 실습 - 멤버 메서드

안녕하세요. 언제나 휴일, 언휴예요. 이번에는 캡슐화 최종 실습 중에 멤버 메서드를 결정하세요. 여러분께서는 앞의 시나리오를 먼저 확인하여 멤버 필드를 결정한 후에 비교하세요. 이제 시나리오를 보면서 멤버 메서드를 결정하세요. 여기에서는 메서드 이름과 입력 매개 변수 리스트 및 반환 형식까지 결정하세요. 메서드 내부를 구체적으로 결정하는 부분은 테스트 코드 작성 후에 맨 마지막에 할 거예요. 먼저 혼자 해 본 후에 비교해 보세요. 먼저 다른 형식에서 접근 가능하게 접근 지정자 public:을 명시하세요. public: 생성할 때 이름을 입력받으므로 이를 반영하여 생성자 메서드를 결정하세요. Student(string name);//생성자 "공부하다.", "강의받다.", "잠자다.", "휴식하다.", "음..

23. 캡슐화 최종 실습 - 멤버 필드

안녕하세요. 언제나 휴일, 언휴예요. 이번에는 캡슐화 최종 실습 중에 멤버 필드를 결정해 보아요. 여러분께서는 앞의 시나리오를 먼저 확인하여 멤버 필드를 결정한 후에 비교해 보세요. 먼저 클래스 이름은 Student로 정할게요. 주민 번호는 변하지 않으므로 상수화 멤버 필드로 정의하세요. const int pn;//주민번호 주민 번호를 순차적으로 부여하기 위해 정적 멤버 필드로 가장 최근에 부여한 주민 번호가 필요하겠죠. static int last_pn;//가장 최근에 부여한 주민 번호 이름은 문자열로 정하면 되겠죠. string name;//이름 지력과 체력, 스트레스, 연속으로 공부한 횟수는 정수 형식으로 정의하면 되겠네요. int iq;//지력 int hp;//체력 int stress;//스트레스..

22. 캡슐화 최종 실습 - 시나리오

안녕하세요. 언제나 휴일, 언휴예요. 이번에는 캡슐화에서 다룬 내용을 이용하는 최종 실습을 해 보아요. 먼저 시나리오를 살펴보세요. 이번에는 단계별로 캡슐화를 실습해 보기로 해요. 여러분께서는 각 단계별로 먼저 직접 해 본 후에 비교하시기 바랍니다. 여기에서는 다음의 시나리오를 캡슐화 실습할 거예요. 다음 내용처럼 학생 데이터를 정의하시오. 1. 멤버 필드 주민번호: 순차적 부여 이름: 생성 시 전달 지력:100(최소 0, 최대 200) 체력: 100 (최소 0, 최대 200) 스트레스: 0 (최소 0, 최대 100) 연속으로 공부한 횟수: 0 (0,5), 공부를 하면 1 증가, 그 외의 행위를 하면 0으로 리셋, scnt로 부름 2. 명령할 수 있는 메서드(접근 지정이 public) 공부하다(체력 5소..

21. 캡슐화 실습2 - 학생

안녕하세요. 언제나 휴일, 언휴예요. 이번에는 시나리오를 클래스 다이어그램으로 변환한 후에 학생 클래스를 정의하는 캡슐화 실습을 해 보아요. 이번 실습은 학생 클래스를 캡슐화하는 실습입니다. 이번에는 시나리오를 보고 클래스 다이어그램을 작성한 후에 이를 구현해 보기로 해요. 1. 시나리오 학생은 생성할 때 학생 이름을 전달받습니다. 그리고 학생 번호는 순차적으로 부여합니다. 이 외에 학생의 국어, 영어, 수학 성적을 -1로 설정합니다. 학생을 생성한 후에는 학생의 국어, 영어, 수학 성적을 입력할 수 있습니다. 만약 학생 성적이 0에서 100을 벗어나면 -1로 설정합니다. 학생 이름과 번호, 각 과목의 성적과 총점 및 평균을 확인할 수 있습니다. 그리고 전체 학생 수를 확인할 수 있습니다. 그리고 학생 ..

반응형