묻고답하기
모듈 개발하다가~ 몇가지.
2009.07.11 05:19
멤버(member) 모듈과 비슷한 역할의 모듈을 만들고 있는 중입니다.
개발중에.. 몇가지 의구심과 의견을 구하고자 이렇게 올려봅니다.
1. Object Vars에 대한 낯설음.
DB를 다루는 부분에서 인수로 왔다갔다 뭉뚱그려버린 $args가 상당히 낯설게 다가옵니다.
PHP 프로그래밍을 안해봐서인지.. PHP쪽 프로그래밍의 습관인지 모르겠습니다만..
편하게 사용하라고 만든것같은데, 정작 처음 접하는 사람이 쓰기에는 정체를 모르는 녀석이네요.
클래스도 아니고 맵도 아니고 어레이도 아닌...
타 코드를 보고 아래처럼 만들었습니다만..
Context::set("spot_name", $spot_name); Context::set("spot_srl", $spot_srl); $args = Context::gets("spot_name", "spot_srl");
필요없는 정보까지 한번에 쭈욱 가져왔다가 제거하는 코드들을 보고 있자면 리팩토링 대상의 스멜을 느낍니다.
2. 다중 언어 처리..
아직 모듈 개발에 관한 충분한 내용이 없는듯하네요. 차차 해결이되길 기대해봅니다.
다중 언어 처리 - 언어 코드별 내용을 별도로 처리하는 부분... 에 대한 샘플을 찾기가 어렵네요.
3. member에서 getNextSequence함수.
새로이 db에 insert하는 것을 하느라.. procMemberInsert함수를 참고합니다만..
getNextSequence함수가 2번 사용되었는데, 맞나요?
4. 이름짓기
이름이 조금 낯설게 다가옵니다.
현재 참고하는 모듈이 member라서..
procMemberInsert라는 action이름이자 메쏘드 이름인데..
insertMember가 좀 더 적당하지 않을런지.. 생각이 드네요.
댓글 2
-
sol
2009.07.11 05:45
-
wannabewize
2009.07.11 14:04
다중언어 처리는 xe내부에서 어떻게 하는지입니다. DB로 하는지 그러면 TABLE구성이 어떤지.. 메뉴처럼요. 아 메뉴가 있었군요. 유레카!
getNextSequence는 member를 추가하면서 srl값을 얻어오는거 같은데, 2번이나 호출해서 올려봤습니다. 1번만 호출해야할거 같았거든요.
php Object가 그렇죠^^
언어는 lang/ 디렉토리 보시면 될꺼고
이름은 procMemberInsert는 인터페이스이고 보통내부에 insert~~~ update~~~ delete~~~ 같이 사용합니다.(대부분)
getNextSequence()는 그 값이 어디로 들어가는지 보시면 될듯합니다