Tìm hiểu Learning Object và Việt Hóa công cụ Reload Editor trong thiết kế bài giảng MỤc lụC



tải về 0.64 Mb.
trang5/8
Chuyển đổi dữ liệu23.08.2016
Kích0.64 Mb.
#26852
1   2   3   4   5   6   7   8

4.4.3 Quá trình thực hiện Việt Hóa


Hướng giải quyết vấn đề: sử dụng đối tượng Resource Bundle sẵn có

    • Đối với những phần đã sử dụng Resource Bundle để đọc file properties và hiển thị lên giao diện, khi thực hiện chuyển ngôn ngữ ta sẽ thực hiện công đoạn chuyển đổi Resource Bundle bằng cách chuyển Bundle Name chỉ đến file properties khác.Cụ thể để chuyển sang tiếng Việt, ta phải thực hiện setBundleName từ file messages.properties sang file messages_vn.properties. Khi thực hiện có một số điểm cần lưu ý như sau:

  • Do Bundle Name được định nghĩa theo đường dẫn đến file properties nên để tiện cho việc setBundleName theo ngôn ngữ, khi xây dựng file properties cho một ngôn ngữ khác nên đặt chung gói với file properties gốc.

  • File properties mới phải tương xứng với file properties gốc về số lượng các phần tử.

  • Khóa trong file properties phải được giữ nguyên, chỉ thay đổi giá trị cho phù hợp với ngôn ngữ.

    • Đối với những phần được hiển thị thông qua việc đọc nội dung file xml hoặc file schema thì cần thực hiện những công việc sau:

  • Xây dựng các file properties tương ứng với ngôn ngữ gốc là tiếng Anh và ngôn ngữ chuyển hóa là tiếng Việt. Cụ thể gồm các file như sau:

    • profiles.properties và profiles_vn.properties để lưu trữ nội dung của các file profile.xml

    • helper.properties và helper_vn.properties để lưu trữ nội dung của các file schemahelper.xml

    • vocabulay.properties và vocabulary_vn.properties để lưu trữ nội dung của các file vocabulary.xml.

    • Các file này được đặt trong cùng gói editor và phải tuân thủ các qui tắc xây dựng file properties đã đề cập.

    • Sau khi các phần tử được đọc từ file xml/xsd lên sẽ không được hiển thị ra giao diện ngay, lúc này nó trở thành một phần của khóa trong file properties tương ứng và thông qua đối tượng Message, giá trị của nó theo ngôn ngũ tương ứng sẽ được hiển thị ra giao diện.

    • Đối với những đọan mã cứng trong phần Learning Design, ta lấy những đọan mã cứng đó để xây dựng thành 2 file messages.properties và messages_vn.properties



Những công việc cần thực hiện khi Việt Hóa:

  • Thêm menu Language trên thanh toolbar để cho phép người dùng chọn ngôn ngữ.

  • Tạo đối tượng MenuAction_ChooseLanguage để thực hiện xử lý chuyển đổi giao diện người dùng theo ngôn ngữ tương ứng.

  • Tạo đối tượng Language với các phương thức để hỗ trợ cho việc chuyển đổi ngôn ngữ

  • Xây dựng các file properties cần thiết.

  • Gom các file Messages.java lại thành một file duy nhất và đặt trong gói translation. Trong đó với các phương thức để get và set BundleName theo ngôn ngữ. Thêm BundleName cần thiết.

Cụ thể như sau:

Class Messages.java

public class Messages {

private static String FILE_BUNDLE_NAME = "uk.ac.reload.editor.properties.file";

private static String PROPERTIES_NAME;

private static String BUNDLE_NAME;

static ResourceBundle RESOURCE_BUNDLE;

static ResourceBundleManager FILE_MANAGER= new ResourceBundleManager(RESOURCE_BUNDLE.getBundle(FILE_BUNDLE_NAME));

private Messages() { }

/**

* @param key The Key



* @return A Message String

*/

public static String getString(String key) {



PROPERTIES_NAME = getPropertiesName(key);

try {


String currentLang = Language.singleton.getLanguage();

setBundleName(currentLang);

RESOURCE_BUNDLE = ResourceBundle.getBundle(BUNDLE_NAME);

return RESOURCE_BUNDLE.getString(key);

} catch (MissingResourceException e) {

return getDefaultString(key);

}

}
public static String getDefaultString(String key) {



PROPERTIES_NAME = getPropertiesName(key);

String DEFAULT_BUNDLE = "uk.ac.reload.lang.en." + PROPERTIES_NAME;

try {

ResourceBundle DEF_RESOURCE_BUNDLE = ResourceBundle.getBundle(DEFAULT_BUNDLE);



return DEF_RESOURCE_BUNDLE.getString(key);

}

catch (MissingResourceException e) {



return "";

}

}


public static File getFileProperty(String key) {

return FILE_MANAGER.getFileProperty(key);

}

//=========================================================



private static void setBundleName(String lang) {

BUNDLE_NAME = "uk.ac.reload.lang." + lang + "." + PROPERTIES_NAME;

}

private static String getPropertiesName(String key) {



if(key.contains("editor") || key.contains("dweezil") || key.contains("moonunit")) {

return "messages";

}

if(key.contains("exception")) {



return "exception";

}

if(key.contains("utils")) {



return "utils";

}

if(key.contains("profile")) {



return "profile";

}

if(key.contains("helper")) {



return "helpers";

}

if(key.contains("vocabulary")) {



return "vocabulary";

}

if(key.contains("learningdesign")) {



return "ld";

}

else {



return "reload";

}

}



}

  • Những đoạn mã sử dụng class Message.java riêng rẽ chuyển sang sử dụng class Messages.java chung trong gói translation.

  • Những đọan mã cứng được thay thế bằng cách gọi phương thức getString của class Message.java

  • Tạo đối tượng Utils với các phương thức để hỗ trợ cho việc chuyển đổi

  • Tạo đối tượng MyOptionPanel để thực hiện chuyển đổi cho các hộp thoại.

  • Đối với những đọan mã sử dụng VocabularyList để hiển thị, sử dụng phương thức changeVocabList của Utils để thực hiện chuyển đổi cả danh sách.


Một số vấn đề cần lưu ý khi thực hiện:

  • Như đã đề cập trong phần trình bày về cách thức hiển thị của Reload Editor, ta nhận thấy rằng có tới 3 class Messages.java ở 3 gói khác nhau. 3 class này gần như giống nhau hoàn toàn, chỉ khác nhau trường BUNDLE_NAME. Điều này tạo nên sự dư thừa không cần thiết.

  • Khi xây dựng file properties từ các file xml thì đối với các file schemahelper cần lưu ý:

Nội dung của các phần tử rất dài nên không thể dùng làm khóa mà được sử dụng làm value. Bên cạnh đó các các file lại có các element giống nhau nhưng nội dung của lại khác nhau nên không thể dùng chung được. Do đó phải xây dựng một khóa khác cho phần tử dựa trên tên file.

File IMS CP Helper.xml

…….....

























…….....



File SCORM 1.2 Helper.xml

…….....





(Package level meta-data). If meta-data is provided, the meta-data must be valid IMS Learning Resource Meta-data.

You can edit the Metadata from the Edit menu or by clicking on the button on the toolbar.]]>















When defining a SCORM Resource Package, this element is required to be empty.

When defining a SCORM Content Aggregation Package, this element is required to contain at least one organization sub-element.]]>









Như ta thấy ở trên cùng element là nhưng phần tử ở 2 file lại có nội dung khác nhau. Do đó ta sẽ xây dựng thành 2 khóa riêng biệt như sau:

uk.ac.reload.editor.helper.IMS_CP_Helper.xml.tip.metadata=Add Metadata to this node. You can edit the Metadata from the Edit menu or by clicking on the button on the toolbar.

uk.ac.reload.editor.helper.SCORM_1.2_Helper.xml.tip.metadata=This element contains context specific meta-data that is used to describe the content of the overall package(Package level meta-data). If meta-data is provided, the meta-data must be valid IMS Learning Resource Meta-data.

You can edit the Metadata from the Edit menu or by clicking on the button on the toolbar.


    • Các giá trị trả về đôi khi sẽ có chứa các kí hiệu đặc biệt như khoảng trắng, dấu “:”, dấu “,”,..Những kí tự này khi đọc Resource sẽ không dịch ra được, sẽ bị lỗi. Do đó để Resource Bundle có thể hiểu được thì khi xây dựng khóa phải thay thế các kí tự này bằng dấu “_”.

    • Các kí tự “” khi đọc từ file xml lên sẽ được hiểu là đánh dấu cho dữ liệu. Do đó khi xây dựng thành value trong file properties phải bỏ qua các kí tự này.

    • Một số hộp thoại sử dụng đối tượng JOptionPanel sẵn có của thư viện nên có vài chỗ không thể chuyển đổi ngôn ngữ được, chẳng hạn nút “Cancel” không thể chuyển thành “Hủy” khi chuyển ngôn ngữ.

Chương 5

CÁC CƠ CHẾ HOẠT ĐỘNG VÀ CÁC CHUẨN IMS, SCORM CỦA RELOAD EDITOR

      5.1 Cơ chế Pakaging


Каталог: data
data -> HƯỚng dẫn càI ĐẶt và SỬ DỤng phần mềm tạo bài giảng e-learning
data -> CỘng hòa xã HỘi chủ nghĩa việt nam độc lập Tự do Hạnh phúc
data -> Qcvn 81: 2014/bgtvt
data -> Trung taâm tin hoïC Ñhsp ñEÀ thi hoïc phaàn access
data -> PHỤ LỤC 2 TỔng hợp danh mục tài liệu tham khảO
data -> Công ty cổ phần Xây dựng Điện vneco3
data -> Nghiên cứu một số đặc điểm
data -> NHỮng đÓng góp mới của luậN Án tiến sĩ CẤP ĐẠi học huế Họ và tên ncs : Nguyễn Văn Tuấn
data -> Mẫu 01/hc-sn-dn (Ban hành kèm theo Thông tư số 83/2007/tt-btc ngày 16/7/2007 của Bộ Tài chính) TỜ khai hiện trạng sử DỤng nhà, ĐẤt thuộc sở HỮu nhà NƯỚc và ĐỀ xuất phưƠng án xử LÝ

tải về 0.64 Mb.

Chia sẻ với bạn bè của bạn:
1   2   3   4   5   6   7   8




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương