Keith Sirmons
그는 물었다 12년 전
6

이진 파일 데이터를 데이터베이스에 저장 및 구문 분석을 위한 디자인 패턴

이진 데이터 파일을 다른 데 가 추천하는 디자인 패턴, 구문 분석 결과 데이터 저장 및 it 부품 객체로 데이터베이스로?

이와 관련, xml 이나 탭으로 구분된 게 좋겠다고 파일이므로 it 기술을 도입하는 데 사용될 수 있다고 분석할 담당자에서 객체에는.

공통 데이터 구조는 다음과 같습니다.

&gt. (헤더입니다) (DataElement1) (DataElement1SubData1) (DataElement1SubData2) (DataElement2) (DataElement2SubData1) (DataElement2SubData2) (EOF)

내가 생각하는 좋은 디자인이 변경 등이 포함될 것인지에 대한 정의 구문 분석 방법을 아웃해야 파일 형식에 따라 정의된 메타데이터입니다 또는 일부 포함된 헤더입니다. 그래서 팩토리 패턴 의 파서를 부품에 대한 전체적인 디자인 일부라야 것이다.

답변 4 개

  1. 그냥 어떤 기법을 사용하여 온 마음을 파서, 해당 파일이 쓰기
  2. 유닛 테스트 케이스를 많이 쓰기 위한 모든 모서리까지 迈向 smartupdate 굳었나이다

39 번, 이 경우에는 실제 가지고 you& ve done "합리적 개념을 문제 / 솔루션.

지금 방금 네 머리 주변을 떠 있을 수 있는 이론을 대부분 발쿰치로 아웃하려면 잘못.

3 단계: 리팩터링 무자비하게. 당신의 코드에서 절반 가량이 삭제하시겠습니까 목표로 해야 할

39, ll 도움이 되는 코드를 you& 마지막에 # 39 는 기존 디자인 패턴, ll, 또는 유사한 인컨텍스트 you& hotenough. 새 하나. # 39 이 질문에 대답하려면 검증함 you&, ll 어졌다면 번째여야 :-)

전적으로 동의한다 (# 11712), it 와 [오리온 에드워즈] 보통 the way I 외곽진입 문제. 하지만 요즘 I& 시작 # 39, ve been 일부 패턴을 볼 수 있습니다 (!) 이 자랑합니다.

내가 좀 더 복잡한 작업을 대개 같은 일이 [ui_policytable_java_spe_policy 인터프리터] (http://en.wikipedia.org/wiki/Interpreter_pattern) (또는 [전략] (http://en.wikipedia.org/wiki/Strategy_pattern)) 를 사용하는 일부 [구성기는] (http://en.wikipedia.org/wiki/Builder_pattern) (또는 [팩터리의] (http://en.wikipedia.org/wiki/Factory_method_pattern)) 의 데이터를 각 부품을 만들 수 있습니다.

전체 데이터 스트리밍 파서를 여바바 같은 일이 될 것 "이라며" [ui_policytable_java_spe_policy 어댑터입니다] (http://en.wikipedia.org/wiki/Adapter_pattern) 에서 맞추기 스트림 객체를 객체에는 스트림 (일반적으로 단순히 대기열은).

예를 들어 한 사람이 없다고 단축시킵니다 아마도 구축자용 완벽한 데이터 구조 () 의 머리에서 EOF) 를 위한 내부 데이터 요소 (급지됨 by the interpreter) 는 내부적으로 구축자는. 일단 EOF 발견되는 약간만이라도 객체를 방출된다.

그러나 일부 팩터리의 switch 문으로 에서 작성된 객체에는 아마도 가장 간단한 방법은 그 많은 기능을 사용할 수 있습니다. 또한 내가 원하는 것을 알 수 있듯이 누군가가 당신의 목을 다운되어도 결코 내 데이터 오브젝트 밀 친다 동시성:)

Lex 와 YACC 사용합니다. 이를 위해 희생한 않으면 앞으로 10 년간 독점 생산하는 것 보다 빠르고 효과적으로 주제라서요 코드 항상.

이 전략은 하나의 패턴이 운영까지도 보는 것 같습니다. 이 전략은 파일 분석 알고리즘입니다 있다.

다음 데이터베이스에 대한 별도의 전략을 운영까지도 삽입에서.