2010-01-09 2 views
1

이 문제에 대한 지능형 솔루션이 필요하다는 것을 깨달았습니다. 내 프레임 워크에서모든 페이지에는 많은 요소가있는 HEAD가 필요합니다. 프레임 워크 디자인이 좋습니까?

,이 있습니다 :

  • 조회수
  • 보기 컨트롤러 (일부 로직을 뷰를 생성 할) 그래서

(출력 데이터에 약간의 PHP와 실제로 단지 HTML 파일) 예를 들어 https://stackoverflow.com/questions/ask과 같은 모든 페이지에 대해 프레임 워크에서 호출하는 ViewController가 있습니다. 레이아웃 뷰를 생성하는 RootViewController가 있습니다. 레이아웃보기는 머리글과 바닥 글 및 사이트의 주요 구조를 지정합니다. 예를 들어 contentView 자리 표시자가 있습니다.

이 디자인에서는 HEAD 부분을 한 번만 지정하므로 DOCTYPE, TITLE 및 기타 모든 항목이 레이아웃보기 템플릿에 붙여집니다.

해당 RootViewController를로드하는 모든 View Controller는 RootViewController의 일부 메소드를 호출하여 CSS 포함 또는 Javascript 포함 (HEAD에 멋진 링크 rel 태그 중 하나)을 추가 할 수 있습니다.

지금까지는 아무 것도 지정하지 않으면 필요한 모든 것을 가지고 유용한 기본값과 합리적인 머리말을 얻을 수 있기 때문에 실제로는 꽤 유연합니다.

그러나 나는이 문제를 참조하십시오

  • 내가 프레임 워크 사용자의 삶을 더 간단하게 할 수 없음을? 레이아웃 템플릿에는 생산성을 떨어 뜨리는 "쓰레기"가 모두 포함되어 있어야합니다. 왜 프레임 워크 사용자는 올바른 HEAD를 설정하는 것에 대해서 생각해야합니까? 항상 똑같은 문제입니다. 정확하게 똑같은 문법을 사용해야합니다. CSS와 Javascript가 프레임 워크에 정확히 포함되어야합니다.

  • RootViewController의 메소드와 일치하는 정확히 일치하는 자리 표시 자 변수를 포함해야합니다.

그래서 이것을 해결하기 위해 어떤보기 템플릿에 삽입하여 HEAD 블록을 출력 할 수있는 멋진 변수를 제공 할 수 있다고 생각했습니다.

당신이 이것에 대해 어떻게 생각하는지보고 싶습니다. 내 솔루션이 좋으면 여기를 클릭하거나 큰 디자인 오류를 만들려고합니다. 그렇다면 대안은 무엇입니까?

+0

Tbh, 나는 당신이 지적하는 문제를 이해하지 못합니다.컨트롤러 플러그인을 찾으십니까? 그러나 이것이 공개 프레임 워크가 될 경우 Google 코드, sourceforge 또는 git 또는 무언가를 업로드하여 왜 몰래 엿볼 수 있을까요? – Gordon

답변

2

"사용자"가 본문 템플릿 만 지정하고 머리, "사용자"본문 및 바닥 글을 자동으로 출력하도록 할 수 있습니다. 그런 다음 템플릿 디자이너는 임의의 변수를 포함 할 필요가 없으며 머리말/꼬리말이 포함되는 방식을 변경하기로 결정하면 모든 단일 템플릿을 업데이트 할 필요가 없습니다.

템플릿 디자이너가 일부 기능을 호출하여이 동작을 무시하도록 허용 할 수도 있습니다.

이것은 아마도 이상적 일 것입니다. 시간의 90 %가 프레임 워크가 개발자 노력없이 올바른 작업을 수행하는 것입니다. 사용자가 다른 작업을 수행하려는 경우의 10 %에서만 함수 호출을 통해 작업을 수행해야합니다.

관련 문제