Najłatwiejszy język programowania na początek

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Kokosek
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 108
Rejestracja: 04 mar 2009, 20:44
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: Najłatwiejszy język programowania na początek

Post autor: Kokosek »

W Perlu nie trzeba pisać nieczytelnie, są klamry, średniki itd
hashe, tablice i skalary mają inne znaczki przed nazwą, więc trudniej się pomylić

Na dodatek istnieje zmienna domyślna, dzięki której kod staje się bardziej zbliżony do ludzkiego :)
Dziękuję osobie, która o nim wspomniała w porównaniu z PHP, Perl jest wspaniały!
Awatar użytkownika
el.pescado
Zakręcona Traszka
Zakręcona Traszka
Posty: 734
Rejestracja: 26 maja 2005, 11:43
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: Najłatwiejszy język programowania na początek

Post autor: el.pescado »

No i ta ekspresywność:

Kod: Zaznacz cały

open FILE, "sth.txt" or die $!
Awatar użytkownika
jerry_6
Piegowaty Guziec
Piegowaty Guziec
Posty: 13
Rejestracja: 31 paź 2008, 13:22
Płeć: Mężczyzna
Wersja Ubuntu: 9.04
Środowisko graficzne: GNOME
Architektura: x86_64
Kontakt:

Odp: Najłatwiejszy język programowania na początek

Post autor: jerry_6 »

Według mnie najlepszym językiem na początek jest C/C++, chociaż wymaga poświęcenia dużej uwagi i czasu. To efekty będą zadowalające. C/C++ to język w którym możemy napisać prawie każdy program, a dodatkowo posiada duże zaplecze np. dla początkujących - "Symfonia" Grębosza. Książka w której wszystko wytłumaczone jest w dziecinny i przystępny sposób. Istnieje też wiele książek dla zaawansowanych programistów.

Kolejną zaletą C/C++ jest jego popularność. Jest wykładany na każdym kierunku informatycznym na uczelni wyższej. Języki takie jak Python są jeszcze zbyt młode i nie dopracowane aby mogły odebrać pozycję lidera językowi C/C++.
Bezużyteczną rzeczą jest uczyć się, lecz nie myśleć, a niebezpieczną myśleć, a nie uczyć się niczego.
rack

Odp: Najłatwiejszy język programowania na początek

Post autor: rack »

Polecam ruby, to nowoczesny język do wszystkiego, a nie tak jak ktoś tu wspomniał, do www ... Ma wiele wspólnego ze starszymi językami jak Lisp, Smalltalk czy Perl ... Jest bardzo łatwy do zrozumienia i posiada bardzo wygodną konsolę oraz wbudowanę biblioteke umożliwiająca testowanie ... zdecydowanie polecam.

S.Wojnowski
mikolajs
Wytworny Kaczor
Wytworny Kaczor
Posty: 352
Rejestracja: 15 paź 2008, 18:30
Płeć: Mężczyzna
Wersja Ubuntu: 9.04
Środowisko graficzne: KDE Plasma

Odp: Najłatwiejszy język programowania na początek

Post autor: mikolajs »

Czyli Scala to takie ubogie C++0x kompilowane do vm javy (C++0x (a w GCC od 4.4) też zgaduje typ (typ "auto"))? Masz jakieś informacje o osadzaniu interpretera Scala w kodzie C++? Na szybko nic nie znalazłem, a bez tego język skryptowy jest dla mnie bezużyteczny.
Nie prównywałbym Scala z C++, Scala to raczej następca Javy (jest też wersja .NET), posiada dodatkowo możliwość uruchamiania programów jako skryptów. Jedną z ważniejszych cech tego języka jest łatwość korzystania z zewnętrznych modułów (w szególności Javy). Nie wiem czy jest wsparcie w odwrotnym kierunku.
Czytelność to zdecydowanie nie mniejsza ilość znaczków (wcięcia temu przeczą ;p). A liczyć {} nie musisz, jeśli nie jesteś masochistą i robisz wcięcia - wtedy (gdy nie jesteś masochistą) bloki {} są dużo lepsze niż te z białych znaków.
Czyli z tego wniosek, że i tak odróżnianie zasięgu odbywa się za pomocą wcięć w kodzie. Niepisanie dodatkowo nawiasów to kwestia przyzwyczajenia i dobrego edytora (choć przynaję, że przy kopiowaniu kawałków kodu bez użycia nawiasów klamrowych w pythonie jest to trudniejsze, bo trzeba to robić uważnie aby zachować zasięg)
rack

Odp: Najłatwiejszy język programowania na początek

Post autor: rack »

Ja powiem tak,
C ani C++ do nauki programowania się nie nadaje ... dziś liczy sie umiętność programowania obiektowego. Najbardziej obiektowym z obiektowych języków jest ruby, zaraz za nim python ... C++ i Java to koszmarne języki z fatalną składnią z tym, że java stoi o krok wyżej w tej hierarchi bo nie musisz babrać się sam z pamięcią (ma poza tym jeszcze kilka innych udogodnien). Ludzie którzy piszą 100 000 - 300 000 linii kodu w tych jezykach mają ich dość, wierz mi, znam co najmniej kilku sfrustrowanych ...

Jeżeli mowa o osadzaniu jakiegoś języka w C++ to polecam Lua ... To najlepsze z mozliwych rozwiązań, uznane i stosowane od lat ...

Nie ucz się żadnego pascala ani innego zabytku jak Perl. Nie baw się w Perla bo tego się nie da czytac jak masz większy program ...

Włącz pythona lub ruby, one mają dobrą konsolę, kupę dokumentacji i sproro książek. Ucz się programowanie obiektowego. To można zrobić i z PHP ale konsola w tym języku jest żałosna. ja sobie nie wyobrażam pracy bez dobrej konsoli.

Ruby ma coś co się nazywa ri, czyli dokumntację metod i klas pod ręką , właczając przykłady użycia ...

Zapomnij o C, C++ i Java czy Skali. Jeżeli chcesz coś bardziej egzotycznego to zainteresuj sie Clojure, Erlangiem lub Smalltalkiem.

Moim zdaniem wszystko jest lepsze na początek od C++ i Javy. Świat z roku na roku wychodzi z tego ... nie warto się w to teraz pchać ....

pozdrawiam
Riklaunim
Piegowaty Guziec
Piegowaty Guziec
Posty: 12
Rejestracja: 07 sie 2005, 18:32
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Kontakt:

Odp: Najłatwiejszy język programowania na początek

Post autor: Riklaunim »

Jakoś nie widzę żeby osoba nie zaznajomiona jeszcze z programowaniem wchodziła w naukę C czy C++. Nie chodzi mi o naukę składni i proste przykłady konsolowych pierdółek, ale o realnej zdolności do programowania w jednym/obu językach - czytaj np. napisanie aplikacji w GTK+ i +/- biblioteki GNOME, Qt4 +/- biblioteki KDE, czy napisanie modułu kernela w C :P No i też czas potrzebny na napisanie aplikacji będzie znacznie dłuższy od napisania jej w języku skryptowym (np. Python - PyGTK, PyQt4).

Czego warto się uczyć:
- PHP: ale pod warunkiem że nie będzie się czytać przestarzałych, durnych tutoriali, w których programuje się metodą kuli błota (wszystko razem). Framewoki jak CodeIgniter, Kohana, Zend Framewok tak. A znając i praktykując kodzenie z frameworkiem można dostać sensowną pracę.
- Python: Django jak najbardziej. Ofert pracy nie ma za wiele, ale jak są to są więcej warte niż np. PHP (bo i projekty są poważniejsze, jeżeli chce się stosować Pythona). Dodatkowa zaleta to wszechstronność języka - PyQt4 do wieloplatformowych aplikacji GUI (można także PyGTK stosować), Django, Pylons, Plone do aplikacji webowych, do tego Pythonowe API na silniki gier 2/3D napisane w C, C++ ;) Można tutaj wiele
- Ruby: Ruby on Rails na rynku pracy jest widoczne. Poza Railsami to Ruby jeszcze takiej wszechstronności jak Python nie osiągnęło
- Java: ciężki język raczej, ale przydaje się jeżeli chcemy robić aplikacje pod Androida.
- Objective-C (pod Mac OS X): tworzenie aplikacji pod iPhone (popularna tematyka), natywnych bardzo aplikacji pod maka, do tego wzorowany na nim jest Objective-J (framework Cappuccino do aplikacji webowych jak 280slides).
- Mono/.Net: platforma ciekawa, jeżeli interesuje nas praca z wykorzystaniem tej platformy to z narzędziami windowsowymi też trzeba będzie się zaznajomić i z samą platformą .NET. Poza GNOME to Mono ma raczej "bana" politycznego na aplikacje, więc tworząc aplikację OpenSource w Mono nie należy liczyć na zachwyt geeków.
luzakwielki
Wytworny Kaczor
Wytworny Kaczor
Posty: 264
Rejestracja: 19 lis 2008, 11:42
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86_64

Odp: Najłatwiejszy język programowania na początek

Post autor: luzakwielki »

