'솜이슬'에 해당되는 글 17건

  1. 2008.01.30 소스 공개 4
  2. 2008.01.29 오프라인 설치
  3. 2008.01.28 샘플 데이터 파일
  4. 2008.01.28 [튜토리얼] 새 단어 추가 - 일괄 추가
  5. 2008.01.27 [튜토리얼] 새 단어 추가 - 빠른 추가
  6. 2008.01.26 [튜토리얼] 새 단어 추가 - 일반 추가
  7. 2008.01.25 솜이슬 소개와 설치 2

소스 공개

솜이슬 2008. 1. 30. 15:03

대단치도 않은 소스를 공개 하지 못할 까닭이 없습니다만, 단지 소스를 남에게 보여줄 때는 몇 가지 지켜야 할 예의가 있는 법이고, 아직 그 준비가 되지 않았기 때문에 조심스럽습니다.

친절한 설명은 고사하고 아무런 문서도 없는 상태에서, 다른 사람의 소스를 본다는 것은 사실 쉬운 일이 아닙니다. 이론적 배경이나 동작 원리를 파악하지 못한 상태에서 소스만 획득하는 것은 고기 잡는 법이 아닌 고기를 구하는 격일 테고요, 혹 소스를 보는 것 만으로도 고기 잡는 법을 통찰할 수 있을 정도의 수련을 한 사람이라면 굳이 소스를 볼 필요도 없겠지요.

소스의 공개에는 그 만한 책임도 따라야 하는 법입니다. 일정 수준 이상의 품질을 유지하여야 하고, 상식적인 수준은 상회하는 문서를 제공하여야 하고, 피구독자들과 지속적인 피드백을 유지하여야 하는 것 등은 그 중에서도 기본에 속하는 책임일 테지요.

물론 공개에 따른 책임을 지는 것은 쉬운 일이 아닙니다. 상당한 양의 시간과 정성을 쏟아 부어야 할 일이지요. 그래서 많은 유능한 개발자들이 소스 공개를 꺼리는지도 모르겠습니다.

저 역시도 솜이슬의 소스를 공개할 생각을 하자 아득한 생각이 듭니다. 소스를 원하는 분들이 진짜로 필요로 하는 것은, 소스 자체가 아니라 소스가 구현하고 있는 로직이나 이론일 것 입니다. 그것이 고기 잡는 방법이지요.

욕심 같아서는 이 소스에 들어 있는 고기 잡는 방법에 대해서 아주 찬찬히 설명을 드리고 싶습니다. 당장은 여러가지 현실적인 제약 때문에 힘들고 언젠가는 만족할 만한 친절한 설명을 준비하겠다고 약속을 드리고도 싶지만, 사람 일은 알 수 없는 법이지요.

지금은, 솜이슬의 소스를 보기 위해서 최소한으로 필요한 사항들에 대해서만 몇 가지 간략히 말씀드리도록 하겠습니다.

제가 언급하는 각각의 기술 중 잘 모르는 부분이 있으면 반드시 신뢰할 만한 텍스트를 구해서 익히시기 바랍니다. 세상에는 훌륭한 어부 들이 셀 수 없을 만큼 많이 있습니다. 어떤 어부에게서 고기 잡는 방법을 배우느냐는 정말 중요한 문제입니다.

(그런데 재미있게도 일정 수준 이상의 어부들은 대부분 한국어를 하지 못합니다. 그런 분들에게 지식을 배우기 위해서는 반드시 영어를 먼저 공부해야 하구요. 잘 만들어진 영어 단어장이 있으면 영어 공부하기가 좀 더 효율적일 것 입니다. 이것이 바로 솜이슬이 만들어진 배경 입니다. 그래서 솜이슬을 개발자를 위한, 개발자에 의한, 개발자의 단어장이라고 하는 것이지요.^^)


Visual Studio 2008이 설치되어 있어야 합니다.

Target Framework이 2.0에 맞추어져 있기 때문에 VS 2005를 사용하여도 무방하나, sln 파일과 csproj 파일의 스키마가 달라서 VS 2005에서는 솔루션과 프로젝트가 열리지 않습니다. 또한 VS 2008 Express는 아래 What's New in DXperience v2007 vol 3가 설치되지 않기 때문에 사용할 수 없습니다.


DXperience v2007 vol 3 (평가판 다운로드)가 설치되어 있어야 합니다.

같은 v2007 vol 3 버전이더라도 빌드 넘버가 다르다면 DXperience v2007 vol 3에 포함된 Project Converter를 사용하여 어셈블리의 버전을 맞춰주어야 합니다.


데이터 컨테이너로 DataSet을 사용하지 않습니다.

DataSet이 유용한 경우는 생각 보다 적습니다. 대부분의 경우에는 비즈니스 엔터티와 커스텀 컬렉션을 사용하는 것이 현명한 방법일 것 입니다. (물론 여기에 대해서는 이견이 많으며, 이는 어디까지나 제 생각이라는 것을 말씀 드립니다.)

스토리지는 DB 대신 비즈니스 엔터티를 압축하고 직렬화 해서 파일에 저장합니다.

닷넷 프레임웍의 직렬화는 그 성능과 생성되는 데이터의 크기에 있어서 많은 문제를 가지고 있습니다. 이에 대해서 많은 개발자들이 나름의 해법을 제시하고 있습니다. 특히 이 아티클은 그 중에서도 단연  백미라고 할 수 있겠습니다.

솜이슬에서는 상당한 양의 데이터를 가지고 테스트 해 본 결과, 제가 걱정했던 수준 보다는 훨씬 빠르고 데이터의 크기가 작았습니다. 따라서 솜이슬에서는 닷넷 프레임웍의 직렬화를 그대로 사용합니다.


MultiDictionary, OrderedSet 과 같은 닷넷 프레임웍 베이스 클래스 라이브러리에서 제공하지 않는 몇 가지 자료구조를 사용합니다.

솜이슬에서는 Wintellect 사가 제공하는 PowerCollection을 사용하고 있습니다만, 만일 자료구조의 성능이 주요 이슈라면 C5 Generic Collection Library를 사용하실 것을 권장합니다. 어쨌거나 MultiDictionary와 같은 자료구조를 직접 만드는 짓 만은 하지 않아야지요. 오죽 하면 "수레바퀴를 재발명하지 마라"는 영어 속담이 있겠습니까.


거의 모든 로직이 MVC 패턴 기반으로 이루어져 있습니다.

특히 많은 양의 이벤트가 만들어져 있는데요. 이벤트에 관해서는 제가 써 놓은 졸고를 보셔도 좋을 것 같습니다.


표준 닷넷 명명 가이드라인을 따랐습니다.

한 가지 예외는 멤버 변수에 "_" 접두어를 붙이는 것입니다. this.memberFiled = memberFiled 보다는  _memberFiled = memberFiled 가 저는 좀 더 편리한 것 같습니다.


소스는 아래 링크에서 다운로드 받을 수 있습니다.

소스 다운로드

:

오프라인 설치

솜이슬 2008. 1. 29. 20:52

 (주의 : 이 포스트의 내용은 더 이상 유효하지 않습니다. 솜이슬의 설치는 이 포스트를 참조하십시오)


오프라인 설치 다운로드

인터넷 연결이 되어 있지 않은 환경에서 사용할 수 있는 오프라인 설치 버전을 공개합니다.

만일 인터넷 연결되어 있다면 오프라인 설치  대신 온라인 설치를 하실 것을 추천합니다.

온라인 설치는 여기서 하실 수 있습니다.

닷넷 프레임웍은 (이미 설치가 되어 있지 않다면) 자동으로 설치가 됩니다.

오프라인 설치를 하더라도, 인터넷 연결만 되어 있으면 언제든지 자동 업데이터가 이루어집니다.

:

샘플 데이터 파일

솜이슬 2008. 1. 28. 18:20

처음 솜이슬을 사용하시는 분이, 솜이슬의 여러 가지 기능을 살펴 보기에 편리한 샘플 데이터 파일입니다.

아래 첨부 파일을 다운로드 받은 후, 솜이슬에서 다른 파일 열기로 불러오면 됩니다.

주의

샘플 데이터 파일을 열었더라도 프로그램이 종료될 때는 기본 데이터 파일인 default.sms 로 저장이 됩니다.

따라서 프로그램이 종료될 때 데이터를 저장하게 되면 default.sms에 들어 있는 기존의 데이터가 샘플 데이터로 덮어씌여집니다.

반드시 아니오를 선택하여야 default.sms 파일의 데이터가 사라지는 것을 막을 수 있습니다.

:

[튜토리얼] 새 단어 추가 - 일괄 추가

솜이슬 2008. 1. 28. 15:02

이 방법은 여러 개의 새로운 단어를 추가할 때, 단어들의 철자 만을 먼저 등록한 후, 나중에 상세 정보를 하나씩 입력하는 기능입니다.

특히 영어 학습 중, 새 단어의 상세 정보까지 등록하면 학습의 맥이 끊길 우려가 있는 경우에 이 기능을 사용하면 유용합니다.

일반 추가와 같은 방법으로 세 개의 단어를 추가합니다. 이 때 상세 보기 창은 열지 말고 그냥 단어의 철자만 입력하여 둡니다.

이제 입력해 둔 단어의 상세 정보를 하나씩 입력합니다.

입력할 단어를 선택한 상태에서 마우스 오른쪽 버튼을 누른 후 이 단어를 빨리 추가 메뉴를 선택합니다.

빠른 추가 창이 열림과 동시에 해당 단어에 대한 네이버 영영사전 페이지가 나타납니다.

이후의 과정은 빠른 추가와 동일합니다.


:

[튜토리얼] 새 단어 추가 - 빠른 추가

솜이슬 2008. 1. 27. 15:08

빠른 추가를 이용하여 단어를 효율적으로 추가하는 방법에 대해 알아보겠습니다.

CTRL+Q키를 누르거나 빠른 추가 버튼을 클릭하면 빠른 추가 창이 나타납니다.

여기서는 네이버 영영사전을 이용하기로 하겠습니다.

단어에 status 라고 입력하고 보기 버튼을 클릭합니다.

네이버 영영사전에 등록된 단어의 경우는 단어 입력 시 자동 완성을 지원합니다.

네이버 영영사전에서 복사해올 부분을 마우스로 선택한 후 CTRL+C키를 눌러 복사합니다.

입력 탭을 눌러 입력 모드로 전환한 후 입력창에 복사한 설명을 CTRL+V키를 눌러 붙여넣습니다.

이제 이 입력 내용을 솜이슬이 인식할 수 있는 형태로 편집하여야 합니다.

아래 빠른 추가 입력 형식을 참고하여 위 입력 내용을 편집합니다.

편집 시에는 CTRL, SHIFT, 화살표 키 등의 단축키를 사용하면 편리합니다. 단축키는 윈도우즈 메모장과 동일합니다.

빠른 추가 입력 형식

첫 번째 줄에는 제목을, 이후부터는 설명과 예문을 한 줄씩 교대로 입력합니다.

빈 줄과 띄어쓰기는 모두 무시됩니다.

예)
lightning

Lightning is the very bright flashes of light in the sky that happen during thunderstorms.

One man died when he was struck by lightning.

Lightning describes things that happen very quickly or last for only a short time.

Driving today demands lightning reflexes.

또한 ! 로 시작하는 줄은 빈 문자열로 치환됩니다. 예를 들어 위 예에서 첫 번째 설명에 대한 예문이 없다면 아래와 같이 입력하여야 합니다.

lightning

Lightning is the very bright flashes of light in the sky that happen during thunderstorms.

!

Lightning describes things that happen very quickly or last for only a short time.

Driving today demands lightning reflexes.

확인 버튼을 클릭하면 창을 닫기 전 미리보기 탭으로 전환하여 입력 내용이 맞는 확인합니다.

다시 한 번 확인 버튼을 클릭하여 빠른 추가 창을 닫습니다.

빠른 추가 창이 닫히면 자동으로 새로 추가한 단어의 상세 보기 창이 열립니다.

필요에 따라서, 중요도 / 메모 / 카테고리 등을 추가할 수 있습니다.

:

[튜토리얼] 새 단어 추가 - 일반 추가

솜이슬 2008. 1. 26. 15:06

단어를 추가하는 일반적인 방법은 단어 목록의 제일 위에 있는 입력창을 이용하는 것입니다

그림에서 별표 표시가 된 곳은 마우스로 클릭하고 snooze를 입력하고 엔터키를 누르거나 화면의 다른 곳을 마우스로 클릭하면 단어를 추가합니다.

추가된 단어에 대한 설명과 기타 정보를 입력하기 위해서는 단어의 상세보기 창을 열어야 합니다.

단어의 상세보기 창을 열기 위해서,  해당 단어를 마우스로 더블클릭하거나 오른쪽 버튼을 눌러 상세보기 메뉴를 선택합니다.

상세보기 창이 열리면 단어에 대한 여러가지 정보를 입력할 수 있습니다. 여기서는 먼저 설명을 입력하도록 하겠습니다.

CTRL+A 키 혹은 추가 버튼을 눌러 새로운 설명을 추가합니다.

snooze의 첫 번째 설명을 입력합니다. 첫 줄에는 단어의 뜻을, 두 번째 줄에는 예문, 세 번째 줄에는 메모를 각각 입력합니다. 필요하다면 비워 놓아도 괜찮습니다.

