IT/IT용어2008.03.16 22:32
난이도 : ★★★☆☆

Don't Repeat Yourself 반복하지 말라.
개발을 하다보면 반복되는 코드 중복으로 사용되게 된다.
개발을 할때에는 이것을 고려해서 개발을 해야한다.

개발에서 왜 중복 코드가 생기는지 원인을 분석해보자.
1. 강요된 중복
- 개발자들은 다른 선택이 없다고 느낀다. 환경이 중복을 요구하는 것처럼 보인다.

2. 부주의한 중복
- 개발자들은 자긴들이 정보를 중복하고 있다는 것을 깨닫지 못한다.

3. 참을성 없는 중복
- 중복이 쉬워 보이기 때문에 개발자들이 게을러져서 중복을 하게 된다.

4. 개발자간의 중복
- 한팀에 있는 여러 사람들이 동일한 정보를 중복한다.

4가지 요인에서 알수있지만 우리는 충분히 이런 부분을 고려해서 개발한다면 생상성이 뛰어나고 프로그램도 성능을 높이고 효율적인 개발을 할수있을것이다.
Posted by 사나에
TAG DRY중복
난이도 : ★★★☆☆

프로그램을 제작하고 클래스, 메서드, 변수 등등 주석들의 도움말이나 chm파일의 설명서를 쉽게 만드는 방법이다. 그냥 쉽게 따라하면된다.

1. Visual Studio 빌드 속성 변경하기.
Visual Studio 2005나 Visual Studio 2008에서 프로젝트를 하나 생성한다. 프로젝트 생성후 클래스나 변수를 선언하고 주석(///)을 단다. 프로젝트 속성을 선택하고 빌드텝에서 XML 문서 파일을 체크해준다. 그러면 프로젝트 빌드시 XML파일이 하나 생성된다. 하지만 이것을 설정하면 빌드시 주석이 없으면 경고 메세지가 나온다. 필히 주석이 100% 달아주어야한다.


2. sandcastle과 HTML Help Workshop을 설치하자.
HTML Help Workshop은 sandcastle이 이 프로그램의 모듈을 이용하기때문에 로컬에 우선적으로 설치되어있어야한다. HTML Help Workshop은 프리웨어로 네이버자료실등등 어디서든 구할수있다. HTML Help Workshop 설치되었다면 sandcastle 을 다운받아 설치한다. 설치가 끝나면 바탕화면이나 시작메뉴에 아무것도 생성이 되지않는다. 잘못되어다고 생각 할 필요가없다. 원래그런다. OTL.. 단, C:\Program Files\Sandcastle 에 파일이 생성되었는지만 확인하면된다. 확인되었다면 다음으로 고고고~

사용자 삽입 이미지

무조건 긍정적으로 버튼을 클릭!!


3. ChmBuilder.config 파일에 한글을 추가한다.
우리는 주석에서 한글을 사용하기때문에 한글이 인식되도록 설정해줘야한다.
C:\Program Files\Sandcastle\ProductionTools에 ChmBuilder.config파일이 있다.
그 파일에서 언어 부분에 한국어를 추가해주면된다. 빨간색의 Language 선언부분을 복사해서 붙여넣는다.
<languages>
    <language id="1033" codepage="65001" name="0x409 English (United States)" />
    <language id="2052" codepage="936" name="0x804 Chinese (PRC)" />
    <language id="1042" codepage="949" name="0x412 Korean (KOREA)" />
</languages>

4. 이제 만들어보자.
설정이 다 끝났다면 아까 만든 프로젝트에 클래스나 변수등을 추가하고 빌드를 하면 \프로제트명\bin\Debug 폴더에 XML파일이 하나 생성된다. (당근 디버그모드에 따라 경로명은 다르다.) 
C:\Program Files\Sandcastle\Examples\generic에 SandcastleGui가 있다. 이걸 실행하면 아래 그림과 같은 화면이 띈다.
Assemblies에 프로젝트 빌드 후 생성된 exe나 dll 실행파일을 넣는다. Comments에는 아까 생성된 XML파일을 설정해준다. Dependent Assemblies에는 참조하는 dll이 있다면 추가해주면된다. 없다면 그냥 비워둔다.
다음은 Options를 설정한다. Name에는 생성될 파일의 이름을 넣어준다. Presenation Style에 vs2005를 설정한다. vs2008도 그냥 vs2005로 설정해서 사용하면된다.  LanguageID에는 1042 로 바꿔야한다.
DefaultTargets 에는 생성물을 선택하는것이다. Chm파일로 생성물을 출력하고자한다면 Chm을 선택하고 Hxs로 출력하고 싶다면 Hxs를 선택한다. 둘다 동시에 선택해도된다. 다만 시간이 많이 걸릴뿐.. ㅋ

사용자 삽입 이미지
마지막으로 빌드 버튼을 클릭한다. 그리고 끝났다는 메세지가 나올때까지 기다린다. 시간이 좀 걸린다. 그냥 다른 일을 하고있으면된다. 다 되었다면 C:\Program Files\Sandcastle\Examples을 확인하면 설정한 Name 이름의 폴더가 하나 생겼을것이다. 그 폴더 안에 결과물이 생성되어 있을것이다. 끝~~~
사용자 삽입 이미지

Chm 실행 후 캡처 화면


 PPT : SandCastle
 링크 : http://blogs.msdn.com/sandcastle

Posted by 사나에
IT/IT소식2008.03.11 09:46

실버벨로고


3 8 5 30 10시간의 실버라이트 캠프가 포스코 센터 5 MS Potential & Realiaong Room에서 개최되었다.
한달간의 기획!! 선별된 실버벨의 문제들!!! 열정적인 참가자
!!!!

 

☆캠프의 시작!

캠프가 시작하는 전날 캠프의 조 편성이 끝나고 예정된 각 조장들은 캠프의 참가를 다시 확인하는 등 조원들을 다시 한번 챙겼다. 3 8 5시 포스코 5층으로 참가자 한명씩 들어오기 시작했고 다 모인 조부터 예약된 식당으로 캠프 시작에 앞서 저녁을 먹으러 갔다. 기존 세미나를 통해 뵙던 분들도 있었지만 처음오신 분들에게서는 얼굴에 어색함이 많이 묻어났다. 그렇게 저녁을 먹고 MS Potential & Realiaong Room으로 모여 준비된 자리에 앉아 캠프의 시작을 기다렸다.
6
30분이 넘어서 경훈씨의 인사로 다들 기다리던 실버라이트 캠프가 시작되었다. 두두두두두~~~~

첫 세션은 친해지길 바래~~       

아직은 많이 어색하기에 준비한 시간! 친해지길 바래~
40
여명의 인원이 한명씩 자기 소개의 시간을 가졌다. 소개를 하면서 자신의 비밀도 한가지씩 말해야하는 미션이 주어졌다.

대전에서 올라왔던 묜누나의 영원한 동생 재우씨~, 비밀을 서버 패스워드를 알려달라고 해서 큰웃음을 주었던 광주 청년 주노씨~, 이미 유부남이라고 발표한 실버라이트 시삽 일석님~ (장묜님이 너무 안타까워했다는 ㅠㅠ ..) , 자신을 해파리라고 소개해서 다들 궁금증을 남긴 신비주의 홍혜란님~ (나중에 그 이유를 알게 되었지만 그렇게 심오한 뜻이 있을 줄이야 … )





이렇게 자기 소개의 시간이 끝나고 동욱씨와 내가 준비한 레크레이션의 시간이 돌아왔다. 팀웍을 더욱 끌어올릴 수 있는 레크레이션 게임~ 여러 게임 중에 선별된 그 재미있다던 퇴근하겠습니다.게임이 시작되었다.ㅋㅋ 상상플러스에 나왔다던데.. 암튼 뜨거운 응원전과 함께 토너먼트로 40분 가량 게임은 진행되었다. 게임에서 일등한 조에게 100점의 점수를 2등은 80, 3등은 50점의 점수를 획득됐다. 조의 점수는 캠프가 끝날 때까지 누적되었고 일등 한 조에게는 영화예매권이 돌아왔다. 영화예매권은 어느 조에게 돌아갔을까용??


이건아니잖아~
난..언제일어나?
해파리님눈치보는중

레크레이션의 우승은 5조!! 우승 전략이라고하면.. 음... 그냥 가만히 있다가 마지막을 노리는 눈치 전략^^;

2번째 세션~
토론회
실버라이트는 RIA(Rich Internet Application)을 추구하는데 있어 필요한 기술 중 하나이다. 그래서 RIA를 주제로 각 조마다 소주제를 정해서 토론회가 시작되었다.
UX개발자의 정의, 난상토크, 한국적 RIA등 참가자들의 실버라이트와 RIA에 대한 열정을 또한번 느낄수있는 시간이였다.

<<모두 진지하게 토론하는 모습>>
토론중1
토론중2
토론중3
토론중4

3번째 세션
미션~ 임파서블!!!!!!!!
공도님의 얼마전에 공개된 딥줌, 실버라이트의 기술 데모가 보여지고 조 마다 미션이 주어졌다. 졸업을 앞둔 H군이 실버라이트로 창업을 계획하고있다. H군이 실버라이트로 어떻게 창업을 하고 성공할것인지 사업을 기획하라!! 미션~ 임파셔블~~~~~~
딥줌 기술을 이용한 부동산 사이트, 동화책 사이트~~, 실버라이트로 광고대행 사업, 실버라이트 컨트롤 제작 사업 등등 독창적인 아이디어가 똑똑 뛰어나왔다. 게다가 체계적인 사업계획서까지 보여준 조도 있었다. 이대로 회사 그만두고 H군되어 창업을 해도 성공할것같았다. (헉.. 하지만, 난 엄마친구 아들인 H군이 아니라는 OTL.... )
아래는 창의성이 돋보인 2조의 조발표장면이다. 발표도중 지역광고를 내세워 기획한 제품을 광고하고 있는 중.


::지금은 지역광고 시간:: ::지금은 지역광고 시간:: ::지금은 지역광고 시간::


지역광고 1
지역광고 2
지역광고 3

아래는 주제 발표중인 4조 조장 동진씨~ 실버라이트의 장점을 찾아 사업 계획을 세우고 H군을 그 유명한 엄마친구 아들로 만든 4조 ^^;
발표중
역시나 우승은 현실 가능한 사업 계획서를 만든 4조 오호호호호호~~~~(참고로 제가 4조 ㅋㅋ)

4번째 세션!!! 우후훗~ 그 동안 기다린
실버벨을 울려라~~~
실버라이트 + 교양 총 30문제와 2번의 패자부활전으로 구성된 실버벨이 잠깐의 야식시간을 지나 12시가 넘어서 시작되었다.
누가 실버벨을 울렸을까용??? 나는 알지롱~ㅎㅎ

앗싸~
문제 풀고 신났다~~ 룰루랄라~

대기중
실버벨을 풀기위해 준비중^^;

수영님
열심히 문제의 답을 맞힌 수영님~ 오호~ 이렇게 실버벨까지??? GOGO~~ ??

동진님
다양한 자세로 문제 풀고있는 동진님~자유로운 영혼??!! ㅋㅋ

길버트님
친절한 길버트님~ 실버벨의 주인공!! 실버벨의 문제를 일부로 틀려주신 ㅠㅠ 너무 감동적인 모습~~ 길버트님의 친절은 영원하라!! 팍팍~~

수상중
실버벨의 문제가 길버트님에게는 너무 쉽다는 의견에 경훈씨의 압박 진행^^; 우리의 친절한 길버트님의 X-BOX양보로 X-BOX의 주인공은 추첨을 통해진행되었다. 그 행운의 번호는 .......................... 넘버 3!!! 추카추카~


이렇게 우리의 실버라이트 캠프가 10시간을 걸쳐 마무리 되었다.
단체사진



캠프의 여운은 .. 자유게시판에 올라온 캠프의 후기를 보세요^^;
아~ 영화예매권은 목소리가 가장 큰 4조로 돌아갔다는 ㅋㅋ 역시 한국사람은 목소리가 크고봐야한다는 ??? 엉뚱한 결론?! ㅋㅋ
Posted by 사나에
공부하자2008.02.17 23:10

10. Speaking of the tennis match, this is John's last one of the season.

11. Do you know how to cook this?

12. I feel sick to my stomach.

13. Feel free to call me, whenever you want to play tennis.

14. I have two sisters, and both of them are sick. To make matters worse, they have to take their final exams this week.

15. How come you are not wearing a yellow uniform today?

16. I have to make a decision by 10:30.

17. How often do you play tennis?

18. Do you mind if I give you some advice on that? It is a very important tip on how to use the court.

19. you are much better than me.
 
Posted by 사나에
IT/IT용어2008.02.17 01:06
웹과 기업의 기간 시스템 사이에 위치하면서, 웹 기반 분산 시스템 개발을 쉽게 도와주고 안정적인 트랜잭션 처리를 보장해 주는 일종의 미들웨어 소프트웨어 서버. 3계층 웹 컴퓨팅 환경에서 기존 클라이언트/서버 환경의 애플리케이션 서버와 같은 역할을 하며, 클라이언트와 서버 환경에서 트랜잭션 처리 및 관리와 다른 기종 시스템 간의 애플리케이션 연동 등을 주된 기능으로 하고 있다.

WAS 도입으로 얻게 되는 효과
그럼 기업들은 WAS를 왜 도입해야 하는 것일까. WAS를 굳이 도입하지 않고도 e-비지니스를 위한 시스템은 얼마든지 구축할 수 있다. 사용자가 적은 사업 초기에는 아무런 문제가 일어나지 않지만 사업이 활성화됨 따라 사용자가 늘어가면서 문제는 발생하게 된다. 기하급수적으로 시스템 성능은 저하되고, 점차로 사용자의 불만이 가중돼 시스템의 확장을 검토한다. 하드웨어 서버의 수, CPU 수를 증가시켜보지만 상황은 점점 더 악화될 뿐이다. 급기야 하드웨어 서버의 다운이 빈번해지고 서비스의 질적 하락과 함께 시스템 도입을 후회하게 된다.

결국 개발업체, 하드웨어 서버 업체 간에는 점차로 험악한 분위기가 조성되며 서로를 불신하는 상황이 전개된다. 아마도 웹 시스템을 도입한 회사라면 정도는 다르겠지만 이와 같은 상황을 어느 정도 경험했을 것이다.
이런 현상이 발생한 기업은 여지없이 WAS 없이 웹 시스템을 구축한 경우가 대부분이고 원인은 다음과 같다.

·사용자 수의 증가에 대한 과도한 메모리의 요구
·로드밸런싱(Load Balancing)이 되지 않음
·웹 서버와 DB 서버 간의 2계층 구조 채택
·페일오버(Failover)가 안되고 있음
·보안 문제에 대한 대비가 없음

http://www.etnews.co.kr/news/detail.html?id=200510120132
http://www.zdnet.co.kr/builder/system/server/0,39031667,10049459,00.htm

Posted by 사나에