세계 속의 한글 '천태만상'

Posted 2005. 10. 7. 15:15 by alice201405


(고뉴스=이은식 기자) 10월 9일 한글날을 앞두고 한글이 적힌 의상을 입은 외국인들의 사진이 온라인에 연일 등장하며 화제를 모으고 있다.

사진속에 등장하는 외국인들의 옷에 적혀있는 한글 단어와 표기법은 천태만상. 어느 지하철에서 서양 남성이 입고 있는 러닝셔츠에는 '여관' 마크가 선명히 찍혀있다. 국내에서는 그 누구도 흉내낼 수 없는 독특한 '컨셉'. 사진 속 남성처럼 외국인들에게 '여관'이라는 글자는 이색적인 도안이자 기호화된 형태로 여겨질 수도 있는 것이다.

검지를 세운 손가락 그림 바탕의 티셔츠에는 '위름치가 그과름 정확한 있이 위치있'이라는 해석 불가 한글이 나열되어 눈길을 끈다. 커플이 등장하는 사진 속 남성이 입고 있는 파란 상의에는 꽃게 그림 바탕위로 '한국횟집'이라는 글자가 선명하다.

흰색 미니스커트에 거꾸로 적힌 '정지' '보행금지'라는 단어는 제각기 크기를 달리하며 디자인화 된 느낌을 준다. 반면 두터운 스웨터의 중앙을 가르는 '품질보증서'는 실소를 자아낸다.


의미가 애매 모호한 간판들도 눈에 띤다. 국내 유명 프랜차이즈 패스트푸트점을 모방한 중국의 '롯디리아' '한한 이슬로' 등의 이름은 볼거리를 넘어 한국 상품 베끼기 유행 풍조를 보는 듯해 씁쓸함이 더한다.



ace7@gonews.co.kr <고뉴스 www.gonews.co.kr 무단전재 및 재배포 금지>

' 오홋 'ㅁ';; 나두 따라갈래...ㅋㅋㅋ'



1.제발 차린 건 없지만 철 좀 드세요
2.당신만 보면 짜증면 곱빼기예요
3.사랑이 다 밥 먹여줍니다.
4.겁을 일시불로 상실한 녀석
5.동거를 하고 싶다면 거동을 못하게 해 주마
6.제 어깨 편하죠? 제 어깨는 과학이랍니다.

7.너 보다 비참한 녀석은 주문진 국도변의 오징어처럼 널리고 널렸다
8.그 정도는 새 발의 피의 적혈구의 헤모글로빈이다.
9.그건 또 무슨 오락실에서 수학문제집 펴는 소리냐?
10. 날 한번만 유혹해주면 당신 앞에서 신고산처럼 와르르 무너질텐데
=> 아니 그게 무슨 공든탑 같은 소리요?



11. 이제 보니 당신은 배려꾸러기군요. 도대체 당신의 그 배려는 신체의 어느 기관에서 나오는 건가요?
12. 굴러 들어온 복에 후리킥을 날리다니….
13. 사랑이 잔뜩 여물어서 건드리면 국물이 배어나올 것 같은 커플
14. 봄의 향기가 코털을 애무하는 새 학기가 되면 여기저기서 마치 저글링처럼 캠퍼스커플이 생겨난다.
15. 이거 당장 놓지 말아도 되어요
16. 징그럽지만 견딜 수 있을 것 같아요
17. 내가 생긴게 저화질이라고 나를 의심하는 겁니까?
18. 아니 그게 무슨 아가미로 용트림하는 소리요?
19. 당신의 고집은 100년 묵은 육포처럼 질기군요.
20. 그렇게 말한다면 그건 경기도 오산이요.



21. 아! 메가톤급 외로움이 텍사스 소떼처럼 몰려오는구나….
22. 아니 그게 무슨 오밤중에 끓는 물 마시고 벽치는 소리요?
23. 하아~ 너무 놀라서 염통이 쫄깃해졌어..
24. 당신은 지금 내가 바쁜 게 눈에 밟히지 않소?
25. 당신, 이 방대한 스케일의 카드 값은 뭐지?
26. 옴팡지게 앙증맞기가 서울역에 그지없는 여인
27. 스스로 무녕왕릉을 파고 있구만
28. 설마 믿는 순두부에 이빨 뽀개지는 일은 없겠지?
29. 쓸데없는 걱정이랑 모공 깊숙이 숨겨두렴
30. 자기는 정말 새댁이 끓인 콩나물국처럼 싱거워 죽겠다니까



31. 심도있는 대화는 수족관 가서 빨판상어들하고나 나눠요
32. 귓구녕에 살이쪄서 말귀를 못 알아 듣는군
33. 진실을 찾아 하루 세끼 무말랭이로 연명했다
34. 마치 모든 것이 후비면 후빌수록 더 안쪽으로 들어가 버리는 코딱지 같았던 짜증나는 나날들
35. 아주 200만 화소로 꼴깝을 떠는구나
36. 우리의 우정은 초딩 콧물처럼 끈끈하쟎아
37. 이거 원 과도한 칭찬에 위가 더부룩합니다.
38. 당신은 정말이지 배려심이 해저 2만리군요
39. 이런 천인공노상을 수상할 사람같으니
40. 누가 볼지도 모른척하고 빨리 뽀뽀해 줘



41. 나는 미스코리아 뺨치는 그런 아내를 원해요
=> 나중에 그는 미스코리아만 보면 뺨을 때리는 아내를 얻게 되었다
42. 어떻게 생각한다는 것이 서초동에서 방배동까지 거기서 거기냐?
43. 그게 무슨 참치찌개에서 꽁치튀어나오는 소리냣?
44. 우리의 비밀이 노인네 소변마냥 찔끔찔끔 새어나가는 느낌이 들어
45. 걱정일랑 시멘트로 생매장시켜버리고 빨리 말해
46. 이런식으로 가다가는 나도 모르게 실성사이다가 될지도 몰라
47. 우라지게 더워서 몸에서 고기삶는 냄새가 풀풀 풍기네
48. 눈썰미라곤 눈썹이랑 함께 다듬어버린 모양이로군
49. 오늘따라 좀 음산하군, 올록볼록 엠보싱마냥 소름이 돋는다.
50. 뛰어난 비주얼의 자연이 내 시신경을 열심히 맛사지 하는구나



51. 내 소원은 이 세상을 내 것으로 만들고 싶다는 것!
=>나중에 그는 ‘이세상’이라는 남자와 살게 되었다
52. 이거 정말 귀신이 랩할 노릇이군
53. 제가 이래봬도 국가공인 재롱자격증 2급입니다.
54. 아니 그게 무슨 보아가 연예계 은퇴하고 호떡장사하겠다고 떠드는 소린가
55. 벽에 전위예술할때까지 온전하게 살고싶으면 그녀와 헤어져!
56. 아니 그게 무슨 샌드위치에서 미나리 튀어나오는 소리예요?
57. 레이디! 무슨 꿍따리로 나를 부르는가???
58. 별 10년묵은 거지빤스같은게 나타나서 기분을 뒤엎고 있어!
59. 너는 무슨 술을 순박한 3월의 캠퍼스 새내기처럼 쳐마시냐?
60. 뭐라고? 안들려! 내 귀에 스머프가 들어갔나 왜 이렇게 헛소리가 들리지





가끔 써주면 잼나겠다는 -_-;;;
 
 


해보기님의 블로그에서 가져왔습니다.

세글자

Posted 2005. 10. 7. 09:44 by alice201405
어쩌면 이 세상 젤 흔한 세글자

내겐 이렇게도 힘에겨운 세글자


울음부터 나서 목이 메어와서

꺼내기도전에 되담는말


천번도 만번도 더 삼킨 한마디

아마 평생가도 못다할 짧은 그 한마디


사랑해 그 세글자에

또 힘겹게 눈물만...

Ctrl 키를 적극 활용해 봅시다

Posted 2005. 10. 6. 21:03 by alice201405
오웃 윈도키 스킬만 익혀도 상당하던데 ctrl 까지 합세라..ㅋㅋ

좋은데요


Ctrl + a: 전체선택 (혹시라도 무슨 말인지 모르시다면 지금 시도해보세요)
Ctrl + b: 인터넷에서는 '자주가는 곳' 목록 편집이고, 마이크로소프트 워드에서는 굵은 글씨를 나오게 합니다.
Ctrl + c: 복사입니다. 나중에 Ctrl + v로 쓰게 되죠.
Ctrl + d: 워드에서는 폰트 설정을 할 수 있습니다. 인터넷에서 쓰면 속도가 갑자기 빨라지더군요. 신기신기...
Ctrl + e: 인터넷에서는 '검색'기능을 보여주고, 워드에서는 가운데 정렬을 해줍니다.
Ctrl + f: 찾기. (모두들 아실 듯...)
Ctrl + g: 워드에서는 찾아서 고치기가 나온답니다. (인터넷에서는 안되는군요)
Ctrl + h: 워드에서는 찾아고치기 또다른 버젼. 인터넷에서는 '기록'기능인데... 직접 눌러보세요.
Ctrl + i: 인터넷에서는 '즐겨찾기'기능이고, 워드에서는 글씨를 이탈릭으로 쓰기입니다 (기울어진...)
Ctrl + j: 별 기능 없다네요. 후후... 일명 왕따라죠.
Ctrl + k: 워드에서는 하이퍼링크 삽입이랍니다.
Ctrl + l: 인터넷에서는 사이트 열기, 워드에서는 정렬없음 모드더군요.
Ctrl + m: 인터넷에서는 엔터처럼, 워드에서는 한 문단에서 첫줄 제외하여 모두 조금씩 띄어써집니다. (설명이 부적절한듯 하네요; 편리한 기능이니 한번 해보세요)
Ctrl + n: 인터넷에서는 같은페이지 새창에서 열기, 워드에서는 '새문서'입니다. (궁금해서 시험해보다가 갑자기 깜짝놀랐다는...)
Ctrl + o: 인터넷에서는 사이트 열기 (=Ctrl + l), 워드도 문서 열기입니다.
Ctrl + p: 말이 필요없는 프린트 기능.
Ctrl + q: 워드에서는 몰아쓰기라 불러야 할 것 같은 기능... (제 설명능력이 부족한 것 같네요... 어쨌거나 많은 글 쓸때 종이절약을 해줄 수 있는 기능이랍니다)
Ctrl + r: 워드에서는 오른쪽 정렬, 인터넷에서는 '새로고침'이랍니다.
Ctrl + s: 보통 워드뿐만 아니라 문서에서는 저장기능이죠.
Ctrl + t: 워드에서는 Ctrl + m과 같은 기능입니다.
Ctrl + u: 워드에서는 밑줄모드!
Ctrl + v: 누구나 아시겠지만 붙여넣기 기능이랍니다.
Ctrl + x: 역시 누구나 아시겠지만 '자르기' 기능이지요.
Ctrl + w: '현재 창 닫기'. 잘못해서 누르면 낭패지요.
Ctrl + y: 워드에서는 '다른 이름으로 저장'인듯...
Ctrl + z: '되돌리기'기능입니다. 굉장히 유용하죠. 인터넷에서는 '뒤로'더군요.

세상을 바꾸는 7가지 기술들 - Business 2.0

Posted 2005. 10. 5. 12:39 by alice201405
2005년 10월자 Business 2.0에 실린 내용
By Om Malik, Anders Lotsson
translated by dotty :D

개인적으론 1, 3, 6, 7에 관심

혁신은 항상 비즈니스를 와해시키는 힘을 가지고 있다. 앞으로 수 년 동안 지켜볼만한 기술들을 말한다.

1. AJAX
이게 뭘까: 브라우저 기반의 프로그램을 기존의 데스크탑 프로그램과 유사하게 작동하도록 해주는 툴
왜 뜨거운 감자인가: 일반적으로 웹 기반의 프로그램들은 각 단계 별로 새로운 페이지를 사용자에게 전송해야 했고 그러하기에 사용할 때의 느낌도 그다지 좋지 않았다. 하지만 Ajax(asynchronous JavaScript and XML)은 새로운 데이터가 조금씩 전송될 수 있도록 해주어, 페이지 상의 내용을 손쉽게 갱신할 수 있도록 해준다. 이미 구글의 Gmail이나 아마존의 A9 서치 엔진, 그리고 Netflix의 영화평이나 야후의 Flickr 서비스 등에서 사용하고 있다. (한국에서도 이미 여기저기서 도입중에 있다) Ajax라는 이름을 고안한 샌프란시스코 소재의 웹 컨설팅 업체인 Adaptive Path의 Jesse James Garrett은 더 큰 임팩트는 기업용 어플리케이션에서 이루어질 것이라고 말한다 - 원격상의 업무 처리를 더욱 빠르게 해주며. Tibco라는 비즈니스 프로세스 및 통합 소프트웨어 회사는 자사의 General Interface 플랫폼에 이미 Ajax를 도입하기 시작하였으며, 마이크로소프트도 Ajax 개발자 킷을 준비중에 있다 - 꽤 크게 될 가능성을 엿볼 수 있다.
주요 플레이어들: Amazon, Google, Microsoft, 37signals, Tibco Software, Yahoo


2. BIOGENERICS
이게 뭘까: 바이오테크 기업에서 판매하는 특허 등록된 일반적인 단백질 약들
왜 뜨거운 감자인가: 암젠이나 Genetech같은 기업은 만성적 신장 질환에서 당뇨병 치료에 이르는 약품 등 매우 비싸지만 효과적인 단백질기반의 처방 상품을 주력으로 하고 있다. Biodrug라고도 알려진 이러한 특허 치료법은 작년 한해에만 180억 달러(18조원) 상당의 매출을 차지하기도 하였다. 이제 이러한 베스트 셀러들이 특허 기간 만료에 다가가고 있다. 즉, 비슷한 제품을 만들 수만 있다면 판매할 수도 있다는 것이다. 물론 이러한 단백질을 복제하는 것은 아스피린 같은 것을 복제하는 것보다 훨씬 복잡하고 어렵다. 오늘날의 규제에 의하면 완벽한 복제가 아니라면 허가를 받기 힘들다. 이러한 바이오제네릭은 중국와 인도 소재의 수 많은 의약 업체들이 초점을 맞추고 있는 분야이기도 한데, 조만간 유럽 연합에서 판매가 시작될 것으로 예상된다. FDA는 미국에 적용할 만한 새로운 규약들을 검토중이며 업계는 이러한 새로운 의약품들을 어떻게 다루어야 할 것인지 고심중이다. 바이오제네릭은 전체 biodrug 시장의 11%를 차지할 수 있는 잠재성을 가지고 있는데, 가격을 대폭 하락시킬 수도 있을 것으로 판단된다. Genetech같은 곳에겐 난감한 소식이겠지만, 수백만의 환자들에겐 기쁘기 그지 없는 뉴스일 것이다.
주요 플레이어들: BioPartners, Cangene, GeneMedix, LG화학, Momenta Pharma, Rhein Biotech, Wockhardt


3. DEEP WEB SEARCH
이게 뭘까: 다른 어떤 검색엔진도 가보지 못한 곳에 도전하는 기술
왜 뜨거운 감자인가: 구글인 이미 80억 페이지를 인덱스하였을지 모르겠지만, 어쩌면 빙산의 일각일 수도 있다. 몇 예상에 의하면 "어둠의 웹"이라고 일컬어지는 부분은 우리가 익히 알고 있는 월드 와이드 웹(WWW)의 500배에 달하는 규모일 것이라고 한다. 공개적인 인터넷과 달리 이러한 어둠의 웹은 일반적인 웹 크롤러(웹 사이트를 돌아다니며 정보를 긁어 모으는 bot)들에 의하여 도달될 수 없는 경우가 많다. 이러한 경우 특수한 기법을 이용하여 검색 엔진의 데이터베이스에 추가되어야 할 것으로 보인다.

데스크탑 검색의 발달 전에는 우리의 PC는 그러한 보이지 않는 웹의 일부였다 - 인터넷에 연결은 되어있지만 인덱싱이 되지 않던. 파일 공유 네트워크는 이미 우리의 PC에서 mp3를 검색해가지만, 아직 꽤 까탈스러운 사생활 보호와 보안 문제들이 해결되기전에는 당장 우리의 하드가 웹의 일부가 되기에는 무리가 있어 보인다. 또한 이미 디지털화 된 수 백만권 분량의 책들이 인터넷에 연결되기만을 기다리고 있다. 아직 상당 부분의 권위있는, 혹은 믿을 만한 소스들이 온라인으로 오지 않았기 때문에, 궁극적으로는 이러한 '딥 서치' 기술이 우리의 질문에 대하여 보다 직접적인 답을 줄 수 있을 것으로 기대된다.
주요 플레이어들: Endeca, Glenbrook Networks, Google, IBM, Kozoru, Yahoo


4. HIGH-DEFINITION RADIO
이게 뭘까: 위성은 저리 가라. 라디오가 업그레이드를 단행하고 있다. CD 음질의 오디오와 보다 다양한 채널들이 다가온다.
왜 뜨거운 감자인가: XM 라디오나 Sirius같은 위성 기반 서비스의 압력과 온라인 음악 서비스, 그리고 iPod류의 기기 때문에 연 200억 달러(20조원) 규모의 라디오 업계는 청취자를 꾸준히 잃어가고 있었다. HD 라디오가 그에 대한 대안으로 떠오르고 있다. HD 라디오 기술은 기존에 소유된 주파수 대역을 얇은 밴드로 나누고 각 밴드는 새로운 라디오 방송국을 가능하게 한다. 따라서, 한 개의 AM이나 FM 방송국은 많게는 8개의 채널로 나뉠 수 있고, 그에 따라 8배로 많은 수의 음악과 방송, 그리고 광고를 내보낼 수 있게 된다. 무엇보다 이 모든 것이 TiVo가 TV에 제공하였던 서비스와 유사하게, 디지털로 되기 때문에 HD 라디오 방송은 쉽게 저장될 수 있고, 원한다면 생방송을 잠시 멈추거나 뒤로 돌려서 다시 들어볼 수 있는 기능을 지원할 수도 있다.

미국에는 이미 450개 상당의 HD 라디오 방송국이 있다. 2007년에는 2,500개로 늘어날 전망이며 미 전역의 90%에 도달할 수 있을 것으로 보인다. 대중적이 되기 전의 최대 장벽은 라디오 청취자들이 HD(고음질) 신호를 수신할 수 있는 새로운 라디오 기기를 사야한다는 것이다.
주요 플레이어들: Clear Channel Communications, Disney, Ford Motor, iBiquity Digital, Radiosophy, Texas Instruments, Visteon


5. HYBRID CELL PHONES
이게 뭘까: Wi-Fi가 지원되는 핸드폰으로 셀률러와 유선 전화를 한 곳에 모으는 것이다.
왜 뜨거운 감자인가: 2006년 중반에 중가대 15개의 모델로 선보일 예정이며, 이 하이브리드 서비스는 자동으로 집이나 사무실에 공개되어있는 Wi-Fi 네트워크를 검색하고 접속할 수 있다. 이로 인하여 소비자들의 두 가지 큰 불편을 해소할 수 있다 - 일반적인 셀률러 기지국이 커버하기 힘든 주택과 사무 빌딩에서 Wi-Fi를 통하여 훨씬 좋은 음직의 통화를 가능하게 해줄 것이며, 스마트폰들에서 훨씬 빠른 속도로 웹서핑을 할 수 있게 될 것이다. 드디어 PC의 대체에 근접한 수준의 인터넷을 가능하게 하는 업그레이드가 가능해지는 것이다.

수 많은 통신사들이 이미 유선 전화와 무선 전화의 컨버젼스와 그로 인하여 파생될 수 많은 서비스들에 투자를 하고 있다. 텔레콤 컨설팅 업체인 ABI 리서치에 의하면 향후 5년 동안 소비자들이 1억개 상당의 하이브리드 전화기들을 구입할 것으로 예상된다고 한다.
주요 플레이어들: Bridgeport, British Telecom, Broadcom, Ericsson, Kineto Wireless, Lucent, Motorola, Nokia, Nortel, 삼성, Texas Instruments


6. MICRO FUEL CELLS
이게 뭘까: 포터블 전자 기기에 들어가는 수소와 천연 가스, 메탄올, 에탄올 등을 이용한 배터리로, 다시 채워 넣을 수 있는 외부 연료이다.
왜 뜨거운 감자인가: 디지털 기기들이 전력에 더 많이 의존적이 되감에 따라, 리튬이온 배터리들이 이들을 따라잡기가 더더욱 힘들게 되가고 있다. 현재로는 연료전지가 이러한 것을 대체할 수 있는 최선의 대안으로 부각되고 있다. 가장 널리 쓰이는 기술은 DMFC(Direct Methanol Fuel Cell)이라는 것으로 메탄올과 산소를 결합하는 형태이다. 히타치는 이러한 메탄올 기반의 랩탑 건전지를 만들은 바있으며 2007년에 시장에 진출할 것으로 예상된다. 일본의 거대 통신사인 NTT DoCoMo도 후지쯔와 제휴하여 모바일 폰에 사용될 소형 연료 전지를 개발 중에 있다.

이러한 전환은 상당한 시간이 소요될 것으로 보이기에 바로 당장 Best Buy 같은 곳에서 구입할 수 있길 기대하긴 힘들 듯 하다. 하지만 Reearch & Markets 리서치 그룹에 의하면 2008년까지는 5억1천만 달러(5,100억원) 상당의 규모로 성장할 것으로 보이며, 2013년 경에는 11억 달러(1조 1천억원) 상당의 규모가 될 것으로 예상된다.
주요 플레이어들: Altair Nanomaterials, Ballard Power Systems, Dow Chemical, DTI Energy, Hitachi, Motorola, MTI Micro Fuel Cells, NEC, Samsung, Solvay, Toshiba


7. WI-MAX
이게 뭘까: Wi-Max는 이론적으로 48키로미터의 반경까지 커버할 수 있는 Wi-Fi의 초업그레이드 모델이다.
왜 뜨거운 감자인가: Wi-Fi는 훌륭하지만 사용 가능 범위가 협소하다. 인텔은 Wi-Max 표준 개발을 선도하고 있으며 향후 2년 내에 서비스가 시작될 것으로 전망하고 있다. 먼저 미국, 유럽과 아시아의 도심 지역에 진출할 것으로 보이며 그 이후에는 다른 텔레콤 시장에 진출할 것으로 예상된다. (이를 시연하기 위하여 인텔은 55마일간 Wi-Max 기기들을 연결하여 Sundance Filem Festival에서 디지털 영화를 상영하기도 하였다) 회의론자들은 Wi-Max가 보다 빠르게 시장에 진출한 경쟁자에 의하여 대체될 것으로 예상하지만, Wi-Max를 지원하기로 한 회사들을 무시하여선 곤란하다. AT&T, BellSouth를 비롯한 Quest, Sprint PCS 등이 지원할 예정이다. ABI 리서치는 2008년 까지 8백만 Wi-Max 가입자들이 발생할 것으로 예상한다. Maravedis Telecom이라는 리서치 그룹에서는 Wi-Max 기기들에 대한 수요가 2010년까지 $20억 달러(2조원) 규모로 성장할 것으로 보고 있다. 만약 이러한 예측이 현실이 되어버린다면, DSL이나 케이블, 심지어는 T-1 연결들 조차 대체될 수 았다.
주요 플레이어들: Alvarion, ClearWire, Intel, Motorola, 삼성


[src business 2.0]


Dotty님의 블로그에서 퍼왔슴을 밝힙니다.

동막골 순수처녀 "여일(강혜정)"의 대사 中

Posted 2005. 10. 4. 19:17 by alice201405
“내 좀 빨라, 난 참 이상해. 숨도 안 맥히고.......
이래 이래 팔을 빨리 휘저으믄 다리도 빨라지미,
다리가 빨라지믄 팔은 더 빨라지미,
땅이 뒤로 막 지나가미.
난 참 빨라. 우티 이닷한지(어째서 그런지).”


“으때...., 멋지나?”(헬멧을 쓰고 어린 동구가)
“수박 껍데리를 뒤집어 쓴 거 같다”(여일 - 강혜정)
“미친년한테 물어본 기 잘못이지....”(어린 동구)
“동구, 니가 말하는 미친년에 나도 끼나?”(여일)
“이래이, 우리 마을에 미친년이 뭐 여러 개 있나? 니 머리에 꽃 꽂았제?”(동구)
“(수긍하며) 내가 미친거 니 말고 딴 사람들도 마이 아나?”(여일)


“비암이 나와”
“비암이 깨물면 언만나 아픈줄 아나? 언능 나와.”
“비암이 안물드나? 멀쩡한 거 보이 아적 안물었구나.”
“근데 있잖아, 쟈들하고 친구나?”

그날이 오면 - 심훈

Posted 2005. 9. 30. 17:45 by alice201405
그날이 오면, 그 날이 오며는

삼각산(三角山)이 일어나 더덩실 춤이라도 추고

한강(漢江)물이 뒤집혀 용솟음칠 그 날이

이 목숨이 끊기기 전에 와 주기만 할 양이면

나는 밤하늘에 날으는 까마귀와 같이

종로(鐘路)의 인경(人磬)을 머리로 드리받아 울리오리다.

두개골이 깨어져 산산조각 나도

기뻐서 죽사오매 오히려 무슨 한(恨)이 남으리까.



그 날이 와사, 오호 그 날이 와서

육조(六曹) 앞 넓은 길을 울며 뛰며 뒹굴어도

그래도 넘치는 기쁨에 가슴이 미어질 듯하거든

드는 칼로 이 몸의 가죽이라도 벗기어

커다란 북을 만들어 둘처메고는

여러분의 행렬(行列)에 앞장을 서오리다.

우렁찬 그 소리를 한 번이라도 듣기만 하면

그 자리에 꺼꾸러져도 눈을 감겠소이다.

광야 - 이육사

Posted 2005. 9. 30. 10:41 by alice201405
까마득한 날에

하늘이 처음 열리고

어데 닭 우는 소리 들렸으랴.



모든 산맥들이

바다를 연모(戀慕)해 휘달릴 때도

차마 이곳을 범(犯)하던 못하였으리라.



끊임없는 광음(光陰)을

부지런한 계절이 피어선 지고

큰 강물이 비로소 길을 열었다.



지금 눈 내리고

매화 향기(梅花香氣) 홀로 아득하니

내 여기 가난한 노래의 씨를 뿌려라.



다시 천고(千古)의 뒤에

백마(白馬) 타고 오는 초인(超人)이 있어

이 광야(曠野)에서 목놓아 부르게 하리라

[패턴 정보] 예제로 설명한 Factory Method Pattern

Posted 2005. 9. 27. 10:15 by alice201405
Factory Method 패턴의 워크플로우


객체 지향 프로그램에서 계속해서 볼 수 있는 패턴 중의 하나는 Factory 패턴 또는 클래스이다. Factory 패턴은 제공된 데이터에 의존하는 여러 가능한 클래스 중의 하나를 반환하는 것이다. 일반적으로 반환되는 모든 클래스는 공통적인 부모 클래스와 공통적인 메소들을 가지지만, 그것들은 각각은 다른 일을 하고, 다른 종류의 데이터를 위해 최적화 되어진다. 그림에서 x는 상위 클래스이고 xy와 xz는 x로 부터 파생되었다. Factory는 입력된 인자에 의존하여 하위 클래스를 반환을 결정하는 클래스이다. 오른쪽에서 어떤 abc라는 값이 주어질 때의 getClass 메소드를 정의하였고, 이 메소드는 클래스 x의 인스턴스를 반환한다. 모두 같은 메소드를 가지고 있기 때문에 반환되는 getClass가 어떤 값을 반환하는가는 문제가 되지 않지만, 구현은 다르다. 어떻게 반환할 것인가를 결정하는 것은 전반적으로 Factroy에 의해서 이다.

구조


역할
1. Product(제품)의 역할
생성된 제품(인스턴스)가 가지고 있어야 할 인터페이스(API)를 결정하는 추상 클래스 구체적인 역할은 하위 클래스인 SpecificProduct 역할이 결정한다.

2. Creator(생산자)의 역할
Product 클래스를 생성하는 추상 클래스 Creator는 실제 제품을 생성하는 일을 하는 SpecificCreator 역할에 대해서는 아무것도 모른다.

3. SpecificProduct(구체적 제품)의 역할
구체적인 제품을 나타내는 클래스

4. SpecificCreator(구체적 생산자)의 역할
구체적인 제품을 만드는 클래스



의도

객체를 생성하는 인터페이스를 따로 정의한다. 그리고 생성되는 객체의 클래스를 결정하는 것은 하위 클래스에서 담당한다. 이 패턴은 어떤 클래스가 객체를 생성하는 일을 하위 클래스에게 위임한다.

적용시기
다음과 같은 상황에서 Factory 패턴을 고려할 수 있다.

1. 객체들에 대한 클래스의 종류를 예상 할 수 없을 때
2. 생성할 객체를 기술하는 책임을 서브클래스에 정의하고자 하는 경우
3. 객체 생성의 책임을 서브클래스에서 위임시키고 서브클래스에 대한 정보를 은닉하고자 하는 경우

예제소스


위 예제 소스의 내용은 클라이언트가 사용하는 UI형태가 KoreaUI, EnglandUI두 가지 형태가 있으며 각 UI에서는 htmlPrinter, textPrinter 두 가지 타입의 출력 양식을 가진다.

Printer 클래스는 구성에서 “Product”에 해당하며 UI 클래스는 “Creator”에 해당한다. \

Factory Mothod는 “getPrinter (String message, String textMode)”이다.

다음은 예제소스이다.
=================================================================
product 패키지
=================================================================
[CODE]package product; public class Printer { protected String message; public Printer() { } public String print() { return message; } } package product; public class htmlPrinter extends Printer { public htmlPrinter(String message) { super.message = " &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;"+message+"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "; } } package product; public class textPrinter extends Printer { public textPrinter(String message) { super.message = "\n "+message+" \n"; } }[/CODE]

=================================================================
creator 패키지
=================================================================

[CODE]package concrete; import product.*; public abstract class UI { protected String header; protected String footer; protected String DecoTitle; public UI(String title) { DecoTitle = title; } protected void setHeader() { header = "Start Print...... "+DecoTitle; } protected void setFooter() { footer = DecoTitle+"........ End Print"; } public String print(String message, String textMode) { setHeader(); setFooter(); StringBuffer buffer = new StringBuffer(); buffer.append(header); buffer.append(getPrinter(message, textMode).print()); buffer.append(footer); return buffer.toString(); } public abstract Printer getPrinter(String message, String textMode); } package concrete; import product.*; import product.Printer; public class KoreaUI extends UI { public KoreaUI(String title) { super(title); } public Printer getPrinter(String message, String textMode) { if(textMode.toUpperCase().equals("HTML")) return new htmlPrinter(message+" 대한민국"); else return new textPrinter(message+" 대한민국"); } } package concrete; import product.*; import product.Printer; public class England extends UI { public England(String title) { super(title); } public Printer getPrinter(String message, String textMode) { if(textMode.toUpperCase().equals("HTML")) return new htmlPrinter(message+" England"); else return new textPrinter(message+" England"); } }[/CODE]


=================================================================
클라이언트 프로그램
=================================================================

[CODE]import concrete.*; public class mainClass { UI ui = null; public mainClass() { } public void setUI(String title, String contry) { if(contry.toUpperCase().equals("KOREA")) ui = new KoreaUI(title); else if(contry.toUpperCase().equals("ENGLAND")) ui = new England(title); } public void exec(String message, String textMode) { System.out.println(ui.print(message, textMode)); } /** * * @param args */ public static void main(String[] args) { mainClass client = new mainClass(); if(args.length != 4) { System.out.println("예) java mainClass [타이틀] [출력메세지] [korea or england] [html or text]"); System.exit(0); } client.setUI(args[0], args[2]); client.exec(args[1], args[3]); } }[/CODE]

=================================================================
관련패턴

1. Factory Method 패턴은 Template Method 패턴에서 발전된 형태이다.
2. Abstract Factory, Builder 패턴에서 참조

[패턴 정보] Creational Patterns(생성 패턴)

Posted 2005. 9. 23. 14:55 by alice201405
모든 Creational Patterns은 객체의 인스턴스를 생성하는 최상의 방법과 관련이 있다. 이것은 작성된 프로그램이 생성되고 배치된 객체들과 의존적이지 않아야 하기 때문에 중요하다. 자바에서는 가장 간단한 방법으로 new 연산자를 이용하여 객체들의 인스턴스를 생성하는 방법이다.

Fred = new Fred() ; -> instance of Fred class

그러나 이 방법은 프로그램 안에서 생성된 객체가 의존적이어서 결국 코딩이 어렵게 된다. 많은 경우에, 생성된 객체의 정확한 본질은 프로그램의 요구에 의하여 변경되어 질 수 있고, "createor"라는 특수한 클래스로의 추상화 과정은 프로그램을 보다 유연하고 일반적으로 만들 수 있게 한다.

패턴이름

내용

Factory Method

Factory 패턴은 제공되는 데이터에 의존하는 추상 기저 클래스의 가능한 하위 클래스들 중의 하나를 반환하는 간단한 의사 결정 클래스를 제공한다.

Abstract Factory Method

Abstract Factory 패턴은 생성할 인터페이스를 제공하고, 관련된 객체들의 여러 군 중에서 하나를 반환한다.

Singleton Pattern

Singleton 패턴은 오직 하나의 인스턴스만을 갖는 클래스이다. 그 것은 생성된 인스턴스에 접근하는 하나의 포괄적인 점을 제공한다.

Builder Pattern

Builder 패턴은 단지 객체에 대한 형태와 내용만 지정함으로써, 복잡한 객체를 구성 할 수 있다. , 각각의 객체 구성에 대한 모든 정보를 자세히 알고 있지 않아도 쉽게 객체를 구성 할 수 있다.

Prototype Pattern

Prototype 패턴은 어떤 객체의 생성 방식에 대한 자세한 정보를 모르더라도 그 객체가 원하는 다른 객체를 생성할 수 있도록 도와준다. 우선, 생성하려는 객체에 대한 프로토타입 객체를 미리 제공한 다음, 프로타입 객체의 복사본을 생성함으로써 원하는 대상 객체를 만들게 된다.

« PREV : 1 : ··· : 7 : 8 : 9 : 10 : 11 : 12 : 13 : NEXT »