센서 정보를 받는 스레드에서 바로 정보를 가져오는 것이 아니라 파일로 생성
QTimer를 사용하여 화면에 띄우게 된다.
1-모듈 번호에 따른 센서이미지 띄우기
2-센서 정보 띄우기(BasedInterfacePage)
3-센서가 현재 활성화된 모듈만&하드웨어 On/Off 제어(ModifyPage)

콤보박스에 모듈번호
문, 환풍기, 형광등, 창문, 가스밸브 라디오 박스로 ON/OFF 여부
전송 버튼 클릭시 이 모든 정보가 구조체로 되어 하나의 중간자 클래스를 거쳐
CommEddyThread 클래스에 존재하는 sendMsgToEddy??()함수를 실행.

Combobox -> currentText()
RadioButton -> 선택된 것의 텍스트


QTimer *timer;

timer=new QTimer;
connect(timer, SIGNAL(timeout), this, SLOT(slotFunction()));

timer->Start(int time);

페도라 8의 커널 버전은 2.6.23

pwc 발견한 버전은 pwc 10.0.12 였는데

요놈이 글쎄 커널 버전 2.6.22 이상이 되면 에러가 난다-_-

그래서 사이트 아래에는 이런 설명이 있다 -


패치해야돼요~ = . =
요렇게 ~ (링크)

그래서 열심히 패치하는 법 따라 열심히 하고 있는 찐쓰 ㅠ.ㅠ

오늘도 새벽같이 삽질과 함께 하루를 시작하는 구나 ㅋㅋ

사이트 주소는

http://www.lavrsen.dk/twiki/bin/view/PWC

전략 패턴과 비슷한 개념인데 거기서 조금 더 생각한 패턴이다.
객체를 생성하는 코드를 한 객체 또는 메소드에 집어넣으면 코드에서 중복되는 내용을 ㅈ ㅔ거할 수 있고
나중에 관리할 때도 한 군데에만 신경을 쓰면 된다.
클라이언트 입자에서는 객체 인스턴스를 만들 때 구상 클래스가 아닌 인터페이스만 필요로 하게 된다. 이렇게 하면 구현이 아닌 인터페이스 바탕으로 프로그래밍을 할 수 있게 되고 유연성과 확장성이 뛰어나진다.

진짜 객체의 인스턴스를 만들 때는 여전히 구상 클래스를 사용해야 하는데 이것은 어쩔 수 없는 것이다.
하지만 이것을 이해하고 생성코드를 한 곳에 모아노고 체계적인 관리를 할 수 있는 설계를 한다면 관리하기 편리해진다. 객체 생성 코드를 아무곳에나 두면 결과를 얻기가 힘들어진다.

서브 클래스를 사용하고 최대한 new를 사용하지 않는다.
new를 사용하는 것이 구상 클래스를 호출하는 것이 된다.

객체 의존성>>
객체 인스턴스를 직접 만들면 구상 클래스에 의존해야 한다.
구상클래스에 의존하지 말고 추상화된 것에 의존하도록 한다.

+ Recent posts