2011-07-23 28 views
0

我正在構建一個學習應用程序,其中有一堆不同的頁面類型,學習者將通過並執行活動。它將成爲符合SCORM的學習對象。當我的視圖/控制器需要在同一個文件中時,什麼是構建我的js應用程序的最佳方式

這是結構我到目前爲止...

application/ 
    models/ 
    scorm.js 
    sequence.js 
    session.js 

    pagetypes/ 
    multichoice.js 
    truefalse.js 
    basic.js 

    utilities/ 
    jquery.js 
    api.js 

我pagetypes做觀察和控制,我應該獨立出來這些?我將它們結合起來的原因是,當我構建一個新的頁面類型時,我可以將它放入該文件夾,並直接通過代碼進行識別。

你們認爲什麼? amidoinrite?

回答

1

我猜你正在分離出基於頁面交互類型的方法。

我看不出有什麼理由不這樣做。只要sco需要的東西都在清單中,您可以根據需要細分腳本。它可以節省一點點的加載時間來分離出不同的頁面類型......但是,只有當你只是將你需要的內容加載到HTML頁面時,你實際上是在sco會話中瀏覽頁面。如果您將所有腳本加載到單個HTML頁面中,然後動態更改頁面div的內容,那麼您的腳本將全部加載1次&您也可以爲所有頁​​面類型腳本擁有1個縮小文件。

我可能會用後者,&與標記中的類或id綁定交互。 1文件,更少的工作來縮小,&我可以在其他包中使用,而不必確保我有我需要的每一種頁面類型...

+0

我實際上是在第一次獲取pagety類的時候把dom用過的。由於序列是通過內容創作工具構建的,因此無法確定是否需要所有的頁面類型或只有兩種。每種頁面類型都會在頁面上獲得一個jaxed。 目前,一些普通的pagetype方法存在於超類中,可能值得創建一個交互模型。 乾杯 – marcnewport

+0

聽起來像一個很棒的項目。 :) – brokenindexfinger

1

使用JavaScript將它分離出來可能非常棘手,因爲它與視圖非常接近。只要數據與實際視圖分開(它看起來像在你的例子中),這將是一個很好的設計。我會爭辯說,pagetypes更多的控制器和HTML是視圖。最重要的部分是保持模型與視圖分離。除非您嘗試構建可重用的JavaScript/HTML組件,否則頁面類型可以模糊控制器和視圖的角色。

相關問題