Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

7 Stron V  « < 5 6 7  
Reply to this topicStart new topic
> Frameworki PHP vs Ruby On Rails, Skąd ten agresywny marketing w community RoR ?
marcio
post
Post #121





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


Cytat
Może cała ta dyskusja o klasach i strukturach wzieła się stąd, że o ile pamiętam, w C++ słowo kluczowe struct od class róźni się tylko tym, że struct ma elementy oznaczone domyślnie jako public, a class jako private

W C# jest podobnie tylko ze struktura jest juz bardziej rozbudowana od tej w C, w C to tylko kontener na dane roznego typu.

@nasty akurat w poniedzialek i wczoraj mialem poprawki w szkole ;] wiec czasu nie mialem, a w linku podanym jest wszystko napisane wystarczy przeczytac te 15 stron (IMG:style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
nasty
post
Post #122





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

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


Cytat(marcio @ 8.09.2010, 09:47:53 ) *
W C# jest podobnie tylko ze struktura jest juz bardziej rozbudowana od tej w C, w C to tylko kontener na dane roznego typu.

@nasty akurat w poniedzialek i wczoraj mialem poprawki w szkole ;] wiec czasu nie mialem, a w linku podanym jest wszystko napisane wystarczy przeczytac te 15 stron (IMG:style_emoticons/default/snitch.gif)


Marcio, umówmy się, że jak znowu zaczniesz pieprzyć głupoty to potem o nich poczytasz, żebyś mógł grzecznie przeprosić, że się mylisz. Bo widzę, że nie mam co liczyć na to żebyś najpierw się dowiedział a dopiero potem pisał.

Klasa i struktura w C# to to samo? Mylisz się.

Jedną z podstawowych różnic jaka jest pomiędzy klasą a strukturą w C# jest taka, że klasy w pamięci lądują na stercie, razem z innymi klasami. Inaczej są zarządzane, inaczej są obsługiwane ich zasięgi, inaczej są czyszczone przez GC.
Struktury lądują na stosie, czyli tam gdzie lądują inty, double, bool, i inne take "prymitywne" typy. Jest traktowana na równi z nimi pod każdym względem. Dlatego też, inaczej są tworzone kopie a referencje na klasy. i też z bardzo podobnego powodu struktury nie mogą być nullem a muszą być zainicjalizowane. to się sprowadza to tego czym one są.
Tak jak powiedziałem, struktura to tylko jest po to, żeby nie przekazywać 15 intów, 8 wskaźników i kilku floatów jak się przekazuję to gdzieś dalej.

Dlatego jeszcze raz proszę, zamiast myśleć, że jesteś fajny jak wyguglujesz mi zaraz znowu jakieś nowe forum, najpierw wiedz o czym mówisz a dopiero potem mów albo przynajmniej jak już to zaczynaj zdania od "wydaje mi się" a nie "niektórzy tego nigdy nie zrozumieją". To Ty nie rozumiesz.

Ten post edytował nasty 8.09.2010, 09:43:56
Go to the top of the page
+Quote Post
thek
post
Post #123





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




Tyle, że mi nie chodzi o optymalizacje, które zaciemniają kod, ale takie, gdzie ich sens jest po prostu wątpliwy. Przykładowo używamy zmiennych, których kopie w programie zaczynają się mnożyć, zamiast być raz i koniec, bo zmienne lokalne mają szybszy dostęp i ktoś myśli, że jak ma zmienną z $_GET i pchnie je do nowej lokalnej to mu to znacząco przyspieszy kod. A gdy tę zmienną jeszcze znowu gdzieś w pętli wyżej walnie to też będzie jeszcze szybszy, zamiast normalnie i po ludzku ciągle z potraktowanej filtrami GET korzystać (IMG:style_emoticons/default/winksmiley.jpg) Przez takie coś tylko pamięć zużywa, zaciemnia faktycznie kod (wiele wersji tej samej zmiennej). Ja nie jestem zwolennikiem szarpania się na 1/100 sekundy. Kod może być odrobinę wolniejszy jeśli zachowuje jakąś sensowną strukturę. Też nie jestem zwolennikiem udziwniania na siłę, tylko po to, by coś było minimalnie tylko szybsze. Tak mogą się bawić maniacy-entuzjaści.

Dlatego cieszę się, że póki co hipertracker zszedł z retoryki "php to jedynie zło" ( (IMG:style_emoticons/default/winksmiley.jpg) ) i zamiast tylko wychwalać Ruby i jego implementacje rozmowa toczy się może nieco offtopem, ale jednak wokół szerszego grona języków i ich przydatności oraz możliwościach. To na pewno redukuje napięcie wywołane forsowaniem argumentacji, która często pasowała do wielu języków, a była przypisywana jedynie Ruby'emu i odnosiła się głównie do pewnych stereotypów czy zachowań ludzkich, a nie języka czy frameworków. Zresztą chyba pewne głosy tutaj dały nieco innym do myślenia, że jednak php-owcy to ludzie nie tylko na jeden język ukierunkowani i mający wiedzę z szerokiego spektrum. Jak w każdym języku są mniej i bardziej uzdolnieni, jednak łatka php-owca jako niezbyt rozgarniętego i małoletniego kolesia o wąskich horyzontach jest dla pewnego grona po prostu krzywdząca. Zwłaszcza tych, którzy potrafią wiele z tego języka wycisnąć poza typowy CRUD. Nie każdy zaczynał programowanie od php i nie każdy na nim skończy. Duża część zna techniki oraz rozwiązania, których w php po prostu nie ma lub nie planuje się wdrożyć, a te które właśnie teraz wchodzą, są im od lat znane. Wystarczy spojrzeć na namespace'y, którymi już od początku w C++ operowałem (wtedy jeszcze wedle słów prowadzącego: "To ma być. Z czasem Wam wyjaśnimy co to i po co, ale póki co piszcie by się program skompilował."), a które dopiero co weszły. Potrafią nieźle namieszać i całkowicie zmienić jego działanie (choćby przeciążanie funkcji, także tych wbudowanych).

Co do Haskella i innych języków to wiadomo, że nigdy jeden człowiek nie pozna wszystkich języków. Aczkolwiek czytając o tym pierwszym, wygląda na całkiem udaną formę niejawnie przekształcającą kod do formy rzeczywiście równoległej. A przynajmniej mu się to w jakimś stopniu udaje, bez znajomości przez programistę przetwarzania równoległego (IMG:style_emoticons/default/smile.gif) Akurat jestem po uczelni, gdzie zagadnienia równoległości i współbieżności były mocno akcentowane i jako uczelnia wysoko nie tylko w tym stoi, ale i faktycznie tę wiedzę studentom chce wpajać i wpaja (współbieżność - Java, równoległość - MPI). Niezależnie od wyboru specjalizacji. Do dziś pewnie niektórym śnią się koszmary, gdzie główną rolę grają MPI_Scatter i MPI_Gather (IMG:style_emoticons/default/winksmiley.jpg)

Ze strukturą jest właśnie to co mówiliśmy oboje. Publiczny dostęp do atrybutów, ale to nadal tylko kontener na inne typy. Od strony budowy, na poziomie kontenera danych, jedynie to je różni. Dalej już klasa ma cały wachlarz możliwości. Tego już strukturze brak i stąd nazwałem ją prymitywną klasą czy też jej protoplastą. Nic więcej nie chciałem strukturze przypisywać, gdyż brak jej nie tylko wszystkich elementów obiektowości jak i choćby możliwości utworzenia w jej ciele metody. Jest tylko kontenerem innych typów danych. Brzmi to może nieco dziwnie, ale jest tylko i aż: Prostym typem złożonym.
Go to the top of the page
+Quote Post
marcio
post
Post #124





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

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


@nasty po pierwsze nie powiedzielem ze struktury i klasy to to samo.
po drugie nie interesuje mnie to jak to wyglada od strony kuchni.
po 3 jak robia takie porownania w ksiazkach i tutorialach cos w tym jest, nie mowie tak bo tak pisza w necie jakby nie patrzec na "strukture" oby "typow" to i jedna i druga moga byc kontenerami na dane i tyle to jest to co je upodabnia do siebie.
Go to the top of the page
+Quote Post
starach
post
Post #125





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

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


Przyznam że na początku trochę mnie zjeżyły wypowiedzi hipertrakera i Raderka, bo sugerowały mi że ostatnie 5 - 7 lat przyswajania PHP idzie w cholerę, ale na dobrą sprawę żaden programista PHP nie ma się co tym przejmować. Uważam że nie ma co się wdawać w dyskusje na temat GC i serwerów aplikacji i tego gdzie one są lepsze, a gdzie ich w ogóle nie ma, bo to jest jak dyskutować o gustach. Oba te aspekty można w obu językach dopracować lub w przypadku serwera aplikacji dla PHP po prostu napisać. Na upartego można nawet stworzyć JPHP jeśli będzie to potrzebne. Natomiast jeśli idzie o metodykę programowania to już można się trochę pospierać.

Przyznaję że dla mnie takie (po)twory jak Joomla, Wordpress, PhpBB o PHPFusion nie wspominając nawet to jest kompletna bzdura i horror. Są jednak metodologie frameworków jak Kohana czy Sy(m)fony - skoro już rozmawiamy o Rails - które narzucają dobre praktyki i specjalnego znaczenia nie ma w nich interpretacja MVC.

Dlatego ( tutaj moja odpowiedź na pierwszy post Wiktor P. ) - Jeśli masz się czegoś uczyć, a znasz już PHP to odpuść sobie Ruby i zajmij się Kohaną oraz koniecznie skoro będziesz miał jakichś tutorów Symfony i Zend'em. Nauczą cię praktyk które zaobserwowałem również w innych językach, a przerzucenie się na te "inne języki" będzie tylko kwestią przyswojenia drobnych różnic. Słowami Rugbisty ( no musiał za tą tonę pomyj jakoś odpłacić (IMG:style_emoticons/default/tongue.gif) ) - Brnij w to bagno dalej. - Jeśli chcesz być dobry to nauczysz się w nim pływać.

Przyznaję, nie piszę tego z punktu widzenia mistrza klawiatury z Bóg wie jakim doświadczeniem, ale z punktu widzenia osoby dla której przyswajalność metodyki jej zrozumienie i prostota ma dosyć istotne znaczenie. Uważam że większość języków jest do siebie bardzo podobna i jeśli bym miał się czymś teraz zająć na poważnie to bez zastanowienia wybrałbym C++. Liznąłem go trochę podobnie ja Ruby, Javy, SmallTalka i ASM'a ( sic! ) i tak na prawdę programiści ( nie Pr0Gr4mi5ćy ) tego języka nie zaznają chudych lat jeszcze przez bardzo długi okres czasu. Natomiast wiedza zdobyta przy PHP na pewno mi/ci pomoże i ułatwi to zadanie.

- Miał być cholera krótki wstęp żeby nie było nie na temat...
Tak na prawdę nie o tym chciałem napisać. ( Tak jakoś samo wyszło. )
Ostatnio usłyszałem o nowym wynalazku developerów Google Corp., a mianowicie o języku GO. Jako że w tym temacie już wypowiadają się osoby z wyższej półki tego forum ( i tak was nienawidzę (IMG:style_emoticons/default/winksmiley.jpg) ) i ścierają się z miłośnikami innego języka których opinie też chciałbym poznać. Uprzejmie zapytowywuję: Warto?

Youtube: The Go Programming Language Rob Pike 30 Października 2009
Go to the top of the page
+Quote Post

7 Stron V  « < 5 6 7
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: 17.12.2025 - 21:13