Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zephir - co o nim myślicie?
JacekJagiello
post
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 21.11.2012

Ostrzeżenie: (0%)
-----


Rok temu ShadowD pisał o Phalconie, jendak chciałbym odnowić dyskusję, ponieważ trochę się zmineiło od tego czasu.

Może krótkie wprowadzenie. Phalcon jest frameworkiem PHP napisanym pierwotnie w C. Dzięki temu jest niesamowicie szybki. W "standardowych" frameworkach PHP przy każdym zapytaniu kod frameworka jest w całości interpretowany od nowa, co zajmuje trochę czasu. Phalcon jest już skompilowany, więc nie ma tego problemu. Wystarczy dodać rozszerzenie w postaci pliku dll dla serwera Aapche.
Ma to jednak swoje wady. Po pierwsze raczej mozemy zapomnieć w phlaconie na standardowych hostingach wpsółdzielonych. Potrzebujemy VPS-a gdyż tylko tam mamy możliwość instalowania własnych rozszerzeń.
Jest też problem rozwoju frameworka. Jest on stworzony dla programistów PHP, ale sam napisany jest w C. Nie każdy programista PHP zna C, a te języki mimo wszystko się różnią. Twórcy frameworka postanowili więc stworzyć własny język programowania, Zephir, który łączy cechy PHP oraz C(a także... Rust i Javascript). Trochę radykalne rozwiązanie, ale Zephir naprawdę wygląda ciekawie. I to głównie temat Zephira chciałbym poruszyć.

Zephir jest językiem zarówno typowanym dynamicznie(jak php czy javascirpt) jak i statycznie©. Zephir jest tłumaczony do C. W przeciwieństwie do PHP, Zephir wymusza pewne dobre standardy, i dodaje funkcje których w PHP brakuje, na przykład:
-Kod musi być umieszczony w klasach. Zephir jest wpełni obiektowy.
-Namespace jest konieczny
-używanie $ nie jest wymagane
-Możemy ustalić jaki typ danych ma zwracać metoda

Dzięki Zephir możemy tworzyć rozszerzenia. Więc całe nasze aplikacje możemy skompilować do C, tym samym znacznie poprawiając wydajność.
Zachęcam do oglądniecia składni zephir na http://zephir-lang.com/intro.html

Co myślicie o projekcie Zephir? Przesada, czy coś naprawdę przyszłościowego?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
irmidjusz
post
Post #2





Grupa: Zarejestrowani
Postów: 279
Pomógł: 60
Dołączył: 25.02.2012

Ostrzeżenie: (0%)
-----


Nie zakładam, tylko wiem, bo w necie jest dosyć omówień, przykładów i testów. Wystarczy też trochę obeznania z jakością oprogramowania tworzonego w różnych językach (dlatego oprogramowania banku nie pisze się w PHP, a Allegro przepisuje swój kod na Java). To Ty się mylisz kompletnie - chyba nie dociera do Ciebie, że taki Hack został stworzony, a teraz cały kod PHP fejsa jest na niego przepisywany, bo to lepiej działa i zwyczajnie się opłaca. I tak, zawierają mniejszą liczbę błędów, bo języki ze statyczną kontrolą typów siłą rzeczy zmniejszają liczbę bugów już na starcie, w trakcie pisania kodu (programowałeś kiedyś w czymś poza PHP?). Wymuszają również inne myślenie o projektowanym kodzie. Pomijam już fakt, że tradycyjnie PHP jest od lat obiektem kpin, a jego "zachęta" do pisania gównianego kodu - legendarna...

"Nie są łatwe w rozwoju - ile znasz developerów w PL ze znajomością zephira?" - sorry, ale to w ogóle nie jest argument (IMG:style_emoticons/default/smile.gif) Szkoda, że tego nie rozumiesz. Nie chodzi o to, ilu znam takich programistów, tylko o to, że pisanie programu w takim języku przynosi korzyści.

"pokaż jakiekolwiek większe produkcyjne wdrożenie" - Facebook (IMG:style_emoticons/default/smile.gif)

"W głównej mierze to od developera zależy czy popełni błędy" - tak, ale nie tylko. Od języka także zależy wiele. Właśnie m.in. dlatego nie programujemy w assemblerze, a C został zastąpiony C++, potem pojawiły się Java/C# itd. Języki ewoluują, modyfikuje się je i tworzy się nowe często po to, by uniknąć błędów i bolączek typowych dla programowania w jakimś wcześniejszym popularnym języku.
Go to the top of the page
+Quote Post
pyro
post
Post #3





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cytat(irmidjusz @ 24.04.2014, 09:27:28 ) *
(programowałeś kiedyś w czymś poza PHP?). Wymuszają również inne myślenie o projektowanym kodzie. Pomijam już fakt, że tradycyjnie PHP jest od lat obiektem kpin, a jego "zachęta" do pisania gównianego kodu - legendarna...


Argument godny jaskiniowca, który od kilku lat nie wynurzył nosa ze swojej groty. PHP5 akurat ma się bardzo dobrze (napisałeś kiedyś coś w nowszej wersji niż PHP4?). Tego typu obiekcji używają właśnie jaskiniowcy, którzy fikcyjnie sobie uznali, że przy PHP w wersji 4 jakikolwiek rozwój języka upadł i nic się nie zmienia.

Cytat(irmidjusz @ 24.04.2014, 09:27:28 ) *
"Nie są łatwe w rozwoju - ile znasz developerów w PL ze znajomością zephira?" - sorry, ale to w ogóle nie jest argument (IMG:style_emoticons/default/smile.gif) Szkoda, że tego nie rozumiesz. Nie chodzi o to, ilu znam takich programistów, tylko o to, że pisanie programu w takim języku przynosi korzyści.


To akurat bardzo dobry argument, i szkoda, że nie @ano, tylko Ty tego nie rozumiesz. A powodów jest nawet kilka:
- dużo trudniej znaleźć osobę obeznaną w danej technologii, a kiedy akurat taka osoba jest potrzebna, to może się taka sytuacja okazać niezłym koszmarem. Sam szukałem swojego czasu front-endowca. Niby JS jest na większości stron w internecie, niby stosunkowo łatwe technologie, a znaleźć kogoś, kto umie więcej niż osadzić skrypty z lekkimi modyfikacjami, nie siedzącą miesiąc nad lightboxem własnej roboty i ogólnie potrafiącą więcej niż zakodowanie HTML/CSS z "średnim" oskryptowaniem mi się nie udało (z jednym wyjątkiem, ale nie było mnie stać na 8k NETTO (IMG:style_emoticons/default/tongue.gif) ). A niby powinno ich być na pęczki? "Programistów" jest sporo, ale Programistów co kot napłakał.
- Nawet jak już się uda znaleźć kogoś znającego daną technologię na niebanalnym poziomie, to trzeba jej odpowiednio więcej zapłacić i jak jest grupa devów, która nad tym pracuje, to koszt utrzymania takiej grupy to będzie jakieś kilkadziesiąt tysięcy więcej. W przypadku wspomnianego Facebooka takie kwotki nie mają znaczenia, ale ktoś mnie chyba zapomniał uświadomić, że świat kończy się jedynie na FB, Google i Microsoft, a firmy zatrudniające po kilka-kilkanaście osób (programistów) po prostu nie istnieją (w rzeczywistości jest ich oczywiście dużo więcej i w nich takie kwoty mają jednak znaczenie).
- Mniejsza popularność to dużo mniejsze wsparcie i ogólnie community. Jak wejdziesz np. na StackOverflow albo na to forum z problemem w PHP albo JS, to odpowiedź otrzymasz bardzo szybko, a jak przyjdziesz z technologią, o której dużo osób nawet nie słyszało, a problem nie będzie oczywisty, to już będziesz miał opóźnienia i problemy.
- ...jeszcze kilka argumentów dałoby się wymienić, ale chyba nie ma po co i nawet nie chce mi się (IMG:style_emoticons/default/wink.gif)

Cytat(irmidjusz @ 24.04.2014, 09:27:28 ) *
"W głównej mierze to od developera zależy czy popełni błędy" - tak, ale nie tylko. Od języka także zależy wiele. Właśnie m.in. dlatego nie programujemy w assemblerze, a C został zastąpiony C++, potem pojawiły się Java/C# itd. Języki ewoluują, modyfikuje się je i tworzy się nowe często po to, by uniknąć błędów i bolączek typowych dla programowania w jakimś wcześniejszym popularnym języku.


To prawda, że język może być wydajniejszy, ale w pierwszej kolejności i dużo istotniejszym czynnikiem propo wydajności, etc. jest właśnie programista. Jak ktoś robi dla tablicy z 1000 elementami 1000 insertów zamiast jednego, to sorry, ale najwydajniejszy język na świecie tu nie pomoże.

// EDIT

To prawda natomiast co do ścisłego typowania. Brakuje mi tego w PHP, przez co używam często rzutowania. Twórcy PHP mogliby wykombinować jakieś określanie typu ze zgodnością wstecz i byłoby git (IMG:style_emoticons/default/wink.gif)

Ten post edytował pyro 24.04.2014, 09:23:28
Go to the top of the page
+Quote Post
solificati
post
Post #4





Grupa: Zarejestrowani
Postów: 26
Pomógł: 10
Dołączył: 17.03.2012

Ostrzeżenie: (0%)
-----


Cytat(pyro @ 24.04.2014, 09:18:45 ) *
- dużo trudniej znaleźć osobę obeznaną w danej technologii, a kiedy akurat taka osoba jest potrzebna, to może się taka sytuacja okazać niezłym koszmarem. Sam szukałem swojego czasu front-endowca. Niby JS jest na większości stron w internecie, niby stosunkowo łatwe technologie, a znaleźć kogoś, kto umie więcej niż osadzić skrypty z lekkimi modyfikacjami, nie siedzącą miesiąc nad lightboxem własnej roboty i ogólnie potrafiącą więcej niż zakodowanie HTML/CSS z "średnim" oskryptowaniem mi się nie udało (z jednym wyjątkiem, ale nie było mnie stać na 8k NETTO (IMG:style_emoticons/default/tongue.gif) ). A niby powinno ich być na pęczki? "Programistów" jest sporo, ale Programistów co kot napłakał.

Działa to w dwie strony. Szukasz programisty ML to jak znajdziesz to jest dobry, jak szukasz Javy/C# to się kończy źle, bo są ich dziesiątki, ale konkretnego znaleźć trudno.

Pozatym Hack się kompiluje do bytecodu HHVM a Zephir do C (czemu C a nie od razu llvm?!)
Go to the top of the page
+Quote Post

Posty w temacie
- JacekJagiello   Zephir - co o nim myślicie?   22.04.2014, 19:36:55
- - buliq   Czemu Zephir skoro jest już Hack, który działa sz...   23.04.2014, 07:06:56
- - !*!   Cytat(JacekJagiello @ 22.04.2014, 20:36...   23.04.2014, 07:49:36
- - Posio   Ja osobiście używam Phalcona i bardzo sobie chwale...   23.04.2014, 19:42:35
- - ano   Jw. po co wchodzić w Zephira? Jakieś argumenty? Cz...   23.04.2014, 19:51:05
- - irmidjusz   Zephir powstał z tego samego powodu, co Hack. Umoż...   23.04.2014, 19:51:28
- - ano   CytatLiczę na to, że kiedyś będę mógł pracować z k...   23.04.2014, 20:00:25
- - irmidjusz   Nie zakładam, tylko wiem, bo w necie jest dosyć om...   24.04.2014, 08:27:28
|- - pyro   Cytat(irmidjusz @ 24.04.2014, 09:27:2...   24.04.2014, 09:18:45
|- - solificati   Cytat(pyro @ 24.04.2014, 09:18:45 ) -...   24.04.2014, 11:34:27
- - buliq   Dlatego też zamiast uczyć się Zephir, polecam zain...   24.04.2014, 08:29:46
- - viking   Ale chyba nie rozumiecie. Zephyr nie powstał po to...   24.04.2014, 09:38:37
- - JacekJagiello   Chyba trochę źle napisałem pierwszy post. Gdy czyt...   24.04.2014, 18:16:08
- - irmidjusz   Pyro, głupoty napisałeś. Nie kontynuujmy już tego....   24.04.2014, 23:00:22
|- - pyro   Cytat(irmidjusz @ 25.04.2014, 00:00:2...   25.04.2014, 07:27:56
|- - ano   Cytat(irmidjusz @ 25.04.2014, 00:00:2...   25.04.2014, 18:38:35
|- - irmidjusz   Cytat(ano @ 25.04.2014, 19:38:35 ) Dl...   25.04.2014, 23:17:04
- - peter13135   CytatTo prawda, że język może być wydajniejszy, al...   25.04.2014, 22:11:44
- - Tuminure   CytatCałkiem niedawno gdzieś też czytałem, że prog...   26.04.2014, 08:33:23
- - irmidjusz   CytatOdnoszę wrażenie, że "lepszy do czytania...   26.04.2014, 11:55:36
- - Posio   Z doświadczenia które ostatnio dość szybko nabywam...   26.04.2014, 12:38:09
- - peter13135   CytatNatomiast inaczej sprawa wygląda, gdy już mas...   26.04.2014, 12:50:56
- - JacekJagiello   CytatZ doświadczenia które ostatnio dość szybko na...   26.04.2014, 12:55:45
|- - solificati   Cytat(JacekJagiello @ 26.04.2014, 13:55...   26.04.2014, 18:19:02
- - irmidjusz   Cytat(Posio @ 26.04.2014, 13:38:09 ) ...   26.04.2014, 23:49:20
|- - solificati   Cytat(irmidjusz @ 27.04.2014, 00:49:2...   27.04.2014, 19:06:02
- - peter13135   CytatPisałem już kilka razy - programista PHP nauc...   27.04.2014, 12:53:03
- - irmidjusz   Cytat(peter13135 @ 27.04.2014, 13:53...   28.04.2014, 01:00:52
|- - solificati   Cytat(irmidjusz @ 28.04.2014, 02:00:5...   28.04.2014, 11:17:40
|- - irmidjusz   Cytat(solificati @ 28.04.2014, 12:17...   28.04.2014, 22:48:36
- - peter13135   CytatNo przecież właśnie o tym mówię! Użycie Z...   28.04.2014, 10:17:20
- - solificati   Zrobili to, bo mogli. Nikt nigdy nie podał liczb n...   29.04.2014, 10:12:10
- - irmidjusz   Ok, spoko, jak dla mnie to fantazjujesz, ale nie m...   29.04.2014, 19:02:17


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 30.12.2025 - 18:49