rack pisze:Ja powiem tak,
C ani C++ do nauki programowania się nie nadaje ... dziś liczy sie umiętność programowania obiektowego.
Tak liczy się umiejętność programowania obiektowego, ale jeszcze bardziej w cenie jest dziś (i zawsze będzie) programowanie wydajnych programów i dlatego ruby jest niszą i niszą pozostanie, a do poważniejszych zastosowań będzie się stosować javę (czy to na stronach jako jsp czy jako aplikacje), i c++.
rack pisze:... tym, że java stoi o krok wyżej w tej hierarchi bo nie musisz babrać się sam z pamięcią (ma poza tym jeszcze kilka innych udogodnien).
Boehm GC i w C/C++ też nie musisz się martwić... zresztą myślisz, że z jakiego GC korzystają interpretery ruby (nie wszystkie, ale kilka tak) - Boehm GC jest włączony do GCC (biblioteka gc).
rack pisze: Jeżeli mowa o osadzaniu jakiegoś języka w C++ to polecam Lua ... To najlepsze z mozliwych rozwiązań, uznane i stosowane od lat ...
Lua miał chwilowy epizot jako język skryptowy w grach (tak jak i python), i faktycznie łatwo go się osadza (podobnie łatwo jak inne języki stosowane w grach jak np. python, gamemonkey, angelscript czy nawet java (przez jni))... ale ma wiele wad przeciętnego języka skryptowego i praktycznie wszyscy się już wycofali z korzystania z Lua. Z wymienionych języków do osadzania najlepszym wyborem jest angelscript, jeśli ma się pisać w obrębie firmy - jeśli ma być dla innych osób, a nie dla siebie, to python, bo zna go wiele osób - linuksowych gier które pewnie znasz np. seria Penumbra korzysta z angelscript. Większość gier jednak korzysta z języków wbudowanych w silnik jak np. UnrealScript - jednak większość one korzystaja z mocnego typowania i zalet języków c/c++ (jak pisze się komercyjnie, nie ma miejsca na te "udogodnienia"/utrudnienia).
rack pisze:Ruby ma coś co się nazywa ri, czyli dokumntację metod i klas pod ręką , właczając przykłady użycia ...
Czyli coś jak Libhover z Eclipse Linux Tools Project (pluginy dla linuksa dla programistów C++ pisane przez redhat)
rack pisze:Moim zdaniem wszystko jest lepsze na początek od C++ i Javy. Świat z roku na roku wychodzi z tego ... nie warto się w to teraz pchać ....
Świat nie stoi w miejscu i C++ też się zmienia - zaraz zostanie wydana nowa specyfikacja języka C++0x - Świat nie wychodzi z tego, a nawet się umacnia (i C++ jest tak ugruntowany w rynku, że nie wiadomo czy i kiedy będzie zagrożony - nawet języki jak D (łączące zalety języków kompilowanych ze skryptowymi) się nie spopularyzowały - po prostu jako język kompilowany ma taką dominację, że można powiedzieć, że inne języki nie istnieją - inne języki mogą być tylko jako nisza w kompilowanych do pośredniego kodu, lub skryptowe) tylko powstają nowe dziedziny w których można sobie pozwolić na takie języki skryptowe (np. strony internetowe).
rack

Odp: Najłatwiejszy język programowania na początek

Post autor: rack »

[quote="luzakwielki"]Tak liczy się umiejętność programowania obiektowego, ale jeszcze bardziej w cenie jest dziś (i zawsze będzie) programowanie wydajnych programów i dlatego ruby jest niszą i niszą pozostanie, a do poważniejszych zastosowań będzie się stosować javę (czy to na stronach jako jsp czy jako aplikacje), i c++.

Bardzo ciekawa wypowiedź ;))

Ruby niszą pewnie pozostaje ... mimo to przyjemnie jest popatrzeć jak powstając nowe implementacje rok za rokiem.

Zgadzam się, że wydajność aplikacji to rzecz nader istotna, z drugiej jednak strony, nie wierzę ze za jakiś czas nie doczekamy się znacznie szybszych procesorów (jak wiadomo prace nad nimi trwają i mają się dobrze... choć niektórzy mówią ze dochodzimy do kresu możliwości. Nie wierzę ,człowiek nie potrafi zatrzymać się w miejscu ...). W takiej sytuacji być może spadek wydajności spowodowany uzyciem języka skryptowego będzie pomijalny ... Dziś to brzmi jak herezja, jednakże takie głosy daje się słyszeć tu i ówdzie ... Języki skryptowe są znacznie bliższe cżłowiekowi niz maszynie, dzięki czemu pisze się po prostu szybciej ... to co napisano przez ostatnie 30 lat teraz może być pewnie napisane w kilka ... Podejżewam, że za kilka czy kilkanaście lat moc obliczeniowa procesorów na tyle wzrośnie, że większośc ludzi nie będzie sobie truć głowy językami kompilowanymi ...

Zresztą nawet dziś, to co ma być skompilowane może być spokojnie napisane w C i wrzucone dowiązane do aplikacji w języku skryptowym ... Bibliotek napisanych dla Pythona czy Ruby nie przepisuje się na C ... a większośc tych z C i C++ ma już dowiązania do tych nowych języków skryptowych ... Trend jest moim zdaniem jasny, oddalamy się od języków dla komputera za cenę wydajności ...

Nawiasem mówiąc ,ile aplikacji pracuje dziś na pełny gwizdek ??? Z pewnościa wiele z nich da się napisać z w jezyku innym niż C++ czy java dodając kompilowalny komponent. Wiele podstawowych komponentów już zostało napisane, wystarczy je tylko wykorzystać w nowym kodzie ...

Ogólnie, java czy C++ z Boostem nie są złe ... one po prostu nie dorastają do dzisiejszych czasów i podejrzewam ze z roku na rok będzie im coraz trudniej nadąrzyć .. ilość starego kodu jest coraz większa ... a atut szybkości będzie tracił swój blask z czasem.
mikolajs
Wytworny Kaczor
Wytworny Kaczor
Posty: 352
Rejestracja: 15 paź 2008, 18:30
Płeć: Mężczyzna
Wersja Ubuntu: 9.04
Środowisko graficzne: KDE Plasma

Odp: Najłatwiejszy język programowania na początek

Post autor: mikolajs »

Zgadzam się, że wydajność aplikacji to rzecz nader istotna, z drugiej jednak strony, nie wierzę ze za jakiś czas nie doczekamy się znacznie szybszych procesorów (jak wiadomo prace nad nimi trwają i mają się dobrze... choć niektórzy mówią ze dochodzimy do kresu możliwości. Nie wierzę ,człowiek nie potrafi zatrzymać się w miejscu ...). W takiej sytuacji być może spadek wydajności spowodowany uzyciem języka skryptowego będzie pomijalny ... Dziś to brzmi jak herezja, jednakże takie głosy daje się słyszeć tu i ówdzie ... Języki skryptowe są znacznie bliższe cżłowiekowi niz maszynie, dzięki czemu pisze się po prostu szybciej ... to co napisano przez ostatnie 30 lat teraz może być pewnie napisane w kilka ... Podejżewam, że za kilka czy kilkanaście lat moc obliczeniowa procesorów na tyle wzrośnie, że większośc ludzi nie będzie sobie truć głowy językami kompilowanymi ...
Assembler do dzisiaj jest używany mimo, że nikt w nim nie pisze aplikacji użytkowych i tak będzie zapewne w przyszłości, że języki kompilowane będą ciągle używane, ale nie do programów użytkowych. Pewnie to miałeś na myśli :)
Awatar użytkownika
el.pescado
Zakręcona Traszka
Zakręcona Traszka
Posty: 734
Rejestracja: 26 maja 2005, 11:43
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: Najłatwiejszy język programowania na początek

Post autor: el.pescado »

W takiej sytuacji być może spadek wydajności spowodowany uzyciem języka skryptowego będzie pomijalny
Należy też pamiętać że interpretery też nie stoją w miejscu i pojawiają się takie rzeczy jak JIT, które poprawiają wydajność języków skryptowych.
luzakwielki
Wytworny Kaczor
Wytworny Kaczor
Posty: 264
Rejestracja: 19 lis 2008, 11:42
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86_64

Odp: Najłatwiejszy język programowania na początek

Post autor: luzakwielki »

rack pisze: Zgadzam się, że wydajność aplikacji to rzecz nader istotna, z drugiej jednak strony, nie wierzę ze za jakiś czas nie doczekamy się znacznie szybszych procesorów (jak wiadomo prace nad nimi trwają i mają się dobrze... choć niektórzy mówią ze dochodzimy do kresu możliwości. Nie wierzę ,człowiek nie potrafi zatrzymać się w miejscu ...).
W takiej sytuacji być może spadek wydajności spowodowany uzyciem języka skryptowego będzie pomijalny
Procesory dużo szybsze nie będą (granica możliwości krzemu już prawie osiągnięta, co widać od co najmniej kilku lat (częstotliwość nie jest zwiększana)) - będzie ich po prostu więcej (rdzeni), co jednak nie idzie zawsze razem ze wzrostem wydajności (nie wszystkie algorytmy da się rozłożyć na wątki). Nie będzie pomijalny - jest jeszcze tyle rzeczy i algorytmów, które nie dają się wykonać nawet na najlepszych superkomputerach (wykonywałyby się przez tysiące lat), że nie ma się o co martwić, że kiedyś wydajność będzie za duża i będzie można olać ją.
rack pisze:Języki skryptowe są znacznie bliższe cżłowiekowi niz maszynie, dzięki czemu pisze się po prostu szybciej ... to co napisano przez ostatnie 30 lat teraz może być pewnie napisane w kilka
Są bliższe człowiekowi... dopóki nie zrobi się błędu i będzie trzeba szukać gdzie... to co napisano przez ostatnie 30 lat teraz można napisać w kilka w C/C++ - po prostu powstały nowe algorytmy, technologie, badania i teraz jest ogólnie dostępna wiedza do której się przez lata dochodziło.
rack pisze:Podejżewam, że za kilka czy kilkanaście lat moc obliczeniowa procesorów na tyle wzrośnie, że większośc ludzi nie będzie sobie truć głowy językami kompilowanymi ...
Póki co idzie się w stronę przeciwną i aby wykorzystać moc domowych klastrów (kart graficznych) trzeba się cofnąć do ASM lub języków pochodnych od C (Ati STREAM, CUDA, OpenCL)... i nie spodziewałbym się na Twoim miejscu pójścia dużo wyżej z poziomem.
rack pisze:Zresztą nawet dziś, to co ma być skompilowane może być spokojnie napisane w C i wrzucone dowiązane do aplikacji w języku skryptowym ... Bibliotek napisanych dla Pythona czy Ruby nie przepisuje się na C ... a większośc tych z C i C++ ma już dowiązania do tych nowych języków skryptowych ... Trend jest moim zdaniem jasny, oddalamy się od języków dla komputera za cenę wydajności ...
Bibliotek dla pythona czy ruby nie przepisuje się do C/C++... bo tam są już odpowiedniki, lub lepsze, a tworzy się wrappery na biblioteki natywne pisane w C/C++ do języków skryptowych... bo twórcy tych bibliotek olewają te języki i piszą tak jak mainstream (praktycznie wszystkie biblioteki, poza pojedynczymi wyjątkami) i programiści piszący w tych językach przygotowują z opóźnieniem wrapper na bibliotekę, żeby mieć w swoim języku możliwości takie jak w c/c++.
Trend jest taki sam od wielu lat - wchodzi coś nowego (shadery(asm ->glsl/hlsl/cg (języki oparte na C)), jednostki obliczeniowe (asm->cuda/opencl(oparte na C)), nowe procesory (asm (rozszeżenia jak sse,mmx...)->nagłówki dla C/C++)...) to programuje się z użyciem ASM, później pisze się w C, a dopiero po tym w C++ (chociaż najczęściej zatrzymuje się na C, bo C++ zawiera C)... i na tym koniec! (tak jest od co najmniej 40 lat - języki skryptowe, przychodzą, zdobywają popularność, i ją zaraz tracą... te 3 języki (asm/c/c++) mają stałą pozycję i nie przemijają mimo prawie 30-40 lat na karku (30 najnowszy C++)). Dalej nie jest rozwijane przez producentów sprzętu i wielkie firmy, tylko wrappery na to robią użytkownicy/twórcy języków skryptowych, gdzieś obok mainstream.
Mainstream się nie zmieni, bo C++ jest dalej żywym językiem i się rozwija i za rok,dwa znowu przejmie osoby piszące w językach skryptowych (mimo, że już powinien, ale będzie dopiero po oficjalnym wydaniu standardu), gdzie łączy zalety języków skryptowych z kompilowanymi:
- np. typ auto gdzie przy kompilacji zdecyduje jakiego typu jest zmienna, ale w przeciwieństwie do skryptowych zapobiegnie przypisaniu zmiennej, zmiennej innego typu (tekst do int) i pokaże błąd, lub warn o niejawnej konwersji.
- funkcje lambda (znane np. z pythona)
- wielowątkowość w specyfikacji języka,
- for oparte na zakresie
- metaprogramowanie
i tona innych rzeczy znanych z boost, czy innych języków programowania, zwiększających wydajność (wiele z tego już jest w GCC), a zarazem łatwość programowania i zachowując ostrzeganie się przed błędami.
Awatar użytkownika
kabanek
Zakręcona Traszka
Zakręcona Traszka
Posty: 592
Rejestracja: 23 cze 2009, 20:34
Płeć: Mężczyzna
Wersja Ubuntu: 13.10
Środowisko graficzne: Xfce
Architektura: x86_64
Kontakt:

Odp: Najłatwiejszy język programowania na początek

Post autor: kabanek »

a ja powiem tak: jak ktoś chce się nauczyć łatwo i szybko programować to polecam LOGO :D

a tak na serio, to w c++ te zarządzanie manualne pamięcią ma też dobre strony - nie można widzieć w tym tylko niewygodę, bo w końcu po coś to stworzyli, prawda?

Java jest ok, wg mnie, w C# ostatnio miałem napisać jakąś prostą aplikację okienkową z obsługą COMa i poszło bez problemów. W Javie podobno to nie jest przenośne:)

PASCAL - przeżytek, uczyć się jednego języka, żeby uczyć się kolejnego to tak jakby uczyć się jeździć na rowerze, żeby nauczyć się jeździć samochodem:P nie lepiej od razu samochód?

Assembler sam bym się chętnie nauczył, ale brak czasu... ;/
Ogólnie, java czy C++ z Boostem nie są złe ... one po prostu nie dorastają do dzisiejszych czasów i podejrzewam ze z roku na rok będzie im coraz trudniej nadąrzyć .. ilość starego kodu jest coraz większa ... a atut szybkości będzie tracił swój blask z czasem.
false - c++ tak długo się utrzymał właśnie ze względu na szybkość i to jest jego jednym z głównych atutów.

jakbym miał wybierać pomiędzy JAVA a C# to wybrałbym chyba to drugie ze względu na Visual Studio :) to jest niedościgniony wzór :D

ps nadążyć*
roberto234
Piegowaty Guziec
Piegowaty Guziec
Posty: 13
Rejestracja: 21 sie 2009, 18:26
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86

Odp: Najłatwiejszy język programowania na początek

Post autor: roberto234 »

Pascal nauczy cię myśleć. Nie zastanawiasz się czy jak zrobisz szpagat komend coś ci z tego wyjdzie tylko piszesz

Jeżeli cos=iles wtedy zrób

czyli

If a=1 then writeln('cos');

i z głowy
Do tego dwie książki "algorytmy i stróktóry danych=programowanie" + Pascal 6.0 pana Bieleckiego.

Pierwsze efekty już po 2-3 tyg później wybierzesz czy
- zostajesz przy pascalu czyli Delphi (nie prawda że bez przyszłości powstaje dużo aplikacji a tworzy się łatwo)
- Visual Basic (duża część orlenu na tym stoi)
- Java (współpraca ze wszystkimi maszynami i systemami)
- C++ (dużo dłubania wizualnie ledwo dorównuje wizualnie efektami innym ale mały i stabilny kod)
- PHP, HTML, CSS - to nie są języki programowania tylko skryptowy język opisu stron WWW
Poza tym poznaj MySqla i zapoznaj się z bashem.
Awatar użytkownika
kabanek
Zakręcona Traszka
Zakręcona Traszka
Posty: 592
Rejestracja: 23 cze 2009, 20:34
Płeć: Mężczyzna
Wersja Ubuntu: 13.10
Środowisko graficzne: Xfce
Architektura: x86_64
Kontakt:

Odp: Najłatwiejszy język programowania na początek

Post autor: kabanek »

roberto234 pisze:Pascal nauczy cię myśleć. Nie zastanawiasz się czy jak zrobisz szpagat komend coś ci z tego wyjdzie tylko piszesz
uczy myśleć rozwiązywanie problemów a nie język programowania :) ten sam problem można rozwiązać przecież w C++, Java, PASCAL, a nawet jakby się uparł JavaScript:craz:
luzakwielki
Wytworny Kaczor
Wytworny Kaczor
Posty: 264
Rejestracja: 19 lis 2008, 11:42
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86_64

Odp: Najłatwiejszy język programowania na początek

Post autor: luzakwielki »

roberto234 pisze:Pascal nauczy cię myśleć. Nie zastanawiasz się czy jak zrobisz szpagat komend coś ci z tego wyjdzie tylko piszesz

Jeżeli cos=iles wtedy zrób

czyli

If a=1 then writeln('cos');
Możesz napisać jakie "szpagaty" miałeś na myśli? Akurat to co podałeś jest bardzo podobne w każdym języku (tylko co najwyżej czytelniej zapisane), np.
if(a==1) printf("cos");
A to właśnie jakieś dziwne szpagaty wychodzą w pascalu (żeby jedną rzecz zrobić musisz pisać w wielu miejscach w kodzie na raz (osobno dopisujesz zmienną do var, osobno piszesz etc.)).
Awatar użytkownika
el.pescado
Zakręcona Traszka
Zakręcona Traszka
Posty: 734
Rejestracja: 26 maja 2005, 11:43
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: GNOME
Architektura: x86
Kontakt:

Odp: Najłatwiejszy język programowania na początek

Post autor: el.pescado »

A to właśnie jakieś dziwne szpagaty wychodzą w pascalu (żeby jedną rzecz zrobić musisz pisać w wielu miejscach w kodzie na raz (osobno dopisujesz zmienną do var, osobno piszesz etc.)).
Ale przynajmniej piszesz w jednym pliku;) W C++ zwykle musisz pisać często w dwóch miejscach w dwóch różnych plikach;)
Procesory dużo szybsze nie będą (granica możliwości krzemu już prawie osiągnięta, co widać od co najmniej kilku lat (częstotliwość nie jest zwiększana))
Nie jest to do końca prawda - częstotliwości taktowania, co prawda nie rosną, ale wydajność owszem - mój c2d 3GHz liczy liczbę PI dwa razy szybciej nić P4 o tej samej częstotliwości (algorytm jest jednowątkowy, więc ilość rdzeni jest nieistotna).
i tona innych rzeczy znanych z boost
Boost. Już wiem, dlaczego programy w C++ są takie szybkie. W czasie gdy program się kompiluje, programista może przeczytać dobrą książkę o algorytmach i potem może lepiej zoptymalizować program.

Trend jest taki sam od wielu lat - wchodzi coś nowego (shadery(asm ->glsl/hlsl/cg (języki oparte na C)), jednostki obliczeniowe (asm->cuda/opencl(oparte na C)), nowe procesory (asm (rozszeżenia jak sse,mmx...)->nagłówki dla C/C++)...) to programuje się z użyciem ASM, później pisze się w C, a dopiero po tym w C++ (chociaż najczęściej zatrzymuje się na C, bo C++ zawiera C)... i na tym koniec!
Ale dużo buzzwords... W każdym razie, piszesz tak, jakby wydajność była jedyną istotną cechą programów. A tymczasem dla użytkownika w większości przypadków ważniejsza jest funkcjonalność, ergonomia, niezawodność, a języki niskiego poziomu, takie jak C++, często utrudniają osiągnięcie tych celów. Po co mi komunikator internetowy wykorzystujący SSE? To tak jak zakładanie tarcz hamulcowych BREMBO do meleksa...
rack

Odp: Najłatwiejszy język programowania na początek

Post autor: rack »

Z krzemu już raczej więcej się nie wyciśnie, aktualnie trwają zaawansowane prace nad związkami węgla.

Po drugie, mówimy o programowanie dla ludzi. Ludzie zmierzają do uproszczenia języków programowania aby były one dostępne dla szerszych mas. I ja się pod tym podpisuję obiema rękami. Nie jestem żadnym omnibusem i nie mam zamiaru spędzać życia nad podążaniem za kążdą nowinka jaka się pojawi. To zbyteczne. Jestem minimalistą, wystarcza mi zwykły wprapper, który po prostu będzie wystarczająco dobry aby spełnić swoją funkcję. Pisze aplikacje na codzienny użytek, a rzeczy do zapamiętania jest i tak na tyle dużo, że trudno to wszystko ogarnąć. Proste języki skryptowe są dla mnie wystarczająco dobre aby zaspokoić moje potrzeby ... Jak czegoś nie wiem lub nie umie to po prostu odsyłam z problemem do innych ludzi, którzy zajmują się bardziej bliskimi problemowi rzeczami ...

Nie zbieram na Ferrari, w wieku 29 lat mam w życiu wszystko co kiedykolwiek chciałem mieć a nawet więcej. Robię to co lubię, stąd tez mogę sobie pozwolic na robienie tego co chcę, a nie tego czego ode mnie wymagają ... Nie łudze się, że nadążę za technologią, bo to niemożliwe, świat staje się z roku na rok bardziej wyspecjalizowany ... Nie da rady śledzić wszystkiego i wszędzie ... Śledzenie 2 czy 3 języków jest wystarczająco absorbujące. Biorąc to wszystko pod uwagę, gdybym miał się uczyć teraz czegoś nowego ... na pewno nie był by to C++ ani Java ... Dzisiejsze języki skryptowe sa wystarczająco dobre do 95 % zastosowań. Zawsze będzie jakiś algorytm, który będzie zbyt złożony na możliwości komputera ...Tak jest zbudowany świat, pewnych rzeczy nie da się przeskoczyć ... trzeba się z tym pogodzić ... i szukac innych rozwiązań ...

Mnie nie interesuje podbój Marsa, pisanie serwerów do obsługi 20 K + zapytań / s itp. niech zajmą się tym pasjonaci i profesjonaliści z danej działki ... Ja wolę mniejsze i mniej czasochłonne programowanie z użyciem moich ulubionych narzędzi. Jak , ktoś wyżej napisał, problem to problem ... w jakim języku programowania go rozwiążemy nie zawsze musi miec znaczenie ... Dla mnie w większości przypadków nie ma i dlatego wolę użyć narzędzia, które najbardziej mi odpowiada niż męczyc się z jakimś, którego nie znoszę ;)) I do tego to się w sumie sprowadza . Jedni mają zacięcie do C++ inni nie ... Ja akurat nie mam, odkąd nauczyłem się języków skryptowych, nigdy nie myślałem o powrocie do kompilowanych ... Ot i cała filozofia, po prostu jestem leniem i co gorsza wcale się z tym nie kryję. Nie mam tez dobrej pamięci, więc trzymam wszystko w bazie danych ...

Podobnie jak wielu innych nie jestem stworzony do programowania, brak mi doskonałej pamięci, ale kiedyś postanowiłem sobie, że naucze sie programowania i spełniłem swoje marzenie. Mimo moich wad, spokojnie zarabiam na zycie. Wiele zawdzięczam ruby, php, javascript i im podobnym ... Prawda jest taka ,że gdyby nie one byłbym może jakimś robotnikiem lub urzędnikiem, nie jestem. I z tego właśnie powodu z całego serca jestem wdzięczy tym, którzy poświęcili swój czas aby archaiczne i złożone języki udostępnić dla szerszych mas i ludzi mniej zdolnych i obeznanych ( czyli takich jak ja) ...

Z tych technologii żyje mnóstwo ludzi .Nie oszukujmy się, nie każdy z nich jest omnibusem z mnóstwem czasu wolnego na nauke nowych bibliotek. Inni po prostu nie mają w tym celu. Nie ma co także zakładać, że programiści z wyboru lub przypadku robią coś tylko dla własnej przyjemności ... To oczywista bzdura, każdy z nas zna ograniczenia ludzkiego mózgu, poza tym programowanie nie jest żadą przyjemnością na dłuższa metę ... Wszycy ludzie jakich znam robią to dla pieniędzy.Na początku może jest inaczej ale prawda jest taka, że programowanie jest trudne, czasem monotonne i czesto po prostu ma się ochote wszystko żucic w cho***rę ... Ja miewam takie chwile frustracji programując w tych tzw. łątwiejszych językach skryptowowych, a co dopiero mówić o C++ czy Java ...

Wniosek z tego wszystkiego co napisałem dla autora tego wątku jest taki: znajdz sobie jakiś w łatwy język programowania dla siebie, jeszcze raz polecam ruby, pythona lub php ... Na trudniejsze rzeczy z pewnościa przyjdzie jeszcze czas. C++ czy Java może tylko szybko Cię zniechęcić ... Rzucanie sie na głęboka wodę nie ma dziś sensu, świat oprogramowania jest aktualnie tak złożony, że ambicjonalne stawianie sobie dodatkowych przeszkód to po prostu strzelanie sobie w nogę ... Czasem lepiej jest przesiąść się z roweru na samochód niż przywalić samochodzem w słup na pierwszym zakręcie ...

Pozdrawiam i życzę właściwego wyboru
S.Wojnowski.
mikolajs
Wytworny Kaczor
Wytworny Kaczor
Posty: 352
Rejestracja: 15 paź 2008, 18:30
Płeć: Mężczyzna
Wersja Ubuntu: 9.04
Środowisko graficzne: KDE Plasma

Odp: Najłatwiejszy język programowania na początek

Post autor: mikolajs »

http://www.tiobe.com/index.php/content/ ... index.html warto spojrzeć na zmiany w popularności języków (zwłaszcza wykres długoterminowy) Moim zdaniem świadczy to raczej o ustalaniu się pozycji języków w określonych zastosowaniach.
Co do wyboru języka to od szybkości działania jest ważniejsza szybkość pisania - czyli koszty, a stosowanie języka takiego jak C lub C++ jest uzasadnione tylko tam gdzie niezbędna jest naprawdę duża wydajność.
Podobnie z szybkością nauki, lepiej nauczyć się szybko języka skryptowego, a uczenie się C++ zostawić na czas kiedy faktycznie będzie to niezbędne lub będzie się miało na to naprawdę ochotę.
Awatar użytkownika
darthsidious
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 160
Rejestracja: 06 lis 2009, 10:37
Płeć: Mężczyzna
Wersja Ubuntu: 10.04
Środowisko graficzne: GNOME
Architektura: x86

Odp: Najłatwiejszy język programowania na początek

Post autor: darthsidious »

Tak sobie czytam i dochodzę do wniosku że odbiegamy od tematu.
Miało być o nailepszym języku programowania dla początkujących a skończyło się na batalii ten jest lepszy od tego.
Powiem tak! Programuję w kilku językach - zaczynałem od pascala a z pespektywy czasu dochodzę do następujących wniosków:
Pasacal - nauczy cię pamiętać o deklarowaniu zmiennych (język stricto strukturalny i szybko przestanie ci wystarczać a nawet drażnić)
C - też dobry na początek - w końcu to standard, bardzo wiele wybacza przez co można nałapać złych nawyków programistycznych, jednak bardzo łatwo operować strukturami danych - bodaj najłatwiej)
C++ - język obiektowy - na początek nie bardzo się nadaje - najlepiej zacząć od języków strukturalnych
Python - jak staniesz się leniwy i będziesz miał ochotę omijać kompilator szerokim łukiem to zdecydowanie polecam, szybki łatwy i przyjemny - dodatkowa zaleta to porządek w kodzie
Zanim ktoś wyjedzie z tekstem że w asm nie pisze się aplikacji użytkowych to niech popatrzy na asemplery typu fasm/masm i tematy z tym związane to zmięknie.
Assembler - piękna rzecz - no cóż język dla każdego kto chce wiedzieć co mu kompilator w kodzie nakaszani, wbrew pozorom nie jest tak trudny za jaki się go uważa ale już dla tych co w językach wysokiego poziomu kumają co i jak.
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

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