Jump to content
View in the app

A better way to browse. Learn more.

IPBMafia.ru - поддержка Invision Community, релизы, темы, плагины и приложения

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Введение в IPS Social Suite 4.0

Featured Replies

Posted

Около года назад было вскользь упомянуто, что следующей версией, после 3.4, будет 4.0. Сейчас разработка 4.0 продолжается, и для новостей разработчики решили использовать блог The Development Channel, чтобы рассказать Вам о развитии продуктов.

Это перевод статьи 4.0 - Dev Introduction, опубликованной в The Development Channel.
Перевод осуществил Sanshalay. Копирование без указания ссылки на IPBMafia.Ru запрещено.

Записи в The Development Channel будут предназначены, в первую очередь, разработчикам различных приложений для продуктов IPS. Из всего того, что будет рассказываться, некоторые вещи могут быть всё ещё в планах, и когда они будут готовы, будет рассказано о них подробнее. Поэтому также стоит иметь в виду, что некоторые планы и сроки могут измениться. В основном, здесь будут размещаться примеры кода, скриншоты и т.д. - но всё это не является готовым продукт, и это, вероятно, будет видно.
 
В добрый путь - давайте поговорим о 4.0!
 
Структура каталогов
 
В настоящее время приложения хранятся в своих папках (это либо /admin/applications, либо /admin/applications_addon/other), однако другие файлы разбросаны по разным каталогам, будь то /interface, /public и т.д. В 4.0 все файлы приложений будут храниться в своей папке, которая будет находиться в директории /application.
 
Каталог приложения будет выглядеть примерно так:

  • extensions
  • dev
    • css
    • html
    • img
    • js
    • lang
  • interface
  • modules
    • admin
    • front (теперь это "front", а не "public")
  • setup
  • sources
  • tasks
  • xml

Обратите внимание на папку /dev. Это не будет средством для разработки, а скорее заменит /cache/lang_cache/master_lang.
 
Вне каталога приложений будут только системные папки, обеспечивающие функционирование базовых классов.

Пространства имён и автоматическая загрузка классов

В 4.0 будут использоваться пространства имён PHP и автозагрузка классов. Функционал лучше всего продемонстрировать на примере:
 
classDb (/ips_kernel/classDb.php) теперь называется IPSDb и расположен в /system/Db/Db.php
output (/admin/sources/classes/output/publicOutput.php) теперь называется IPSOutput и расположен в /system/Output/Output.php
class_forums (/admin/applications/forums/sources/classes/forums/class_forums.php) теперь называется IPSforumsForum и расположен в /applications/forums/sources/Forum/Forum.php
IPSDispatcherFront и IPSDispatcherAdmin - это два новых класса. Их функционал, аналогичен функционалу ipsController в 3.x.

 

"Monkey patching"

Один из плюсов хуков в IPS Social Suite - это то, что Вы можете легко создать свой собственный класс и использовать его вместо основного.
 
Раньше приходилось писать вот так:

$class = IPSLib::loadLibrary( '/path/to/file', 'myClass' );
$object = new $class;

Особенно, если вы хотите сделать статический метод. Однако теперь это можно сделать так:

$object = new myClass;

или так

myClass::myStaticMethod();

Также будет возможным использование Monkey Patch и умного использования автозагрузки. Это привело к отказу от loadLibary и loadActionOverloader.

Это, конечно, только начало. Следите за новостями в данном разделе.

Edited by Sanshalay

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.