[SOLVED]Kolejne podejście do programowania - tym razem pod Linuksem

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
roxen
Piegowaty Guziec
Piegowaty Guziec
Posty: 3
Rejestracja: 29 cze 2010, 09:35
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

[SOLVED]Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: roxen »

Witam wszystkich na forum :)

Chciałbym się Was poradzić, wysłuchać opinii. A więc tak, zacznijmy od początku:
Miałem już kilka podejść do programowania, zaczynałem od Pascala - to było moje pierwsze spotkanie z programowaniem, pierwszy raz uczyłem się w ogóle rozumowania w programowaniu, podejścia do problemów itp. Reasumując początki, początków. Życie zmusiło mnie jednak do porzucenia Pascala na rzecz C potem C++ i chyba dobrze się stało, bo wydaje mi się, że prawdziwe programowanie zaczyna się dopiero od C. Tutaj pierwsze załamanie, nie nadążałem z materiałem z powodu braku czasu, przez co musiałem zaniedbywać podstawy na rzecz bardziej skomplikowanych zadań. (Doszło nawet do tego, że wyuczyłem się "że tak się to pisze" nie wiedząc tak naprawdę za co to "coś" odpowiada) Do całego tego "nieszczęścia" dołożył się jeszcze mój nauczyciel, który bardzo zniechęcił mnie do dalszego programowania.
Jednak jakoś udało mi się zaliczyć ten przedmiot (w kilku poprawkach ;)).

Minęło trochę czasu, ja zrozumiałem, że obojętnie jaką pracę "informatycznopodobną" dostanę to zawsze programowanie może mi się przydać. Przyszedł czas wakacyjny i przyszły też nadzieje, że uda mi się to ogarnąć :)

Planuje przyłożyć się do programowania, myślałem raczej nad dwoma językami: C++ i Python. Co byście doradzili dla mnie? Z Linuksa (Debian/Ubuntu) korzystam już jakiś czas i moją wiedzę na temat tego systemu uważam za wystarczającą by korzystać z tego systemu. Zamierzam więc kolejne podejście do programowania rozpocząć w systemie Linux.

Szukam więc języka(pomoc na forach/artykuły/kursy/książki) w którym nauczę się ponownie podstawowego podejścia do programowania, stosunkowo łatwego do zrozumienia, w przyszłości umożliwiającego pisanie "okienkowe". Tak, wiem, że miałem już jakąś przygodę z C++, ale szczerze mówiąc to nie mam specjalnego sentymentu do niego, więc mogę go porzucić na rzecz innego języka.

Reasumując, chciałbym język w którym:
- nauczę się od podstaw
- nie zniechęci mnie
- będzie przyjazny w programowaniu w Linuksie
- uzyskam wsparcie w razie pytań
- nie jest archaiczny : P

PS:Czy uważacie, że aby dobrze programować trzeba najpierw mocno "katować" nudne programy natury matematycznej (kalkulatory, liczniki, funkcje itp)? Czy można równie dobrze uczyć się programowania poprzez programy bardziej użytkowe?

To chyba tyle, z chęcią wysłucham Waszego zdania. Pozdrawiam serdecznie : )
pimo
Sędziwy Jeż
Sędziwy Jeż
Posty: 39
Rejestracja: 24 mar 2010, 14:19
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: pimo »

myślałem raczej nad dwoma językami: C++ i Python
Tak na prawdę warto znać oba.
Szukam więc języka w którym nauczę się ponownie podstawowego podejścia do programowania, stosunkowo łatwego do zrozumienia
zdecydowanie Python ponieważ:
* jest łatwiejszy
* szybciej się w nim pisze (mniej linii kodu aby uzyskać ten sam efekt)
* łatwiej się debuguje
w przyszłości umożliwiającego pisanie "okienkowe".
Oczywiście Python z:
PyQt
PySide
PyGTK
wxPython
Szukam więc języka(pomoc na forach/artykuły/kursy/książki)
http://pl.wikibooks.org/wiki/Zanurkuj_w_Pythonie
http://en.wikibooks.org/wiki/Python_Programming
do PyQt polecam: http://www.qtrac.eu/pyqtbook.html
Czy można równie dobrze uczyć się programowania poprzez programy bardziej użytkowe?
Oczywiście, aby się nauczyć programować trzeba po prostu dużo programować, a najlepiej jeszcze to co sprawia Ci przyjemność.

Czy to znaczy, że Python jest genialny i nadaje się do wszystkiego - oczywiście NIE. Jest to potężny skryptowy język dający szeroki wachlarz możliwości. Jednakże ma swoje wady jak wszystko, ale do nauki programowania nadaje się znakomicie.

Pozdrawiam
Piotrek
roxen
Piegowaty Guziec
Piegowaty Guziec
Posty: 3
Rejestracja: 29 cze 2010, 09:35
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Odp: Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: roxen »

Dzięki pimo za wyrażenie opinii, właśnie też bardziej jakoś przekonuje mnie python. Czytałem co nieco i doczytałem, że python nie jest obecnie jakoś specjalnie popularny ale jest na tendencji zwyżkowej, co powinno w przyszłości zaowocować : ) Doszperałem się też do ciekawego zastosowania pythona w Django, kolejny plus.

Pytanie tylko, której wersji się uczyć? Większość kursów jest raczej dla 2.x a z tego co poczytałem, to wchodzi wersja 3.x Pythona. Jest w tym jakaś różnica? Czy mogę na początek uczyć się na 2.x a potem przejście na 3.x nie będzie jakoś specjalnie bolesne?
pimo
Sędziwy Jeż
Sędziwy Jeż
Posty: 39
Rejestracja: 24 mar 2010, 14:19
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: pimo »

Pytanie tylko, której wersji się uczyć? Większość kursów jest raczej dla 2.x
Osobiście uważam, że właśnie dlatego powinieneś zacząć od 2.6.
Nie ujmując nic twoim zdolnościom, ale jak teraz, jako początkujący programista, napiszesz coś ciekawego, to za jakiś czas, będziesz chciał temu nadać trochę "ogłady", wtedy przejdziesz na nowszą wersję.
/Piotrek
Awatar użytkownika
misiek1928
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 117
Rejestracja: 07 mar 2006, 15:37
Płeć: Mężczyzna
Wersja Ubuntu: 16.04
Środowisko graficzne: Brak
Architektura: x86_64
Lokalizacja: Warszawa
Kontakt:

Odp: Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: misiek1928 »

To może ja się podepnę pod temat. Zaczynam dopiero przygodę z programowaniem na poważnie (kiedyś Visual Basic, później trochę Delphi). Założyłem naukę w kolejności: C, C++, Python. Czy to dobra kolejność, czy strata czasu?

Pozdrawiam :)
http://michal.superuser.org.pl/blog | Registered Linux User #516064
pimo
Sędziwy Jeż
Sędziwy Jeż
Posty: 39
Rejestracja: 24 mar 2010, 14:19
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: pimo »

Założyłem naukę w kolejności: C, C++, Python. Czy to dobra kolejność, czy strata czasu?
Nie powiedziałbym, że jest to zła kolejność. Nie ma języka idealnego i wszystko zależy co chcesz robić i co Cię interesuje.
roxen był zainetesowany językiem do nauki programowania, który go nie zniechęci. Rozważał C++, którego ja do rozpoczęcia nauki osobiście nie polecam.
U Ciebie widzę logiczne podejście - C jako język proceduralny, C++ jako jako język obiektowy czerpiący z C i Python jako potężny język skryptowy. Bardzo dobry wybór, bardzo dobra kolejność.
Zazwyczaj dany język wybierasz do problemu, który chcesz rozwiązać. Akurat wymieniłaś trzy języki, które sam używam w kolejności, w których się ich uczyłem. Rozważyłbym też naukę w takiej kolejności:
C, Python, C++ - Wbrew pozorom C++ nie jest takie proste i fajnie jest czuć się swobodnie w programowaniu obiektowym aby wykorzystać potęgę tego języka. Potęga C++ może być poważnym problemem - oddaje to znane powiedzonko:
"If C gives you enough rope to hang yourself, then C++ gives you enough rope to hang everyone in your neighborhood, hoist the riggings of a small sailing ship, and still have enough left over to hang yourself."
Źle zaprojektowany program w C++ może być prawdziwym koszmarem.

Pozdrawiam
Piotrek
Awatar użytkownika
misiek1928
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 117
Rejestracja: 07 mar 2006, 15:37
Płeć: Mężczyzna
Wersja Ubuntu: 16.04
Środowisko graficzne: Brak
Architektura: x86_64
Lokalizacja: Warszawa
Kontakt:

Odp: Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: misiek1928 »

Powiedzenie w101% wyjaśnia, czym jest C++, uśmiałem się :)

C chcę poznać z uwagi na fakt, że to podstawa i uczy pewnego analitycznego myślenia (podobno). Jeśli chodzi o aplikacje, które planuję pisać (na własne potrzeby i dla ogółu, bo kodu kryć nie zamierzam), planuję opierać raczej o QT, które wydaje mi się na chwilę obecną najwygodniejszym rozwiązaniem.

Dzięki za podpowiedź co do kolejności. Obecnie studiuję C. Jak uznam, że wiem o co tam chodzi, to podejmę decyzję o tym, co dalej. :)

Pozdrawiam!
http://michal.superuser.org.pl/blog | Registered Linux User #516064
Awatar użytkownika
DDAroo
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 107
Rejestracja: 27 cze 2009, 10:47
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: KDE Plasma
Architektura: x86
Lokalizacja: Kraków
Kontakt:

Odp: Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: DDAroo »

Ja też bym polecił, jak pimo, w kolejności: C, jakiś prosty obiektowy (php/python/ruby itp.) aby poznać bezboleśnie ideę obiektowości, a potem C++
roxen
Piegowaty Guziec
Piegowaty Guziec
Posty: 3
Rejestracja: 29 cze 2010, 09:35
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Odp: Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: roxen »

Dzięki jeszcze raz wszystkim. Już zacząłem "nurkować" i bardzo mnie to wciągnęło (wreszcie, zobaczymy na jak długo ;)). Python to jest to czego szukałem: super dokumentacja + dokładne opisy jak pisać z Qt4 - przykład lekcji

W przyszłości, jeśli starczy zapału to oczywiście powrócę pewnie do C i C++. Narazie najzwyczajniej bawię się w Pythonie i o to chodziło :)

Pozdrawiam, roxen.
wawer
Piegowaty Guziec
Piegowaty Guziec
Posty: 1
Rejestracja: 08 cze 2007, 09:13
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86_64
Kontakt:

Odp: Kolejne podejście do programowania - tym razem pod Linuksem

Post autor: wawer »

Nauka programowania nie jest nauką programowania, a nauką analogicznego tudzież algorytmicznego myślenia, wg mnie nie ważne czego zaczniesz się uczyć - no może nie uwzględniając assemblera ;), ważne żeby mieć motywację i poczuć samą idee.

Z doświadczenia wiem, że wielu ludzi mówi - "Programuję w C++", patrząc na ich kod, poza dyrektywami i "cin,cout" ich kod to C, w wielu książkach również jest napisane "Nauka C++", a tam czysty C.

anyway python FTW ;)
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość