도메인 이름을 사용하여 고유 한 패키지 이름 (예 : package com.stackoverflow.widgets
) 을 만드는 표준 Java 패키지 명명 규칙에 이미 익숙합니다 . 그러나 개인 프로젝트의 패키지 이름을 선택하는 방법에 대한 권장 사항은 본 적이 없습니다. 나는 이것이 개인적인 취향의 문제이기 때문이라고 생각합니다.
따라서 개인 프로젝트의 패키지 이름을 어떻게 선택하여 프로덕션으로 만들지 않습니까 (여가 시간에 새로운 프레임 워크를 실험 할 수 있음) 패키지 구조를 만드는 데 사용할 수있는 도메인을 가진 개인 웹 사이트가 없다고 가정하면 어떻게해야합니까? 취미 프로젝트를위한 새로운 패키지 이름을 생성 할 수있는 논리적 시스템이 mypackage
있습니까? 아니면 간단한 폐기 패키지 이름을 사용 합니까?
나는 다른 사람들의 생각이 이것에 대해 궁금해하기 때문에 이것을 커뮤니티 위키로 만들었습니다.
개인적으로 저는 그다지 생각하지 않았지만 오늘 밤 Wicket 과 함께 놀고 싶었고 취미 프로젝트를 어떻게 조직하고 싶은지에 대한 명확한 아이디어가 없다는 것이 나에게 일어났습니다. 취미 프로젝트 (적어도 적어도 내 생각에는)에 대한 별도의 뚜렷한 패키지 명명 규칙은 개인 및 업무 관련 코드를 서로 명확하게 분리하는 좋은 방법으로 사용됩니다.
개인 프로젝트의 소스를 단일 루트 폴더에 유지하기 위해 간단한 계층 적 명명 규칙을 생각하고있었습니다.
- 사용
myprojects
루트 폴더로 - 프로젝트 이름 추가
- 추가 서브 패키지 이름 추가
따라서 Wicket 프로젝트는 패키지에 myprojects.learningwicket
있고 단위 테스트는 패키지에 있습니다 myprojects.learningwicket.tests
(예 :).
답변
다른 사람이 코드를 사용하지 않는 개인 프로젝트를 수행하는 경우 원하는 패키지 이름을 구성 할 수 있습니다. 로 시작하는 것이 무엇인가를하지 마십시오 com.
또는 net.
다른 최상위 도메인이 그 도메인 이름을 소유하고 있다는 것을 의미하기 때문,하지만 (예. 사용하여 com.john
이름이 존 될 일해서 패키지 이름으로하는 것은 좋은 생각되지 않습니다) .
다른 사람에게 코드를 제공하려면 전역 적으로 고유 한 패키지 이름을 사용해야합니다. 이는 Java 규칙에 따라 도메인 이름을 등록하고 사용해야한다는 의미입니다.
답변
나는 단지 이니셜을 사용합니다 : fg.nameofproject.etc
타이핑이 줄어 듭니다. sf.net 또는 com으로 언제든지 접두어를 붙일 수 있습니다. 또는 조직. 또는 com.google ..
이 프로젝트는 개인적으로 취급되므로 갓 눌러 진 개인화 된 선물 셔츠처럼 특별합니다. 기분이 좋을 것입니다.
답변
pmurray_at_bigpond_dot_com.project.package
답변
<sarcasm>
바. 자존심있는 프로그래머라면 누구나 자신의 도메인 이름을 가질 것입니다. 이것은 분명히 까다로운 질문입니다. 모두 자신의 개인 도메인 이름이 있습니다! </sarcasm>
🙂
좋아, 사용자 정의 도메인 이름을 구입하는 것이 아마도 가장 쉬운 옵션 일 것입니다. 일년에 약 10 달러에 도메인을 호스팅하고 이메일을 전달하는 평판이 좋은 제공 업체를 찾을 수 있습니다.
답변
취미 프로젝트의 대부분을 Google 코드에 저장하므로 프로젝트 사이트를 패키지 이름으로 사용합니다 com.googlecode.donkirkby.someproject
.
답변
내 이름은 안잔입니다
일반적으로 com.anjan을 사용합니다.
나는 내 자신의 판타지 회사를 가지고 있습니다.
sourceforge의 전통 (최대 절전 모드 및 기타 패키지 표시)은 net.sf. *
기분에 따라 갈 수 있습니다.
답변
나는 당신이 그것을 해결했다고 생각합니다. 여기서 피하려는 유혹은 패키지 이름을 전혀 신경 쓰지 않는 것입니다. “단지 테스트 코드를 작성하고 있기 때문에 몇 번의 키 입력을 쉽게 저장할 수 있습니다.” 그러나 코드가 훌륭하고 유용하며 커지면 오래 지속되는 라이브러리 또는 응용 프로그램을 시작할 수 있습니다. 라이브러리 나 홈 네트워크를 떠나는 응용 프로그램이 아닐 수도 있지만 요점은 미리 생각하지 않은 것입니다. 이것이 덴마크 컴퓨터 과학의 유령입니다.
취미 코드에 사용하는 명명 규칙은 여러분과 매우 비슷합니다. 모든 코드가 중단되는 “futura”라는 이름의 최상위 디렉토리 (그 이름이 나온 지루한 이유)가 있습니다. 클래스 또는 패키지 일지라도 다른 프로젝트에 절대 사용하지 않더라도 코드를 패키지 라이브러리로 구성하려고 시도합니다. futura.app. * 폴더에 모든 응용 프로그램 (즉, 클래스에 void main (String [] args)이있는 것)을 배치합니다. 나는 또한 내 자신의 취향으로 인해 관례를 깨뜨 렸지만 내 자신의 코드에 대한 표준 Java 라이브러리 패키지 이름을 모방하려고 시도하지만 소켓, 코드 및 futura가 아닌 인터넷에 대한 futura.inet이 있습니다. -util stuff.) David Mamet의 말을 인용하려면 : 항상 일반화하십시오. 항상 일반화하십시오!
질문을 게시하는 데 사용한 관리에서 마지막 요점에도 동의하는 것 같습니다. 취미 해킹을 엔터프라이즈 수준의 프로젝트로 취급 할 필요는 없지만 해당 분야 중 일부를 홈 게임으로 가져 오면, 취미는 더 보람이 있습니다.