Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

6 Stron V   1 2 3 > »   
Reply to this topicStart new topic
> Dlaczego programiści PHP to nie programiści?, Albo: Dlaczego programiści PHP nie istnieją?
varez
post
Post #1





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


Chciałem już wcześniej rozpocząć tu taki wątek, ale jakoś tak wyszło, dopiero ten wykop (o tym poźniej, gdyż wykop tylko zbliżony do mojego tematu) spowodował, że zdecydowałem się napisać.

Otóż w naprawdę wielu miejscach (na forach/blogach, szczególnie gdy ktoś ma problem ze skryptem, bądź na pytanie odpowiada, że jest programistą php/programuje w php, a także na uczelni, prowadzący zajęcia z c++ pytał kto cokolwiek programował (nie zgłosił się nikt oprócz mnie ale o tym także później), ja jako że polizałem w życiu tyle języków programowania no to niechętnie (glupio samemu) podniosłem ręke i powiedziałem, że w php robię, na co prowadzący zareagował śmiechem i powiedział, że php to nie programowanie (ale on akurat robi się za mózga, a jest dosyć tępy^^)) spotkałem się z tym, że takiego człowieka, "programistę php" się wyśmiewało, często coś wspominając o "prawdziwych językach programowania" itd.. W sumie chyba nawet na tym forum ktoś coś takiego kiedyś napisał (ale mogę się mylić)..

No ale... Zawsze jest zarzut, nigdy nie ma wytłumaczenia. Nie próbowałem przejść na "wyższe" języki programowania, bo przy php zatrzymała mnie praca, może wtedy by mnie oświeciło?

A więc podsumowanie: o co chodzi?

(a teraz to na później - faktem jest też, że ludzie nie potrafią programować w ogóle, za to lubią się chwalić, i wysyłać swoje durne CV, którym się ośmieszają prawie jak panny na naszej-klasie.. Myślicie, żeby założyc osobny temat dotyczący braku umiejętności programowania a wpychaniu się na miejsca pracy itd?)
Go to the top of the page
+Quote Post
melkorm
post
Post #2





Grupa: Zarejestrowani
Postów: 1 366
Pomógł: 261
Dołączył: 23.09.2008
Skąd: Bydgoszcz

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


Był już podobny temat na forum, ale już nie pamiętam (IMG:style_emoticons/default/tongue.gif)

Co do tematu, z własnego doświadczenia wiem iż na uczelniach ciężko się spodziewać programowania, dobrego programowania. Sam studiując nie dowiedziałem się nic poza archaiczną teorią z przed paru lat ... a wykładowcy przychodzili z podręcznikami do języka który mieli nauczać - co dla mnie było kpiną nie tyle z nauczajcego co ze mnie - bo po co mi taki przedmiot? Sam mogę sobie to przeczytać .... i z reguły nie chodziłem na takie przedmioty - fakt moja uczelnia to zaścianek informatyki ale cóz... .

Następnie gdy zaczynam, bez doświadczenia, pisać kod - ciężko jest znaleźć kogość doświadczonego który powie że tak się robi albo że to rozwiązanie jest złe - i tutaj najważniejsza pozycja DLACZEGO ZŁE. W wielu książkach jak i poradnikach są błędy i rozwiązania które można o kant **** rozbić ... dobrze jednak że są fora takie jak te (IMG:style_emoticons/default/winksmiley.jpg)

PHP samo w sobie nie jest złe, ale bardzo łatwo pisać w nim strasznie zły kod, wręćż okropny ... i tak większość programistów PHP pisze takie bzdury jak edycja pliku CSS z poziomu PHP podmieniając obrazki (wkleję kod później).

Reasumując osoba która wysmiała by mnie że piszę w PHP, nie widząc nawet kodu, jest ignorantem i nawet nie mialbym ochoty z nią rozmawiać - rozumiem konstruktywną krytykę - którą zawsze przyjmuję i się nią cieszę bo pozwala mi się to rozwijać i patrzeć na rzeczy z wielu stron - ale płytkie teksty typu "Dupa z Ciebie a nie proegramista bo programujesz w PHP!" itp można sobie darować (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
erix
post
Post #3





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A ja podejrzewam, że sądzi ten prowadzący tak sądzi dlatego, gdyż w PHP właściwie nie trzeba pilnować typów zmiennych, zarządzania pamięcią, itp; każda zmienna, to odpowiednik Variant z Object Pascal. Choć co do zarządzania pamięcią, to równie dobrze mógłby wyśmiać Javowców (chyba że się mylę, ale o ile pamiętam, to tam był Garbage Collector, nie? (IMG:style_emoticons/default/winksmiley.jpg) ).

Sęk w tym, że po większym zagłębieniu w zagadnienia dyskretnego typowania oraz działania operatora === sprawa już nie jest tak oczywista.

Dla mnie programistą jest osoba, która dostając specyfikację jest w stanie opracować algorytm, który - wykorzystując dostępne środki - programuje komputer tak, aby osiągnąć pożądany wynik przy rozsądnym zużyciu zasobów. I nie ma tu znaczenia język, jakiego się używa, bo równie dobrze można napisać w asemblerze jakieś badziewie, które przy wypisywaniu hello world dosłownie zabije procesor, a można w bashu napisać demona http (da się, znam jednego szaleńca, który tego dokonał (IMG:style_emoticons/default/biggrin.gif) ).

Trzeba było go zapytać, co sądzi o umiejętnościach programisty piszącego w danym języku znając go od podszewki, a co sądzi o tzw. frejmłorkowcu, który idąc rąbać drewno zabiera z sobą całą szopę z narzędziami. (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
varez
post
Post #4





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


Mnie w php urzekło najbardziej ten brak potrzeby pilnowania zmiennej. Mogę sobie mieć tablicę, zrobić z tego stringa, integera, floata..

No wlasnie najbardziej nie wiem dlaczego konkretnie sie ludzie przyczepiaja, liczę, że ktoś z was wie, albo ew. ktos wygoogluje temat i zwyzywa całe forum za to, że robimy w php (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
scanner
post
Post #5





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Sami sobie kręcicie taki los.
Skrypty za 10 zł na allegro, szumne CMSy i Frameworki pisane w godzinę pod kołdrą - przez to wszystko PHP jest traktowane tak jak jest.
O i właśnie...
Nie mówicie "napisałem program w PHP". Pisze się skrypty, skrypciki i classy.
Go to the top of the page
+Quote Post
LBO
post
Post #6





Grupa: Zarejestrowani
Postów: 1 415
Pomógł: 117
Dołączył: 7.09.2005
Skąd: Warszawa

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


IMHO Wynika to z - ciągnącego się od lat za PHP - przeświadczenia o niskim progu wejścia w ten język. Bo skoro coś jest za proste to nie może decydować o przynależności do elity jaką są programiści (sic!) (IMG:style_emoticons/default/smile.gif)

Wiele krytyk, zgryźliwości i niedopowiedzeń padło z ust programistów innych, lepszych języków kiedy PHP było jeszcze młode. Te uprzedzenia zacementowały się z czasem wewnątrz całych społeczności i w rezultacie trudno nawet zacząć argumentować za tym, że się mylą; że dużo się pozmieniało. Nie da się bez wywołania flame war.

Nadzieja w tym, że coraz więcej programistów Javy, C# itp wywodzi się z PHP. I może oni coś zmienią.



A może nie?
(IMG:http://blogs.msdn.com/blogfiles/steverowe/WindowsLiveWriter/ProgrammingLanguageHierarchy_1489F/programmer_hierarchy[7].gif)


Go to the top of the page
+Quote Post
darko
post
Post #7





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Dlaczego Perl jest nad Pythonem ? Phi
// edit
a Java pod Pascalem !?

LBO skąd wytrzasnąłeś ten schemat?

// edit2
aa: blogs.msdn.com i wszystko jasne (IMG:style_emoticons/default/winksmiley.jpg)

Ten post edytował darko 7.01.2010, 20:58:27
Go to the top of the page
+Quote Post
mike
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(LBO @ 7.01.2010, 20:43:49 ) *
Nadzieja w tym, że coraz więcej programistów Javy, C# itp wywodzi się z PHP. I może oni coś zmienią.
PHP ssie. Żałuję, że moja przygoda z nim trwała rok za długo.
Go to the top of the page
+Quote Post
Max Damage
post
Post #9





Grupa: Zarejestrowani
Postów: 246
Pomógł: 19
Dołączył: 14.06.2007

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


A ja uważam, że to zastosowanie i w pewnym sensie sposób skomplikowania języka decydują o tym, że mówi się tak a nie inaczej o programistach php.

Osoba która uczyła się najpierw języka c++, a potem przeszła na php widzi to tak:
- brak definiowania typów zmiennych, z początku wydaje się to dużym minusem.
- a co za tym idzie, nie potrzeba szablonów.
- brak wskaźników, struktur.
- brak pełnej obiektowości. Nie ma różnych typów konstruktorów , ich przeciążeń i przeciążeń metod, list inicjalizacyjnych, kompozycji, nikt nie używa nawet tablicy obiektów. Z początku denerwuje nawet pisanie public, zaczerpnięte chyba z javy, przy każdej metodzie klasy. Wszędzie co najwyżej dziedziczenie, żadnych innych relacji między klasami. Do tego jeszcze różne biblioteki i frameworki dzięki którym właściwie nie pozostaje chyba nic innego jak tylko wklepać te wszystkie klasy z ich metodami. Tymczasem w c++ uczysz się jakiś zwariowanych bibliotek i innych rzeczy. Kiedyś trafiłem na blog gościa piszącego programy dla systemu symbian - to była masakra.
Pozostaje także kwestia skomplikowania języka. PHP wiele osób jest się w stanie nauczyć na jakimś tam poziomie w miarę szybko i sklecić z tej wiedzy jakąś stronkę, natomiast w językach kompilowanych trzeba się trochę napisać, aby zobaczyć efekt swojego kodu, a opanowanie składni c++ i STLa też zajmuje sporo czasu. No i przykładowo w c++ nie da się aż tak byle jak napisać kodu jak w php, co też jest dużym plusem.

Pierwszym językiem z jakim miałem na krótko styczność było php (wywaliłem tu wtedy ze 150 postów), a kolejne dwa lata to c i c++. Chyba wszystko co powyżej to spostrzeżenia jakie do tej pory zauważyłem wracając z powrotem do php kilka miesięcy temu.

Krótko mówiąc to co dla jednych jest minusem, dla drugich może być plusem. Dla programistów php brak tego wszystkiego co wymienione powyżej to na pewno plusy. Chyba tak po prostu wynika z definicji tego języka i jego zastosowania.

Go to the top of the page
+Quote Post
Cysiaczek
post
Post #10





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Cytat
- brak pełnej obiektowości. Nie ma różnych typów konstruktorów , ich przeciążeń i przeciążeń metod, list inicjalizacyjnych, kompozycji, nikt nie używa nawet tablicy obiektów. Z początku denerwuje nawet pisanie public, zaczerpnięte chyba z javy, przy każdej metodzie klasy. Wszędzie co najwyżej dziedziczenie, żadnych innych relacji między klasami.


Ty opisujesz cechy języka, czy umiejętności? Serio - nie kumam połowy rzeczy o których piszesz.
Go to the top of the page
+Quote Post
Max Damage
post
Post #11





Grupa: Zarejestrowani
Postów: 246
Pomógł: 19
Dołączył: 14.06.2007

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


A uważasz, że ludzie którzy mówią "php to nie programowanie" porównują umiejętności? Nie da się tego tak naprawdę porównać, bo to dwa inne języki służące do innych celów. Po prostu jak gość od c++ usiądzie do php to popatrzy i powie: "łatwy język, dużo dostępnych funkcji, można pisać byle jak a wyjdzie mi strona internetowa". I na tym się kończy, ty o zaprogramowaniu aplikacji okienkowej tego nie powiesz. Zawsze też możesz usłyszeć, że język skryptowy to sam może sobie napisać, i że ty piszesz tylko strony internetowe. Mniej więcej o to mi chodzi : )
Go to the top of the page
+Quote Post
piotrooo89
post
Post #12


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




no ja się mogę z wami podzielić moimi odczuciami... wczoraj siedziałem i pisałem projekty na uczelnie w C, po czym miałem straszny problem z stworzeniem pustej tablicy (tak może być to problemem, coś co w PHP nie istnieje) i dopiero wkurzyłem sie i zacząłem czytać symfonie i wertować googla i znalazłem funkcję malloc, czyli coś co dla kogoś kto pisze w PHP nie jest problemem staje się problemem dla kogoś kto chce sklecić parę linijek kodu w jakimś innym języku (tzw.wyższym).
Go to the top of the page
+Quote Post
rzymek01
post
Post #13





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

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


Cytat(piotrooo89 @ 7.01.2010, 22:19:50 ) *
czyli coś co dla kogoś kto pisze w PHP nie jest problemem staje się problemem dla kogoś kto chce sklecić parę linijek kodu w jakimś innym języku (tzw.wyższym).

może nie zrozumiałem, ale piszesz że ktoś kto pisze w PHP ma trudność z napisaniem czegos w C? wtedy to powinno być "(tzw. niższym)", czy tak?
Go to the top of the page
+Quote Post
Zyx
post
Post #14





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

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


varez -> w życiu się nie spotkałem z "dyskryminacją" dlatego, że moim "głównym" językiem programowania jest PHP, ani na uczelni*, ani poza nią. Co prawda jestem też w zupełnie innej sytuacji, bo nie zaczynałem od PHP, a nieźle sobie radzę też z paroma innymi językami. Klucz leży w tym, by pamiętać, że język programowania to narzędzie, a dobrego informatyka poznaje się po tym, by umiał wykorzystywać narzędzia. Jak ktoś jest za przeproszeniem dupa, to mu nawet C++ ani assembler nie pomoże, a komputerowy magik ze zwykłego Basica będzie potrafił wyciskać cuda.

Max Damage -> przeciążanie operatorów to zwykły słodzik składniowy, który nie wnosi absolutnie nic do idei programowania obiektowego. W dodatku w niepowołanych rękach może zmienić program w koszmar (IMG:style_emoticons/default/smile.gif) . "Pełna obiektowość" to zupełnie co innego, niż twierdzisz i na pewno C++ nie jest przedstawicielem tego typu języków.
Go to the top of the page
+Quote Post
varez
post
Post #15





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


@rzymek01
podejrzewam ze to nie do konca tak, choc sporo w tym prawdy..

Cytat
scanner:
Sami sobie kręcicie taki los.
Skrypty za 10 zł na allegro, szumne CMSy i Frameworki pisane w godzinę pod kołdrą - przez to wszystko PHP jest traktowane tak jak jest.

Podejrzewam, ze masz racje, no ale łatwosc z jaka mozna nauczyc sie php (no i jego popularnosc) powoduje ze kazdy sie na to rzuca, i chce sobie zarobic..
Ale WSZYSTKICH nas nie musisz oskarżać (IMG:style_emoticons/default/winksmiley.jpg)

@Zyx
no to gratuluje, bo ja sie spotykam na tyle czesto ze zaczelo mnie to nurtowac..

Ciekawe czy jakbym powiedział prowadzącemu ze w BASICU robię to by było lepiej?
Go to the top of the page
+Quote Post
thek
post
Post #16





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Moje losy z programowaniem były z leksza... pokręcone. Zaczynałem jak wielu od Turbo Pascala, potem "cofnąłem się" do AC Logo ( żółwik rulez (IMG:style_emoticons/default/biggrin.gif) ) by potem znów do TP i z każdym rokiem studiów coraz bardziej poszerzałem swoją wiedzę o programowaniu począwszy od C, przez C++, Javę by jako ostatnie poznawać dopiero skrypty w BASHu oraz PHP i otoczkę ( jak JS ). Szczerze to najwygodniej pracuje się mi z C++ i może dlatego jestem nieco "wrażliwy" na głupie błędy oraz nie mogłem nieco przyzwyczaić na początku do "beztypowości" zmiennych (IMG:style_emoticons/default/winksmiley.jpg)
Prawdą jest, że skrypty php pisze sie latwo i przyjemnie, tyle że ich jakość pozostawia wiele do życzenia, o czym niejednokrotnie się przekonałem na własnej skórze, poprawiając czyjś kod. Te sprzedawane na allegro za psie pieniądze są zazwyczaj tak dziurawe, że należało by siąść i płakać. Tylko nie wiadomo czy ze śmiechu widząc luki, czy może smutku nad głupotą i bezmyślnością autora.

Ogólnie to debata nad wyższością jakiegokolwiek języka sprowadza się do wyższości jednych świąt nad drugimi. Każdy nadaje się lepiej do konkretnych zastosowań. Wielu nawet nie zna możliwości innych skupiając tylko na wąskim przedziale. Sam pamiętam jakie gałki na mnie wywalił ponoć dobry zagraniczny webmaster gdy mu poleciłem by w skrypcie CGI zaprzągł do działania C++. Uważał, że nie można tego zrobić. Dopiero gdy mu wytłumaczyłem, że CGI nie ograniczają się do konkretnych kilku języków (wymienił mi kilka jakie jego zdaniem można tylko w CGI stosować) i sam nieco doczytał to przyznał mi, że faktycznie mam rację.

Nauczyciele akademiccy zaś to jest moim zdaniem w wielu przypadkach nieporozumienie. Sam "przechodziłem" jednego, który może i miał nieco wiedzy książkowej, ale walił byki nawet w notacji UML, że o czymś w praktyce działającym nie wspomnę. Tylko kilku magistrów może coś potrafiło i jeden ostro mający zryte na punkcie wieloprocesorowości, a z resztą to tak różnie było. Powiem tylko, że zdarzało im się byki w egzaminach robić. Mieli wiedzę, ale zazwyczaj ciut nieaktualną lub bardziej teoretyczną. Coś nowszego gdy wprowadzali to razem ze studentami się uczyli (IMG:style_emoticons/default/winksmiley.jpg) Dlatego wyśmiewanie innych języków przez nauczycieli to moim zdaniem nieporozumienie. Niejeden uczeń by ich położył na łopatki w bezpośrednim starciu programistycznym. Mają oni bowiem skostniałe umysły i trzymają się raczej określonych pomysłów, a bywa, że nawet algorytmika ich przerasta. To co uznawali za prawdę przez lata, obecnie nie musi być prawdziwe, choć będą nadal szli w zaparte, że tak jest i "koniec, kropka". Wcale nie poszerzają wiedzy nieraz widząc tylko "swoją działkę". Miałem pewnego profesora z Ukrainy, który był dobry w tym co robi i miał on lepsze zdanie o doktoryzujących się magistrach niż doktorach, choć też nie wszystkich. Jednego magistra nie dopuszczał do obrony pracy doktorskiej ponieważ wiedział, że to idiota, który mając tytuł będzie katował studentów, bo już będąc mgr inż. prowadząc zajęcia siał terror wymagając rzeczy tak dokładnych jak różnica między każdym rodzajem pamięci RAM i ROM na poziomie pojedynczych komórek pamięci, dokładnych algorytmów przesyłu danych dla każdego typu portu (do dziś mi się w koszmarach pewnie by śniły znaczenia każdej linii w porcie równoległym wraz z kolejnością i zawartością ramek przesyłanych przy zgłoszeniach obsługi) czy koszmar każdego studenta... Kolokwium z BIOSu. Co niby trudnego w nim? Ano to, że wymagana znajomość każdej funkcji wszystkich firm produkujących, od najstarszych do dopiero co ogłaszanych w specyfikacjach i nawet nie będących jeszcze zaimplementowanych w układach. A każdy kolejny termin zaliczenia to coraz więcej tych "egzotycznych" i niemal brak tych standardowych. Pewnie większość nawet do tej pory nie wie co to SpeedStep Technology, choć korzysta z tego i obiło się im o uszy jak działa. A to tylko jedna z wielu jakimi mógł nas zaskoczyć... I robił to.

Ale wracając znów do języków to moim zdaniem php trochę mnie "zepsuł" bo przestałem tak bacznie zwracać na wiele rzeczy uwagę. Jest takim pośrednim od naprawdę banalnych do trudniejszych i w tej roli się sprawuje dobrze, gdy ktoś chce dalej migrować i kształcić się. Ktoś, kto zna te bardziej skomplikowane wie, że PHP zmierza w ich stronę, zachowując pewną prostotę obsługi. Oni po przejściu z nich na PHP czują sie jak ryby w wodzie, bo mogą ignorować pewne problemy, które napotkali by w "swoich" językach. Specyfikacja bowiem na to pozwala. Wystarczy spojrzeć na rozwój języka by zauważyć, że PHP dąży do prostoty pisania skryptów, ale jednocześnie upodabnia coraz bardziej do C++. Starsze wersje (4 i niżej) były podobne do C, co było widać nawet w nazewnictwie. Nowsze dążą do standardów wprowadzanych przez C++, a mających na celu "zobiektyzowanie" pisania.

Ogólnie ten temat to jedna wielka polemika, gdyż to jak włożenie kija w mrowisko. PHP, mimo iż jest rozbudowany, to nauczyć można się go w miarę szybko do sensownego poziomu. Inne języki już tak przyjazne nie zawsze są. Ten kto walczył ze wskaźnikami i referencjami w C ten PHP traktuję jako taką uproszczoną jego wersje i bawi się dobrze. W drugą stronę się już tak nie da i wymagana jest poważniejsza wiedza, bo kompilator będzie tak sypał błędami, że się człowiekowi odechce (IMG:style_emoticons/default/winksmiley.jpg)

Prawdę poruszono także jeszcze jedną. Co z tego, że ktoś trzepie kod na potęgę, skoro z pomysłem na algorytm kuleje? Ile już przez to forum się przewinęło osób, które nie potrafiły nawet przemyśleć dobrze JAK ma się skrypt zachowywać w różnych sytuacjach? Prosty schemat zapisany w krokach był dla nich nie do przejścia i nie rozumieli go. I takie osoby potem nazywają siebie "programistami php". Jako programista spoza php ( bazowo ) patrząc nie zawsze zwracam uwagę, że coś co napisałem można zrealizować jedną czy dwoma gotowymi funkcjami, bo zwyczajnie nie znam na pamięć wszystkich bibliotek i ich funkcji. Ale mając i znając te podstawowe jestem w stanie napisać algorytm na nich bazujący i działający prawidłowo. To właśnie jest wyznacznik programisty. Jeśli nie możesz czegoś zrobić w jeden sposób to znajdź obejście. To zaś wymaga już myślenia, które w chwili obecnej wielu pseudoprogramistów skróciło do "napiszę posta na forum tematycznym i rzucą mi algorytm lub gotowca". Dla mnie forum to ostateczność, gdy już przewertowałem manuale, dokumentację, net. Zdarzają się mi głupie błędy, ale bywalcy tu już zauważyli pewnie, że moje tematy (można na palcach jednej ręki policzyć), kończą się zagwozdką dla próbujących odpowiedzieć. I tak mają wszyscy mocno zaawansowani w programowaniu. Dla nich większość tematów jest trywialna i "RTFM!", "Google it!" w niemal każdym by musiało być, ale przecież nie od tego jest forum. Więc rzucają konkretnymi frazami do szukania by pytający się choć odrobinę wysilił. Ale dla wielu "programistów php" jest za trudne zrozumienie o czym pisze się na php.net i w tym jest sęk.

UWAGA: Jednym zdaniem: Jest wielu "programistów" i niewielu programistów (IMG:style_emoticons/default/sad.gif)

Ten post edytował thek 7.01.2010, 23:30:55
Go to the top of the page
+Quote Post
Crozin
post
Post #17





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


@thek: ... - ale przeczytałem...

Dlaczego nie ma Programistów PHP - a raczej dlaczego jest ich tak mało?
1) Bo znakomita większość użytkowników tej technologii to "początkujący" (tuteż osoby nie chcące wyjść poza poziom początkującego bo nie potrzebują nic więcej)
2) Bo większość realizowanych w nim projektów to operacje CRUD w większości nie wymagające żadnego myślenia - jedynie sprawdzenia poprawności formatu wprowadzonych danych i wrzucenie do bazy

W PHP można programować przez duże P, ale z reguły się tego nie robi. (IMG:style_emoticons/default/winksmiley.jpg)

Cytat
Nadzieja w tym, że coraz więcej programistów Javy, C# itp wywodzi się z PHP. I może oni coś zmienią.
Ale co miałbym (mielibyśmy) zmienić? (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
mrok
post
Post #18





Grupa: Zarejestrowani
Postów: 258
Pomógł: 17
Dołączył: 22.05.2007

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


Mi ostatnio jeden z wyjadaczy javowych wyjaśnił dlaczego php jest w takim nieposzanowaniu.
Dyskutujemy nad narzędziem do kolejnego projektu i ja obstawiam za php.
Cytat
Wyjadacz: Php to zły pomysł.
Ja: Dlaczego?
Wyjadacz: Bo za php-a mało płacą

Wniosek - gdyby programistą php płacili więcej niż javy to nagle brak typów, przeciążania metod okazałyby się wielkim plusem (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
thek
post
Post #19





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Zgadzamy się Crozin widzę (IMG:style_emoticons/default/smile.gif) Moje "jednym zdaniem" mówi wystarczająco wiele, by uważać, że mamy podobny tok myślenia.

I zgodzę, że można w PHP Programować, tyle, że trzeba mieć na to pomysł. Sam pamiętam jak kombinowałem by utworzyć skrypt mający mi wygenerować pliki 256x256 dla tworzonej customowej mapy google. O ile jedna to było fajne i proste bo posiadałem obszar mapy w kawałkach 512x512 już ułożonych w szachownicę, to miałem też inną. Tam pliki były 256x256, ale tworzyły strukturalnie romb. Czyli coś w stylu:

[..][..][o][..][..]
.][..][o][o][..][.
[..][o][o][o][..]
.][..][o][o][..][.
[..][..][o][..][..]

gdzie [o] to były posiadane pliki o określonym nazewnictwie w stylu (1, 2), gdzie pierwsza oznacza "wiersz" od lewego rogu rosnący ku dolnemu, zaś druga to "kolumny" od lewego idąc ku górnemu zaś reszta nie istniała. Niech teraz ktoś sobie siądzie i matematycznie rozbije przerobienie tego do obrazów w formacie google maps, czyli zwykłej szachownicy takiej, gdzie ( i ) to połówki odpowiednich obrazków (IMG:style_emoticons/default/smile.gif)
[..][..][()][..][..]
[..][.(][)(][).][..]
[..][()][()][()][..]
[..][.(][)(][).][..]
[..][..][()][..][..]

Może niech młodzi się wykażą jak by to zrobili (IMG:style_emoticons/default/tongue.gif) Jak widać tylko co drugi wiersz dal się ładnie "złożyć", bo z gotowych obrazków. Reszta to było ostre używanie GD (IMG:style_emoticons/default/smile.gif)

Ten post edytował thek 8.01.2010, 00:33:43
Go to the top of the page
+Quote Post
darko
post
Post #20





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Aleeż dyskusyja (IMG:style_emoticons/default/winksmiley.jpg) thek, ta opcja jednym zdaniem, naprawdę się przydaje (IMG:style_emoticons/default/winksmiley.jpg) A czy nie jest tak, że w naturze człowieka leży uproszczenie, schemat myślowy prosty język == niewielkie umiejętności programisty? Jeśli ktoś posiada niewielką wiedzę, nazywaną ogólnym pojęciem o czymś, to wygłasza sądy typu: a co ty tam umiesz, co ty wiesz o programowaniu? W większości wynika to z ignorancji, która nakazuje sądzić, że coś, o czym przyjęło się mówić, że jest łatwe do opanowania, w miarę szybko przyswajalne i jednocześnie posiada niewielkie możliwości, jest jednocześnie banalne, niewarte uwagi, a więc niegodne nazwania warsztatem. To zwykła obłuda. Każdy język jest narzędziem i do poprawnego użytkowania wymaga jakiegoś przygotowania ze strony jego użytkownika, nie mam tu na myśli tylko języków programowania, zwykła ludzka mowa jest także narzędziem i są ludzie, którzy po prostu nie potrafią sformułować swoich myśli, a tym bardziej przekuć ich na jakikolwiek język, zwyczajnie poprawie się wysłowić (czy to w mowie czy w piśmie). Z drugiej strony są doskonale przygotowani (wybitni?) mówcy, o których słyszano już w starożytności (pewnie i wcześniej, ale dopiero z tamtych czasów dotarły do nas jakiekolwiek przekazy).
Go to the top of the page
+Quote Post
f1xer
post
Post #21





Grupa: Zarejestrowani
Postów: 403
Pomógł: 68
Dołączył: 20.03.2008

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


darko ma sporo racji, php zwykle jest postrzegany jako banał, coś jak turbo pascal, ale ludzie zapominają że w programowaniu istnieje taka prosta zasada, że narzędzie dobiera się do problemu, nie warto pisać w javie strony która ma mieć stałą treść proste textarea do jej zmiany i księgę gości. Z drugiej strony trudno odmówić osobą piszącym w PHP miana programisty, jeżeli ktoś naprawdę wie co to jest programowanie to prawie na pewno nie zna tylko 1 języka, często używa PHP ze względu na jego prostotę (np brak przytoczonej już kontroli typów zmiennych) ale zarówno w PHP jak i w Assemblerze można pisać dobrze lub źle.
Go to the top of the page
+Quote Post
piotrooo89
post
Post #22


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




moim zdaniem jak już prawie każdy wspomniał traktowanie PHP po macoszemu wzięło się być może stąd że powstało kupę pseudo programmerów którzy podchodzą tak o mój wujek ma firme a to zrobię mu stronę, następnie wujek powie cioci i ciocia też chce stronę, wszystko ok jeśli ktoś kto pisze cokolwiek wkłada w to zapał tzn szuka, wertuje, udoskonala. co innego osoba mówiąca coś w stylu: 'ej weź poddaj mi pomysł na stronę taka a taką'...
Go to the top of the page
+Quote Post
Spawnm
post
Post #23





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Zamknąć przedszkole na rok a sytuacja zacznie się poprawiać (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
varez
post
Post #24





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


Cytat
thek:
Jeśli nie możesz czegoś zrobić w jeden sposób to znajdź obejście.

"Obejście" .. nie lubię tego słowa, "alternatywne rozwiązanie" byłoby lepsze (IMG:style_emoticons/default/smile.gif)
Połowa stron nad którymi siedzę jest czyjaś, i nie spotkałem osoby, która by swój kod W MIARĘ dobrze napisała, i oni stosowali "obejścia".. Obejście = if w ifie w ifie ifie (piszac w skrocie).

Cytat
Zamknąć przedszkole na rok a sytuacja zacznie się poprawiać

Hehe, ale forum.php.pl to nie jedyne miejsce (z tych często uczęszczanych) gdzie młodzi "programiści" piszą z problemami (IMG:style_emoticons/default/smile.gif)

Ten post edytował varez 8.01.2010, 09:35:21
Go to the top of the page
+Quote Post
thek
post
Post #25





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




W każdym języku można pisać dobrze lub źle. Kwestia własnej wiedzy i umiejętności. Ja rzuciłem przed chwilką problem natury algorytmicznej, który, jako stricte matematyczny, dla wielu młodszych byłby nie do przejścia. Wymaga bowiem analizy problemu. I tak już mają o wiele łatwiej. Ja miałem kilka tysięcy plików jpg w archiwum, które nie dawało się otworzyć niczym (własny algorytm) i nie miałem pojęcia o strukturze mapy. Dopiero po rozpakowaniu skryptem bazującym na znajomości struktury pliku (pewna grupa rozgryzła i umieściła skrypt w necie) a także "sklejeniu" kilkunastu kawałków zauważyłem układ oraz powiązaną z nim konwencję nazewnictwa plików, które są raczej niespotykane. Zresztą chyba widzicie na "rysunku" (IMG:style_emoticons/default/winksmiley.jpg) Potem oczywiście utworzenie skryptu przetwarzającego pliki z "układu romboidalnego" do szachownicy GoogleMaps. Z tego co mi wiadomo jako jeden z niewielu doszedłem do jakichś sensownych rozwiązań, które pozwoliły mi potem stworzyć oparty o całość generator fragmentów. Całość wykonana oczywiście w PHP z ostrym używaniem GD, które nieraz się sypie z brakiem pamięci, bo format gd ma to do siebie, że jest niekompresowany, a obrazy jakie powstają mogą mieć tysiące pikseli rozmiaru, zaś komp Gigabajtów nie zaalokuje z powietrza (IMG:style_emoticons/default/winksmiley.jpg)

Ale oczywiście można i szaleć z ciekawszymi problemami. Dla mnie nie jest problemem (z racji specjalizacji) stworzyć w php syntezatora mowy, bo to tak naprawdę konwersja tekstu do określonej formy (fonemy) a potem sklejenie odpowiadających im plików dźwiękowych w jeden (IMG:style_emoticons/default/winksmiley.jpg) Kto jednak nie zna mechanizmów i gramatyki własnego języka ten polegnie przy próbie konwersji tekst->fonemy. To ciut poważniejsze zastosowanie PHP, które może już sprawić problem i wykracza poza ramy wspomnianego CRUD.

PS: Turbo Pascal wcale tak banalny dla wielu nie jest (IMG:style_emoticons/default/winksmiley.jpg) Dla piszących już w innych językach (w tym C) może i nie, ale początkujący mają problem zrobić w nim coś bardziej skomplikowanego niż proste obliczenia i wypisanie na ekran w trybie tekstowym. O trybie graficznym nawet nie wspominam (IMG:style_emoticons/default/smile.gif) Kiedyś kuzyn poprosił mnie bym mu coś zrobił na informatykę w TP, a że akurat w coś grałem, to mu wyskrobałem komputerową wersję papierowych piłkarzyków. Nie tylko graliśmy w to gdy przyszedł ponownie... na zajęciach w szkole u niego wszyscy w to grali. A kod ładnie opisany w funkcjach i procedurach (redraw boiska, kolizje z bandami i punktami, możliwości ruchu jako pomocnicza "róża wiatrów" obok pola boiska, ) by była pełna zgodność z zasadami w jakoś 150 liniach kodu. Tak więc kto chce wykorzysta nawet proste narzędzie do zrobienia czegoś innego, niestandardowego, ale wielu nie przyjdzie to nawet do głowy. Bo kto by sobie obecnie zawracał głowę pisaniem banalnej gierki dla TP jako "proste zadanie na informatykę" ? (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
varez
post
Post #26





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


ja pascala zostawiłem w miare szybko (mialem 10 lat, był to mój drugi język programowania (chyba ze wliczamy ".bat" to trzeci (IMG:style_emoticons/default/biggrin.gif) ) i ciezko bylo z helpa cokolwiek zrozumiec bez znajomości angielskiego), potem jeszcze wracałem ale to w liceum było. Za to brat kumpla przysiedział dłużej, napisał remake gry "węże", ale takie wybajerzone, z graficznym menu nad grą (a la windows), obsluga myszy, skinowalnymi (nie czepiac sie pseudo-angielskiego!) wężami, i tego typu rzeczami (IMG:style_emoticons/default/smile.gif)
ale chyba nikt w to nie grał, w liceum rządziło Chicken Invaders (IMG:style_emoticons/default/winksmiley.jpg)

Także pascal to nie taki prymityw do robienia kalkulatora, php tez nie prymityw do robienia CRUD (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
itsme
post
Post #27





Grupa: Zarząd
Postów: 1 512
Pomógł: 2
Dołączył: 22.04.2002
Skąd: Koszalin




a ja się trochę dziwie.

jesteście/jesteśmy największą społecznością programistów w Polsce a jednocześnie to właśnie ta społeczność najczęściej i najgłośniej wykrzykuje argumenty o tym jacy to PEHAPOWCY są pokrzywdzeni przez inne środowiska programistów.
Ja powiem Wam jedno - bo to jest cecha tego języka.
I teraz zależy tylko od Was czy wskoczycie na wyżyny programistyczne czy wciąż będziecie się taplać w pisaniu własnych CMSów.

I kolejna uwaga - zapewniam Was że cała reszta Języków patrzy na nas z zazdrością - bo nie znajdą takiego wsparcia jak my znajdujemy w PHP.

Owszem ja programuje w JAVE więc moja pensja zaczyna się od 5.000 a Ty programujesz w PHP i zarabiasz mniej niż kasjerka w Biedronce - i to jest fakt ale czy to jest jakaś ujma ?

Wniosek: nie płakać nad rozlanym mlekiem - nie bawić się w główną cechę Polaków (co jest źle, co zrobiliśmy źle, przemyślmy rozpamiętujmy, użalajmy się) a zacząć myśleć o tym co zrobić aby było lepiej !
Taka gromada programistów - proszę zróbcie coś wielkiego razem w tym prostackim dziecinnym cienkim języku PHP.

Napiszcie program do newsów ( w dziale gotowe rozwiązania non stop ludzie pytają o to) - ale napiszcie program nie dla programisty ale dla laika !
Napisać można postanowienianoworoczne.php.pl - macie od kilku lat post o postanowieniach przerobcie to na coś lepszego :-)
Motywujcie się na wzajem pomagając jednocześnie ... i przestańcie już płakać bo to nic nie zmieni

Pozdrawiam
Itsme
Go to the top of the page
+Quote Post
nasty
post
Post #28





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


PHP jest świetnym językiem...


... do prototypownia ;-)
Go to the top of the page
+Quote Post
thek
post
Post #29





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Nie o takich "obejściach" mówię (IMG:style_emoticons/default/winksmiley.jpg) Myślę o alternatywnych sposobach rozwiązania problemu od strony algorytmicznej, a nie "tutaj damy if i problem się rozwiąże" (IMG:style_emoticons/default/winksmiley.jpg) To tylko droga tymczasowa i problem wróci, być może ze zdwojoną siłą, w innym miejscu. Swoje robią też przyzwyczajenia. Przykład? Kumpel uważał, że w kontrolerze akcji błędnie zapominam używać break w jednym z case. Tymczasem jest on niepotrzebny przecież, jeśli ostatnią wykonywaną akcją będzie url redirect, a tak ja miałem rozpisany algorytm. Break jest wtedy równoznaczny z wywołaniem return po returnie lub coś w ten deseń, czyli zbędnym elementem do którego skrypt nigdy nie dojdzie. Tu już właśnie się przydaje wiedza inna niż układanie z klocków, a więc znajomość architektur, systemów, protokołów. Tego doświadczenia i wiedzy "programistom" brakuje. Niedawno był nawet temat dlaczego binarna negacja 2 daje -3. To moim zdaniem dobry przykład na przewagę programisty nad "programistą". Autor tego tematu chociaż wykazał odrobinę rozumu i sięgnął przed założeniem do definicji zapisu notacji U1 i U2, choć ją nie do końca pojął, ale myślę, że plus mu się należy małe uznanie za same chęci i wiedzę "gdzie szukać", bo świadczy to o tym, że może być z niego ktoś kto używa do programowania nie tylko palców, ale i głowy (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
nasty
post
Post #30





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


Cytat(itsme @ 8.01.2010, 09:45:20 ) *
I kolejna uwaga - zapewniam Was że cała reszta Języków patrzy na nas z zazdrością - bo nie znajdą takiego wsparcia jak my znajdujemy w PHP.

Bullshit.
Zobacz, macie "wielką" społeczność programistyczną i jak ktoś zada jakieś banalne pytanie to jest odsyłany do manuala, wyśmiewany itd..
a np. MSDN, zadaj nawet najdurniejsze pytanie a dostaniesz sensowną odpowiedź a i społeczność jest wiele większa i co ważniejsze - zamożniejsza (microsoft).
Nie mówie, że to dobrze, czy źle - tylko nie traktuj tej społeczności jako karty przetargowej.

Cytat(itsme @ 8.01.2010, 09:45:20 ) *
Owszem ja programuje w JAVE więc moja pensja zaczyna się od 5.000 a Ty programujesz w PHP i zarabiasz mniej niż kasjerka w Biedronce - i to jest fakt ale czy to jest jakaś ujma ?


Owszem. W czymś Javowiec musi być lepszy skoro płacą mu 2x tyle co PHPowiec. Prawda?
Go to the top of the page
+Quote Post
skowron-line
post
Post #31





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


Cytat(itsme @ 8.01.2010, 09:45:20 ) *
a ja się trochę dziwie.

jesteście/jesteśmy największą społecznością programistów w Polsce a jednocześnie to właśnie ta społeczność najczęściej i najgłośniej wykrzykuje argumenty o tym jacy to PEHAPOWCY są pokrzywdzeni przez inne środowiska programistów.
Ja powiem Wam jedno - bo to jest cecha tego języka.
I teraz zależy tylko od Was czy wskoczycie na wyżyny programistyczne czy wciąż będziecie się taplać w pisaniu własnych CMSów.

I kolejna uwaga - zapewniam Was że cała reszta Języków patrzy na nas z zazdrością - bo nie znajdą takiego wsparcia jak my znajdujemy w PHP.

Owszem ja programuje w JAVE więc moja pensja zaczyna się od 5.000 a Ty programujesz w PHP i zarabiasz mniej niż kasjerka w Biedronce - i to jest fakt ale czy to jest jakaś ujma ?

Wniosek: nie płakać nad rozlanym mlekiem - nie bawić się w główną cechę Polaków (co jest źle, co zrobiliśmy źle, przemyślmy rozpamiętujmy, użalajmy się) a zacząć myśleć o tym co zrobić aby było lepiej !
Taka gromada programistów - proszę zróbcie coś wielkiego razem w tym prostackim dziecinnym cienkim języku PHP.

Napiszcie program do newsów ( w dziale gotowe rozwiązania non stop ludzie pytają o to) - ale napiszcie program nie dla programisty ale dla laika !
Napisać można postanowienianoworoczne.php.pl - macie od kilku lat post o postanowieniach przerobcie to na coś lepszego :-)
Motywujcie się na wzajem pomagając jednocześnie ... i przestańcie już płakać bo to nic nie zmieni

Pozdrawiam
Itsme

Amen.

A co do
Cytat
I kolejna uwaga - zapewniam Was że cała reszta Języków patrzy na nas z zazdrością - bo nie znajdą takiego wsparcia jak my znajdujemy w PHP.

Tu jako przykład nie tyle wsparcia ale społeczności może być kolega @mike który parę postów wyżej pisał jak to bardzo nie lubi PHP ale na forum przesiaduje codziennie. Niby PHP taki h**owy no ale ciągnie go tutaj.
Go to the top of the page
+Quote Post
nasty
post
Post #32





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


Cytat(thek @ 8.01.2010, 10:03:29 ) *
Nie o takich "obejściach" mówię (IMG:style_emoticons/default/winksmiley.jpg) Myślę o alternatywnych sposobach rozwiązania problemu od strony algorytmicznej.


Nie używaj słów PHP i Algorytm na raz w jednym zdaniu ;-)

Ten post edytował nasty 8.01.2010, 10:22:10
Go to the top of the page
+Quote Post
varez
post
Post #33





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


Cytat
Owszem ja programuje w JAVE więc moja pensja zaczyna się od 5.000 a Ty programujesz w PHP i zarabiasz mniej niż kasjerka w Biedronce - i to jest fakt ale czy to jest jakaś ujma ?

Oj php-owcy nie zarabiaja tak mało.. za 8h mojej pracy pracodawca dostał raz ok 1000zł, za dwa tygodnie za ok 10h pracy jakies 1200 (nie ma to jak bezmyślnie forwardować maile (IMG:style_emoticons/default/biggrin.gif) )

// wykasowano fragment

@itsme:
Mój post to nie miało byc płakanie/użalanie że "onii mnieee przezywająąą", po prostu zastanawiałem skąd to się bierze

Ten post edytował varez 8.01.2010, 10:41:24
Go to the top of the page
+Quote Post
itsme
post
Post #34





Grupa: Zarząd
Postów: 1 512
Pomógł: 2
Dołączył: 22.04.2002
Skąd: Koszalin




Ty mowisz ogolnie i ja mowie ogolnie ...
nie chce wchodzić w szczegóły bo to nie ma sensu ...

gadanie o break; itp ... to nic nie wnosi do rozmowy co zrobil moj kolega wykladowca czy też dziewiaty maz byłej żony mojego brata ..
Go to the top of the page
+Quote Post
piotrooo89
post
Post #35


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




a ja myśle że nie ma sensu krytykować kogoś za sposób w jaki programuje, bo ktoś i nas może skrytykować... choć oczywiście czasem aż się nożyk w kieszeni otwiera jak się widzi jakieś szamanizmy w kodzie. ja ostatnio miałem (nie)przyjemność poprawiać kod po moim koledze z pracy. zajmuje się on zupełnie innym modułem i chciał żeby ktoś sprawdził co napisał po 1 min testowania wy listowałem sobie wszystkie katalogi na dysku, mogłem usunąć cały '/' w Linuchu, natomiast gdy ja miałem problem bo nie rozumiałem zasady działania jakiegoś skryptu i pisałem na tzw 'czuja', pokazał mi co robię źle i powiedział jak zrobić poprawnie.

podsumowanie: jeśli ktoś chce się nauczyć czegoś nie będzie zamknięty na krytykę, opinie etc. wiadomo że będzie gro programistów którzy pozostaną zamknięciu w swoim zaścianku i będą myśleć że to co robią jest OK ale czy warto się przejmować takimi ludźmi, w końcu jak klient przyjdzie po rozum do głowy że wydał kasę na jakiś projekt a on został zmaszczony może następnym razem zastanowi się dwa razy zanim komuś go zleci i być może wybierze firmę specjalizującą się w pisaniu różnego typu aplikacji.
Go to the top of the page
+Quote Post
varez
post
Post #36





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


@itsme,
wykasowalem, moze nic nie wnosi, ale generalnie jak dyskutuje z ludzmi (na dowolny temat) to przyklady tez sa przedstawiane, i rozmowy o wujku ciotki brata (IMG:style_emoticons/default/smile.gif)

@piotrooo89,
zalezy co masz na mysli mowiac krytyka, bo ponizej sam przyznajesz ze krytyka jest potrzebna (IMG:style_emoticons/default/smile.gif)
albo krytyka albo obsmiewanie, drugiego nie popieram (chyba ze ktos przesadzi konkretnie)

@itsme,
nie tylko ja daje przyklady

Ten post edytował varez 8.01.2010, 10:46:09
Go to the top of the page
+Quote Post
piotrooo89
post
Post #37


Newsman


Grupa: Moderatorzy
Postów: 4 005
Pomógł: 548
Dołączył: 7.04.2008
Skąd: Trzebinia/Kraków




mam na myśli coś takiego 'o kur*** ale ten kolo to zje**** jak można takie błędy robić weź idź sie naucz podstaw' - no to takie to jest kompletnie złe podejście... a co innego jak ktoś powie 'o stary tu masz lukę w bezpieczeństwie słuchaj może filtruj odpowiednio to co dostajesz o użytkownika i będzie po problemie' - to jest krytyka bo powiedziałem że ma coś źle ale jednocześnie pokazuje mu co może być źle i jak sie z tym uporać. i teraz dostrzegamy czy ktoś żyje w swoim światku i poprawia czy może dalej brnie w zaparte jak koń z klapkami na oczach.
Go to the top of the page
+Quote Post
thek
post
Post #38





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




@Itsme: To jest cecha nie tyle języka co rynku. Gdyby nagle nastąpił wysyp znawców danego języka to płace poleciały w nim by na łeb na szyję, nastąpiły przetasowania w kadrach firm. Wiadomo popyt i podaż na to szybko wpłyną. Za dużo jest piszących w PHP i odbija się to na płacach. Ale Ci dobrzy i tak dostaną swoją pensję dobrą bo firma nie będzie ich chciała puścić i będzie skłonna do podwyżek dla takich, byle by zostali.

Ja tam nie narzekam, bo to nie w mojej naturze. Robię swoje i często irytuje mnie utyskiwanie innych jak to mają źle. Masz tak źle? To zrób coś by nie było, a nie siedź i biadol! To tak jak z większością hip-hopowców (IMG:style_emoticons/default/winksmiley.jpg) Biadolą jak to w Polsce źle, szaro, niebezpiecznie, a sami tyłka nie ruszą by coś zmienić tylko palą zielsko i siedzą pod blokiem lub, co gorsze przypadki, łapią się za kryminał, czyli pogarszają jeszcze bardziej nie tylko sytuację swoją, ale i innym.

Sam osobiście "nie popełniłem" własnego CMS, ale go rozpisuję sobie od strony projektowej, bo chcę w końcu na serwisie jednym zrezygnować z PhpFusion, które jest niezbyt mi pasujące (mało skalowalne, pewne problemy bezpieczeństwa, z wyświetlaniem na wszystkich przeglądarkach też średnio). Wolę sobie sam napisać go wedle własnych wymagań i potrzeb (IMG:style_emoticons/default/winksmiley.jpg) Hobbystycznie się tym zajmuje więc nie przejmuję terminami, skrobię w chwilach wolnych by był maksymalnie user-friendly i idioto-odporny (IMG:style_emoticons/default/smile.gif) Bawię gotowymi rozwiązaniami, dopasowuję pod siebie. Bo dla mnie programowanie to zabawa, która przerodziła w pracę, zawód, czego wielu osobom życzę. Jak również pomysłów i wydajnych algorytmów (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
zzeus
post
Post #39





Grupa: Zarejestrowani
Postów: 441
Pomógł: 71
Dołączył: 3.09.2007
Skąd: wrocław

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


A moim zdaniem jest tak, że napisać skrypt w php jest łatwo, nawet bardzo łatwo, ale napisać dobry skrypt w php już tak łatwo nie jest.
Go to the top of the page
+Quote Post
darko
post
Post #40





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Cytat(zzeus @ 8.01.2010, 11:16:36 ) *
A moim zdaniem jest tak, że napisać skrypt w php jest łatwo, nawet bardzo łatwo, ale napisać dobry skrypt w php już tak łatwo nie jest.

Dokładnie (IMG:style_emoticons/default/winksmiley.jpg) Niech to będzie podsumowaniem tematu.
Go to the top of the page
+Quote Post
thek
post
Post #41





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




@nasty: Nie używaj słów PHP i Algorytm na raz w jednym zdaniu ;-)
Ponieważ? Nie mów, że piszesz skrypty w php bez algorytmicznych podstaw czy choćby zarysu algorytmu (IMG:style_emoticons/default/biggrin.gif)
@itsme: gadanie o break; itp ... to nic nie wnosi do rozmowy co zrobil moj kolega wykladowca czy też dziewiaty maz byłej żony mojego brata ..
Ależ owszem. Wnosi. Pokazuje praktykę, podejście innych, tok rozumowania. Po kim wolałbyś poprawiać kod? Programiście czy "programiście"? Ja zdecydowanie po pierwszym. Może zastosowałby kruczek jakiego nie znam. To by mnie czegoś jeszcze nauczyło (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
varez
post
Post #42





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


Thek, po programiście (nie "programiście") kodu się nie poprawia (IMG:style_emoticons/default/winksmiley.jpg)
można go rozszerzyć o nowe funkcjonalności
Go to the top of the page
+Quote Post
zzeus
post
Post #43





Grupa: Zarejestrowani
Postów: 441
Pomógł: 71
Dołączył: 3.09.2007
Skąd: wrocław

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


Cytat(varez @ 8.01.2010, 11:54:18 ) *
Thek, po programiście (nie "programiście") kodu się nie poprawia (IMG:style_emoticons/default/winksmiley.jpg)
można go rozszerzyć o nowe funkcjonalności


Zawsze można coś poprawić (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Spawnm
post
Post #44





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




To poprawianie kodu po 'nie programiście' ogranicza się do napisania od nowa (IMG:style_emoticons/default/winksmiley.jpg)
Ale nie o tym temat.

A co do tematu to problem jest jeszcze taki że się nie cenimy.
Za 3 ify z write w pascalu bierze się 50zł ... już widzę jak w php ludzie się tak wyceniają.
Go to the top of the page
+Quote Post
varez
post
Post #45





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


Cytat(Spawnm @ 8.01.2010, 12:06:09 ) *
Za 3 ify z write w pascalu bierze się 50zł ... już widzę jak w php ludzie się tak wyceniają.

o żesz, gdzie?
to ja odchodze od php!
Go to the top of the page
+Quote Post
Spawnm
post
Post #46





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Gdzie? Prywatnie uczniom i studentom. Chcesz dowodów to kup jakąś gazete z ogłoszeniami czy coś i poszukaj ogłoszeń w stylu wykonam programy tp ,html, delphi itp.
Ew. korepetycje z informatyki , od znajomego wiem że jest to to samo ;]
Go to the top of the page
+Quote Post
dr4ko
post
Post #47





Grupa: Zarejestrowani
Postów: 49
Pomógł: 4
Dołączył: 16.07.2008
Skąd: Gdańsk

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


Inni PHP lekceważą bo PHP to język ułatwień. Nie ma w nim takiej możliwości/potrzeby kontroli nad otoczeniem jak w "prawdziwych" językach programowania, wiele rozwiązań jest podane na tacy a operacje są wykonywane sekwencyjnie więc programowanie nie wymaga takiej uwagi i wysiłku. Więc naturalne jest że "elita" będzie to wykorzystywała do wywyższania się. Takie jest życie, że jak coś jest wygodniejsze to znajdą się tacy co będą to krytykować.

Osobiście uważam PHP za język programowania przeznaczony dla programisty-inżyniera. Pozwala się on skupić na konkretnych rozwiązaniach zamiast na pisaniu kodu. Nie trzeba pilnować typów, tablice tworzy się w locie, nie trzeba pamiętać o czyszczeniu pamięci itp itd. Czy to jest wada? Nie, po prostu ciężar "pamiętania" o tych czynnościach bierze na siebie PHP odciążając programistę. Obrazowo:zamiast budować każdą część samochodu z osobna my bierzemy gotowe elementy i składamy je do kupy tak żeby działały. I w bardzo ogólnym podejściu nieważne jak się je złoży - działać będą.

I tu dochodzimy do problemu płacy. Czemu programiści PHP zazwyczaj zarabiają mniej niż inni? Bo "samochody" przez nich składane rzadko kiedy jeżdżą po trudnym terenie. Więc dla większości odbiorców nie ma znaczenia jak dobrze jest napisany kod - ważne żeby działał, a prawda jest taka, że nawet kiepski kod PHP może działać i się nie wysypywać. Po co więc przepłacać skoro można wydać mniej a rezultat dla użytkownika będzie taki sam? Dopiero gdy produkt musi pracować pod dużym obciążeniem, być elastyczny i rozszerzalny pojawia się potrzeba by programista był dobrym programistą a takie produkty to mniejszość rynku...
Go to the top of the page
+Quote Post
varez
post
Post #48





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

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


mam jeszcze jedno pytanie:
Nawet w tym temacie krytykujecie "wlasne CMSy", dlaczego?
Przecież dla początkującego to dobry sposób, żeby spróbować czegoś wiekszego niż jakiś skrypcik..
Go to the top of the page
+Quote Post
Fantazyn
post
Post #49





Grupa: Zarejestrowani
Postów: 135
Pomógł: 38
Dołączył: 24.02.2007
Skąd: Warszawa

Ostrzeżenie: (10%)
X----


Wg mnie PHP jest tak słabo oceniane, bo:
- panuje wyścig szczurów, na gumtree, pracaprzeznet, itp. ludzie ogłaszają się, że zrobią stronę za kilkadziesiąt złotych (co faktycznie można zrobić, bo...)
- żeby zrobić stronę w php wystarczy wpisać w google kilka fraz i mamy działającego gotowca (nawet nie trzeba znać bardzo php) - każdy może zostać tzw. programistą PHP
- jest mnóstwo projektów open source (głównie CMS), dzięki którym można postawić stronę z panelem administracyjnym praktycznie nie znając php (co często widać na tematycznych forach)
- PHP pozwala na "błędne" programowanie ...
- co przekłada się na to, że zleceniodawcy boją się zlecać duże rzeczy w php'ie (o ile można je wykonać za pomocą tego języka), bo stworzenie działającego systemu to jedna, ale jak ktoś napisał niedbale kod, a potem trzeba go "poprawić", coś dodać, to... większość wie co
- dlatego większość projektów to stronki www (co by nie mówić, mniejsze lub większe ale zwykłe stronki - najwyżej z bardziej rozbudowanymi formularzami), gdzie wystarcza znajomość CRUD
- jest ograniczony (bez js z frameworkami, ajax'u, bez innych technologii)

Pozdrawiam
Go to the top of the page
+Quote Post
nasty
post
Post #50





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


Cytat(thek @ 8.01.2010, 11:48:26 ) *
@nasty: Nie używaj słów PHP i Algorytm na raz w jednym zdaniu ;-)
Ponieważ? Nie mów, że piszesz skrypty w php bez algorytmicznych podstaw czy choćby zarysu algorytmu (IMG:style_emoticons/default/biggrin.gif)

Ponieważ w php nie da się implementować algorytmów.
Go to the top of the page
+Quote Post
darko
post
Post #51





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Cytat(nasty @ 8.01.2010, 13:08:38 ) *
Ponieważ w php nie da się implementować algorytmów.

Yy... w każdym języku da się zaimplementować pewne typy algorytmów. Bo czym jest algorytm z definicji? (wikipedia):
Cytat
Algorytm – w matematyce oraz informatyce skończony, uporządkowany ciąg jasno zdefiniowanych czynności, koniecznych do wykonania pewnego rodzaju zadań.
I dalej:
Cytat
Algorytm to jednoznaczny przepis przetworzenia w skończonym czasie pewnych danych wejściowych do pewnych danych wynikowych.

I od konkretnego języka (i umiejętności programisty) zależy czy można w nim wykonać pewnego rodzaju zadania. Tyle na ten temat.

Ten post edytował darko 8.01.2010, 13:15:25
Go to the top of the page
+Quote Post
nasty
post
Post #52





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


echhh. Już pisałem o tym kilka razy na tym forum.

Zobacz:
http://rafjan.pl/index.php?id=fifo
http://rafjan.pl/index.php?id=lista
http://rafjan.pl/index.php?id=stack

Takie są implementacje tych struktur danych w PHP. Na czym wszystko jest implementowane? na tablicy asocjacyjnej/mapie co jest oddzielną strukturą danych i nie powinna być wykorzystywana do tego.
Nie twierdzę, że autor tych klas jest kiepski - wręcz przeciwnie. Radzi sobie najlepiej jak może z ograniczeniami języka.

I według Ciebie tak zaimplementowane rzeczy można nazwać algorytmem albo strukturą danych? Proszę Cię...

Taka implementacja nawet mija się z celem tej struktury danych.
Go to the top of the page
+Quote Post
itsme
post
Post #53





Grupa: Zarząd
Postów: 1 512
Pomógł: 2
Dołączył: 22.04.2002
Skąd: Koszalin




ale Nasty o co Ci naprawdę chodzi ?
że php jest cienkie ?
ale w jakim zakresie ?
co to wnosi ?
piszecie tyle postów a zapominacie o podstawowej zasadzie o której wspominano również tutaj (thx ~zyx).
Wróćcie do jego posta i jeszcze raz przeczytajcie bo powielać tak oczywistych prawd mi się już nie chce ...

PHP nie jest do wszystkiego tak samo jak w C tez wszystkiego nie napiszesz ...

milego
Go to the top of the page
+Quote Post
darko
post
Post #54





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


~nasty
Kolejki, listy i stosy to struktury danych i/lub kontenery, ale nie przykłady zastosowania podstaw algorytmiki w php, o którym pisał ~thek, a które Ty negujesz.
// edit
Ciekawe po co w takim razie 8,220,000 stron w Internecie pod hasłem php algorithms ?

Ten post edytował darko 8.01.2010, 13:32:57
Go to the top of the page
+Quote Post
nasty
post
Post #55





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


Kurcze... a algorytmy na czym operują? nie na strukturach danych?
Jak masz od początku złe struktury to nie zrobisz dobrego algorytmu.


a Itsme:
Chodzi mi o to, że thek napisał o algorytmice i PHP, to mu odpowiedziałem, że jeżeli pod tym kątem patrzy to PHP jest złym wyborem. Dalej to udowadnianie mojej racji na temat tej opinii ;-)

Edit:
http://www.google.pl/search?q=man+vagina ( 8,260,000 wyników )
to znaczy, że masz waginę? (IMG:style_emoticons/default/tongue.gif)

Thek: proszę, pogrubiaj ważniejsze zdania w swoich postach, bo chętnie zapoznam się z Twoim zdaniem ale nie mam siły na tak długie (IMG:style_emoticons/default/biggrin.gif)

Ten post edytował nasty 8.01.2010, 13:40:09
Go to the top of the page
+Quote Post
thek
post
Post #56





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Ja nie krytykuję (IMG:style_emoticons/default/smile.gif) Kwestia tego, że jak słyszę teksty iż ktoś "napisał CMS w ciągu nocy" to nie wiem czy kpi ze mnie czy jest debilem (IMG:style_emoticons/default/winksmiley.jpg) I tu pojawia się właśnie znów kwestia kodu. Co on ma za definicję CMS-a? Ja będąc po studiach inżynierskich z informatyki nawet nie zdołałbym przemyśleć wszystkich funkcjonalności i powiązań w serwisie by się zabrać za projektowanie, a on w tym czasie przemyślał, zaprojektował i zaprogramował CMS. Albo geniusz albo ja się starzeję już (IMG:style_emoticons/default/biggrin.gif) Przez ten czas to może bym zmienił jakiemuś gotowemu CMS layout, ale nie napisał, w oparciu o najlepiej mi znany framework, nowego. To po prostu nierealne (nawet biorąc pod uwagę "magię programowania po pijaku" (IMG:style_emoticons/default/winksmiley.jpg) ) zrobić w tak krótkim czasie taki projekt. Może zrobiłby szkielet i kilka elementarnych funkcjonalności gdyby olał projektowanie i całą fazę przygotowawczą. Ale w pełni funkcjonalny? Brednie i nic więcej. Tylko że tacy zazwyczaj jak on najgłośniej krzyczą i nie dość, że potem php jako język jest uważany za zbyt prostacki, to jeszcze jakość kodu, która wyszła spod ręki takiego "miszcza" jest wysoce wątpliwa. A to kładzie się potem cieniem na całej społeczności.

EDIT:
@nasty: Zapytam więc... Co masz na myśli pisząc struktura danych? Jeśli tylko obiekty lub złożone struktury w stylu wspomnianych list i kolejek to dla mnie źle rozumiesz to pojęcie. Strukturą danych jest zarówno tablica jak i pojedynczy int, double czy cokolwiek innego.
To co robi blooregard w linkach to nie algorytm tylko implementacja struktury danych w określonym języku. Czy jeśli implementowałbym klasę wektora jako tablicę asocjacyjną to miałoby to sens? Nie. Ponieważ Array już tym jest i tworzyłbym funkcje do gotowych funkcji. Bo czym w FIFO jest dodanie lub zdjęcie elementu jak nie pop() i push() ? To samo tyczy części innych struktur, które de facto sprowadzają się do opakowania już gotowych funkcji dla Array. Pokaż mi sens tego. Algorytmika zajmuje się pisaniem algorytmów, czyli ciągu operacji które mają prowadzić do określonego celu w sposób najbardziej optymalny/wydajny/szybki/ekonomiczny/zgodny z założeniami. Przykładem jest sortowanie. Wielu chwali QuickSorta bo jest szybki (złożoność obliczeniowa też niska) i stosuje go niemal wszędzie. Tylko czy ktoś zauważa, że to jeden z bardziej pamięciożernych i w środowisku z bardzo niską ilością zasobów (systemy wbudowane) może być fatalnym rozwiązaniem? Nie stawiaj więc znaku równości, czy choćby przybliżenia między złożonymi strukturami danych a algorytmem bo to nie jest tożsame.
Zobacz jakie formy może przyjąć zapis algorytmu. Między innymi schemat blokowy. Powiedz mi czy kolejkę jako strukturę danych zapiszesz jako schemat blokowy?

EDIT jednym zdaniem: Nie myl nasty implementacji algorytmu z implementacją struktury danych (IMG:style_emoticons/default/smile.gif)

Ten post edytował thek 8.01.2010, 14:36:20
Go to the top of the page
+Quote Post
blooregard
post
Post #57


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat


Cytat
Nie twierdzę, że autor tych klas jest kiepski - wręcz przeciwnie. Radzi sobie najlepiej jak może z ograniczeniami języka.


Hej, ~nasty, dzięki (IMG:style_emoticons/default/smile.gif)

BTW, owe klasy to po prostu efekt moich ćwiczeń z tą książką: http://helion.pl/ksiazki/algpo.htm

Go to the top of the page
+Quote Post
dr4ko
post
Post #58





Grupa: Zarejestrowani
Postów: 49
Pomógł: 4
Dołączył: 16.07.2008
Skąd: Gdańsk

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


Nasty, algorytm to algorytm. Co ma brak jakichś struktur danych do algorytmów? Klasy które przytoczyłeś same implementują algorytmy by zasymulować działanie struktur danych... Odnoszę wrażenie że mylisz pojęcia.
Go to the top of the page
+Quote Post
darko
post
Post #59





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Cytat(nasty @ 8.01.2010, 13:35:32 ) *
Kurcze... a algorytmy na czym operują? nie na strukturach danych?

Nie tylko.

Cytat(nasty @ 8.01.2010, 13:35:32 ) *
Chodzi mi o to, że thek napisał o algorytmice i PHP, to mu odpowiedziałem, że jeżeli pod tym kątem patrzy to PHP jest złym wyborem.

Tu masz całkowitą rację.

Cytat(nasty @ 8.01.2010, 13:35:32 ) *
Edit:
http://www.google.pl/search?q=man+vagina ( 8,260,000 wyników )
to znaczy, że masz waginę? (IMG:style_emoticons/default/tongue.gif)

Nie ma to jak rzeczowy argument (IMG:style_emoticons/default/smile.gif)
  1. if($ilosc_wynikow_w_google_dla_hasla_man_vagina > $ilosc_wynikow_w_google_dla_hasla_php_algorithms) {
  2. $you_cannot_use_algorithms_in_php_programming = true;
  3. }


Ten post edytował darko 8.01.2010, 13:51:15
Go to the top of the page
+Quote Post
nasty
post
Post #60





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


Cytat(dr4ko @ 8.01.2010, 13:41:08 ) *
Nasty, algorytm to algorytm. Co ma brak jakichś struktur danych do algorytmów? Klasy które przytoczyłeś same implementują algorytmy by zasymulować działanie struktur danych... Odnoszę wrażenie że mylisz pojęcia.

Jakie pojęcia mylę?

Edit:
@drako: a na czym jeszcze?
nie, po prostu użyłem podobnie mocnego argumentu - ilość wyników zwracanych przez google dla danego hasła.

Ten post edytował nasty 8.01.2010, 13:52:41
Go to the top of the page
+Quote Post
darko
post
Post #61





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Zgodnie z klasyczną definicją: na danych wejściowych, co nie oznacza, że dane te są jakąkolwiek uporządkowaną strukturą. A już tym bardziej nigdzie nie jest powiedziane, że musi to być kolejka, lista czy stos.

Ten post edytował darko 8.01.2010, 13:54:58
Go to the top of the page
+Quote Post
nasty
post
Post #62





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


Każde dane są jakąś strukturą danych.
Go to the top of the page
+Quote Post
dr4ko
post
Post #63





Grupa: Zarejestrowani
Postów: 49
Pomógł: 4
Dołączył: 16.07.2008
Skąd: Gdańsk

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


Właśnie nie wiem z czym mylisz algorytmy. Nie lubię się odwoływać do wikipedii ale nie chce mi się szukać innych źródeł:
http://en.wikipedia.org/wiki/Algorithm

Teraz proszę napisz która część definicji algorytmu uniemożliwia implementację za pomocą PHP i dlaczego nie można za pomocą PHP zaimplementować algorytmu z pierwszego obrazka.
Go to the top of the page
+Quote Post
nasty
post
Post #64





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


dr4ko: na siłę to i każdą część obrazka możesz zaimplementować.
Jakby się uprzeć to można nawet za pomocą PHP używać DirectX (odwołując się do WinAPI) ale to po prostu nie jest do tego zrobione.
Go to the top of the page
+Quote Post
darko
post
Post #65





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Cytat(nasty @ 8.01.2010, 13:08:38 ) *
Ponieważ w php nie da się implementować algorytmów.


Cytat
dr4ko: na siłę to i każdą część obrazka możesz zaimplementować.
Jakby się uprzeć to można nawet za pomocą PHP używać DirectX (odwołując się do WinAPI) ale to po prostu nie jest do tego zrobione.


Więc jednak się da (IMG:style_emoticons/default/smile.gif) I o to chodziło. Z mojej strony EOT.

// edit
Cytat( @ 8.01.2010, 13:46:33 ) *
nie, po prostu użyłem podobnie mocnego argumentu - ilość wyników zwracanych przez google dla danego hasła.

To było pytanie retoryczne (IMG:style_emoticons/default/winksmiley.jpg) rzeczywiście sytuacja byłaby niezwykła, gdyby coś takiego jak algorytmy w php nie istniało, a tu ponad 8 milionów wyników wyskakuje w google.

Ten post edytował darko 8.01.2010, 14:15:17
Go to the top of the page
+Quote Post
nasty
post
Post #66





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


Cytat(darko @ 8.01.2010, 14:03:36 ) *
Więc jednak się da (IMG:style_emoticons/default/smile.gif) I o to chodziło. Z mojej strony EOT.

Faktycznie, za bardzo mówiłem w przenośni.
w tym przypadku:
Nie da się = używanie czegoś na siłę tam gdzie się nie nadaję.
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #67





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Nie rozumiem jak można twierdzić, że implementacja FIFO, czy innej kolejki jest w php na siłę.
Te kolejki służą do czegoś przecież. Wykorzystuje się je w konkretnych przypadkach. To mi przypomina jakiś temat powstały na bazie dyskusji na IRC o tym, czy w php są typy zmiennych. (IMG:style_emoticons/default/smile.gif)

Pozdrawiam.
Go to the top of the page
+Quote Post
thek
post
Post #68





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Napiszę informatycznie. Twoje rozumowanie można odebrać jako
algorytm ~= struktury_danych
A po ludzku: algorytm to w przybliżeniu struktury danych. Z tym się nie mogę zgodzić w żadnym wypadku. I to właśnie określiłem jako mylenie pojęć.

Z kolei idźmy dalej. Skoro PHP jest tak banalny, to co należy powiedzieć o MatLabie, którego sam wiele używałem i tworzyłem w nim między innymi sieci neuronowe. W PHP kod identyczny funkcjonalnie zająłby kilka razy więcej. Czy to czyni Matlaba gorszym, skoro operacje na macierzach choćby są wbudowane, a rozbudowane biblioteki sprawiają, że stworzenie poważniejszego oprogramowania inżynierskiego zajmuje ułamek tego co w porównaniu do PHP? Syntezator mowy w kodzie na około 200-250 linii kodu (nie pamiętam już dokładnie) na tyle dobrze działający, że prowadzący twierdzili, iż go nie mogłem samodzielnie stworzyć. To przykład możliwości MatLaba, którego uważam za naprawdę potężne narzędzie (aczkolwiek GUI tworzyć w nim to tragedia).

Algorytm to tylko ciąg instrukcji, kroków, mających na celu wykonanie określonej operacji nieelementarnej. Struktura danych jaka jest w nim użyta to sprawa drugorzędna. Czy PHP jest gorsze jeśli zamiast typu float posłałbym int do algorytmu jako daną wejściową? Nawet C to przełknie, niejawnie zrzutuje int na float i nawet nie piśnie. PHP nie zaprotestuje nawet gdybym posłał coś fantazyjnego bo sobie sam zrzutuje na określony, a potrzebny mu ( też nie zawsze, ale pomińmy to milczeniem (IMG:style_emoticons/default/winksmiley.jpg) ) Różnica więc między PHP i językami "trudniejszymi" to wsparcie programisty przez narzędzie. Jest ono mniej restrykcyjne i przez to prostsze do opanowania.

A tak wracając do pustej tablicy... Nie prościej w C po prostu zadeklarować wskaźnik i potem dopiero na określonym etapie wypełnić tablicę przez użycie malloc, lub idąc ku C++ użyć operatora new? (IMG:style_emoticons/default/winksmiley.jpg)
Pod tym względem int *wskaźnik nie jest niczym innym niż array() (IMG:style_emoticons/default/tongue.gif) Oba przechowują adres początku tablicy pustej. No chyba, że o innym formacie pustej tablicy mówimy (IMG:style_emoticons/default/winksmiley.jpg) W końcu nie ma musu w C określać na starcie jak duża ma być tablica i można to robić w trakcie działania algorytmu.


A tak przy okazji to dla mnie implementacja FIFO w PHP to po prostu array() + array_push() +array_shift() i nie sądzę by były osoby, które się ze mną by nie zgodziły (IMG:style_emoticons/default/winksmiley.jpg) Czy więc jest choćby najmniejszy sens opakowywania tego i tworzenie klasy FIFO w PHP tylko by nazwać ją tak? Stos to to samo, tyle że array_shift() zastępujemy array_pop(). Kto widzi logikę w takim postępowaniu? To samo z wszelkimi kombinacjami F(L)IF(L)O (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
erix
post
Post #69





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Nie używaj słów PHP i Algorytm na raz w jednym zdaniu ;-)

Ech, z ~mikem się widziałeś, czy jak...? Przeczysz w wielu miejscach sam sobie. Piorąc skarpetki nie masz wpływu na algorytm w pralce? Sąsiadka idąca do sklepu nie programuje sobie drogi? Za bardzo naginasz prawdę na swoją stronę anty-PHP. (IMG:style_emoticons/default/winksmiley.jpg)

Cytat
Nie rozumiem jak można twierdzić, że implementacja FIFO, czy innej kolejki jest w php na siłę.

Jest. (IMG:style_emoticons/default/winksmiley.jpg) Od PHP 5.3 i ostatniej rozbudowy SPL już jest na siłę. (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #70





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Cytat
A tak przy okazji to dla mnie implementacja FIFO w PHP to po prostu array() + array_push() +array_shift() i nie sądzę by były osoby, które się ze mną by nie zgodziły


Hmm, a jednak (IMG:style_emoticons/default/smile.gif)
Myślę, że w bardziej skomplikowanych systemach wręcz należy stworzyć interfejs, bo dzięki temu masz:

1. Cywilizowany dostęp
2. Gwarancję spójności (a przynajmniej taki jest cel)

Kolejkowanie nie musi opierać się tylko na aktualnym żądaniu i dotyczyć prostej tablicy. Do kolejki możesz się próbować odnieść poprzez kolejne żądanie, a nawet inna aplikacja może to zrobić. To już skala makro, ale nadal pozostaje to kolejką, a przynajmniej czymś na wzór kolejki (czyli działającej w oparciu o podobny algorytm). IMO, te pojęcia po prostu niekiedy się rozmywają w praktyce, a jednowątkowe aplikacje php siłą rzeczy, do bardziej skomplikowanych zadań potrzebują czegoś więcej niż pamięć RAM - najczęściej bazy danych i wyobraźni.

Będę więc może surowy w ocenie, ale wydaje mi się, że trudności występujące np. w języku C to nie są trudności, które są warte czasu przeciętnego programisty php. Ten ma po prostu uzyskać jakiś efekt w postaci działającego programu. Jeśli programista php buduje narzędzia, wszelka wyższa wiedza z zakresu algorytmiki i matematyki to już same plusy, bo jakość takiego narzędzia może być większa.

Progarmiści php zresztą też cwaniakują - user===głupek (IMG:style_emoticons/default/happy.gif)

Pozdrawiam


@erix - niestety nie oglądałem jeszcze dobrze php 5.3, więc trudno mi się odnieść do tego, co piszesz (IMG:style_emoticons/default/sad.gif)
Powód edycji: [Cysiaczek]: @erix
Go to the top of the page
+Quote Post
nasty
post
Post #71





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


Cytat
A tak przy okazji to dla mnie implementacja FIFO w PHP to po prostu array() + array_push() +array_shift() i nie sądzę by były osoby, które się ze mną by nie zgodziły Czy więc jest choćby najmniejszy sens opakowywania tego i tworzenie klasy FIFO w PHP tylko by nazwać ją tak? Stos to to samo, tyle że array_shift() zastępujemy array_pop(). Kto widzi logikę w takim postępowaniu? To samo z wszelkimi kombinacjami F(L)IF(L)O

W takim przypadku, operację dodania do kolejki i wyciągania z kolejki nie będą się wykonywać w złożoności O(1) a w takiej ile zajmie przesunięcie elementów w tablicy (O(n)) (chodź w PHP tablice są zaimplementowane jako hashtable więc jest to odrobinę więcej niż 1).
Do tego używasz dość skomplikowanej struktury aby zbudować inną która jest kilka razy prostsza. Zużywasz więcej pamięci niż faktycznie potrzebujesz.
Tak więc takim sposobem po za korzyści płynących z narzucenia organizacji danych nie masz reszty korzyści płynących z tej struktury - minimalny czas dodania i usuwania :-)


Do czego dążę? Do tego, że używając innych języków programowania programiści są zmuszeni do tego aby takie rzeczy wiedzieć a w PHP nie. Stąd też ponownie odpowiadając na pytanie: czy programiści innego języka są lepsi tylko dlatego bo zarabiają więcej? Tak. Są lepsi bo mają większą wiedzę i za nią im płacą.
Go to the top of the page
+Quote Post
erix
post
Post #72





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Progarmiści php zresztą też cwaniakują - user===głupek

A czy pisałbyś dobre systemy walidacji danych przychodzących nie przyjmując takiego założenia? (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Blame
post
Post #73





Grupa: Zarejestrowani
Postów: 678
Pomógł: 124
Dołączył: 26.09.2009

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


Czy w ogóle byśmy je pisali? Oto jest pytanie (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
f1xer
post
Post #74





Grupa: Zarejestrowani
Postów: 403
Pomógł: 68
Dołączył: 20.03.2008

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


Cytat
Tak. Są lepsi bo mają większą wiedzę i za nią im płacą.


Strasznie uogólniasz. Nie można mówić że wiedza zależy od języka, programista DirectX zazwyczaj nie ma pojęcia jak wygląda np. konfiguracja firewalla na linuxie bo jest mu to nie potrzebne, programiści PHP nie potrzebują znać algorytmów wyszukiwania dróg itp. bo jest im to nie potrzebne, ale nie można porównywać wiedzy na zasadzie ja piszę w JAVA więc mam większą wiedzę niż Ci którzy piszą skrypty w bashu
Go to the top of the page
+Quote Post
thek
post
Post #75





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Znam narzuty wynikające z kolejek, wektorów, map itp. W końcu zanim zacząłem z PHP to już od około 2-3 lat w C, C++ pisałem i miałem do czynienia także z STL.
To, że ktoś zna PHP nie znaczy, że algorytmy znajdywania drogi są zbędne dla niego. Wystarczy, że w projekcie trafi się ten problem lub inny i będzie musiał poznać (IMG:style_emoticons/default/smile.gif) Czy jako informatyk z jakiejś dziedziny powiesz szefowi: "Stary... To nie moja działka, nie muszę znać dziedziny X. Zatrudnij sobie do tej części kogoś innego." tylko dlatego, że choćby wspomniane algorytmy znajdowania drogi nie wchodzą w zakres programowania w Twoim języku. Dla mnie problem to wyzwanie i je podejmuję a nie zrzucam na karb "to nie moja działka".

Co do PHP i twierdzenia user === głupek... A jak mają traktować userów wszyscy programiści gdzie user ma wprowadzać dane? Pisząc w JAVA lub C++ z interfejsem dla usera też masz w d.pie walidację tylko dlatego, że używasz tych języków? (IMG:style_emoticons/default/winksmiley.jpg) Ja bym nie był takim optymistą bo nawet program konsolowy bez walidacji łatwo wysypać wrzucając jako parametry śmieci.

Gdy pisałem o FIFO jako array() to zauważcie, że tak naprawdę do tego się sprowadza to. Czy mam w PHP od zera pisać to skoro sam język mi to daje? Stworzenie klas odpowiednich tylko po to by był "cywilizowany interfejs" jest dla mnie jak kupienie robota kuchennego i wyrzucenie do śmieci 3/4 końcówek. Można... Ale jaki jest tego sens?
Lepiej już iść "od zera" i implementować strukturę. Tylko że w PHP nie ma tego "zera" (w C, C++ jak najbardziej istnieje), a jedyną najbliższą jest array(), którą byśmy okrajali z jej funkcjonalności tylko.

A jeszcze idąc wątku język -> płaca... Skoro piszę w określonym języku, ale znam także i wykorzystuję inne oznacza, że pracując skaczę pomiędzy nimi. Pracodawca ma mi wiec płacić za jaki? 8.00-10.00 stawka za PHP, 10.00-11.00 stawka za JS, 11.00-12.00 za CSS, 12.00-13.00 za HTML, 13.00-15.00 za C++ dla CGI, 15.00-16.00 za PHP (IMG:style_emoticons/default/biggrin.gif) Wyobrażasz sobie takie głupoty ze stawkami za określony "język" używany ? (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
Pilsener
post
Post #76





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Przypomina mi to dyskusję taksówkarzy (zawodowcy kontra amatorzy, lepsze fury kontra gorsze), którzy prawem kaduka wywalczyli sobie licencjonowanie, limity, naciągają klientów przewożąc ich przez dodatkowe klasy etc. Tutaj jest podobnie, "programuję więc jestem", kto ma licencję na programowanie wydaną przez lokalny samorząd to jo, reszta to wieśniaki lub mówiąc językiem średniowiecznych cechów rzemieślniczych: partacze? Czy chcemy, aby było tak jak w Niemczech, gdzie konserwator w szkole nie może wymienić żarówki, bo nie jest elektrykiem ani zamalować bazgrołów na ścianie, bo nie jest malarzem?

Mi tam wszystko jedno, jak klient chce "programisty PHP do zmiany stopki w PHP Fusion", to przedstawiam się jako programista i stopkę zmieniam, jeśli klient woła "skryptu do wystawiania faktur", to przedstawiam się też jako programista, który mu skrypt napisze (IMG:style_emoticons/default/smile.gif)

Zostawmy tytuły Waszmoście, liczą się umiejętności, dla mnie programista to każdy, kto pisze kod źródłowy interpretowany przez jakąś maszynę.
Go to the top of the page
+Quote Post
Jabol
post
Post #77





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

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


@thek: z tym FIFO to chodzi o czytelność. Ty sobie użyjesz zwykłej tablicy i będzie działać. Tak samo w Javie mógłbym do wszystkiego brać java.util.Vector. Ale jak ktoś przyjdzie i będzie czytał i nie będzie znał Twojej idei to dużo szybciej się połapie jak Twoja klasa będzie się nazywała Stack albo Queue (FIFO to taka nieludzka nazwa - nie róbcie z siebie na siłę geeków), nawet jeżeli jest ona tylko opakowaniem dla wyżej wymienionego arraya.
Go to the top of the page
+Quote Post
thek
post
Post #78





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




@Jabol: rozumem to podejście, tylko w PHP uważam je za niepotrzebne. Skoro mamy array() z wszelkimi niezbędnymi metodami to po co mamy to w kolejny kontener pakować? Tworzenie funkcji/metody tylko po to, by odwołać się w niej do już gotowej funkcji języka jest tylko niepotrzebnym wywołaniem funkcji w funkcji. Czy jest sens tworzyć klasę Stack tylko po to by użyć $obiekt_klasy_Stack->push($zmienna) co jest zamienione wewnątrz prostym
  1. public function push($zmienna) {
  2. return array_push($this, $zmienna);
  3. }

Co mi to daje poza tym, że ktoś uzna to za czytelniejsze? równie dobrze można uznać, że każdyjęzyk powinien miećfunkcje we własnym języku i nagle powinno się tworzyć aliasy dla wszystkich funkcji php by array_push było usun_ostatni_element_z_tablicy. W końcu programista nie musi znać obligatoryjnie angielskiego. Dla mnie jest to zmiana na podobnym poziomie.

A FIFO używam z konwencji pisania tutaj. Czy nazwę to FIFO, Queqe czy Kolejka to i tak kwesta tylko nazewnictwa. Wiem co oznacza i stosuję zamiennie. Uważam jednak, że nie ma sensu przerabiać czegoś na nowo tylko po to by pasowało to do pomysłu. Może rzucę przykładem. Czy tworząc system do Multilotka tworzę nowy typ Kulki tylko po to by określał on możliwą liczbę int z przedziału od 1 do 80? Wiem, że spłyciłem maksymalnie, ale to dla mnie analogiczny przykład. Co innego, gdybym miał przechowywać dodatkowo informację: jaka to była liczba w kolejności podczas losowania, w jakim losowaniu padła, czy inna dana statystyczna tycząca tej konkretnej kuli w określonym losowaniu (wiem, zły przykład i nie takie dane powinna kula posiadać, ale to tylko przykład). Wtedy ma to jakiś sens. Ale bez tego nie widzę nawet jednego uzasadnienie takiego podejścia.

Dla mnie programista powinien umieć dostosować się do sytuacji. Po to między innymi mamy wiedzę ogólną, której brak osobom kształconym na Zachodzie Europy. Oni są super specjalistami w wąskiej dziedzinie. Daj im coś spoza jako problem i większość leży oraz kwiczy bo nie wiedzą co z tym zrobić, jak podejść do zagadnienia. Polacy może są mniej wyspecjalizowani, ale wbrew pozorom nie jest to złe, ponieważ łatwiej przez to o szersze spojrzenie na problem. A dokształcić zawsze się można prosto jeśli masz już jakieś podstawy. Nie narzekam wcale, że na studiach miałem podstawy ekonomii, prawa i "nieinformatyczne" przedmioty jak Rysunek techniczny (tak, siedziałem przy stole z linijką, cyrklem i ołówkiem) czy elektronika. Bo jako inżynier muszę takie coś znać w razie gdybym musiał na szybko coś zrobić. Mój kumpel lutował na płycie głównej gdy mu się spalił opornik przed portem klawiatury. Na dodatek nie miał właściwego to zrobił mostek z kilku innych. I komp chodził tak przez kilka tygodni, dopóki nie wlutował prawidłowego. Gdyby był stricte programistą to co by zrobił? Zapewne poszedł kupić nową płytę główną z powodu jednego spalonego opornika. Lub czekał by go zakup klawiatury na USB.

Stosujmy więc wszystko z głową. Nie tylko po to by sobie było. W końcu przecież coś takiego jak komentarz istnieje w razie gdyby coś trzeba było oznaczyć. To tak jak niektórzy mają z Divami i przesadnym wrzucaniu ich byle gdzie. I to samo jest u niektórych z obiektówką. Trylion obiektów nie wiadomo po co (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
nasty
post
Post #79





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

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


Thek... podstawy obiektówki....
http://pl.wikipedia.org/wiki/Hermetyzacja
Go to the top of the page
+Quote Post
thek
post
Post #80





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Jako programista więc powiedz mi czy implementacja stosu dla użytkownika końcowego ma znaczenie jako array lub specjalnie z array stworzonej klasy Stack, skoro i tak nie ma do niej dostępu, gdyż mu nie udostępniasz innych metod niż array_push, array_pop? To tylko "ułatwienie" dla programisty, by w razie czego nie "chlapnął" array_shift, który dla stosu jest niewłaściwym zachowaniem i sypnął wtedy "Sorki, nie możesz tego zrobić". Rozumiem, że hermetyzacja ograniczyła by się zaś do ustawienia private dla zmiennej przechowującej tablicę, a pop, push i read jako zawoalowane end() jako jedyne byłyby public function, bo takie przecież jest zachowanie stosu. Myślisz, że dlaczego uważam to za "sztukę dla sztuki"? Dlaczego tworzenie kompletnie niepotrzebnej klasy, która jest tylko dla mnie jako programisty widoczna, uważam za przerost formy nad treścią. W maluchu mogę zmienić dach i wychromować silnik (widziałem takie cudo (IMG:style_emoticons/default/biggrin.gif) ), ale czy przez to nie będzie on już Fiatem 126p (IMG:style_emoticons/default/winksmiley.jpg) Inny ciut design, a pod spodem i tak to samo. Ale zmień silnik, pobaw się z układami podwozia i pod spodem już coś innego. To już nie prosta zmiana koloru farby dorzucenie naklejki czy mało istotnych elementów. Zamiana array na Stos to jak wyciągnąć z malucha kilka części, zaspawać wszystko poza drzwiami od strony kierowcy, wyrwać pokrętła do opuszczania szyb, zdemontować ręczny i całość pomalować (IMG:style_emoticons/default/winksmiley.jpg) Teraz nazywamy to Maleństwo (IMG:style_emoticons/default/tongue.gif) Ale to nadal maluch, tyle że hermetyzacja ograniczyła Cię do jednych drzwi, braku wentylacji, a o hamowaniu na ręcznym to tylko pomarz (IMG:style_emoticons/default/winksmiley.jpg)

Ten post edytował thek 9.01.2010, 23:30:45
Go to the top of the page
+Quote Post
Zyx
post
Post #81





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

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


Nasty, kilka faktów, o których najwyraźniej zapominasz:

1. Lekturka na dzień dobry:

http://docs.php.net/manual/en/class.splstack.php
http://docs.php.net/manual/en/class.splqueue.php
http://docs.php.net/manual/en/class.splheap.php
http://docs.php.net/manual/en/class.splmaxheap.php
http://docs.php.net/manual/en/class.splminheap.php
http://docs.php.net/manual/en/class.splpriorityqueue.php
http://docs.php.net/manual/en/class.splfixedarray.php
http://docs.php.net/manual/en/class.splobjectstorage.php

I nie gadaj głupot, że "w PHP nie ma struktur danych". Algorytmy ZAZWYCZAJ wymagają złożonych struktur danych, ale nie ZAWSZE. Pokaż mi, jakiej to skomplikowanej struktury używasz w algorytmie obliczania silni. Tylko nie zacznij mi udowadniać, że to nie jest algorytm (a co niby? Lodówka?). Udowodnij, że w PHP nie da się zaimplementować maszyny Turinga (stricte dodam, byś się nie miał do czego przyczepić: pomijając wymóg posiadania nieskończonej taśmy), jeśli chcesz wygłaszać publicznie głupoty, że w "PHP się nie da implementować algorytmów".

2. Tablice wcale nie są potrzebne w PHP do zaimplementowania np. stosu, ale są najprostsze. Ja też sobie mogę w C++ zaimplementować stos z użyciem kopca Fibonacciego, jak się uprę, ale to nie jest wcale powód do twierdzenia, że "i z tego powodu w C++ nie da się implementować algorytmów". Nie przyszło Ci do głowy, że taki stos można zrobić wyłącznie na obiektach, niemal dokładnie tak samo, jak zrobiłbyś to np. w C++ czy w Javie? A jak już jesteśmy tak precyzyjni, to tablica PHP jak najbardziej jest odpowiednią strukturą danych akurat dla stosu, gdyż jej implementacja w C stosowana w Zend Engine wyposażona jest nie tylko w haszowanie, ale też w funkcjonalność listy dwukierunkowej.

Bądźmy poważni z argumentami dotyczącymi PHP.
Go to the top of the page
+Quote Post
thek
post
Post #82





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Chyba nie ma sensowniejszego poparcia mojego rozdzielenia implementacji algorytmu od implementacji struktury danych niż post powyżej. Wystarczy zajrzeć w linki by sobie zobaczyć co implementują klasy SPL.

Ale idąc do głównego pytania tematu znów i je nieco parafrazując. Dlaczego programistów PHP nie uważa się za programistów? Czy łatwość pisania sprawia, że uznaje się go za język "niepoważny" i "nieprofesjonalny" w przeciwieństwie do choćby Pythona?
Go to the top of the page
+Quote Post
Theqos
post
Post #83





Grupa: Zarejestrowani
Postów: 49
Pomógł: 8
Dołączył: 5.12.2008

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


Cytat(thek @ 9.01.2010, 22:29:48 ) *
Jako programista więc powiedz mi czy implementacja stosu dla użytkownika końcowego ma znaczenie jako array lub specjalnie z array stworzonej klasy Stack, skoro i tak nie ma do niej dostępu, gdyż mu nie udostępniasz innych metod niż array_push, array_pop?


A jak bedziesz chciał rozszerzyć funkcjonalność stosu, chociazby o jakies glupie logowanie, to bedziesz potem szukal tego array_push/pop po kodzie? A jak w php 6 usuna te instrukcje, to też będziesz latał po kodzie i poprawial?
Go to the top of the page
+Quote Post
Spawnm
post
Post #84





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




@Thek -> w javie aplikacje okienkowe też się łatwo pisze a trudno coś złego usłyszeć na jave (IMG:style_emoticons/default/winksmiley.jpg)

Go to the top of the page
+Quote Post
Theqos
post
Post #85





Grupa: Zarejestrowani
Postów: 49
Pomógł: 8
Dołączył: 5.12.2008

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


Cytat(Spawnm @ 11.01.2010, 14:45:47 ) *
w javie aplikacje okienkowe też się łatwo pisze a trudno coś złego usłyszeć na jave (IMG:style_emoticons/default/winksmiley.jpg)


Niebezpieczne Java-Szkoły
Go to the top of the page
+Quote Post
dr4ko
post
Post #86





Grupa: Zarejestrowani
Postów: 49
Pomógł: 4
Dołączył: 16.07.2008
Skąd: Gdańsk

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


Cytat(Theqos @ 11.01.2010, 14:38:43 ) *
A jak bedziesz chciał rozszerzyć funkcjonalność stosu, chociazby o jakies glupie logowanie, to bedziesz potem szukal tego array_push/pop po kodzie? A jak w php 6 usuna te instrukcje, to też będziesz latał po kodzie i poprawial?


A jak usuną dziedziczenie klas? Albo interfejsy? Albo coś jeszcze bardziej absurdalnego? Panowie, bez jakichś kosmosów proszę.
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #87





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Jak usuną dziedziczenie, to dopiero się okaże, kto umie programować obiektowo (IMG:style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
thek
post
Post #88





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Cytat(Theqos @ 11.01.2010, 14:38:43 ) *
A jak bedziesz chciał rozszerzyć funkcjonalność stosu, chociazby o jakies glupie logowanie, to bedziesz potem szukal tego array_push/pop po kodzie? A jak w php 6 usuna te instrukcje, to też będziesz latał po kodzie i poprawial?
Jeśli zechcę rozszerzyć to o logowanie to znaczy, że nie przemyślałem projektu dokładnie i klas jakie chcę zawrzeć w nim. A usunąć nie usuną z prostej przyczyny. Te funkcje są newralgiczne. Z tej samej przyczyny nigdy nie usuną funkcji scanf i printf bez całkowitej przebudowy php i zerwania z wieloma funkcjami uznawanymi za niezbędne, bo niżej poziomowe niż obiektowe klasy do tego celu już przystosowane (IMG:style_emoticons/default/smile.gif)
Cytat(Spawnm @ 11.01.2010, 14:45:47 ) *
@Thek -> w javie aplikacje okienkowe też się łatwo pisze a trudno coś złego usłyszeć na jave (IMG:style_emoticons/default/winksmiley.jpg)
Zależy co chce się zrobić. Aplikacja desktopowa z półprzezroczystymi elementami graficznymi samoskalującymi się przy rozszerzaniu okna to dla wielu tortura. Oprogramowanie tego, co nie ma mieć stałych rozmiarów i reagować musi na zmiany rozmiaru formatki, to także swego rodzaju sztuka. W JAVA to też nie jest proste do zrobienia. Niezależnie z jakiej biblioteki korzystasz. Nawet w wydawało by się fajnym Swing, są problemy przy bardziej złożonych layoutach.

Ten post edytował thek 11.01.2010, 15:20:14
Go to the top of the page
+Quote Post
Theqos
post
Post #89





Grupa: Zarejestrowani
Postów: 49
Pomógł: 8
Dołączył: 5.12.2008

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


Cytat(dr4ko @ 11.01.2010, 15:06:03 ) *
A jak usuną dziedziczenie klas? Albo interfejsy? Albo coś jeszcze bardziej absurdalnego? Panowie, bez jakichś kosmosów proszę.


Ale jakie kosmosy? Ze usuną funkcję z php? To jakaś nowość? Ze ktoś będzie chciał sobie zmienić implementacje stosu? A może trzeba będzie to przepisać na jakiś normalny język (IMG:style_emoticons/default/winksmiley.jpg)

Po co http://docs.php.net/manual/en/class.splstack.php skoro sa array_push/pop i jeszcze wrednie to dziedziczy po jakiejs liscie i implementuje jakies tam interfejsy O.o

Cytat(thek @ 11.01.2010, 15:19:11 ) *
Jeśli zechcę rozszerzyć to o logowanie to znaczy, że nie przemyślałem projektu dokładnie i klas jakie chcę zawrzeć w nim.

Bo wszystko wiemy na początku i nie zaczynamy programować dopóki nie mamy pełnej dokumentacji w najdrobniejszych szczegółach. Aha i klient nigdy nie zmienia zdania, a program raz napisany już nie jest rozbudowywany (IMG:style_emoticons/default/winksmiley.jpg)

Cytat(thek @ 11.01.2010, 15:19:11 ) *
Nawet w wydawało by się fajnym Swing, są problemy przy bardziej złożonych layoutach.

Od kiedy Swing jest fajny? (IMG:style_emoticons/default/tongue.gif) Przecież nikt nie pisze aplikacji desktopowych w Javie (nieliczac narzedzi do pisania w javie).


Ten post edytował Theqos 11.01.2010, 15:36:11
Go to the top of the page
+Quote Post
dr4ko
post
Post #90





Grupa: Zarejestrowani
Postów: 49
Pomógł: 4
Dołączył: 16.07.2008
Skąd: Gdańsk

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


Możemy tak sobie gdybać do końca świata i na temat każdej wbudowanej funkcjonalności PHP. To samo można by odnieść do JAVY albo C++. Zawsze istnieje możliwość że np Microsoft przestanie wspierać DirectX. Czy to oznacza że nie należy używać tej biblioteki?
Go to the top of the page
+Quote Post
thek
post
Post #91





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Cytat(dr4ko @ 11.01.2010, 15:06:03 ) *
A jak usuną dziedziczenie klas? Albo interfejsy? Albo coś jeszcze bardziej absurdalnego? Panowie, bez jakichś kosmosów proszę.

Dla mnie interfejs to jedynie graniczenie na zasadzie "to musi być w nowej klasie i nie wymigasz się od tego" (IMG:style_emoticons/default/winksmiley.jpg) Szczerze mówiąc to ja rzadko implementuję cokolwiek pisząc obiektowo głównie "od zera" lub ewentualnie dziedzicząc po prostszej klasie. Stąd robienie Stosu z Array poprzez jej okrojenie uznałem za naturalne w pewien sposób dla wielu, choć dla mnie powinno to być jako implementacja prostej klasy typu object z mapą. Dziedziczenie według mnie ma za cel rozszerzać działanie klasy, a nie je ograniczać. Stąd weźmy przykładowo klasę usera forum. Gość jest bazowy. Klasa Zalogowany dziedziczy po nim wszystko i coś dodaje. A Admin to dziedziczenie po Zalogowany i jego rozszerzenie. Proste.

Cytat(Cysiaczek @ 11.01.2010, 15:15:23 ) *
Jak usuną dziedziczenie, to dopiero się okaże, kto umie programować obiektowo (IMG:style_emoticons/default/snitch.gif)
Jeśli to usunęliby to coś takiego jak powielanie kodu skutecznie by wkurzyło wszystkich. Wyobrażasz sobie pisanie całej definicji wszystkiego w klasach od zera zamiast prostego wywołania klasy rodzica? Obiektówka straciła by całą swą siłę praktycznie w jednej chwili. Bo co nam by dało to, że super napiszemy wszystko obiektowo skoro nie możemy dziedziczyć i następuje powielanie kodu. Cofamy się do sensowniejszego w takiej chwili programowania strukturalnego i pisania wszystkiego w bibliotekach funkcji.

Cytat(Theqos @ 11.01.2010, 15:35:12 ) *
Ale jakie kosmosy? Ze usuną funkcję z php? To jakaś nowość? Ze ktoś będzie chciał sobie zmienić implementacje stosu? A może trzeba będzie to przepisać na jakiś normalny język (IMG:style_emoticons/default/winksmiley.jpg)

Po co http://docs.php.net/manual/en/class.splstack.php skoro sa array_push/pop i jeszcze wrednie to dziedziczy po jakiejs liscie i implementuje jakies tam interfejsy O.o


Bo wszystko wiemy na początku i nie zaczynamy programować dopóki nie mamy pełnej dokumentacji w najdrobniejszych szczegółach. Aha i klient nigdy nie zmienia zdania, a program raz napisany już nie jest rozbudowywany (IMG:style_emoticons/default/winksmiley.jpg)


Od kiedy Swing jest fajny? (IMG:style_emoticons/default/tongue.gif) Przecież nikt nie pisze aplikacji desktopowych w Javie (nieliczac narzedzi do pisania w javie).
Po co splstack i inne to robią? Po to, że gdy ktoś chce iść dalej to ma odgórne ograniczenia co musi zachować w nowej klasie. No i dla TWOJEJ programisty wygody, byś nie musiał sam tego implementować bazując na Array. Czy STL i jego klasy w C++ nie dlatego powstały? Ten sam powód u ich powstania leżał.

Jeśli masz klientów na swój kod to do pewnej granicy możesz pozwolić, ale chyba byś strzelił w pysk kolesia gdyby zmienił dokumentację na kilka dni przed oddaniem i albo rozwiązał umowę, albo policzył kupę extra za to. Zaś dobrze napisany kawał kodu pozwala na rozszerzanie w dowolnym momencie po jego ukończeniu.

"nikt nie pisze aplikacji desktopowych w Javie" - toś strzelił z grubej rury (IMG:style_emoticons/default/biggrin.gif) Normalnie mało się nie popłakałem ze śmiechu. To dlaczego na kompie masz JRE instalowane? Dla picu lub apletów w przeglądarce? (IMG:style_emoticons/default/biggrin.gif) Nie każde oprogramowanie wykonywalne w kompie jest kompilowane z C/C++ (IMG:style_emoticons/default/smile.gif) Odinstaluj sobie JRE w kompie i zobaczymy ile % softu Ci zawyje, że mu go brak (IMG:style_emoticons/default/winksmiley.jpg) Co większe niezależne od systemu operacyjnego oprogramowanie jest pisane w JAVA ze względu na przenośność kodu. Albo dostajesz skompilowany dla danego systemu plik wykonywalny albo dostajesz pliki wykonywalne wymagające JAVA do uruchomienia.

Ten post edytował thek 11.01.2010, 16:19:55
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #92





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Wyobrażam sobie programowanie obiektowe bez dziedziczenia i bez powielania kodu, naprawdę. Nie twierdzę przy tym, że byłoby lepiej, bo odpada wiele naturalnych rozwiązań, ale myślę, że dałoby się to przeżyć.
Cytat
Stąd weźmy przykładowo klasę usera forum. Gość jest bazowy. Klasa Zalogowany dziedziczy po nim wszystko i coś dodaje. A Admin to dziedziczenie po Zalogowany i jego rozszerzenie. Proste.

Można też inaczej: Weźmy obiekt usera forum i uzupełnijmy go o kolejny obiekt - Profil oraz o flagę zalogowania. Admin ma z kolei ustawioną flagę is_admin na true.
Takie obiekty i tak zazwyczaj odpytuje się poprzez interfejs isAdmin() isAthenticated(), więc stosowanie dziedziczenia na tym poziomie można najzwyczajniej w świecie olać, bo nie jest wymagane do uzyskania podobnego efektu :-)
Zrobienie klasy ZjadaczForumowegoChleba i ciągłe sprawdzanie typu instancji to też słabe. Powiesz, że dorzucisz właśnie mtodę isAuthenticated(), która zwróci true dla instanceof ZjadaczForumowegoChleba, a false dla innej (pomijam admina).
Też szkoda, bo tym samym powielamy funkcjonalność. Z założenia typ klasy miał służyć jako dystynktor, tymczasem wprowadzamy kolejne ułatwienia do czegoś, co miało być proste. Z tego powodu właśnie uważam, że wiele osób nadużywa dziedziczenia.

Pozdrawiam
Go to the top of the page
+Quote Post
Crozin
post
Post #93





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Cytat
Jak usuną dziedziczenie, to dopiero się okaże, kto umie programować obiektowo
Wtedy zaś doszłoby pewnie do nadużywania czegoś innego przez niedoświadczonych programistów. Dziedziczenie samo w sobie jest dobre, ale jak każde narzędzie: źle użyte robi więcej złego niż dobrego.

Brak dziedziczenia byłby czymś złym i nienaturalnym, bo o ile przykład thek'a jest dosyć mocno nie trafiony (raczej dziwne mi się wydaje: Gość < Użytkownik < Administrator, bo wszyscy są tym samym tylko mają inne uprawnienia), ale już przykładowo weźmy jakiś... obiekt żądania (request).
Możemy mieć trzy obiekty: Request, WebRequest, CliRequest - dwa ostatnie rozszerzają pierwszy (abstrakcyjny) dodając specyficzną funkcjonalność dla swojego środowiska. Tutaj dziedziczenie wydaje mi się być najprostszą i najbardziej naturalną implementacją.
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #94





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Cytat
Wtedy zaś doszłoby pewnie do nadużywania czegoś innego przez niedoświadczonych programistów. Dziedziczenie samo w sobie jest dobre, ale jak każde narzędzie: źle użyte robi więcej złego niż dobrego.


Pod tym mogę się podpisać (IMG:style_emoticons/default/smile.gif)
Brak dziedziczenia doprowadziłby do konieczności jego symulacji - mam tego świadomość.
Pytam więc, czy znając takie zawiłości i programując w php nie jestem programistą? (IMG:style_emoticons/default/axesmiley.png)
Powód edycji: [Cysiaczek]:
Go to the top of the page
+Quote Post
scanner
post
Post #95





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Cytat(Cysiaczek @ 11.01.2010, 18:43:38 ) *
Pytam więc, czy znając takie zawiłości i programując w php nie jestem programistą? (IMG:style_emoticons/default/axesmiley.png)

OT: Ty akurat jesteś zaawansowanym mentaxowym murzinem (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #96





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




ahah! Znajdę zaraz jakiś paragraf na Ciebie..., w odwecie za ujawnianie takich wrażliwych danych osobowych jak kolor skóry (bądź co bądź)admina forum.php.pl (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
thek
post
Post #97





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Cytat(Crozin @ 11.01.2010, 17:25:03 ) *
o ile przykład thek'a jest dosyć mocno nie trafiony (raczej dziwne mi się wydaje: Gość < Użytkownik < Administrator, bo wszyscy są tym samym tylko mają inne uprawnienia)
Wszystko zależy od spojrzenia i implementacji. Jeśli wszystcy mają pwnedomyślne metod to jest to równoznaczne z najbardziej "dziadowatym" Gościem. User miałby już z kolei dostęp także do własnych "rodzicielskich" funkcjonalności, a więc znacznie rozszerzał możliwości klasy gość. To już nie byłby interfejs. I to samo tyczyło by Admina względem Usera,który oferowałby swoje 'dziecięce". Nie miałem na myśli ACL w każdym razie (IMG:style_emoticons/default/smile.gif)
Cytat(Cysiaczek @ 11.01.2010, 18:43:38 ) *
Brak dziedziczenia doprowadziłby do konieczności jego symulacji - mam tego świadomość.
Pytam więc, czy znając takie zawiłości i programując w php nie jestem programistą? (IMG:style_emoticons/default/axesmiley.png)
Pisałem już kto jest, a kto nie moim zdaniem programistą. Jeśli ktoś chce to może się nazywać "programistą danego języka", ale to moim zdaniem jeszcze trochę drogi do "informatyka". Miano to jest moim zdaniem zarezerwowane dla osób posiadających znacznie szerszą wiedzę z zakresu informatyki. Nie tylko posiadanie wiedzy o jednym języku. To także wiedza ogólna informatyczna, z zakresu projektowania, inżynierii oprogramowania, systemów operacyjnych, architektury komputerów i wielu dziedzin związanych z informatyką. Programista jest informatykiem "ograniczonym" do pewnego zakresu związanego z tworzeniem oprogramowania. Ale nawet on powinien znać możliwości i ograniczenia swojego narzędzia. Jeśli jest ich świadom to moim zdaniem powinien zasługiwać na swoje miano. Ale nie szalejmy i nie nazywajmy znającego idealnie HTML programistą, bo ten język to tylko język znaczników, nie zaś język programowania.

Cytat(scanner @ 11.01.2010, 19:02:43 ) *
OT: Ty akurat jesteś zaawansowanym mentaxowym murzinem (IMG:style_emoticons/default/tongue.gif)
Ja tm do murzynów nic nie mam, z nimi czy mulatami utrzymywałem znajomości (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Theqos
post
Post #98





Grupa: Zarejestrowani
Postów: 49
Pomógł: 8
Dołączył: 5.12.2008

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


Cytat(thek @ 11.01.2010, 16:15:05 ) *
"nikt nie pisze aplikacji desktopowych w Javie" - toś strzelił z grubej rury (IMG:style_emoticons/default/biggrin.gif) Normalnie mało się nie popłakałem ze śmiechu. To dlaczego na kompie masz JRE instalowane? Dla picu lub apletów w przeglądarce?

Dla Eclipse i Netbeans? Co się mieści w definicji (narzędzia do pisania w Javie). Poza cieżkim klientem torrentów i jakims tam edytorem tekstu, więcej aplikacji nie pomnę. No poprostu zatrzesienie.

Cytat(thek @ 11.01.2010, 16:15:05 ) *
Nie każde oprogramowanie wykonywalne w kompie jest kompilowane z C/C++ (IMG:style_emoticons/default/smile.gif)

No ba, jest jeszcze .NET. Już nawet na linuksie wolą pisać za pomocą Mono niż użerać się ze zbugowanym swingiem.

Cytat(thek @ 11.01.2010, 16:15:05 ) *
Co większe niezależne od systemu operacyjnego oprogramowanie jest pisane w JAVA ze względu na przenośność kodu.

Na przyklad? Byle nie firmy Sun/Oracle. Bo to tak jak mówić, że Silverlight rządzi w sieci pokazując strony MS. Fakty są takie, że Java jest mocna na serwerach, a poza nimi to bida.
Go to the top of the page
+Quote Post
blooregard
post
Post #99


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
No ba, jest jeszcze .NET. Już nawet na linuksie wolą pisać za pomocą Mono niż użerać się ze zbugowanym swingiem.

Dołączam się do kolegi. Jako zadeklarowany Pingwin długo zastanawiałem się, na jakiej platformie dalej rozwijać swoje programistyczne pasje. Powiem tak: mimo dużej sympatii do Sun-a i jego produktów, a w szczególności NetBeans, którego jestem zapalonym fanem i zwolennikiem, każde podejście do Javy kończy się rozczarowaniem. Postanowiłem, że spróbuję alternatywy, a jedyną alternatywą w tej chwili wydaje się być platforma .NET (pomijam języki kompilowane, chodzi mi o alternatywę dla Javy i jej maszyny wirtualnej, czyli właśnie .NET i jego CLR).

Dodatkową zaletą (dla mnie) jest mozliwość tworzenia aplikacji dla .NET w C++, którego znam jeszcze z zamierzchłych czasów (IMG:style_emoticons/default/smile.gif)
No i bardzo przypadł mi do gustu C#, a już możliwość tworzenia za jego pomocą serwisów internetowych (które, BTW, równierz bardzo ładnie uruchamiają się na Linuksie, bo Mono, podobnie zresztą chyba jak Visual Studio dla Windows, posiada zainstalowany serwer www obsługujący serwisy w technologii ASP.NET) doskonale pasuje mi w kontekście dalszego rozwijania się (zawodowo) w zakresie tworzenia serwisów internetowych.

Go to the top of the page
+Quote Post
thek
post
Post #100





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




To wywal JRE z dysku i próbuj popracować normalnie (IMG:style_emoticons/default/winksmiley.jpg) Jeśli masz narzędzia, które działają na wielu OS-ach to niemal na mur beton są one w JAVA. Reszta też powoli zaczyna odgrywać jakąś rolę, ale póki co kompilowane rządzą i będą rządzić. Nie bez powodu. Lepiej kod C++ skompilować pod określonym systemem niż pisać coś między-OS-owego. Mi też JAVA nie podchodzi, ale to nie znaczy, że jest to zły język.

Co do JAVA i Swinga to wynika z czego innego. Naprodukowano programistów od tego, którzy myślą, że są dobrzy, a problemy natury algorytmicznej są dla ich głowy wysiłkiem ponad miarę, jeśli rozwiązania nie ma w google (IMG:style_emoticons/default/winksmiley.jpg) Jeśli nie ma gotowca w necie lub gotowego komponentu za to odpowiedzialnego to leżą i kwiczą. To samo dotyka coraz większej liczby języków programowania. Niedługo dojdzie do etapu "pisania www" przy użyciu php metodą drag&drop (IMG:style_emoticons/default/winksmiley.jpg) Ktoś pewnie zacznie pisać jakieś IDE w stylu Buildera czy Delphi gdzie tylko komponenty będziesz wrzucał a całość będzie podobna do Zend ale z GUI w stylu wspomnianego Buildera czy Delphi (IMG:style_emoticons/default/winksmiley.jpg)

Choćby Matlab, ale to nie jedyne narzędzie. Jeśli ktoś chce mieć coś multi OS-owego to albo kombinuje z technologiami webowymi, albo musi mieć język wykonywalny zarówno na Linux, jak i M$ oraz Macu. JAVA to umożliwia. Tyle że prędzej na nią trafisz pracując w korporacjach lub firmach, gdzie często jest wymieszanie używanych systemów na różnych stanowiskach lub w działach.

Ten post edytował thek 12.01.2010, 10:40:20
Go to the top of the page
+Quote Post

6 Stron V   1 2 3 > » 
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: 23.08.2025 - 19:32