Sens programowania w systemie Linux
Sens programowania w systemie Linux
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.
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.
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.
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.
Prędzej systemy wbudowane, bo to one, a nie systemy PC-towe stanowią większość systemów operacyjnych.godzio89 pisze:pieniądze ma dlatego, że pisze oprogramowanie pod Windows
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.
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.
Re: Sens programowania w systemie Linux
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".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).
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.
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.grucha pisze:Jak chcesz się nauczyć programować, to się ucz języka, nie bibliotek, bo biblioteki się zmieniają, a języki zostają te same.
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.
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.
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.
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.
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):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ł.
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).