Bardziej chodzi o to, gdy np.mówisz, że nie lubisz Xyz, bo coś tam coś tam coś tam i twierdzisz, że Abc jest lepsze uzasadniając to jakimiś nierealnymi przykładami, które ukazują wybrane zalety Abc, a nie są ani trochę obiektywne i po prostu... nota bene idiotyczne.
Ale gdzie te nierealne przykłady?
Kwestia przystosowania imo; ilekroć patrzę na jakiś dłuższy C++-owaty kod, to zaczynam dostawać mini ataku epilepsji od tych klamerek.
Poza tym, gdyby to było kompletnie złe rozwiązanie, nie zostałoby zastosowane np.w Rubym.
Nie mówię, że jest kompletnie złe. Mówię tylko, że jest niepotrzebne. Słowa powinny oznaczać ważne rzeczy, które mają rzucać się w oczy: instrukcje i identyfikatory, a nie operatory, ani nie takie detale jak początki bloków, których spokojnie można by w ogóle nie oznaczać.
Dawanie programiście dostępu do klawiatury jest samo w sobie przyzwoleniem na niechlujstwo, nie mówiąc o angażowaniu go w jakiś projekt.
Wiesz, ja tutaj próbuję poważnie dyskutować, a z takimi tekstami jest trudno.
Cóż, again: kwestia przyzwyczajenia. Ja bezproblemowo radzę sobie z rozpoznawaniem wywołań procedur, głównie dlatego, że czym innym może być foo;
, jak nie wywołaniem procedury (a w razie czego IDE dodatkowo podpowiada)? ;)
Często fajnie móc zrobić coś na kilka sposobów, ale nie w tak elementarnej sprawie, jak wywołanie funkcji. Mi to wygląda na coś potencjalnie mylącego.
A to C++ nie pozwala na nazywanie wszystkiego małymi literami, wielkimi literami lub w camel-case?
Nie. Jak zadeklarujesz zmienną foo
, to nie odwołasz się do niej przez FOO
ani Foo
. W w większości normalnych języków też tak jest.
Chyba nie rozumiem pytania: to są po prostu dwa odmienne operatory, w C++ ich odpowiednikami są =
oraz ==
, dla programisty Pascala właśnie podejście C++ jest nielogiczne i vice versa :P
Mi po prostu przymiotnik "logiczny" nie pasuje w tym kontekście. To jest umowa i przyzwyczajenie, a nie logika.
Można by natomiast się wykłócać o logiczność takiego C++owego kodu:
Nie mam zamiaru się o to kłócić. To jest akurat kompletny bezsens i źródło problemów, które nie ma żadnych zalet.
I w ogóle nie rozumiem Twojej kontrargumentów opartych na C++. Czy ja napisałem tutaj coś dobrego o tym języku? **Odniosłem się tylko do kilku wad języka programowania, bo nie chodzi nawet o to, że występują one akurat w Delphi. Po prostu te rozwiązania są złe. **
Nigdzie też nie napisałem, że Delphi to jest zły język, że ma same wady i żadnych zalet, itp.
A w ogóle, to nie chodziło mi o Delphi, tylko o hipokryzję, którą tutaj się uprawia.
Programs must be written for people to read, and only incidentally for machines to execute.
No właśnie. I begin
oraz end
albo różne możliwości odwołania się do tego samego identyfikatora mają w tym pomóc?
Tu zagadka - przypomnijcie sobie świętoszki kto już od dawna najeżdżał na @mcodera i o co - nikt z Was nie jest bez winy;
Nie przypominam sobie, żebym to robił, ale jeśli kojarzysz jakieś moje najazdy na niego, to proszę, podlinkuj.
Sekcja var
? Świetna sprawa dla tych, którzy lubią mieć porządek w kodzie (czyli pedantycznego mnie); Nie trzeba się zastanawiać gdzie co się zadeklarowało, bo wszytko w danej procedurze/funkcji/metodzie/wtf jest w jednym logicznym miejscu;
Porządek polega na niezaśmiecaniu, zmienne zadeklarowane wcześniej niż trzeba, to śmieci. Po co dostęp do czegoś, co nie jest potrzebne? I nie jest to wada jedynie Delphi.
begin
i end
jest pojebane? A:
Kopiuj
sub Foo(ByVal Bald As Integer)
'code here
end sub
już nie jest?
A kto pisał, że nie jest? Oczywiście, że jest złe, jak wszystkie nadmierne śmieciowe słowa kluczowe.
Tylko w tym wątku nikt nie poruszał tematu VB, więc o co Ci chodzi?
No pewnie - lepiej upierdolić się Pascala i wciskać kit, że ma najgorszą składnię
Ale... Kto i gdzie tak napisał? Bo jeśli nikt, nigdzie, to masz jakieś urojenia.
Dla mnie to ogromny plus, przez co nie można obfuskować kodu przez pierdyliard takich samych identyfikatorów różniących się jedynie wielkością liter;
Nikt tak nie robi.
A rozróżnienie jest wygodne, dzięki niemu np. w C# można mieć pole myValue
, właściwość MyValue
i każdy wie co jest czym.
Po raz kolejny używasz bezsensownych argumentów przeczących ustalonym od wiek wieków standardom;
Języki programowania pojawiły się w zeszłym wieku, na dodatek chyba większość z nich stosuje przypisanie przez znak =
.
Wiesz co jest nienormalne? To, że w językach ceplusplusowatych część operatorów ma zupełnie inne znaczenie, niż się tego można spodziewać: =
to nie jest równość, a przypisanie, ==
jest równością, co dziwacznie wygląda, !=
jest operatorem "różności", oczywiście inne znaczenie niż <>
w matematyce;
Ja tu widzę przynajmniej spójność: ==
, <=
, >=
, !=
No tak, teraz trzeba mieć pretensję do twórców wszystkich języków, które nie mają zerżniętej na żywca składni z C;
NIC w tym wątku nie pisałem o C.
Na szczęście są jeszcze języki z czytelną skłądnią, jak choćby wspomniany wyżej VB;
Tak, język, w którym pisze się poematy, zamiast programów, który ma więcej słów kluczowych niż wszystkie pozostałe razem wzięte.
Widać Twoje pojęcie o Pascalu jest zbyt małe na obiektywną ocenę; Poza tym widać zatrzymałeś się w latach 70/80-tych operając się na manii deklarowania wszystkiego globalnie;
WTF? Co Ty pijesz, że takie wnioski wyciągasz?
Niczego nie robię globalnie, wszystkie zmienne deklaruję jak najbliżej miejsca ich użycia.
Logiczne jest, że wpajany od dziecka w szkole na matematyce operator równości oznacza równość, a operator przypisania, który ma inne przeznaczenie ma ma inny identyfikator; Podobnie ze znakiem różności - <>
- który tak samo jest zgodny z matematycznym zapisem;
Programowanie, to nie jest matematyka. Tu nawet liczby zazwyczaj nie działają tak, jak w matematyce.
A to ciekawe, czy niechlujny programista bardziej zobfuskuje kod języka przywiązującego większą wagę do czytelności kodu (tu: Pascala/VB)
Jakiej niby czytelności? Czym wyrażonej? Większą ilością słów niż znaków?
Muszę Cię rozczarować, czytelność nie na tym polega.
Wybacz @somekind, że w większości cytowałem Twoje słowa - użyłeś akurat wszystkich argumentów, które można łatwo obalić; Wypowiadam się jedynie w kwestii składni języka, który tak hejtujecie;
Nie hejtuję tutaj żadnego konkretnego języka, jeśli ktoś tak uważa, to niech się nauczy czytać ze zrozumieniem i nie dopowiadać sobie.