그림 상단에 있는 있는 숫자(여기서는 1)는 설명의 일련번호입니다. 이는 상세보기 창이 닫히면 자동으로 계산되는 값이므로 신경쓸 필요가 없습니다.

계속하여 snooze의 두 번째 설명을 입력합니다.

필요하다면 중요도와 메모를 입력합니다.

메모의 양이 많은 경우 별표 표시된 곳을 누르면 큰 입력창이 펼쳐집니다.

CTRL+F4 키를 누르거나 윈도우 탭의 아무 곳을 오른쪽 버튼으로 클릭하여 상세보기 창을 닫습니다. 아래 그림에서 붉은 줄이 그여진 부분이 윈도우 탭입니다.

:

솜이슬 소개와 설치

솜이슬 2008. 1. 25. 16:55

 (주의 : 이 포스트의 내용은 더 이상 유효하지 않습니다. 솜이슬의 설치는 이 포스트를 참조하십시오)

설치

http://kimgwajang.dnip.net/Jtd/publish.htm

소개

솜이슬은 영어 단어장입니다.

중고등학교 시절, 새로 배운 단어를 정리해 놓고 암기하던 그런 단어장을 생각하시면 됩니다.

왜 만들었나?

저는 영어 혹은 영어 교육의 전문가가 아닙니다.

그렇다고 영어를 잘 하는 것도 아닙니다.

굳이 영어와 제가 묶여 있는 관계를 들추어 보자면,

업무 상, 특히 최신 정보를 흡수하기 위해 영어가 필요하다는 점, 그래서 영어 때문에 적잖은 스트레스를 받고 있다는 점 정도가 되겠습니다.


저 역시 대부분의 우리 나라 사람들처럼 오랜 시간 동안 영어를, 특히 어휘를 효과적으로 암기할 수 있는 방법에 대한 고민을 해왔습니다.

고민이 많으니 관심도 많고 그러다 보니 여기 저기를 기웃거리게 되었는데요.

영어로 방귀 좀 뀐다는 분들이 어휘를 효과적으로 암기하는 방법에는 다음과 같은 공통점이 있는 걸 발견했습니다.


  • 영영 사전을 볼 것.
  • 번역된 뜻이 아니라 단어가 사용된 예문을 통해 그 문맥을 이해할 것.
  • 어휘 암기에도 왕도는 없으니 주기적으로 복습할 것.

특히 영영 사전의 중요성은 반드시 거론되는데요. 이와 관련해 제가 웹서핑 중 찾아낸 아래 링크들에도 귀담아 들을 만한 조언이 있습니다.

http://blog.naver.com/julycho?Redirect=Log&logNo=120002475396

http://blog.naver.com/uitstekend?Redirect=Log&logNo=100044872467

http://kin.naver.com/open100/db_detail.php?d1id=11&dir_id=111401&eid=ax5MEGF5QYNbE/O9/Kiv4KcUaIgKDGgA&qb=v7W/tbvnwPwgx8q/5Ly6


영영 사전 이야기가 나온 김에, 어떠한 영영 사전을 선택할 것인지에 대해서는 전문가 마다 추천하는 사전이 다릅니다.

저 같은 경우는 비교적 쉽다는 Collins Cobuild를 선호하는데요. CD-ROM 버전도 서점 등에서 구입할 수 있지만, 네이버 영영사전에서는 무료로 사용할 수 있습니다.

솜이슬에서도 네이버 영영사전(Collins Cobuild)에 대해서는 특별한 지원을 하고 있습니다. 혹 무료로 사용할 수 있는 다른 영영사전을 알려 주시면, 솜이슬의 다음 버전에 반영하도록 하겠습니다.


그리고 단어의 해석된 뜻이 아니라 예문을 통해 그 단어가 사용되는 문맥을 익히는 것도 영어 실력이 한 단계 도약하는 중요한 터닝 포인트인 것 같습니다.

특히 쓰기나 말하기 능력에서는 필수적인 단계가 아닌가 싶습니다.


이러한 학습방법론에 따라 영어 공부를 하던 중 저는 전자 단어장의 필요성을 절감하게 되었습니다.

물론 손으로 직접 쓰는 단어장도 그 나름의 가치가 있지만, 컴퓨터를 이용하면 좀 더 효과적인 학습이 되지 않을까 생각한 것입니다.


제가 원하는 전자 단어장이 혹시 있나 싶어 여러 방면으로 리서치를 해보았지만, 대부분의 전자 단어장은 전자 사전의 기능에 스크랩과 메모 기능이 더해진 정도였습니다.

그 중 주목할 만한 제품으로는, 프로자이너 사의 어휘마법사라는 제품이 있었는데, 이는 다른 전자 사전류와는 달리, 어휘를 외우는데 효과적인 몇 가지 장치를 포함하고 있었습니다.


하지만, 제가 리서치한 어떤 제품도 제가 필요로 하는 전자 단어장과는 거리가 있었습니다.

결국 저는 리서치를 포기하고, 직접 단어장을 만들기 시작하였습니다.

그것이 바로 솜이슬 입니다.


누구를 위해 만들었나?

이론적으로는 영어(심지어 어떤 언어라도!) 어휘를 공부하는 모든 분들이 사용할 수 있지만, 솜이슬은 특히 위의 학습방법론에 공감하고 있는 분들에게 유용합니다.

'go = 가다, (음식 등이) 상하다' 와 같은 식의 중학교 1학년의 단어장으로 사용하기에는 적합하지 않습니다. (요즈음의 중학교 1학년은, 저처럼 이렇게 유치한 단어장을 만들지는 않겠지요.)


어떤 장점이 있나?

  • 영영사전과 예문을 활용한 효율적인 어휘 암기를 지원합니다.
  • 리뷰 기능을 통해 단어 암기 여부를 지속적으로 추적할 수 있습니다.
  • 단어와 리뷰에 대해 다양한 통계 기능을 제공합니다.
  • 어휘 학습에 꼭 맞는 편리한 UI를 제공합니다. 솜이슬을 제작하면서 가장 많은 고민을 했던 것이 이 부분 이었습니다.
  • 9가지 이상의 다양한 단어 검색을 지원합니다.
  • 오피스 2007에 탑재된 것과 같은 편리하고 화려한 인터페이스를 제공합니다.
  • 외출 시에 유용하게 사용할 수 있는 보고서를 생성합니다.
  • (비록 유사한 비교 대상이 없어 확인할 수는 없지만) 동작 속도가 빠릅니다. 만 개 이상의 단어를 입력해도 사용 중 잠시의 기다림도 필요 없습니다.
  • 엑셀, TXT, HTML, XML 등 다양한 내보내기를 지원합니다.
  • 피드백을 바탕으로 한 꾸준한 업데이트를 약속합니다.
  • 그리고 결정적으로 무료입니다.

그럼 단점은?

  • 지금은 드러나지 않았지만 앞으로 본격적으로 나타나기 시작할 예정입니다.(^^)

많은 분들이 불평을 하는 부분에 부언을 하자면, 솜이슬은 전자 사전이 아니라는 것입니다.

솜이슬을 처음 보시는 분들이 가장 많이 하는 말씀이, "뭐야 설명과 예문을 직접 다 입력하란 말이야? 전자 단어장인데 클릭만 하면 자동으로 입력되게 할 수 없나?" 입니다.

이 기능이 구현되지 않은 것은 두 가지 이유 때문입니다.

첫째, 솜이슬은 사전이 아니라 단어장입니다. 자신만의 느낌으로 어휘와 그에 부대한 컨텍스트를 기록하고, 이를 정리하는 기능이 주가 되는 단어장입니다.

둘째, 솜이슬은 경제적인 이유로 사전을 포함할 수 없습니다. 기술적으로는 네이버의 영영사전을 몽땅 긁어올 수는 있으나, 이는 말 그대로 훔쳐오는 것입니다. 영영 사전을 포함하기 위해서는 막대한 금액의 로얄티가 필요할 것입니다.


요구 사항은?

Windows 2000, Windows XP, Windows 2003, Windows Vista 중 하나가 설치된 컴퓨터만 있으면 됩니다.

인터넷은 연결되어 있지 않아도 무방합니다. (지금은 온라인 설치만 지원되나, 향후 오프라인 설치 버전도 제공할 예정입니다.)

마이크로소프트의 닷넷 프레임웍 2.0이 컴퓨터에 설치되어 있어야 하는데, 이는 온라인 설치 시 자동 설치가 지원되므로 신경 쓸 필요가 없습니다.


설치는 어떻게 하나?

아래 URL을 클릭하시면 온라인 설치가 진행됩니다.

마이크로소프트 사의 Click Once 기술을 사용하기 때문에, 자동 업데이트를 통해 항상 최신 버전을 유지합니다. (자동 업데이트 기능을 이용하기 위해서는 인터넷이 연결되어 있어야 합니다.)

http://kimgwajang.dnip.net/Jtd/publish.htm


스크린 샷

단어 목록


카테고리 검색


단어 상세 정보


리뷰


통계

 


스킨 변경


보고서

: