Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dlaczego laravel jest do rzyci #10

Closed
wants to merge 8 commits into from
Closed

Dlaczego laravel jest do rzyci #10

wants to merge 8 commits into from

Conversation

iwankgb
Copy link

@iwankgb iwankgb commented Jun 9, 2015

Zgodnie z prośbą, którą Leszek złożył na fejsie: oto i pull request do PHPersowego FAQ tłumaczący dlaczego Laravel to zło.

@adampiotrowski
Copy link

👍

</ol>
<p>
Dlaczego w takim razie ktoś w ogóle używa Laravela? Z bardzo prostej przyczyny - Otwell zapewnia projektowi fenomenalny wręcz marketing, próg wejścia jest w zasadzie zerowy (najwyżej opakujesz kod proceduralny w statyczne metody), a do tego czas nas czasem goni... Co zrobić? Jak żyć? Nie używać Laravela do żadnych projektów, które potem będą musiały być przez dłuższy czas utrzymywane. Twoim celem jest zwiększenie sprzedaży piwa marki X w wakacje, wśród studentów? Zastanów się nad tym, czy nie byłoby warto użyć <a href="http://silex.sensiolabs.org/">Silexa</a> albo <a href="http://www.slimframework.com/">Slima</a>, a jeśli nie chcesz bądź po prostu musisz - to piszże w Laravelu.<br>
Nigdy, przenigdy, nie używaj Laravela do projektów, które będą miały być utrzymywane przez wiele lat. Słaba architektura Cię wykończy zanim zdąży Cię wykończyć brak dobrych testów jednostkowych.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nie jestem przekonany do takich stwierdzeń. To mimo wszystko jest subiektywna opinia.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oczywiście, moja własna. Oparta na doświadczeniu w pracy (krótkiej, bo krótkiej) z Laravelem.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No właśnie, tylko że FAQ PHPers to raczej nie są doświadczenia i wnioski jednej osoby a raczej całego community. Poza tym ja się z tym stwierdzeniem nie zgadzam, framework to detal a detale nie mogą wyłożyć całego projektu.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Zapraszam serdecznie do przedstawienia wniosków innych członków społeczności. Na tyle konkretnych, że da się je ubrać w formę PR.
Z resztą Twojej wypowiedzi się nie zgadzam.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

wydaje mi się jednak że te detale jak najbardziej mogą być odpowiedzialne za wyłożenie aplikacji.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To czy mogą czy nie mogą jest dyskusja na osobny wątek.
Jako społeczność nie powinniśmy przyjmować żadnego stanowiska a zamiast tego obiektywnie pokazać wady (których jest więcej) i zalety (których praktycznie nie ma).
Załóżmy, że ten PR zostanie zmergowany w formie bez personalnych wniosków. Dzięki temu damy możliwość zrobienia PR'a z zaletami korzystania z tego "frameworka", dajmy ludziom wybór na podstawie rzetelnych informacji zamiast narzucać im własne zdanie.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@norzechowicz - co jest osobistym wnioskiem wg Twoich kryteriów? Jeśli to co piszę opieram o własne doświadczenie, to w zasadzie wszystkie te wnioski są mniej lub bardziej osobiste.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Słaba architektura Cię wykończy zanim zdąży Cię wykończyć brak dobrych testów jednostkowych.

To jest osobisty wniosek w dodatku niesłuszny.

Ja, piszący te słowa, pracowałem przez dwa miesiące z Laravelem i moja do niego niechęć nie opiera się na zawiści wobec Taylora Otwella.
</p>
<p>
Laravel używa biblioteki o nazwie Eloquent, która ma być ORM, a tak naprawdę jest to Active Record. Doświadczenia z Eloquentem mam następujące:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nie jest, a implementuje

@llubosz
Copy link
Contributor

llubosz commented Jun 9, 2015

Hm, chciałem się odnieść do szczegółów, ale chyba to bez sensu. Wydaje mi się, że wpis jest bardzo subiektywny, co w FAQ nie powinno się znaleźć. Laravel nie jest szczytem osiągnięć architektury oprogramowania, ale w ten sam sposób powinniśmy opisać każdy przypadek użycia PHP analizując jego wady i zalety. Imho - bez sensu.

@iwankgb
Copy link
Author

iwankgb commented Jun 10, 2015

PR został w dużej mierze przebudowany.

<li>Alternatywą dla Dependency Injection są <a href="http://laravel.com/docs/5.1/facades">Fasady</a>. Ich nadużywanie prowadzi do sytuacji, w której trudno jest określić zależności danej klasy. Planowane jest wprowadzenie funkcjonalności pozwalającej na <a href="http://laravel.com/docs/master/blade#service-injection">dostęp do serwisów z poziomu template'ów.</a></li>
<li>Ze względu na Fasady w <a href="https://github.com/laravel/framework/blob/v5.0.32/src/Illuminate/Support/Facades/Facade.php#L42">produkcyjnym kodzie</a> znajdują się metody służące wyłącznie testowaniu.</li>
<li>Zapisywanie obiektu do bazy realizowane jest za pomocą <a href="https://github.com/laravel/framework/blob/v5.0.32/src/Illuminate/Database/Eloquent/Model.php#L1185">statycznej metody save()</a>, której mockowanie w testach jednostkowych jest mocno utrudnione.</li>
<li>Przykładem nadużywanie statycznego dostępu jest klasa odpowiedzialna za <a href="https://github.com/laravel/framework/blob/v5.0.32/src/Illuminate/Support/Str.php">operacje na ciągach znaków</a>.</li>
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@efik - poprawione. Ja mam tendencję do pisania w taki sposób jak oryginał był napisany ;)

@iwankgb
Copy link
Author

iwankgb commented Jun 11, 2015

W trakcie rozmowy z @Flashek na #mikolow powstała koncepcja omówienia tego (i innych podobnych wpisów) na PHPConie. Jak mają wyglądać, jak ma wyglądać proces decyzyjny dotyczący odrzucania bądź akceptowania takich zmian itp, itd.

</ul> <!-- cd-faq-group -->
</ul>
<ul id="frameworki" class="cd-faq-group">
<li class="cd-faq-title"><h2>Frameworki</h2></li>

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To nie powinno być "Wady i zalety wybranych Frameworków" ?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nie koniecznie - może o innym fw będziemy pisać same zalety :]

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nie ma frameworków, które mają same zalety :D

@norberttech
Copy link

Myślę, że warto byłoby też dodać przy każdym punkcie, których wersji Laravela dotyczy.

@iwankgb
Copy link
Author

iwankgb commented Jun 14, 2015

@norzechowicz - jest wersja.

@iwankgb iwankgb closed this Mar 24, 2020
@nowak-ninja
Copy link

Najwyższy czas :D

@iwankgb
Copy link
Author

iwankgb commented Mar 26, 2020

Jo, już zerowe jest moje zainteresowanie tymi problemami :D aż się zdziwiłem, że takie coś jeszcze w ogóle wisiało. Jak to się człowiek uspokoił I nabrał dystansu przez 5 lat :D

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants