U E D R , A S I H C RSS

타도코코아Cpp Study/0721

오늘 한 것들

  • 객체지향에 대한 간단한 설명
    • 객체는 속성과 행위를 가지고 있다.
    • C++에서는 이를 멤버변수, 멤버함수라는 개념으로 표현하고 있다.
    • 이러한 객체 사이의 통신으로써, 실세계를 모델링하는 기법을 객체지향 프로그램이라 한다.
  • 그외 프로젝트 진행에 관한 전반적인 계획 수정

간단한 OO Hello World

~cpp 
#include <iostream>
#include <string>
using namespace std;

class Human
{
private:
	string m_name;
public:
	Human(string& name)
	{
		m_name = name;
	}
	string& getName()
	{
		return m_name;
	}
	void sayHello(Human& other)
	{
		cout << m_name << "왈 : " << other.getName() << " 안녕~";
	}
};

int main()
{
	Human sunhee("선희");
	Human jungwoo("정우");

	sunhee.sayHello(jungwoo);
	jungwoo.sayHello(sunhee);
	return 0;
}

다음시간 발표

다음시간 숙제 - 아무거나 골라서 해오세요.

최소 한개. 많이 해오면 응분의 보상이 있을지도?
문제 학생이름 학생의 답안 강사의 평
소트 CherryBoy Upload:sort_CherRy.cpp 10이라는 매직넘버를 없애세요. 만약에 50000개짜리 배열이면 저 안에 있는 10은 모두 50000으로 바꿔야 하는 수고를 해야겠죠?
수진 Upload:수진이소트.cpp 역시나 10이라는 매직넘버 없애세요.
정우 Upload:sort_winy.cpp 잘했어요^^ 50000이라는 매직넘버 없애세요.
선희 Upload:sort.cpp 굿
피보나치 수열 CherryBoy Upload:fibonacci_CherRy.cpp 역시 2학년~ 특별히 나무랄데 없이 잘했어요.
코코아 Upload:코코아의피보나치.cpp 변수명에 신경을 써서 이름을 고쳐 보세요.
선희 Upload:fibonacci.cpp 잘했어요^^
정우 Upload:pibonachi.cpp 잘했어요^^
수진 Upload:fibonacci_sujin.cpp 역시 잘했어요 근데 옛날의 그 화려한 UI가 어디론가 없어졌네요.;
소수구하기 CherryBoy Upload:sosu_CherRy.cpp 역시 특별히 신경쓸 부분은 없네요. 하지만 모듈화라는 측면에서 볼때 안쪽에 소수인지 아닌지 판별하는 부분은 함수로 뺄수 있겠죠? 또 yesno라는 변수명도 좀 거슬리네요. 뭔가 좀 적절한 이름의 변수명은 없을까요? 그리고 속도를 좀 개선해보세요. 제가 개선해보니 15배의 속도 상승이 있었습니다.
정우 Upload:sosu.cpp 잘했습니다. 근데 1은 소수가 아니랍니다.^^; 조금 더 최적화가 가능할 듯 하네요. 수학책 한번 찾아보세요. ^^ 제가 살짝 고쳐 보니 약 3배의 속도 상승이 있네요.
파스칼의 삼각형 CherryBoy Upload:paskal_CherRy.cpp 이것도 역시 특별히 나무랄데는 없네요. 하지만.. 쓸데없는 주석은 줄여보도록 하세요. 그리고 pascal이랍니다.^^
정우 Upload:pascal.cpp 캡~
랜덤워크 CherryBoy Upload:randwalk_CherRy.cpp main안에 다 때려넣었군요. 함수 이름 잘 지어서 빼보도록 하세요. 즉, 좀더 구조적으로 만들어 보라는 겁니다. 대근이는 yesno라는 이름을 좋아하나보군요.
마방진(홀수) CherryBoy Upload:MaBangJin_CherRy.cpp 굿~ 하지만 클래스 썼다고 객체지향은 아니죠^^ 좀더 책임을 분산시켜 보세요. 또한 한 메소드의 길이가 너무 기네요. 중복도 좀 있고. OAOO(Only and only once)를 지켜보세요.
1900년 이후의 만년달력 . . .
8퀸 문제 . . .

잡담

선희랑 정우는 숙제 안하나요?
그러게.....오늘은 마방진이랑 만년달력을 해보겠습니닷!! -- CherryBoy
대근이는 2학년이니까 객체지향으로 짜보세요 --인수
대근이형 넘 잘해용.. 흑. 벌써 세개빼고 다하시다닝~~ -- 정우
아냐, 아냐. 2학년치곤 못하는거지;; 마방진은 슷하 좀 쌔리고 해야겠다.. 아, 글고 인수형 매직넘버는 없앴어요;; -- CherryBoy
매직넘버 없애라는게 const 선언하라는거에여? -_-a..--정우
그러니까 코드 도처에 난무하는 10, 50000 이런 숫자는 이렇게 작은 프로그램에서는 금방 알 수 있지만... 프로그램이 조금만 커져도, 저런 숫자가 많아지면 알아볼수가 없거든.. 나중에 삽질하지 말라고 미리 습관을 들여놓으라는 거야. --인수
const도 좋고 #define도 좋지만, C++이라면 역시 const --snowflower

오늘 한 것들

  • 객체지향에 대한 간단한 설명
    • 객체는 속성과 행위를 가지고 있다.
    • C++에서는 이를 멤버변수, 멤버함수라는 개념으로 표현하고 있다.
    • 이러한 객체 사이의 통신으로써, 실세계를 모델링하는 기법을 객체지향 프로그램이라 한다.
  • 그외 프로젝트 진행에 관한 전반적인 계획 수정

간단한 OO Hello World

~cpp 
#include <iostream>
#include <string>
using namespace std;

class Human
{
private:
	string m_name;
public:
	Human(string& name)
	{
		m_name = name;
	}
	string& getName()
	{
		return m_name;
	}
	void sayHello(Human& other)
	{
		cout << m_name << "왈 : " << other.getName() << " 안녕~";
	}
};

int main()
{
	Human sunhee("선희");
	Human jungwoo("정우");

	sunhee.sayHello(jungwoo);
	jungwoo.sayHello(sunhee);
	return 0;
}

다음시간 발표

다음시간 숙제 - 아무거나 골라서 해오세요.

최소 한개. 많이 해오면 응분의 보상이 있을지도?
문제 학생이름 학생의 답안 강사의 평
소트 CherryBoy Upload:sort_CherRy.cpp 10이라는 매직넘버를 없애세요. 만약에 50000개짜리 배열이면 저 안에 있는 10은 모두 50000으로 바꿔야 하는 수고를 해야겠죠?
수진 Upload:수진이소트.cpp 역시나 10이라는 매직넘버 없애세요.
정우 Upload:sort_winy.cpp 잘했어요^^ 50000이라는 매직넘버 없애세요.
선희 Upload:sort.cpp 굿
피보나치 수열 CherryBoy Upload:fibonacci_CherRy.cpp 역시 2학년~ 특별히 나무랄데 없이 잘했어요.
코코아 Upload:코코아의피보나치.cpp 변수명에 신경을 써서 이름을 고쳐 보세요.
선희 Upload:fibonacci.cpp 잘했어요^^
정우 Upload:pibonachi.cpp 잘했어요^^
수진 Upload:fibonacci_sujin.cpp 역시 잘했어요 근데 옛날의 그 화려한 UI가 어디론가 없어졌네요.;
소수구하기 CherryBoy Upload:sosu_CherRy.cpp 역시 특별히 신경쓸 부분은 없네요. 하지만 모듈화라는 측면에서 볼때 안쪽에 소수인지 아닌지 판별하는 부분은 함수로 뺄수 있겠죠? 또 yesno라는 변수명도 좀 거슬리네요. 뭔가 좀 적절한 이름의 변수명은 없을까요? 그리고 속도를 좀 개선해보세요. 제가 개선해보니 15배의 속도 상승이 있었습니다.
정우 Upload:sosu.cpp 잘했습니다. 근데 1은 소수가 아니랍니다.^^; 조금 더 최적화가 가능할 듯 하네요. 수학책 한번 찾아보세요. ^^ 제가 살짝 고쳐 보니 약 3배의 속도 상승이 있네요.
파스칼의 삼각형 CherryBoy Upload:paskal_CherRy.cpp 이것도 역시 특별히 나무랄데는 없네요. 하지만.. 쓸데없는 주석은 줄여보도록 하세요. 그리고 pascal이랍니다.^^
정우 Upload:pascal.cpp 캡~
랜덤워크 CherryBoy Upload:randwalk_CherRy.cpp main안에 다 때려넣었군요. 함수 이름 잘 지어서 빼보도록 하세요. 즉, 좀더 구조적으로 만들어 보라는 겁니다. 대근이는 yesno라는 이름을 좋아하나보군요.
마방진(홀수) CherryBoy Upload:MaBangJin_CherRy.cpp 굿~ 하지만 클래스 썼다고 객체지향은 아니죠^^ 좀더 책임을 분산시켜 보세요. 또한 한 메소드의 길이가 너무 기네요. 중복도 좀 있고. OAOO(Only and only once)를 지켜보세요.
1900년 이후의 만년달력 . . .
8퀸 문제 . . .

잡담

선희랑 정우는 숙제 안하나요?
그러게.....오늘은 마방진이랑 만년달력을 해보겠습니닷!! -- CherryBoy
대근이는 2학년이니까 객체지향으로 짜보세요 --인수
대근이형 넘 잘해용.. 흑. 벌써 세개빼고 다하시다닝~~ -- 정우
아냐, 아냐. 2학년치곤 못하는거지;; 마방진은 슷하 좀 쌔리고 해야겠다.. 아, 글고 인수형 매직넘버는 없앴어요;; -- CherryBoy
매직넘버 없애라는게 const 선언하라는거에여? -_-a..--정우
그러니까 코드 도처에 난무하는 10, 50000 이런 숫자는 이렇게 작은 프로그램에서는 금방 알 수 있지만... 프로그램이 조금만 커져도, 저런 숫자가 많아지면 알아볼수가 없거든.. 나중에 삽질하지 말라고 미리 습관을 들여놓으라는 거야. --인수
const도 좋고 #define도 좋지만, C++이라면 역시 const --snowflower

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2009-05-27 07:09:19
Processing time 0.1056 sec