Sens programowania w systemie Linux

Potrzebujesz pomocy z C, C++, perl, python, itp.
godzio89
Beginner
Posty: 137
Rejestracja: 05 maja 2007, 01:28
Lokalizacja: Grudziądz

Sens programowania w systemie Linux

Post autor: godzio89 »

Tak właśnie się zastanawiam nad sensem programowania w systemie Linux. Zazwyczaj osoba programująca uczy się np języka C++, później dokłada np. do tego WinAPI i różne inne rzeczy. Osoba kończy studia i idzie do pracy jako programista (pieniądze ma dlatego, że pisze oprogramowanie pod Windows). Dlatego jeżeli ktoś chce zostać w przyszłości programistą to nie lepiej wybrać system Windows niż system Linux? Chętnie przeczytam wasze wypowiedzi na ten temat.
tomii
Junior Member
Posty: 687
Rejestracja: 21 października 2007, 13:27

Post autor: tomii »

Według mnie jeśli ktoś chce zostać programistą to powinien umieć dość łatwo opanowywać nowe biblioteki i api.
Wszystkie dobre cechy programowania można się nauczyć na każdym systemie, później jedynie zostaje krótkie dostosowanie się do systemu(kto wie czy nie będzie potrzeby pisania pod linuxa). To tak jak pisanie na studiach w jednym -dwóch językach a później w innych-przesiadka nie jest wcale taka trudna. pozostaje jeszcze kwestia języków które pod każdą platforma są niemal identyczne jak java.
AdeBe
Junior Member
Posty: 825
Rejestracja: 01 grudnia 2007, 14:41

Post autor: AdeBe »

Może pod samego linuksa znajdziesz w Polsce mało ofert, ale bardzo dużo firm pisze aplikacje międzyplatformowe (np. JAVA) i niejednokrotnie widziałem w ofertach pracy "znajomość systemu Linux i UNIX"
Awatar użytkownika
grucha
Beginner
Posty: 345
Rejestracja: 29 września 2007, 01:04
Lokalizacja: Rzeszów / Kraków

Post autor: grucha »

A co to za różnica na jakim systemie programujesz? Języki programowania są w większości wieloplatformowe, poszczególne implementacje się co nieco różnią, ale nie aż tak, by to robiło różnice. Jak chcesz się nauczyć programować, to się ucz języka, nie bibliotek, bo biblioteki się zmieniają, a języki zostają te same. Pozatym, dobry programista nie ograniczy się do C++, WinAPI i paru innych bibliotek.
godzio89 pisze:pieniądze ma dlatego, że pisze oprogramowanie pod Windows
Prędzej systemy wbudowane, bo to one, a nie systemy PC-towe stanowią większość systemów operacyjnych.
Awatar użytkownika
grzesiek
Junior Member
Posty: 932
Rejestracja: 06 stycznia 2008, 10:41
Lokalizacja: Białystok

Post autor: grzesiek »

Trochę dziwne pytanie... widać, że nie bywasz na grupach dyskusyjnych np. pl.comp.lang.c ;-)
Teraz jest taki trend, że odchodzi się od systemów... wszystko musi być wieloplatformowe. Wyobrażasz sobie ile wart by był Firefox gdyby działał tylko pod Windows?
Tak się składa, że ja kiedyś porzuciłem Windowsa właśnie ze względów programistycznych - drogie środowiska programistyczne, uzależnienie od trendów Microsoftu.... itp. Zaprzestałem się uczyć WinAPI bo wchodził .NET, a ten tylko z hasła jest platformą do pisania programów na wiele systemów ;-) Bardzo długo szukałem czegoś "dla mnie", Znalazłem GTK+, umożliwiało naukę jeszcze na Windowsie wiec mogłem ją testować ale jeszcze nie byłem zmuszony sie przesiadać na Liuxa, gdy polubiłem GTK+ zabrałem się za walkę z Linuxem - po długich bojach udało się, dziś jestem szczęśliwym użytkownikiem Debiana ;-)
Linux dla programistów to raj, chcesz się dowiedzieć jak jakiś program realizuje pewne funkcje, zaglądasz do kodu, albo jak twoja ulubiona biblioteka (którą możesz sobie wybrać GTK+/Qt...) "to" robi? zaglądasz w kod. Od czytania kodów dobrych projektów można się bardzooo wiele nauczyć ;-)
A tak apropo zarabiania pieniędzy... tego nie da się zaplanować. Możesz programować bo to lubisz, możesz też z czasem na tym zarabiać ale jeżeli interesuje Cię tylko zarabianie to nie będzie łatwo ;-) bo przed tobą kilka lat nauki bez gwarancji zarobku i bez różnicy na jakim systemie.
Theq
Beginner
Posty: 140
Rejestracja: 16 kwietnia 2007, 19:00
Lokalizacja: Legnica

Re: Sens programowania w systemie Linux

Post autor: Theq »

godzio89 pisze:Zazwyczaj osoba programująca uczy się np. języka C++, później dokłada np. do tego WinAPI i różne inne rzeczy. Osoba kończy studia i idzie do pracy jako programista (pieniądze ma dlatego, że pisze oprogramowanie pod Windows).
Roznie bywa, ja "przeprogramowalem" cale studia na Windowsie a teraz mam pienieadze dlatego, ze pisze oprogramowanie pod Linuksem. I troche teraz zaluje, ze wczesniej nie zainteresowalem sie bardziej programowaniem "pod linuksa". Imo Linux bardzo pomaga, masz bardzo dobre narzedzia do programowania, duzo kodu (co prawda roznej jakosci) do przegladu, mozesz dolaczyc do jakiegos projektu open source i nauczyc sie pracy zespolowej. Nauczysz sie pisania wieloplatformowego, czyli nie wazne czy bedziesz pisal pod Linuksem, BSD, Macosem czy innym Solarisem, a nie tylko "pod Windows".
Poza tym to nie jest tak, ze sie uczysz jednego api cale zycie. Mozesz troche tego wolnego czasu poswiecic na zaznajomienie sie z winapi ]
Dlatego jeżeli ktoś chce zostać w przyszłości programistą to nie lepiej wybrać system Windows niż system Linux?Chętnie przeczytam wasze wypowiedzi na ten temat.[/quote]
Jesli chodzi o polskie oferty pracy to zdecydowany prym wiedzie Java, jezyki skryptowe (perl, php, python, ruby), no i jest tez troche "windowsowego" C# i .NET (moze jak skonczysz studia to bedzie sie tego dalo normalnie uzywac pod Linuksem ;) ). Ogolnie nie tak latwo znalezc robote pod "C++ i WinAPI", co nie znaczy ze jej nie ma.
grucha pisze:Jak chcesz się nauczyć programować, to się ucz języka, nie bibliotek, bo biblioteki się zmieniają, a języki zostają te same.
Jak chcesz sie nauczyc programowac, to sie ucz podstaw progamowania, matematyki i tych innych "bzdur" co na studiach ucza, a nie jezyka, bo jezyki sie zmieniaja, a podstawy zostaja takie same.
larret
Posty: 24
Rejestracja: 14 maja 2007, 08:33

Post autor: larret »

Programowanie nie opiera się na znajomości bibliotek systemowych, narzędzi lub składni języka. Polega ono na umiejętnym ich wykorzystaniu. Dobry programista pozna a następnie umiejętnie wykorzysta odpowiednią bibliotekę - nawet jeżeli nie zna od deski do deski jej specyfikacji.
fsl
Posty: 9
Rejestracja: 05 kwietnia 2008, 17:17

Post autor: fsl »

Pozostaje dodać, że duża część oprogramowania które kiedyś było uruchamiane przez użytkownika na swoim komputerze osobistym, obecnie znajduję się w sieci (użytkownik musi mieć przeglądarkę www uruchomioną na jakimś urządzeniu pod kontrolą jakiegoś systemu operacyjnego.), aplikacje webowe natomiast często są 'hostowane' przez platformy nie microsoft'owe. Dodatkowo frameworki używane do produkcji takiego oprogramowania są często wieloplatformowe.

Dla mnie linux jest środowiskiem o wiele bardziej przyjaznym niż windows jeśli chodzi o programowanie. Tak więc wg mnie Linux jest lepszym wyborem dla (początkującego) programisty.
giaur
Member
Posty: 1915
Rejestracja: 25 maja 2007, 22:16

Post autor: giaur »

No niestety ja nie moge sie zgodzic ze wszystkimi powyzszymi stwierdzeniami.

Będąc naprawdę obiektywnym - porządnego IDE dorównującego Miscrosoft Visual Studio 2008 i wcześniejszym pod Linuksem po prostu nie ma....

Jest co prawda Code::Blocks, KDevelop czy Eclipse - ale naprawdę, bądzmy szczerzy - nawet w 1/10 nie dorównują Visualowi - IDE Visual Studio to chyba jedyny produkt, ktory sie tej firmie udał.

Tak więc nie mozna powiedziec, ze programowanie pod Linuksem jest wygodniejsze - brak porządnego IDE z PORZ¡DNYM IntelliSence czy debuggerem - a to czasami ogromnie utrudnia pracę - nie mówiąc już o zagmatwaniu autoconf i automake - uczyc sie tego to jakby uczyc sie nowego języka programowania, a dokumentacja jest co najmniej niejasna.
Poza tym brak jest często dobrych, spójnych frameworków i bibliotek - skladnia GTK to dla mnie na przylad jakas pomylka - to już WinApi jest skonstruowane bardziej logicznie...

Tak więc pod Linuksem w tym sensie jest trudniej i niestety mniej wygodnie niz pod Windows - i mowie to jako zwolennik linuksa, ale niestety trzeba byc obiektywnym.
fsl
Posty: 9
Rejestracja: 05 kwietnia 2008, 17:17

Post autor: fsl »

Jest co prawda Code::Blocks, KDevelop czy Eclipse - ale naprawdę, bądzmy szczerzy - nawet w 1/10 nie dorównują Visualowi - IDE Visual Studio to chyba jedyny produkt, ktory sie tej firmie udał.
porównujesz tutaj darmowe narzędzia z rzeczywiście udanym kolosem jakim jest Visual Studio. Ale nie należy zapominać, że wśród płatnych produktów oprócz C++ Builder'a i VS istnieją inne komercyjne IDE platformowo niezależne do zastosowania z chyba wszystkimi popularnymi technologiami produkcyjnymi (językami programowania, frameworkami) np. Intellij IDEA dla 'java', Zend Studio dla 'php+zend framework', Wing IDE dla 'python' itd. zresztą tutaj jest małe zestawienie dostępnych IDE (pewnie nie wszystkich):
http://en.wikipedia.org/wiki/Comparison ... vironments

Jeśli położymy na szalę z jednej strony VS + .NET + fakt, że 91% komputerów osobistych działa pod kontrolą Windows a z drugiej strony kontrolę nad systemem operacyjnym i świadomość wiedzy 'co się dzieje w danej chwili': to .. każdy oceni i wybierze sam na czym mu zależy.

Dodać trzeba jeszcze, że na korzyść Windows przemawia fakt iż można korzystać z otwartego oprogramowania co daje tej platformie (programistycznej- cały czas o programowaniu ;) ) więcej dostępnych technologii w połączeniu z technologiami MS które są jednoplatformowe. Na niekorzyść przemawiają częste problemy z implementacją tych technologii i administracją...(tych nie by MS, bo i tutaj znowu plus- narzędzia MS dobrze się ze sobą integrują) (a może nie ma problemów? - każdy niech oceni sam).
ODPOWIEDZ