-
X-Received: by 2002:ac8:5249:: with SMTP id y9mr125520qtn.7.1545593375680; Sun, 23
Dec 2018 11:29:35 -0800 (PST)
X-Received: by 2002:ac8:5249:: with SMTP id y9mr125520qtn.7.1545593375680; Sun, 23
Dec 2018 11:29:35 -0800 (PST)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erj
e.net!4.us.feeder.erje.net!feeder.erje.net!weretis.net!feeder6.news.weretis.net
!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.g
iganews.com!nntp.giganews.com!v55no5681128qtk.0!news-out.google.com!h3ni2675qtk
.1!nntp.google.com!v55no5681120qtk.0!postnews.google.com!glegroupsg2000goo.goog
legroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Sun, 23 Dec 2018 11:29:35 -0800 (PST)
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=188.146.76.77;
posting-account=pyti1AoAAAAf66c003TUy10QAAnMWaKw
NNTP-Posting-Host: 188.146.76.77
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <c...@g...com>
Subject: Jaki język polecić początkującemu? - komentarz do artykułu w
Programista 9/2018
From: s...@g...com
Injection-Date: Sun, 23 Dec 2018 19:29:35 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 118
Xref: news-archive.icm.edu.pl pl.comp.programming:213055
[ ukryj nagłówki ]Witam
Ostatnio sobie przeczytałem artykuł z magazynu Programista pt. "Jaki język polecić
początkującemu?". A teraz pragnę go skomentować. Oto skrótowe przedstawienie
artykułu:
[Początki]
Co oczywiste każdy jakoś zaczynał. Autor artykułu zaczynał od Basic-a na Atari.
Następnie odkrył Pascal-a i Delphi by następnie zgłębiać C#. Ta ścieżka wynikała z
rosnących potrzeb rzekomo nie możliwych do realizacji w poprzednich technologiach.
[Prostota]
W nauce łatwo przyswajane są proste koncepcje i one powinny być "pierwszym rzutem".
[Oczekiwania]
Szybkie efekty są pożądane w przypadku nauki programowania.
[Wszechstronność i C-style]
"Oprogramowanie interfejsu użytkownika w C++ to mordęga - na pewno w porównaniu z
rozwiązaniami dostępnymi w C# albo Delphi." "Aplikacji webowych w C++ współcześnie
się raczej nie pisze (a przynajmniej nie słyszałem o żadnym takim przypadku), mobilne
wprawdzie się da, ale wszyscy producenci dosyć zdecydowanie sugerują, by raczej
trzymać się języków, które zostały na daną platformę specjalnie przygotowane
(Java/C#/Swift lub Objective-C)."
"W mojej ocenie nauczenie kogoś języka C-style niesie ze sobą bardzo dużo korzyści."
Teraz mój komentarz:
[odnośnie Początki]
Jak się okazuje ważne w życiu jest zaczęcie marszu od wybicia się z właściwej nogi. W
moim przypadku był to Asember x86. Dlaczego? Wydawało mi się, że da on dobre pojęcie
o tym jak właściwie działa komputer. Zależało mi na tym by dobrze go zrozumieć gdyż
dysponowałem jedynie znajomością systemu dwójkowego. Drugim krokiem mojej nauki była
nauka C++. Wynikało to z tego, że C to język systemów operacyjnych (obok Asemblera) i
jest on naturalnym (wstępnym) stadium nauki C++. C++ w owym czasie był językiem
aplikacji (Java była za wolna na tamtych komputerach i dziś w wielu miejscach nadal
tak jest, C# wtedy nie istniał).
[odnośnie Prostota]
Prostota tak, ale przede wszystkim ZROZUMIENIE. Można nauczyć kogoś wywoływania
różnych funkcji w JavaScript ale raczej nie przybliży mu to jak działa procesor, ani
co tak na prawdę jest niepodzielnym rozkazem dla programisty. W sumie jak mamy kogoś
uczyć wywołań różnych funkcji to czemu nie w Bash-u albo w Python-ie? Zakres
użyteczności dużo większy niż JavaScript-u.
[odnośnie Oczekiwania]
W nauce trzeba zawrzeć rodzaj kontraktu: uczymy się 3 miesiące i będziemy umieć to i
to. Albo: uczymy się rok i będziemy umieć TO i TO i TO.
W ciągu 3 miesięcy faktycznie może nie być czasu na nic więcej niż parę tagów w Html
plus wywołania kilku funkcji w JavaScript plus wyświetlanie jakiejś grafiki plus
jakieś dźwięki.
Jednak może to być jedynie zachęta do poważnej nauki.
Moim zdaniem kurs minimum to rok podzielony na 3 etapy dotyczące WIEDZY ELEMENTARNEJ
w pracy przyszłego programisty:
1. 4 miesięczny kurs Asemblera,
2. 4 miesięczny kurs C
3. 4 miesięczny kurs C++
Sprytni adepci programowania mogą pójść krok dalej i np. w ciągu miesiąca zapoznawać
się z językiem, a w ciągu kolejnych 3 miesięcy pisać programiki jakie wynikają z ich
"strategicznych zainteresować" np. grafiki, dźwięku, baz danych czy algorytmów.
Taki kurs realizowany nawet samodzielnie pozwala w ciągu roku zostać "prawie
programistą". Do pełni szczęścia brakowało by nam wiedzy ze wszystkich wymienionych
dziedzin (grafiki, dźwięku, baz danych czy algortymów) oraz wiedzy matematycznej oraz
wiedzy o projektowaniu systemów informatycznych, oraz wiedzy o narzędziach typu
tworzenie pluginów, aplikacji sieciowych i używanie profilerów.
[odnośnie Wszechstronność i C-style]
"Oprogramowanie interfejsu użytkownika w C++ to mordęga - na pewno w porównaniu z
rozwiązaniami dostępnymi w C# albo Delphi."
W sumie nie wiem skąd ta opinia - tak się składa, że biblioteka Delphi jest
udostępniana w pakiecie C++ Builder również dla C++. Poza tym autor artykułu
najwyraźniej nic nie słyszał o Qt (którym posługuje się ok. milion programistów!!!).
"Aplikacji webowych w C++ współcześnie się raczej nie pisze (a przynajmniej nie
słyszałem o żadnym takim przypadku),"
KAŻDY projekt o którym słyszał Kowalski ma w sobie C++:
http://www.lextrait.com/Vincent/implementations.html
" mobilne wprawdzie się da, ale wszyscy producenci dosyć zdecydowanie sugerują, by
raczej trzymać się języków, które zostały na daną platformę specjalnie przygotowane
(Java/C#/Swift lub Objective-C)."
Taaa... tylko że żaden z tych języków (może poza Swift - nie wiem co to i nie
wnikam) nie został przygotowany specjalnie na daną platformę...Prawda jest
prozaiczna: każdy chce wciągnąć w swoje własne bagno z którego trudno będzie się
wydostać... Nawet w tym swoim Delphi możesz pisać bez krępy na telefony... Nie mówiąc
już o C++...
"W mojej ocenie nauczenie kogoś języka C-style niesie ze sobą bardzo dużo korzyści."
Coś w tym jest. Jednak ja gdy zaistniała konieczność "zarzeźbienia" w Java to miałem
sporo problemów - język miliardów klas w którym średnia funkcja ma 3 linie do mnie
nie przemawia...
Następne wpisy z tego wątku
- 25.12.18 12:13 fir
- 26.12.18 01:27 g...@g...com
- 26.12.18 04:07 fir
- 26.12.18 13:35 s...@g...com
- 26.12.18 18:10 fir
- 26.12.18 20:42 g...@g...com
- 26.12.18 21:40 s...@g...com
- 26.12.18 21:53 g...@g...com
- 26.12.18 22:35 g...@g...com
- 26.12.18 22:39 Adam M
- 26.12.18 23:31 fir
- 26.12.18 23:39 fir
- 26.12.18 23:52 fir
- 27.12.18 00:07 fir
- 27.12.18 00:37 Maciej Sobczak
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-02-15 Łódź => NodeJS Developer <=
- 2025-02-15 Dęblin => Node.js / Fullstack Developer <=
- 2025-02-15 Warszawa => Developer .NET (mid) <=
- 2025-02-15 Wrocław => Senior SAP Support Consultant (SD) <=
- 2025-02-14 Zdalne załączanie grzałki bojlera elektrycznego
- 2025-02-14 Warszawa => Kierownik ds. kluczowych Klientów <=
- 2025-02-14 Częstochowa => Product Manager - Systemy infrastruktury teleinformaty
- 2025-02-14 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-02-14 Warszawa => Data Engineer (Tech Leader) <=
- 2025-02-14 Czy ma sens grupa news:pl.soc.polityka-prawna ? :-)
- 2025-02-14 e-paper
- 2025-02-14 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-14 Warszawa => System Architect (Java background) <=
- 2025-02-14 Katowice => Senior Field Sales (system ERP) <=
- 2025-02-14 Wrocław => Specjalista ds. Sprzedaży (transport drogowy) <=