Czy warto uczyc sie Pascala?

0

A nie jest tak, że Pascal jest po prostu mniej popularny i przez to mniej 'udokumentowany' w sieci niż C? Jeśli jest tak jest, to powinna to być znacząca wada przy wyborze Pascala jako języka do nauki, biorąc pod uwagę osobę bardzo początkującą.

0
Hodor napisał(a):

A nie jest tak, że Pascal jest po prostu mniej popularny i przez to mniej 'udokumentowany' w sieci niż C?

Na pewno jest to główna przyczyna, choć nie jedyna.

1

Umiejętność programowania to jedno a znajomość składni danego języka to drugie. Z moich obserwacji wynika, że ludzie często mieszają te dwa pojęcia.

2

W sumie Pascal jest jak Bascom Basic dla AVRów. Niby łatwo go opanować, ale wstyd w tym programować.

0

@au7h: to tak jakby powiedzieć, że wstyd wbijać gwoździe kostką smalcu.

Ale rozwiń swoją myśl. Z chęcią się dowiem dlaczego powinienem się wstydzić tego, że programuję w Pascalu.

0

Bascom z Delphi na wspólna tylko cenę. Zreszta Bascom jest tak prymitywny ze do Pascala nie może startować. Tam nawet modułów czy plików nagłówkowych nie na wiec każdy większy projekt na avr ucieka do C a nawet C++. W Bascomie to pisze się termometr z budzikiem na kilkaset linii bo ma wbudowane protokoły jak 1wire. Porównanie conajmniej nie trafne.

1

Są firmy co rozumieją potrzeby rynku i dostarczają odpowiednie narzędzia/kompilatory dla różnych języków programowania,
jeden lubi blondynki drugi drugi szatynki trzeci czarne a czwarty rude :)
Spójrzcie na portfolio firmy mikroelektronika https://www.mikroe.com/compilers

Dodam jeszcze że ich produkty są właśnie napisane w środowisku Delphi :)

1

Wiecie Mirek Kardaś cały soft z atnel tez pisze w Delphi a jego programy da bardzo użyteczne.

2

Trochę dziwne, że niektórzy boją się programować w Delphi / Pascalu bo wstyd;-)
Za to nie jest wstyd, jak ktoś do banalnego zadania musi zaprząc angulara + node.js bo tak jest modnie! Wtedy nie ma znaczenia, że coś z zależnościami waży 200MB, wolno działa i jest nieintuicyjne, ważne że jest cool:)

ps. nie znaczy to że krytykuje angulara, reacta czy vue - bardzo fajne frameworki, które warto wykorzystać jeśli spełnią dobrze swe zadanie!

2

Jeszcze dla niedowiarków i młodzieży tego forum dla których jedynym i słusznym wyborem jest c#/java/js :)
Komercyjny produkt za niemałe pieniądze Altium Designer też jest tworzony w Delphi :)
https://community.idera.com/developer-tools/b/blog/posts/altium-designer-15-000-000-codelines
Czyli jak widzicie jest potencjał w starym i dobrym języku ObjectPascal.

0

Wiecie znam jeszcze pare drogich programów pisanych w Delphi. Niestety większość poza Polską.

5

zzzzzzz.png

1

@au7h: ale się wysiliłeś! Nawet linku do źródła nie potrafiłeś wstawić – dlaczego? Namalowałeś to w Paincie? ;)

Masz dla odmiany – https://www.pracuj.pl/praca/programista%20delphi;kw:

0.png

I jeszcze to – https://pl.jooble.org/praca-programista-delphi – dla takiego samego zapytania:

1.png

Wiem, wyszukiwanie informacji w sieci to wyższa szkoła jazdy. Poza tym nadal nie ustosunkowałeś się do mojej prośby i wyjaśnienia dlaczego ktokolwiek ma się wstydzić programowania w tej technologii. Czekam więc na wyjaśnienie.

1

https://www.pracuj.pl/praca/programista%20cobol;kw
pr1.png

https://pl.jooble.org/praca-programista-cobol
pr2.png

@furious programming, rozumiem że bronisz swojej technologii, w końcu zainwestowałeś w nią pewnie masę czasu i wysiłku, ale smutna prawda jest taka, że technologie te po prostu odchodzą do lamusa. Oczywiście nie znikną z dnia na dzień bo inercja na to nie pozwoli (vide linkowany Cobol), ale nie czarujmy młodych, że to jakaś wybitnie obiecująca ścieżka kariery w dzisiejszych czasach.

Wziął się wyłącznie z podobieństw związanych ze składnią, a raczej z głównymi konstrukcjami, takimi jak nagłówki, bloki grupujące, deklaracje zmiennych itd. Wygląd kodu można rzec.

Dla tych legendarnych początkujących to dużo. Poza już samo indeksowanie tablic od 1 to coś, czego raczej będzie trzeba się potem oduczyć (aż dziw swoją drogą, że nikt jeszcze nie zalinkował klasycznego tekstu dziadka Dijkstry). Po co się uczyć begin-endów, skoro i tak później będzie się stosowało klamerki (c-podobne) lub samych wycięć (Python)? I tak, z wysokiego poziomu patrząc wszystko to to samo, pętle, warunku itd. bo programowanie się nie zmieniło wcale tak bardzo od czasu Algola 60, ale to nie znaczy, że Algol 60 to dobry wybór na język programowania.

1
Spearhead napisał(a):

@furious programming, rozumiem że bronisz swojej technologii […]

A od kiedy to Pascal jest „moją technologią”? Używam jej, ale nie jest moja i nie traktuję jej jak swojej żony.

Zresztą to nie jest istotne – mnie niezbyt interesują słupki popularności. Interesuje mnie jedynie to, aby Lazarus był cały czas rozwijany, tak abym mógł aktualizować IDE i korzystać z nowości. A to czy będzie z niego korzystać milion czy raptem tysiąc deweloperów, martwić powinno twórców środowiska, a nie mnie.

[…] ale smutna prawda jest taka, że technologie te po prostu odchodzą do lamusa.

No nie, absolutnie nie. Te technologie nie odchodzą powoli do lamusa – one odeszły do lamusa 10-15 lat temu.

ale nie czarujmy młodych, że to jakaś wybitnie obiecująca ścieżka kariery w dzisiejszych czasach.

A kto kogo czaruje? Bo chyba nie przeczytałeś moich poprzednich postów – np. pierwszego, w którym jasno napisałem jaka jest sytuacja (pierwsze dwa paragrafy). Ale wiem – lepiej znów sugerować żem fanboy'em, niż przeczytać moje wypowiedzi ze zrozumieniem. :]

Dla tych legendarnych początkujących to dużo. Poza już samo indeksowanie tablic od 1 to coś, czego raczej będzie trzeba się potem oduczyć […]

No to Ty może nie komentuj dalej, bo nie za bardzo wiesz o czym piszesz. W Pascalu, w żadnym jego dialekcie, nie indeksuje się tablic od 1. No niestety, ale czytanie ze zrozumieniem się kłania (już nie mówiąc o konieczności wsparcia swoich słów dokumentacją, aby utrzymać poziom merytoryczny).

Dziwiłem się lata temu i nadal się dziwię – jak to jest, że większość krytyków Pascala/Delphi w ogóle nie zna technologii, którą krytykuje? Dla mnie to niepojęte… :/

0

A od kiedy to Pascal jest „moją technologią”? Używam jej, ale nie jest moja i nie traktuję jej jak swojej żony.

Twoja, w sensie, że jej używasz. Tak samo można powiedzieć, że Python to moja technologia bo ją lubię i stosuję. Posiadanie nie ma tu nic do rzeczy. Zdawało mi się oczywiste, że podobne konstrukcje językowe funkcjonują w języku polskim.

No nie, absolutnie nie. Te technologie nie odchodzą powoli do lamusa – one odeszły do lamusa 10-15 lat temu.

Na jedno wychodzi.

A kto kogo czaruje? Bo chyba nie przeczytałeś moich poprzednich postów – np. pierwszego, w którym jasno napisałem jaka jest sytuacja (pierwsze dwa paragrafy). Ale wiem – lepiej znów sugerować żem fanboy'em, niż przeczytać moje wypowiedzi ze zrozumieniem. :]

Ktoś czarował, więc lepiej to podkreślać. A do ciebie się zwóciłem bo aktywnie bronisz języka w tym wątku.

No to Ty może nie komentuj dalej, bo nie za bardzo wiesz o czym piszesz. W Pascalu, w żadnym jego dialekcie, nie indeksuje się tablic od 1. No niestety, ale czytanie ze zrozumieniem się kłania (już nie mówiąc o konieczności wsparcia swoich słów dokumentacją, aby utrzymać poziom merytoryczny).

Ok, sprawdziłem i przyznaję że faktycznie można indeksować od dowolnej wartości. Rzecz w tym że większość kodu Pascalowego z jakim miałem styczność te x lat temu, zdawała się preferować konstrukcje typu array [ 1..25] of cośtam. Aż z ciekawości zapytam: czy sam taka konwencję stosujesz, czy raczej array [0..24]?

Dziwiłem się lata temu i nadal się dziwię – jak to jest, że większość krytyków Pascala/Delphi w ogóle nie zna technologii, którą krytykuje? Dla mnie to niepojęte… :/

Cobola też nie znam, co nie przeszkadza mi go odradzać początkującym

EDIT

Aż sobie zajrzałem z ciekawości pierwszy raz od iluśtam lat do "Algorytmy + struktury danych = programy" Wirtha i tam co chwilę jest [1..n].

1

Tablice dynamiczne zawsze są indeksowane od 0 ale po co rozmawiać o danym języku z kimś kto go po prostu kompletnie nie zna. Mam nadzieje, że kiedyś ktoś kto Cię nie zna rzeknie coś "pozytywnego" Twojemu potencjalnemu pracodawcy / dziewczynie czy komuś z rodziny (wstaw co Ci pasuje) na Twój temat.

1
Spearhead napisał(a):

Twoja, w sensie, że jej używasz.

No to pisz, że technologia której używam, a nie moja, bo ona nie jest moja i się z nią nie utożsamiam. Chcecie krytykować to krytykujcie – ale róbcie to z głową, opierając swoje zdanie na faktach, a nie na wymysłach czy plotkach, bo wychodzicie na durniów.

Posiadanie nie ma tu nic do rzeczy.

Wiem że nie ma tutaj nic do rzeczy. Podkreśliłem że to nie jest moja technologia, bo za każdym razem kiedy przychodzi ktoś i trolluje (nie piszę o Tobie) to stosuje zwrot „twoja technologia”. Dlatego za każdym razem widząc tego typu stwierdzenia, mam wrażenie, że trafił się kolejny troll lub dzieciak.

Ktoś czarował, więc lepiej to podkreślać. A do ciebie się zwóciłem bo aktywnie bronisz języka w tym wątku.

Jeśli ktoś czarował to pisz jasno kto, zamiast komentować moje słowa i podając mój nick razem z odpowiedziami do kogoś innego, bo każdy czytający pomyśli, że ja takie rzeczy pisałem. A nie pisałem.

Ok, sprawdziłem i przyznaję że faktycznie można indeksować od dowolnej wartości. Rzecz w tym że większość kodu Pascalowego z jakim miałem styczność te x lat temu, zdawała się preferować konstrukcje typu array [ 1..25] of cośtam.

I co to jest za argument? To że miałeś do czynienia tylko z crapami pokroju kodów pisanych przez uczniaków, wcale nie oznacza, że język nakazuje takiego indeksowania. Wprowadzasz ludzi w błąd pisząc takie rzeczy.

A tak na marginesie – możliwość dowolnego indeksowania macierzy, nie tylko jeśli o indeks pierwszej komórki, ale też możliwość indeksowania innymi typami niż całkowitoliczbowe, to jedna ze wspaniałości tego języka.

Aż z ciekawości zapytam: czy sam taka konwencję stosujesz, czy raczej array [0..24]?

Jeśli aż tak ciekawy jesteś to rozejrzyj się po forum i sprawdź kody, które podawałem w odpowiedziach. A jeśli nie chce Ci się szukać, to tak – zawsze macierze indeksuję od 0. Jeśli w ogóle muszę ich używać – w typowych zastosowaniach używam list i map generycznych, nie macierzy, ze względu na wygodę i przyjemne API.

Cobola też nie znam, co nie przeszkadza mi go odradzać początkującym

Jeśli czegoś nie znasz to ani nie komentuj, ani nie odradzaj, ani też nie polecaj. W przeciwnym razie Twoje zdanie nie ma żadnych logicznych i merytorycznych podstaw. Zgadywanie jest dobre we wróżbiarstwie, nie w programowaniu.

1
kAzek napisał(a):

Tablice dynamiczne zawsze są indeksowane od 0 ale po co rozmawiać o danym języku z kimś kto go po prostu kompletnie nie zna. Mam nadzieje, że kiedyś ktoś kto Cię nie zna rzeknie coś "pozytywnego" Twojemu potencjalnemu pracodawcy / dziewczynie czy komuś z rodziny (wstaw co Ci pasuje) na Twój temat.

Kolega się chyba poczuł osobiście dotknięty.

furious programming napisał(a):

I co to jest za argument? To że miałeś do czynienia tylko z crapami pokroju kodów pisanych przez uczniaków, wcale nie oznacza, że język nakazuje takiego indeksowania. Wprowadzasz ludzi w błąd pisząc takie rzeczy.

To nie argument tylko wyjaśnienie skąd się wziął ów błąd, do którego się przyznałem.

Cobola też nie znam, co nie przeszkadza mi go odradzać początkującym

Jeśli czegoś nie znasz to ani nie komentuj, ani nie odradzaj, ani też nie polecaj. W przeciwnym razie Twoje zdanie nie ma żadnych logicznych i merytorycznych podstaw. Zgadywanie jest dobre we wróżbiarstwie, nie w programowaniu.

Komentować mogę bo w jakimś jednak stopniu znam i rozumiem sytuację na rynku. Niech i ma Pascal i milion "wspaniałości", o których nie wiem, to w żaden sposób nie zmienia faktu, że jego użycie jest obecnie znikome, a nauka mało praktyczna. Jakoś te bajery mu nie pomogły zawojować rynku.

6

Co do zasady to się w pełni z zgadzam z chłopakami z "obozu Pascala".

Owszem, ten język obecnie jest już niszowy, niemniej można w nim tworzyć "normalne" aplikacje. Jedynym realnym problemem jest znalezienie sensownie myślących ludzi, którzy będą chcieli w tym pisać, a nie bezmyślnie powtarzać za większością, że to badziew dla amatorów, który się do niczego nie nadaje. Bo faktem jest, że nowoczesny Pascal (czy to w wersji Lazarusowej, czy Delphi) naprawdę nie odbiega mocno od innych "porządnych" języków. Owszem, częściowo z racji naleciałości historycznych, częściowo z racji mniejszej popularności, pewne tematy są w nim trudniejsze do ogarnięcia, niż w "dobrych" odpowiednikach, ale nie jest to taka skala, jak niektórzy sugerują. Bo czytając to, co wypisujecie, można odnieść wrażenie, że porównujecie osoby piszące w Pascalu do jakiegoś oszołoma, który chce kopać fundamenty pod wieżowiec przy pomocy widelca ;)

Ważne jest, żeby mieć świadomość możliwości swojego narzędzia oraz oczywiście jego ograniczeń. Zapewne są rzeczy, które da się zrobić lepiej.szybciej korzystając z innej technologii, ale nie jest to argument, który totalnie pogrąża Pascala, bo tak naprawdę zawsze się znajdzie inne narzędzie/rozwiązanie/technologia bardziej pasujące w danym przypadku. Pięknym przykładem jest gierka Furiousa. Można było zrobić to w jedno popołudnie, korzystając z jakiegoś gotowego silnika, albo nawet ręcznie, korzystając jedynie z OpenGL/DX. FP sobie wymyślił, że chce to napisać "ręcznie" i od zera, bez wykorzystania gotowych bibliotek. I dało się. Tak samo można w Pascalu napisać dowolną inną rzecz. Oczywiście - nie popadajmy w paranoję, żeby wszystko samemu pisać, jak się da to lepiej korzystać z gotowych bibliotek/rozwiązań (których, wprawdzie jest mniej niż w innych językach, ale i tak ilość gotowych komponentów i bibliotek jest duża), ale ich brak nie dyskwalifikuje Pascala jako narzędzia do pracy.

Jeszcze jedna rzecz na zakończenie, żebym był obiektywny - akurat czepianie się "twojej technologii" jest przesadzone. Myślę, że doskonale było wiadomo, o co chodziło w tym stwierdzeniu i nie dopatruję się w nim niczego negatywnego/obraźliwego, stąd też nie rozumiem, czemu Furious się tak oburzyłeś i zacząłeś to prostować. Dla mnie to stwierdzenie było jednoznaczne z "technologia, z której korzystasz", a nie "język, który sam wymyśliłeś" albo coś w ten deseń. Tak samo, jak się mówi "X to moja drużyna" - wiadomo, że chodzi o bycie kibicem, a nie posiadanie większości udziałów w klubie sportowym. Przez takie czepianie się nieistotnych głupot, sensowne argumenty tracą swoją siłę, gubią się w tłumie :(

0
Spearhead napisał(a):

Komentować mogę bo w jakimś jednak stopniu znam i rozumiem sytuację na rynku.

Nie zrozumiałeś (znowu?) – nie pisałem o komentowaniu sytuacji na rynku pracy, a o krytykowaniu języka.

Niech i ma Pascal i milion "wspaniałości", o których nie wiem, to w żaden sposób nie zmienia faktu, że jego użycie jest obecnie znikome […]

Tak, i o tym napisało już iks osób na początku tego wątku.

[…] a nauka mało praktyczna.

To zależy – nie każdy od dziecka marzy o byciu Javowcem. Tak wiem – nikt nie wybierze Pascala do nowych projektów. Za mało popularny, szkoda sensu.

0

Spokojnie....Ci co będą chcieli, będą sobie pisać w delphi/lazarus....może wkrótce staniemy sie niszą jak Cobol. Moze coś nagle wystrzeli..kto wie, w końcu mikroserwisy można pisać w dowolnym języku a w object pascalu powstają bardzo szybko. A jak nie, no cóż ...zostaje c# stworzony przez ojca delphi, albo javascript, który jak dla mnie ma wiele podobieństw...sorki za ew błędy ale po alkoholu zawsze gorzej ;-)

0

Indeksowanie tablic o 1 stosuje sie w duzej czesci srodowisk zorientowanych na matematyke i nie jest to jakas fanaberia tylko tradycja pochodzaca z matematyki.

http://xahlee.info/comp/comp_lang_array_index_start_0_or_1.html

Wyciaganie tego jako wady jezyka jest naprawde niskich lotow. Zwlaszcza ze w Pascalu (i pewnie Moduli, Oberonie i Adzie) jest to akurat do obejscia.

0

Nie należało zgadzać się na rozpowszechnianie trendu na użycie tylko jednego języka programowania. Wszelkie monopole są szkodliwe. Skutkiem tego było to, że klienci zamawiali nie tylko program, ale żeby był on napisany tylko w jednym reklamowanym języku programowania, bo bali się że później nie znajdą inżyniera do konserwacji programu.

0
MariuszJ napisał(a):

Skutkiem tego było to, że klienci zamawiali nie tylko program, ale żeby był on napisany tylko w jednym reklamowanym języku programowania, bo bali się że później nie znajdą inżyniera do konserwacji programu.

Zakładając że jest to prawda (nie mam wiedzy na ten temat) to z biznesowego punktu widzenia jest to uzasadnione. Nikt przecież nie miał zamiaru wydawania masy pieniędzy na produkt, którego później, w razie potrzeby, nie miałby kto rozszerzyć.

Dziś jest podobnie – nie tworzy się nowego oprogramowania w wymierających technologiach.

3
Alek22 napisał(a):

Czy warto uczyc sie pascala?

Pascala raczej nie, może Delphi (https://www.embarcadero.com), poza stackiem od Microsoftu do webowych rzeczy, używamy tego na produkcji dla desktopu (VCL) i mobilek (Android oraz iOS na FMX), ale łatwo nie jest bo o ile język jest całkiem OK, to już Firemonkey (FMX) jest znacznie gorszy od Fluttera do którego planujemy uciec. Tego wszystkiego nie poprawia fakt, że RAD Studio jest strasznie badziewne, i nijak ma się do Visual Studio czy VS Code, więc jak np. mamy jakiegoś smiałka :) który wyraził chęć pisania w tym... dostaje szału, pierwszą z rzeczy którą musi zrobić to wyłączenie... sprawdzania błędów (wprowadzono inline variables, które wywala error insighta oraz opcje refactoringu - np. jak chcę wyekstrahować metodę to wrzuca kod do innej metody przed słowem var! Albo zmiana nazwy zmiennej, jak mam w całym projekcie do zmiany to zmienia mi tylko kilka pierwszych i koniec, resztę trzeba ręcznie poprawiać albo uzyć Notepad++... i to wszystko za ponad 4 tys. euro subskrypcji per developer w wersji Enterprise). Mało tego, nie ma error recovery... kompilator zatrzymuje się zwykle na pierwszym błędzie i code completion przestaje działać... . Twórca Trubo Pascal i współtwórca Delphi (oraz C#, Typescript), Anders Hejlsberg mówi m.in. o tym w filmie o kompilatorach: (polecam uważnie posłuchać - warto tak ogólnie).

Fakt, faktem, to nisza, nie ma wielu ludzi, którzy znają ten dialekt bądź chcą się go uczyć/używać. Więc jak myślisz stricte o pracy, to pewnie lepiej brać się za mainstream (C#, TypeScript, Java i takie tam). Moja firma np. będzie już tylko utrzymywać projekt w Delphi 10.3.1 (czekamy na poprawki to 10.3.2 - może nie zepsują innych rzeczy), ale nic nowego nie będziemy robić. Osobiście lubię ten dialekt i dobrze mi się w nim pisze, ale realia już nie pozwalają na robienie buisnessu, chyba że coś się nagle zmieni. Póki co, wszyscy czekają aż EMBA naprostuje RAD Studio... (od dobrych kilku lat może), ale poza językiem pojawia się problem pt. Firemonkey, bardziej obyci z tym tworem developerzy piszą, iż jest źle zaprojektowany - posty Dalij (więcej tutaj: https://en.delphipraxis.net/topic/1233-fmxlinux-bundling-with-delphi-and-rad-studio/?tab=comments#comment-10282) No coż... :)

Ale Delphi zawsze będę dobrze wspominał, zaczynałem od Basica, potem był Pascal, Assembler, C, Delphi, C#, Dart... i teraz to już głównie C# i ostatnio Dart (z wiadomych powodów).

1
TommyDev napisał(a):

Tego wszystkiego nie poprawia fakt, że RAD Studio jest strasznie badziewne, i nijak ma się do Visual Studio czy VS Code, więc jak np. mamy jakiegoś smiałka :) który wyraził chęć pisania w tym... dostaje szału, pierwszą z rzeczy którą musi zrobić to wyłączenie... sprawdzania błędów (wprowadzono inline variables, które wywala error insighta oraz opcje refactoringu - np. jak chcę wyekstrahować metodę to wrzuca kod do innej metody przed słowem var! Albo zmiana nazwy zmiennej, jak mam w całym projekcie do zmiany to zmienia mi tylko kilka pierwszych i koniec, resztę trzeba ręcznie poprawiać albo uzyć Notepad++...

Tyle że to nie jest wyłączna przypadłość środowisk od embarcadero.

Tego samego typu problemy dotyczą również innych środowisk, w tym komercyjnych. Sam praktycznie codziennie użeram się z błędami w narzędziach Lazarusa (ten przynajmniej jest darmowy i nie ssie), który też często nie radzi sobie z tak prostymi funkcjami jak szukanie referencji czy podpowiadanie składni (albo rzuca wyjątki i crashuje się całkowicie).

Visual Studio też nie jest lepszy – prześledź sobie wpisy kolegi @several na temat błędów w tym IDE (click!). Tego typu bugi są dość popularne w najróżniejszych środowiskach.


Dziadowskości FMX nie skomentuję, bo nie miałem z tą biblioteką do czynienia, ale często w sieci natrafiam na artykuły opisujące jej problemy – kiepsko się prezentuje, mimo sporej funkcjonalności.

2

Odświeżam, chyba warto uczyć się Pascala ;-)

0

Tak na serio to mimo ze programuje w tym najdluzej, nie wiem jak mozna wybrac C/C++ do aplikacji typu mission-critical (obsluga rakiet roznej masci, komputery pokladowe i systemu wspierajace podtrzymanie zycia).

0

Nie mogę teraz tego nigdzie znaleźć, ale swego czasu czytałem, że jakiś polski wóz bojowy miał system sterowania napisany pod czystym DOS-em i kto wie, czy właśnie nie w Pascalu...

1 użytkowników online, w tym zalogowanych: 0, gości: 1