Jaki język programowania na początek ?

Jaki język programowania na początek ?
SM
  • Rejestracja:prawie 13 lat
  • Ostatnio:prawie 13 lat
  • Postów:1
0

Umiałem tylko podstawy C++, lecz sądzę że już nawet tego nie pamiętam.
Jaki język programowania polecacie na początek ?
Razem z odpowiedzią prosiłbym o wskazanie jakiegoś kursu na internecie (darmowego), bądź jakiejś książki, którą warto kupić.

Yob
  • Rejestracja:prawie 14 lat
  • Ostatnio:ponad 12 lat
  • Postów:74
1

Osobiście polecam na początek Pythona. Język kombajn, dużo materiałów w Sieci, a przyda Ci się w karierze zawodowej (niezależnie czy byś programował jako programista C++ czy Javy). Ewentualnie zgłębić na serio dokładnie zwykłe C. Świetna książka do Pythona: http://www.diveintopython.net/

PS. "Poznałem", a nie "umiałem"


bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

Też uważam, że Python jest najlepszy na początek (a i potem jest bardzo dobry). Polecam tutorial http://docs.python.org/tutorial/
Twórcy Python nie przejmują się zbytnio zgodnością wsteczną, czytaj tutorial zgodny z tym Pythonem, który sobie zainstalujesz.


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell
Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:prawie 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
0

Python jest fajnym językiem, ale ja mam wątpliwości czy dobrym na początek. W pythonie bardzo dużo dzieje się poza kontrolą użytkownika, a w trakcie nauki warto dowiedzieć się jak to wszystko działa na trochę niższym poziomie.


"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
KU
  • Rejestracja:około 14 lat
  • Ostatnio:ponad 5 lat
  • Postów:166
0

Już chyba mieliśmy kiedyś tę dyskusję tutaj. Tak, Python jest dobrym językiem do nauki programowania. Nie, Python nie jest dobrym językiem do nauki jak i dlaczego to wszystko działa. Decyzja zatem zależy od tego, jakie kto ma priorytety. Jeśli ktoś chce się pouczyć algorytmów i rozwiązywania problemów przy pomocy programów komputerowych, Python jest dobrym wyborem na początek. Jeżeli zaś ktoś ma algorytmy obcykane i wie jak rozwiązywać problemy, może przeskoczyć np. na C/C++. Python da jednak więcej możliwości, gdyż programy o małym i średnim stopniu skomplikowania można w nim tworzyć relatywnie szybko i bez konieczności martwienia się gdzie to będzie działać, czy wzięliśmy pod uwagę wszelkie niskopoziomowe rzeczy, jak to skompilować w docelowym miejscu itp. i pozwala skupić się na problemie, a nie na specyfice języka. IMHO dobrze jest znać Pythona "obok" języków niższego poziomu, gdyż pozwala na szybkie prototypowanie. Jednak kiedy podejmiemy się nauki tego języka zależy od preferencji, umiejętności i potrzeb.

PO
  • Rejestracja:około 14 lat
  • Ostatnio:około 3 lata
  • Postów:211
1

Wiele uczelni zaczyna naukę od zwykłego C. Jestem na 4 semestrze i myślę, że zaczynanie od tego języka jest całkiem dobrym pomysłem. Python jest przyjemniejszy dla programisty, ale chyba nie o przyjemność tutaj chodzi. Python ma wiele metod już wbudowanych, zaś w C będziesz musiał większość przydatnych funkcji pisać samemu i to jest główna zaleta jak dla mnie. Żeby coś wykorzystywać powinno się chociaż trochę mieć pojęcia jak to działa, dlatego C bez udziwnionych bibliotek jest w sam raz. Niby w Pythonie też nie musisz z nich korzystać tylko napisać swoje funkcje, ale wtedy to staje się bynajmniej dziwne.

matek3005
  • Rejestracja:prawie 15 lat
  • Ostatnio:prawie 5 lat
  • Postów:358
1

w końcu ktoś założył temat w newbe, którego jeszcze nie było w internecie! Kolejny powód do flamewar'u.

C/C++ jest dobry na początek. Potem coś bardziej wygodnego w pracy (np ultraprzenośny .Net i jego skromna paleta języków, albo uwielbiana (przez "dżawowców"/"jawowców") java, którą odpalisz dzisiaj na wszystkim co nie analogowe). Warto poznać jakiś popularniejszy język skryptowy aby uwolnić się na chwilę od przejmowania się co jest liczbą, a co wyrazem. Na koniec jakiś język funkcyjny aby zrozumieć jak się jest ograniczonym w obrębie jednego paradygmatu.

ZJ
C jest dobry na początek, C++ nie koniecznie. C++ jest bardzo trudnym językiem pod względem składniowym. Ma też dużo elementów, które dla zachowania kompatybilności wstecznej i wydajności programu wynikowego, są nieoczywiste.
somekind
I jeszcze Prolog, żeby zrozumieć, jak jest się ograniczonym pod względem pojebanych języków, oraz Brainfuck, żeby zrozumieć, jak jest się ograniczonym we wszystkich paradygmatach. ;)
0genesis
  • Rejestracja:prawie 13 lat
  • Ostatnio:prawie 13 lat
  • Postów:1
0

mialem podobny problem co ty. uczylem sie kilka lat temu w tehcnikum inf. pascala i c++, po szkole przestalem programowac niedawno pomyslalem zeby znow uczyc sie programowac ale tak konkret i tez mialem dylemat jaki jezyk wybrac ( tylko ja wiedzialem do czego chce wykorzystac wiedze ). wybralem C i powiem ci ze to jest dobry wybor co prawda jestem dopiero na 6 rozdzialem "Jezyk C szkola programoania" ale wszystko rozumie wiec chyba dobry wybor na poczatek... napisz moze jeszcze co bys chcial programowac to wszystkim bedzie latwiej, a jak jeszcze nie wiesz to chyba nie pora sie uczyc bo nie majac celu szybko stracisz zapal...

Demonical Monk
  • Rejestracja:około 17 lat
  • Ostatnio:11 miesięcy
1

Takich wątków były setki w ciągu ostatnich tygodni, jeśli chcesz być dobrym programistą, naucz się wyszukiwać rozwiązania swoich problemów. Pomijam już zapisy w regulaminie o lenistwie i niechęci do korzystania z wyszukiwarek.


Women were the reason I became a monk - and, ah, the reason I switched back...
WR
  • Rejestracja:około 13 lat
  • Ostatnio:prawie 13 lat
  • Postów:8
0

Ja polecam dokonać wyboru: albo od najwyższego poziomu(Smalltalk, Ruby, Python, Java, etc.) albo od najniższego(jakiś asembler ;))
Dobrze byłoby zacząć "od dołu", ponieważ znam spore grono programistów, którzy nie mogą zrozumieć dlaczego stos rośnie "w dół"(na x86,x64) etc.


"You had ones? Lucky bastard! All we got were zeros."
-Joel Spolsky
1

A ja chyba jednak nie polecałbym na początek Pythona. Wg mnie najlepiej dowiedzieć się na początku, jak wszystko działa "od środka", bo później będzie Ci łatwiej uczyć się kolejnych języków, lepiej zrozumiesz, jak to wszystko jest "zbudowane";] Python może być później, jak już poznasz C++ a potem Pythona, zobaczysz, że będzie Ci dużo wygodniej się przestawić, niż w 2-gą stronę (najpierw Python potem C++)

Ale oczywiście są tu dużo lepsi specjaliści, niż ja, ale decyzja i tak należy do Ciebie.

Wibowit
  • Rejestracja:prawie 20 lat
  • Ostatnio:około godziny
0

Podobno jeśli chodzi o przestawianie się, to najtrudniej jest przestawić się z paradygmatu imperatywnego do paradygmatu funkcjonalnego - w drugą stronę natomiast jest podobno dość łatwo. A więc proponuję zacząć od nauki Haskella :]


"Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP, preface to the first edition
"Ci, co najbardziej pragną planować życie społeczne, gdyby im na to pozwolić, staliby się w najwyższym stopniu niebezpieczni i nietolerancyjni wobec planów życiowych innych ludzi. Często, tchnącego dobrocią i oddanego jakiejś sprawie idealistę, dzieli od fanatyka tylko mały krok."
Demokracja jest fajna, dopóki wygrywa twoja ulubiona partia.
somekind
Dlaczego nie Lisp?
Wibowit
Podobno w Common Lispie (albo innym, nie znam się na wariantach Lispa) jest dużo imperatywnego dziadostwa. A więc jest spore ryzyko, że wybierze się złego Lispa :]
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)