Автор Тема: создание библиотеки с подпрограммами  (Прочитано 13794 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
создание библиотеки с подпрограммами
« Ответ #15 : 22 Апреля 2004, 17:48:31 »
Как писал в своё время Кевин Мельтцер:

------------------------------------------------------------
Многим людям не нравиться функция require(). Они предпочли бы, чтобы все файлы, загружались как модули функцией use(). Я же считаю что require() быстрее и проще, и, если Лари оставит эту функцию в языке, я буду её применять.
------------------------------------------------------------

Я придерживаюсь такого же мнения...
And no religion too...

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
создание библиотеки с подпрограммами
« Ответ #16 : 22 Апреля 2004, 18:15:14 »
commander Фигню написал Кевин Мельтцер. Это не одно и тоже.
Ты действительно не понимаеш чем отличаются use и require и никогда не слышал о ОО программировании на perl?
The documentations is your friend

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
создание библиотеки с подпрограммами
« Ответ #17 : 22 Апреля 2004, 18:42:26 »
NeoNox
Ваши сомнения мне совершенно не понятны...
Я имел в ввиду несколько другое... Если это простенькие подпрограммы, а судя по вопросу они врятли могут быть сложными... то намного быстрее и проще использовать require...
And no religion too...

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
создание библиотеки с подпрограммами
« Ответ #18 : 22 Апреля 2004, 18:44:37 »
perldoc perlbot :)
And no religion too...

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
создание библиотеки с подпрограммами
« Ответ #19 : 22 Апреля 2004, 18:55:12 »
Цитировать
commander:
Ваши сомнения мне совершенно не понятны...

Сомнения относительно чего?
perldoc perlmod:

Цитировать

           require Cwd;                # make Cwd:: accessible
           $here = Cwd::getcwd();

           use Cwd;                    # import names from Cwd::
           $here = getcwd();

           require Cwd;                # make Cwd:: accessible
           $here = getcwd();           # oops! no main::getcwd()

       In general, "use Module ()" is recommended over "require
       Module", because it determines module availability at comґ
       pile time, not in the middle of your program\'s execution.
The documentations is your friend

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
создание библиотеки с подпрограммами
« Ответ #20 : 22 Апреля 2004, 19:02:42 »
NeoNox
Вот примерно этого я и опасался...
Цитировать
лучше не задавай столь провакационные вопросы...  Дискусии по этому вопросу на моей памяти доходити до 10 станиц... Народ с пеной у рта спорил по этому вопросу и все остались при своем мнении...

мы будем долго дискутировать и я почти не сомневаюсь каждый останиться при своём мнении...
And no religion too...

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
создание библиотеки с подпрограммами
« Ответ #21 : 22 Апреля 2004, 19:12:03 »
commander пока что я привел тебе выдержку из perldoc а ты мне высказывание Кевина Мельтцера (которое я не могу найти в оригинале).
Кстати, я ничего не имею против require (хотя за последние два-три года его не использовал вообще ни разу) а о том, что не стоит программисту зашориваться. Есть такой инструмент и его нужно знать досконально.
The documentations is your friend

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
создание библиотеки с подпрограммами
« Ответ #22 : 22 Апреля 2004, 19:17:33 »
Цитировать
Есть такой инструмент и его нужно знать досконально.

Подобное суждение должно иметь разумное ограничение... А то так можно умиреть серфя http://search.cpan.org/ в поисках новых инструментов... :) Ложка хороша к столу...
And no religion too...

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
создание библиотеки с подпрограммами
« Ответ #23 : 22 Апреля 2004, 19:35:57 »
commander под инструментом я имел ввиду написание и использование модулей (пакетов). Называя CPAN, ты начинаеш рыть яму своей теории.
Я все еще не вижу доказательств почему я должен использовать require.
The documentations is your friend

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
создание библиотеки с подпрограммами
« Ответ #24 : 22 Апреля 2004, 21:35:40 »
Ну давайте еще обсудим скрипты от Matt :)) там require очень показательно.:)

Приведу одно маленькое различие use и require - то, что написано с использованием модулей легко использовать повторно, а вот то, что вынесено в подпрограмму с использованием require - проблематично.:)

И, commander, не стоит спорить с двумя людьми имеющими большой опыт программирования не приводя аргументов.
2B OR NOT 2B = FF

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
создание библиотеки с подпрограммами
« Ответ #25 : 23 Апреля 2004, 09:37:55 »
Я вообще не собирался спорить... более того я в самом начале топика это заявил... И я не призываю везде и всюду использовать require, а только там где, это проще чем использования use...
Кстати вопрос:
Как известно, в случае использования команды require подключение идет в момент выполнения сценария, а в случае использования use на этапе компиляции... Вопрос: В чем принцепиальное отличие этих двух видов подключения?
And no religion too...

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
создание библиотеки с подпрограммами
« Ответ #26 : 23 Апреля 2004, 14:08:22 »
commander ты же сам себе и ответил :)
Или ты хочеш узнать где практическое применение подключения на этапе комиляции или в какой последовательности и зачем вызываются (и вообще существуют) "BEGIN", "CHECK", "INIT", и "END"?
The documentations is your friend

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
создание библиотеки с подпрограммами
« Ответ #27 : 23 Апреля 2004, 16:07:08 »
NeoNox
Вопрос звучал так:
В чем принцепиальное отличие этих двух видов подключения? Не больше не меньше... :)
And no religion too...

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
создание библиотеки с подпрограммами
« Ответ #28 : 23 Апреля 2004, 16:27:57 »
perldoc perlmod до просветления...
2B OR NOT 2B = FF

Оффлайн Wyclef

  • hello_worlder
  • Старожил
  • ****
  • Сообщений: 307
  • +0/-0
  • 2
    • Просмотр профиля
    • http://thug.narod.ru
создание библиотеки с подпрограммами
« Ответ #29 : 23 Апреля 2004, 21:07:49 »
commander
Цитировать
В чем принципиальное отличие этих двух видов подключения?


Если отсутствует подключаемый модуль, скрипт даже не запустится т.к. use не пройдет компиляцию. use выполняет неявное импортирование пакета включаемого модуля.
It\'s nice to be important, but it\'s more important to be nice!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28