• May not have to extend parent classes in order to add your own set o dịch - • May not have to extend parent classes in order to add your own set o Việt làm thế nào để nói

• May not have to extend parent cla

• May not have to extend parent classes in order to add your own set of methods. Store them all in the helper instead. EG: instead of extending the base controller class to make a new parent class with new methods, add methods to helpers that your controllers can then access.
• Easily share code between drastically varying classes.
• Easily share code between plugins et al (e.g. two plugins may share a common set of methods but the rest do not; store those method in a helper instead of mucking up the base plugin class definition).
For more information on helpers, read the framework's PHPDocs, view the source code of local/mr/framework/helper/*.
Fluent Interface
A lot of the framework implements a fluent interface when it makes sense. A fluent interface is when you can string multiple function calls together for a single object. This is achieved by each function returning the object itself, e.g. return $this; or return new some_nifty_class(). So, a fluent interface can look like this:
$object->foo(...)->bar(...)->baz(...);
Also, if the function calls are long, you can break it out onto separate lines:
$object->foo(...)
->bar(...)
->baz(...);
The above is equivalent to the following, which doesn't take advantage of the fluent interface. (Note: each method still returns the $object instance, but it's just ignored now.)
$object->foo(...);
$object->bar(...);
$object->baz(...);
Advantages of a fluent interface:
• Increases readability of code.
• Reduces amount of code.
• Allows for really neat functionality, e.g. the helpers use this to dynamically load objects, thus giving one access to the objects methods.
• It's really cool! /snort
Disadvantages of a fluent interface:
• Since there are multiple function calls in one line of code and if there is an error in the middle of the fluent interface calls, then it could increase the difficulty of debugging where exactly the problem lies.
Class Naming Conventions
The class naming conventions used by the Moodlerooms Framework also mimics Framework's class naming conventions. The class name is derived by the class file's directory path and file name. Directories are separated by underscores and everything is lowercase. One exception is blocks, where it is reasonable to use block instead of blocks. Example:
• mod/modname/model/foo.php maps to mod_modname_model_foo
• blocks/blockname/form/edit.php maps to blocks_blockname_form_edit or block_blockname_form_edit
Advantages to using this class naming convention:
• Reduce the chance of name space collisions.
• When looking at the class name, one can easily derive where the class definition file is located.
• Classes and their files can be more easily dynamically loaded. See local/mr/framework/helper/load.php which loads classes and their files.
Using this naming convention in your plugin will make it easier to use all of the features of the framework.
Sub-plugins
Sometimes it makes sense to have plugins inside of your plugin. The framework uses mr_helper_load::plugin(...) method to load single or multiple base plugin classes. In order to take advantage of this functionality, your sub-plugins must be organized in a specific way:
• plugin/path/base/class.php
o The above is the base plugin class where path can be any directory depth.
• plugin/path/name/class.php
o The above is the actual plugin where path matches the path for the base and name is the plugin's name.
Note that the above uses path which means you can have plugins at any directory depth which in turn means, your sub-plugins can have sub-sub-plugins if so desired. Example of common plugin layouts:
Single tiered
• plugin/
o base/class.php
o modxuser/class.php (Extends plugin/base/class.php)
o course/class.php (Extends plugin/base/class.php)
Multi tiered
• plugin/
o export/
 base/class.php
 xml/class.php (Extends plugin/export/base/class.php)
 csv/class.php (Extends plugin/export/base/class.php)
o report/
 base/class.php
 user/class.php (Extends plugin/report/base/class.php)
 class/class.php (Extends plugin/report/base/class.php)
Advantages of sub-plugins
• Easy iterative functionality. EG: loop over all your plugins, each get to execute their own unique code.
• Convenient way to group files that relate. EG: The base class and form classes.
• Supports drop in code that runs automatically.
For more information on plugins, read the framework's PHPDocs on mr_helper_load.
Plugin Layout
Below is the recommended way to setup the structure of a plugin that wants to make use of the Moodlerooms Framework. Please note that the below is not all or nothing, but rather each can be implemented individually and as needed.
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
• Không có thể mở rộng các lớp học của phụ huynh để thêm riêng của bạn tập hợp các phương pháp. Lưu trữ chúng trong helper để thay thế. EG: thay vì mở rộng lớp cơ sở điều khiển để tạo ra một lớp cha mẹ mới với phương pháp mới, thêm phương pháp trợ giúp điều khiển của bạn sau đó có thể truy cập.• Dễ dàng chia sẻ mã giữa các lớp học khác nhau đáng kể.• Dễ dàng chia sẻ mã giữa plugins CTV (ví dụ như hai bổ sung có thể chia sẻ một tập hợp phổ biến các phương pháp, nhưng phần còn lại không làm; lưu trữ phương pháp trong một helper thay vì mucking lên định nghĩa lớp cơ sở plugin).Để biết thêm thông tin về người trợ giúp, đọc các khuôn khổ PHPDocs, xem mã nguồn của địa phương/mr/khuôn khổ/trợ giúp / *.Giao diện thành thạoRất nhiều các khuôn khổ thực hiện một giao diện thông thạo khi nó làm cho cảm giác. Một giao diện thông thạo là khi bạn có thể chuỗi nhiều chức năng cuộc gọi với nhau cho một đối tượng duy nhất. Điều này đạt được bằng cách mỗi chức năng mà trở về đối tượng chính nó, ví dụ: $this trở lại; hoặc quay trở lại mới some_nifty_class(). Vì vậy, một giao diện thành thạo có thể giống như thế này:$object -> foo(...) -> bar(...) -> baz(...);Ngoài ra, nếu các chức năng cuộc gọi dài, bạn có thể phá vỡ nó vào riêng biệt dòng:$object -> foo(...) -> bar(...) -> baz(...);Trên đây là tương đương với sau đây không tận dụng lợi thế của giao diện thành thạo. (Lưu ý: mỗi phương pháp vẫn còn trở lại ví dụ $object, nhưng nó chỉ cần bỏ qua bây giờ.)$object -> foo(...);$object -> bar(...);$object -> baz(...);Lợi thế của một giao diện thông thạo:• Tăng khả năng đọc mã.• Làm giảm số lượng của mã.• Cho phép chức năng thực sự gọn gàng, ví dụ như các trợ giúp sử dụng này để tự động tải các đối tượng, do đó đưa ra một truy cập đến các phương pháp đối tượng.• Đó là thực sự mát mẻ! /snortNhược điểm của một giao diện thông thạo:• Vì có nhiều chức năng cuộc gọi trong một dòng mã và nếu có một lỗi ở giữa các cuộc gọi thông thạo giao diện, sau đó nó có thể làm tăng khó khăn trong việc gỡ lỗi chính xác vấn đề nằm ở đâu.Quy ước đặt tên lớpQuy ước đặt tên lớp học sử dụng Moodlerooms Framework cũng bắt chước quy ước đặt tên lớp của khuôn khổ. Tên lớp có nguồn gốc của tên tệp và đường dẫn thư mục tập tin lớp. Thư mục được phân cách bằng dấu gạch chân và tất cả mọi thứ là chữ thường. Một ngoại lệ là các khối, nơi nó là hợp lý để sử dụng khối thay vì khối. Ví dụ:• mod/modname/model/foo.php bản đồ đến mod_modname_model_foo• blocks/blockname/form/edit.php bản đồ đến blocks_blockname_form_edit hoặc block_blockname_form_editNhững thuận lợi để sử dụng này quy ước đặt tên lớp:• Làm giảm cơ hội của tên space va chạm.• Khi nhìn vào tên lớp, một có thể dễ dàng lấy được các tập tin định nghĩa lớp nằm ở đâu.• Các lớp và các tập tin có thể được dễ dàng hơn, tự động tải. Xem local/mr/framework/helper/load.php mà tải các lớp học và các tập tin của họ.Bằng cách sử dụng quy ước đặt tên này vào plugin của bạn sẽ làm cho nó dễ dàng hơn để sử dụng tất cả các tính năng của khuôn khổ.Sub-pluginsĐôi khi nó làm cho tinh thần để có bổ sung bên trong của plugin của bạn. Khuôn khổ sử dụng mr_helper_load::plugin(...) phương pháp để tải duy nhất hoặc nhiều cơ sở plugin các lớp học. Để tận dụng lợi thế của tính năng này, sub-plugins của bạn phải được tổ chức trong một cách cụ thể:• plugin/path/base/class.phpo trên đây là lớp cơ sở plugin nơi đường dẫn có thể là bất cứ độ sâu thư mục.• plugin/path/name/class.phpo trên đây là các plugin thực tế nơi con đường phù hợp với đường dẫn cho các cơ sở và tên là tên của plugin.Lưu ý rằng ở trên sử dụng đường dẫn có nghĩa là bạn có thể bổ sung tại bất cứ độ sâu thư mục mà lần lượt có nghĩa là, sub-plugins của bạn có thể có tiểu tiểu-plugins nếu muốn. Ví dụ về bố trí plugin phổ biến:Đĩa đơn tầng• plugin /o base/class.phpo modxuser/class.php (Extends plugin/base/class.php)o course/class.php (Extends plugin/base/class.php)Đa tầng• plugin /o xuất khẩu / base/class.php xml/class.php (Extends plugin/export/base/class.php) csv/class.php (Extends plugin/export/base/class.php)báo cáo o / base/class.php user/class.php (Extends plugin/report/base/class.php) class/class.php (Extends plugin/report/base/class.php)Ưu điểm của tiểu-plugins• Dễ dàng chức năng lặp đi lặp lại. EG: vòng lặp qua tất cả các plugin của bạn, mỗi người nhận được để thực thi mã độc đáo của riêng họ.• Cách thuận tiện để nhóm các tập tin có liên quan. EG: Các lớp cơ sở và các lớp học dưới hình thức.• Hỗ trợ thả trong mã chạy tự động.Để biết thêm chi tiết trên bổ sung, đọc các khuôn khổ PHPDocs trên mr_helper_load.Plugin giao diệnDưới đây là cách được khuyến nghị để thiết lập các cấu trúc của một plugin mà muốn sử dụng các khuôn khổ Moodlerooms. Xin lưu ý rằng các dưới đây không phải là tất cả hoặc không có gì, nhưng thay vì mỗi có thể được thực hiện riêng lẻ và khi cần thiết.
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
• Không thể phải mở rộng lớp cha để thêm thiết lập riêng của bạn các phương pháp. Lưu trữ tất cả trong helper thay thế. EG:. Thay vì mở rộng các lớp điều khiển cơ bản để thực hiện một tầng lớp phụ huynh mới với phương pháp mới, thêm các phương pháp để giúp đỡ mà các bộ điều khiển của bạn có thể sau đó truy cập
. • Dễ dàng chia sẻ mã giữa các lớp khác nhau đáng kể
• Dễ dàng chia sẻ mã giữa plugin et al (ví dụ như hai plugins có thể chia sẻ một tập hợp chung các phương pháp nhưng phần còn lại thì không; lưu trữ những phương pháp trong một helper thay vì mucking lên các định nghĩa lớp cơ sở plugin).
Để biết thêm thông tin về những người giúp đỡ, đọc PHPDocs của khung, xem mã nguồn của địa phương / mr / framework / helper / *.
thạo giao diện
rất nhiều khuôn khổ thực hiện một giao diện thông thạo khi nó có ý nghĩa. Một giao diện thông thạo là khi bạn có thể nối nhiều chức năng cuộc gọi với nhau cho một đối tượng duy nhất. Điều này đạt được bằng cách mỗi chức năng trả lại đối tượng chính nó, ví dụ như trả lại $ này; hoặc trả lại some_nifty_class mới (). Vì vậy, một giao diện thông thạo có thể trông như thế này:
$ object-> foo (...) -> thanh (...) -> baz (...);
Ngoài ra, nếu các chức năng cuộc gọi dài, bạn có thể phá vỡ nó ra trên dòng riêng biệt:
$ object-> foo (...)
-> thanh (...)
-> baz (...);
trên đây là tương đương với những điều sau đây, mà không tận dụng lợi thế của giao diện thông thạo . (Lưu ý: mỗi phương pháp vẫn trả về dụ $ đối tượng, nhưng nó chỉ là bỏ qua ngay bây giờ.)
$ Object-> foo (...);
$ object-> bar (...);
$ object-> baz (... );
Ưu điểm của một giao diện thông thạo:
• Tăng khả năng đọc mã.
• Giảm số lượng mã.
• cho phép chức năng thực sự gọn gàng, ví dụ như những người giúp việc sử dụng này để tự động nạp các đối tượng, do đó đưa ra một tiếp cận với các phương pháp đối tượng.
• Đó là thực sự mát mẻ ! / snort
Nhược điểm của một giao diện thông thạo:
. • Vì có nhiều chức năng cuộc gọi trong một dòng mã và nếu có một lỗi ở giữa các cuộc gọi giao diện thông thạo, sau đó nó có thể làm tăng sự khó khăn của gỡ lỗi nơi chính xác vấn đề nằm
Lớp Quy ước đặt tên
các quy ước đặt tên lớp được sử dụng bởi các khung Moodlerooms cũng bắt chước ước đặt tên lớp Framework. Tên lớp có nguồn gốc của đường dẫn thư mục tập tin lớp và tên file. Thư mục được phân cách bằng dấu gạch dưới và tất cả mọi thứ là chữ thường. Một ngoại lệ là các khối, nơi nó là hợp lý để sử dụng khối thay vì block. Ví dụ:
• mod / modname / mô hình / bản đồ foo.php để mod_modname_model_foo
• đồ khối / blockname / form / edit.php để blocks_blockname_form_edit hoặc block_blockname_form_edit
Ưu điểm khi sử dụng quy ước đặt tên lớp này:
• Giảm nguy cơ va chạm không gian tên.
• Khi nhìn tại tên lớp, người ta có thể dễ dàng lấy được mà tập tin định nghĩa lớp nằm.
• các lớp học và các tập tin của họ có thể được dễ dàng hơn động nạp. Xem địa phương / mr / framework / helper / load.php mà tải các lớp học và các tập tin của họ.
Sử dụng quy ước đặt tên này trong plugin của bạn sẽ làm cho nó dễ dàng hơn để sử dụng tất cả các tính năng của khung.
Sub-plugins
Đôi khi nó làm cho tinh thần để có plugin bên trong của plugin của bạn. Khung sử dụng phương pháp mr_helper_load :: plugin (...) để tải các lớp cắm cơ sở một hoặc nhiều. Để tận dụng chức năng này, phụ plugins của bạn phải được tổ chức một cách cụ thể:
• plugin / path / cơ sở / class.php
. O Trên đây là lớp học cắm cơ sở nơi con đường có thể được bất kỳ thư mục sâu
• plugin / đường dẫn / tên / class.php
o trên đây là plugin thực tế, nơi con đường phù hợp với đường dẫn cho các cơ sở và tên là tên của plugin.
Lưu ý rằng ở trên sử dụng con đường đó có nghĩa là bạn có thể có các plugin ở bất kỳ độ sâu thư mục từ đó có nghĩa là, sub-plugins của bạn có thể có sub-sub-plugins nếu muốn. Ví dụ về bố trí các plugin phổ biến:
tầng đơn
• plugin /
o cơ sở / class.php
o modxuser / class.php (mở rộng plugin / cơ sở / class.php)
o nhiên / class.php (mở rộng plugin / cơ sở / class.php)
đa tầng
• plugin /
o xuất khẩu /
 cơ sở / class.php
 xml / class.php (mở rộng plugin / xuất khẩu / cơ sở / class.php)
 csv / class.php (mở rộng plugin / xuất khẩu / cơ sở / class.php)
o báo cáo /
 cơ sở / class.php
dùng  / class.php (mở rộng plugin / báo cáo / cơ sở / class.php)
lớp  / class.php (mở rộng plugin / báo cáo / cơ sở / class.php)
Ưu điểm của tiểu-plugins
• dễ dàng chức năng lặp đi lặp lại. EG: lặp trên tất cả các plugin của bạn, từng có được để thực thi mã độc đáo của riêng mình.
• Cách thuận tiện để nhóm tập tin có liên quan. EG:. Các lớp cơ sở và lớp form
• Hỗ trợ giảm mã chạy tự động.
Để biết thêm thông tin về các plugin, đọc PHPDocs của khung về mr_helper_load.
Plugin Layout
Dưới đây là cách khuyến khích để thiết lập cấu trúc của một plugin mà muốn dùng Khung Moodlerooms. Xin lưu ý rằng đây không phải là tất cả hoặc không có gì, nhưng thay vì mỗi người có thể được thực hiện riêng rẽ và khi cần.
đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2024 I Love Translation. All reserved.

E-mail: