wiki의 질문입니다...

nettism의 이미지

안녕하십니까??

위키를 테스트해 보려고 하는 사용자입니다..

위키를 돌아댕기다가 보니깐... 종종 namespaces라는 용어가 나오는데요..

이것의 개념을 무엇으로 잡아야 할까요??

책을 예로 들자면, 목차정도?? 아니면.. 무엇으로 이해하면 좋을까요??

레퍼런스 부탁드립니다..

건강하십시요..

참 새해 복 많이 받으십시요..^^

lacovnk의 이미지

이름공간.. 으로 번역된 것을 본 적이 있습니다.

같은 문자열이지만, 다른 영역에서 서로 다른 의미로 쓰인다면, 영역을 분리해줄 필요가 있습니다. 그 경우 네임스페이스를 사용해서 구분해주게 됩니다.

자동차:소방차 / 가수:소방차

이런 예만 생각나는군요 -_-;

일종의 도메인..이라고 보면 되겠지요. 미디어위키는 기능을 위해서 네임스페이스를 나눕니다. 토론:소방차, 유저:lacovnk 이런 식으로 말입니다.

참고로 프로그래밍 언어에서 네임스페이스라는 말을 씁니다. C++을 참고하세요~

nettism의 이미지

이름공간이라...그냥..직역이군요..^^ ㅡ.ㅡ

lacovnk님의 말을 좀더 여쭙자면, 같은 문자열이지만, 다른 영역에서 다른 의미로 사용될때 네임스페이스로 구분한다라고 하셨는데요...

제 나름의 이해를 동원해서 설명을 하자면, 위의 예에서 소방차라는 동일 단어지만, 내포한 의미는 다른거잖아요?? 그런것들의 구분을 네임스페이스로 한다는 말인되는건가요??

그럼 실제로 페이지 내에서도 상기처럼 "자동차 : 소방차", "가수 : 소방차" 이런식으로 사용이 되어지겠군요??

네임스페이스와 페이지와는 무관한 개념으로 이해해야 하는 것인가요??

저는 자꾸..음 모랄까요?? 페이지에다가 이름을 붙이는것의 한 방식이라고 이해가 되려 해서 말입니다.. 죄송합니다만..제가 헷갈리는 이 부분 즉 페이지에 이름을 할당하는것과, 네임스페이스와의 차이는?? 어떻게 설명을 해야 할까요??

아니면 페이지 자체도 동일한 내용의 페이지가 서로 다른 곳에서 참조를 한다면, 각각 네임스페아스를 통해서 구분을 지어주게 되는것인가요??

흠...횡설수설 죄송합니다만...답변 주시면 감사하겠습니다..꾸벅..

일신 일일신 우일신


================
일신 일일신 우일신
================

lacovnk의 이미지

구분을 위해서 페이지 이름에 일정한 방법으로 반영할 수도 있습니다. 위키피디아 같은 경우

john_(name) john_(surname) 등으로 뒤에 문자열을 붙여 구분합니다.

그리고 네임스페이스는 기능을 나타냅니다.

car에 대한 토론은 talk:car라는 페이지에서 이루어지게 됩니다.

같은 네임스페이스 안에서는 보통 그냥 페이지 이름만 써주면 되고.. 다른 네임 스페이스를 쓸 때는 명시를 해주게 됩니다.

좀 더 검색하면 정리된 문서가 나올 것 같긴 한데.. 일단 하나 둡니다.

http://ko.wiktionary.org/wiki/%EC%9C%84%ED%82%A4%EB%82%B1%EB%A7%90%EC%82%AC%EC%A0%84:%EB%84%A4%EC%9E%84%EC%8A%A4%ED%8E%98%EC%9D%B4%EC%8A%A4

익명사용자의 이미지

MediaWiki식 네임스페이스는 사실 네임스페이스라고 보기 어렵습니다. special page도 역시 namespace의 제한적인 활용일 뿐이죠.

네임스페이스를 충실히 구현하고 있는 위키는 TWiki나 Twiki를 본받은 PmWiki, dokuwiki 등등인 것 같습니다.

lacovnk의 이미지

그런데, 위키에 네임스페이스가 필요할까요? ACL을 간단하게 설정할 수 있어서 dokuwiki에서 종종 씁니다만..

위키 자체가, flat space 성격을 가지는데 네임스페이스로 분리를 해야 할까는.. 잘 모르겠습니다.

프로그래밍 언어에서는 scope가 중요하지만, 위키는 그렇지 않잖아요? :)

익명사용자의 이미지

네임스페이스가 없을 경우를 상정해 보죠.

그렇게 된다면 "자동차:소방차"와 "가수:소방차"를 각각 "자동차_소방차" "가수_소방차"처럼 구분하면 될것입니다.
그러나 이와 비슷한 케이스가 매우 많은 경우에 우리는 "_" 기호 혹은 다른 방식의 이름 구분짓는 법을 고안하거나
이름 짓는것에 대해 많은 고민을 해야 될것입니다.

그러나 네임스페이스를 지원하게 되면, "자동차:소방차"와 "가수:소방차"를 모두 "소방차"라는 키워드 하나로 같은 부류처럼
생각하게 만들 수도 있고, 이름 짓는 것에대해 덜 고민하게 될 것입니다.

네임스페이스는 마치 여러 디렉토리를 두는 것으로 생각할 수도 있습니다. 왜 여러 디렉토리를 나누어서 보관하시는지 그 이유가
바로 네임스페이스를 두는 이유라고 생각하시면 절반 이상 맞는 말입니다.

위키중에 TWiki가 네임스페이스 지원을 하게된 원조격으로 보시면 됩니다. (TWiki는 이것 외에도 많은 위키에 지대한 영향을 주었죠)

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.