powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Perl, разбивка модуля на файлы.
5 сообщений из 5, страница 1 из 1
Perl, разбивка модуля на файлы.
    #37788365
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть очень большой модуль со многими функциями. Логически все функции относятся к одной задаче и их лучше держать в одном общем package. Но по объему они уже превышают удобство редактирования. Хочется разбить этот гиганстский package на несколько мелких, но при этом сохранить общую целостность модуля для внешних задач.
Кто как это делает?
...
Рейтинг: 0 / 0
Perl, разбивка модуля на файлы.
    #37788943
Фотография Black
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
package Xxx::Application;
BEGIN 
{
	@ISA = qw
	( 
		Xxx::Applications::Insert
		Xxx::Applications::Update
		Xxx::Applications::Check
	)
}
use strict;
use warnings;
use Xxx::Applications::Insert;
use Xxx::Applications::Update;
use Xxx::Applications::Check;


?
...
Рейтинг: 0 / 0
Perl, разбивка модуля на файлы.
    #37790126
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я пока сделал так:

Код: php
1.
2.
3.
4.
# foo1.sub.pm
sub foo1() {
	print "foo1\n";
}

Код: php
1.
2.
3.
4.
# foo2.sub.pm
sub foo2() {
	print "foo2\n";
}

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
# App.pm
package App;
use strict;
use warnings;

do "foo1.sub.pm";
do "foo2.sub.pm";
1;

Код: php
1.
2.
3.
4.
5.
6.
7.
#main.pl
use strict;
use warnings;
use App;

App::foo1();
App::foo2();



Вроде все работает и даже вроде удобно.
Подводные камни кто-нибудь видит у этого решения?
...
Рейтинг: 0 / 0
Perl, разбивка модуля на файлы.
    #37790131
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Black,

У этого решения есть один "почти минус". Предложенные модули третьего уровня являются модулями и теоретически юзер может попытаться подгрузить их по отдельности, минуя "главный" пакет. А этого не хотелось бы допускать.
С другой стороны мое решение тоже от этого не застраховано.
...
Рейтинг: 0 / 0
Perl, разбивка модуля на файлы.
    #37790804
Фотография Black
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White OwlBlack,

У этого решения есть один "почти минус". Предложенные модули третьего уровня являются модулями и теоретически юзер может попытаться подгрузить их по отдельности, минуя "главный" пакет. А этого не хотелось бы допускать.
С другой стороны мое решение тоже от этого не застраховано.
Исключено, в пакетах второго и следующих уровней не должно быть конструктора класса!

Используйте use вместо do, так же почитай про ООП немного, ничего сложного.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Perl, разбивка модуля на файлы.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]