Kompilowanie własnych rozszerzeń i funkcji |
Tematy na forum Pro mogą zakładać jedynie moderatorzy. W otwartych tematach może pisać każdy, kto ma coś fachowego do powiedzenia. Wszystkie posty nie wnoszące nic do tematu będą natychmiast usuwane, a ich autorzy dostaną ostrzeżenie.
Jeśli uważasz, że jakiś temat jest warty dyskusji na tym forum, zgłoś go w temacie Propozycje.
Kompilowanie własnych rozszerzeń i funkcji |
12.05.2008, 13:31:58
Post
#1
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. |
Witam,
Chciałbym rozpocząć dyskusję o samodzielnym rozszerzaniu php. Nie raz i nie dwa, miałem ochotę jakąś funkcję wkompilować bezpośrednio w php, aby nie dołączać jej w każdym projekcie. Rodzi to jednak problemy z przenośnością kodu. trzeba by zbudować własne rozszerzenie które potem musiałoby być dołączone do produkcyjnej wersji php, a nie każdy serwer obsługuje dynamiczne ładowanie bibliotek i mamy impas. Jeśli kiedyś pisaliście własne rozszerzenie, to jak to potem z tym było? Warto było? Zapraszam do dyskusji. p.s. Temat nie dotyczy przewagi i "lepszości" alternatywnych sposobów ładowania funkcji - list include, autoloaderów. -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
12.05.2008, 18:17:15
Post
#2
|
|
Grupa: Moderatorzy Postów: 2 921 Pomógł: 269 Dołączył: 11.08.2005 Skąd: 127.0.0.1 |
Nie miałem przyjemności pisać własnych rozszerzeń do PHP ale miałem wątpliwą przyjemność pracować na takim rozszerzeniu. Przyznam, że długi czas pracowałem na tym rozszerzeniu i nie wiedziałem nawet o tym. Dopiero jak padł dysk i trzeba było wszystko stawiać od zera, okazało się, że kiedyś ktoś takie coś napisał. Odnalezienie tego zajęło masę czasu, który można było poświęcić na coś zupełnie innego.
Inną kwestią jest praktycznie zerowa przenaszalność kodu. O ile ktoś pracuje na własnych / firmowych serwerach, to nie ma problemu, jednak jeśli jakiś klient sobie zażyczy, by aplikacja stała na jego serwerach, zaczyna się zabawa. Jeśli klient jest kumaty, to szybko dojdzie do porozumienia, jednak jeśli klient należy do grupy upierdliwych, to minie wiele czasu, nim da się go przekonać do "nieautoryzowanych" rozszerzeń. -------------------- I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features. |
|
|
13.05.2008, 12:53:58
Post
#3
|
|
Grupa: Przyjaciele php.pl Postów: 384 Pomógł: 6 Dołączył: 11.09.2004 Skąd: Grodzisk Mazowiecki Ostrzeżenie: (0%) |
Od razu nasuwa mi się pytanie - o jakie rozszerzenia chodzi?
Cytat Nie raz i nie dwa, miałem ochotę jakąś funkcję wkompilować bezpośrednio w php, aby nie dołączać jej w każdym projekcie. Rodzi to jednak problemy z przenośnością kodu. Czego Ci brakowało? Co chciałeś sobie wkompilować? Pytam z czystej ciekawości. -------------------- |
|
|
13.05.2008, 13:35:02
Post
#4
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. |
Funkcje, które ułatwiają życie i którą są typowo narzędziowe. np. funckja list_methods(), albo trywialna funkcja wyświetlająca dane tablicy/obiektu
Dlaczego mam ją includować w każdym projekcie? Gdyby sobie siedziała od początku w jadrze php, nie byłoby takiej konieczności. Z większych, to np. monitor postępu uploadu, który działa bardzo fajnie, ale mało kto z niego może skorzysta, bo na produkcyjnych nie da się go załadować, zazwyczaj ze względów bezpieczeństwa. Tak samo fajnie byłoby dodać własne iteratory - to przyśpieszyłoby ładowanie aplikacji. Może i są to pierdoły, ale jeszcze bym np. chciał dodać własne zestawy funkcji do parsowania różnych formatów plików. Pozdrawiam. -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
13.05.2008, 14:18:49
Post
#5
|
|
Grupa: Przyjaciele php.pl Postów: 384 Pomógł: 6 Dołączył: 11.09.2004 Skąd: Grodzisk Mazowiecki Ostrzeżenie: (0%) |
Racja. Jeżeli chodzi o "pierdoły" do debugowania typu print_r etc. to rzeczywiście może być nie głupi pomysł ponieważ swój warsztat masz wyposażony w to rozszerzenie i sobie używasz f-cji w projektach.
Jednak temat właściwie się skończył zanim się zaczął ponieważ: Cytat który działa bardzo fajnie, ale mało kto z niego może skorzysta, bo na produkcyjnych nie da się go załadować
-------------------- |
|
|
13.05.2008, 15:14:07
Post
#6
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 31 Dołączył: 13.11.2006 Skąd: się znamy? Ostrzeżenie: (0%) |
Nie.
Takie rozwiązanie wybieramy dla specyficznych projektów. Gdy wiadomo, że aplikacja i tak wymaga serwera dedykowanego i zawsze będziemy mieli możliwość wykorzystać własne rozszerzenie. Przykład podany przez cysiaczka funkcji print_pre w takim wypadku całkowicie mija się z celem. Załóżmy jednak, że nasza aplikacja mocno eksploatuje nasze Iteratory czy wspomniane w innym temacie sumowanie stringów. Zaimplementowanie w cpp takiego StringBuilder z pewnością przełoży się na wzrost wydajności. -------------------- Goldenline: Łukasz Rodziewicz
|
|
|
13.05.2008, 18:29:57
Post
#7
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. |
Myślałem raczej, że dyskusja pójdzie w stronę tego, jakie kto ma doświadczenia w rozszerzaniu php, czy w modyfikowaniu jego jądra. Jakie kłopoty napotkał, jaka była przydatność takich rozwiązań?
Pozdrawiam. -------------------- To think for yourself you must question authority and
learn how to put yourself in a state of vulnerable, open-mindedness; chaotic, confused, vulnerability, to inform yourself. Think for yourself. Question authority. |
|
|
13.05.2008, 19:25:35
Post
#8
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 31 Dołączył: 13.11.2006 Skąd: się znamy? Ostrzeżenie: (0%) |
Myślałem raczej, że dyskusja pójdzie w stronę tego, jakie kto ma doświadczenia w rozszerzaniu php, czy w modyfikowaniu jego jądra. Jakie kłopoty napotkał, jaka była przydatność takich rozwiązań? Pozdrawiam. Tworzenie własnego forka języka programowania jest całkowicie pozbawione sensu. Nikt o zdrowych zmysłach tego nie zrobi bo dużo sensowniej i łatwiej jest wybrać inna technologie. Jedyne o czym możemy rozmawiać to pisanie rozszerzeń. Jak napisać własne rozszerzenie: http://devzone.zend.com/node/view/id/1021 -------------------- Goldenline: Łukasz Rodziewicz
|
|
|
14.05.2008, 08:45:49
Post
#9
|
|
Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) |
Funkcje, które ułatwiają życie i którą są typowo narzędziowe. np. funckja list_methods(), albo trywialna funkcja wyświetlająca dane tablicy/obiektu A to już nie lepiej xdebug i var_dump()? (tak tylko na myśl mi się rzuciło, bo sam jakoś nie widzę, aby w projektach nie dla siebie, korzystać z takich niestandardowych rzeczy, chyba że to bardzo specyficzny projekt) -------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
Wersja Lo-Fi | Aktualny czas: 27.09.2024 - 08:10 |