-
Data: 2018-12-25 12:13:04
Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
Od: fir <p...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu niedziela, 23 grudnia 2018 20:29:36 UTC+1 użytkownik s...@g...com
napisał:
> 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...
ja bym polecal jakisprosty i logiczny jezyk nie wymagajacy setupu
1) c na jakiejsc dobrej libce bylby dobry gdyby nie to ze dookola c i kompilatora
zawsze moze sie pojawic tysiac problemow
z ktorymi ten newb musi dylowac, ogrom ilosci tych malych problemow (ktore ida w
tysiace) jest swoiscie 'przerazajacy'
2) javascrypt bylby chyba dobry gdyby nie to ze ten htmlowy setup jawaskryptu i
roznych tam jego elementow jest tes dosyc brzydki (i tez potencjalnie zahacza o
szerokie spektrom roznych 'ciakwaostek')
slowem ani to ani to nie jest chyba najlepsze niststy..tak naprawde ktos kto chcialby
uczyc kogos pisania kodowani powinien napisac specjalny program jezyk ze specjalnym
edytorem z wbudowana biblioteka specjalnie pod tych ktorzy chca sie uczyc
programowania.. trzeba cos takiego zrobic i tyle, jak sie komus chce niech robi
Następne wpisy z tego wątku
- 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
- 27.12.18 00:58 g...@g...com
Najnowsze wątki z tej grupy
- 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??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-05-18 Warszawa => Software .Net Developer <=
- 2024-05-18 Warszawa => Mid/Senior QA Engineer <=
- 2024-05-18 Ulm => Solution Architect (sichere Kommunikation und IoT-Loesungen <=
- 2024-05-18 Katowice => Head of Virtualization Platform Management and Operating S
- 2024-05-18 Warszawa => SAP WM Consultant / Execution <=
- 2024-05-18 Wrocław => Consultant/Implementer Comarch ERP XL <=
- 2024-05-18 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-05-18 Warszawa => Account Manager (Recruitment Services) <=
- 2024-05-18 Łódź => Salesperson - CRM Systems <=
- 2024-05-18 Łódź => Handlowiec - Systemy CRM <=
- 2024-05-17 ZŁOMNIK o pracy w TVN TURBO, nowych przepisach i współczesnej motoryzacji. Turbo Taryfa!
- 2024-05-17 Białystok => DevOps Engineer Conexa First (Contractor) <=
- 2024-05-17 Warszawa => Starszy inżynier oprogramowania (Rust) <=
- 2024-05-17 Zabrze => Junior HelpDesk <=
- 2024-05-17 Bieruń => Administrator i wdrożeniowiec Lotus Notes/Domino <=