s

s

Ekhm… cóż, moje prywatne zdanie jest odwrotne do wyrażonego powyżej przypuszczenia.

Jeśli chce się być programistą trzeba być wszechstronny - kiedy już się nauczy programować (do pewnego stopnia, bo uczy się całe życie) warto znać więcej języków, aby wybrać najlepiej dostosowany do problemu.

Co do samego polecenia języka/ksiązki to tematów takich było baaardzo dużo. Ja osobiście polecam poznać C, książka np.: http://helion.pl/ksiazki/jezyk_c_szkola … jcszpr.htm

s

Moim zdaniem warto znać Javę i Pythona (ma wiele pozytywów + jak java multiplatformowość bez przeszkód, wystarczy interpreter w systemie). Programistą nie jestem (wolę grafikę), ale również ciekawi mnie to i czasem staram się coś “łyknąć” - mimo że mam Symfonię C++ na półce to nie mam nadal przekonania do C++. Za to Python…jeden i ten sam kod działa na Maku, Linuksie, BSD, Windows… Moim zdaniem szkoda czasu na drewniane języki jak C++ o chorej składni (choć prym wiedzie z racji utarcia się po prostu) - lepiej zainwestować czas na coś prawdziwie cross-platform.

C i C++ też są multiplatformowe,dalej dochodzą biblioteki zależne od platformy,w tych językach są pisane programy na wszystkie systemy Linux,Windows,MacOS,BSD itd.,jeśli napiszesz program w czystym C albo C++ to będzie on przenośny,w systemie musisz mieć tylko kompilator,aby skompilować kod na daną platformę.

Jeśli masz trochę czasu, który możesz “zmarnować”, zajmij się nauką czystego C( np. w standardzie C99). To taka lingua franca języków programowania.

Ale to krok opcjonalny. Po prostu ściągnij "visual studio 2010 express " i masz kompletne środowisko do programowania w C#. A w tej chwili jest to po prostu język lepszy od Javy, która została w tyle :/.

A może lepiej coś cross-platform, a nie dziwne ograniczenie się tylko do Windows? Jak już programować to uniwersalnie, tak mnie się wydaje. Inaczej skończy jak programiści Tlenu, którzy od ponad roku ciągną betę Tlenu7 dla innych systemów i coś do ładu nie mogą, ponieważ zakorzenili się w Windows (ale to tylko moja opinia).

Sam język nie gwarantuje przenośności, trzeba po prostu sprawdzać działanie programu w różnych środowiskach, idealnie jest kiedy w zespole developerów po prostu są osoby, które preferują różne systemy. Najlepiej widać to na przykładzie wersji dla MacOS - w wielu projektach nagle znikają oficjalne buildy i wsparcie bo jedyny developer z Makiem nie jest już zainteresowany ;).

Tlen 7, podobnie jak ostatnie GG, a kiedyś opera jest oparty na QT - i na dobrą sprawę zestaw C++ + QT4 jest znacznie bardziej przenośny niż Java (daje radę także na platformach, które Javy nie uciągną). Jeśli ktoś chce napisać wieloplatformowy program - to zrobi to i w C#, sprawdzając co jakiś czas czy nie występują problemy przy uruchamianiu za pomocą Mono. W projektach OpenSource jest jeszcze prościej: “macie tu kod, odpalałem tylko pod Windows, jeśli ktoś zrobi odpowiednie poprawki dla innych systemów chętnie je dołączę do głównego drzewa” =)

To “tylko” dotyczy znacznej większości przeciętnych użytkowników komputera.

Popatrz, ja jakoś programuję w C# i użytkownicy dowolnego systemu mogą z moich aplikacji korzystać.

Programiści mikrokontrolerów, sterowników, gier, narzędzi systemowych tworzą oprogramowanie ściśle związane ze sprzętem czy też systemem operacyjnym. Twórcy custom software piszą aplikacje dla konkretnego klienta, mające działać tylko u niego, na jego sprzęcie, w jego sieci, itd. Tu nie ma potrzeby “uniwersalności”.

“Uniwersalne” programowanie może dotyczyć pewnej grupy programów użytkowych.

Więc w tej kwestii trzeba sobie samemu odpowiedzieć na pytanie, co się chce w życiu robić.

Może i to “tylko”, ale moim zdaniem programista to d*** a nie programista, jak tylko pod Windows kodzić umie. Dziwne - cytat z Twojej strony:

A co, jak mam Linuksa, Maka czy BSD? Mono to nie rozwiązanie tylko półśrodek. No ale masz rację - każdy musi zdecydować, ja akurat jestem przeciwny jednoplatformowym appsom, dlatego w moim kręgu leży Python i Java (z naciskiem na Pythona) - jeden kod i nie jestem uzależniony od żadnego systemu.

A jeśli nie potrafi “kodzić” pod żaden system operacyjny, bo programuje elektronikę?

Poza tym mylisz “umieć”, z “robić”.

Programiki z mojej strony wymagają .NET, być może pójdą na Mono. Nie wiem, nie sprawdzałem, one są stare, a ja teraz zajmuję się zawodowo czymś innym.

No i ja takie coś robię w C#. Więc o jakiej jednoplatformowości mówisz?

sakaszli , sam dla siebie to możesz (nawet powinieneś chcieć) uczyć się do woli. Jednak przyjdzie czas kiedy będziesz musiał wybrać czy zostać freelancerem czy założyć firmę (wtedy wybór języka jest dowolny) czy pracować dla jakieś firmy, korporacji (wtedy ograniczysz się zapewne do 1 języka). Chcesz nauczyć się Delphi - proszę bardzo, chcesz VB, a proszę bardzo, chcesz C/C++/C# a proszę bardzo. We wszystkich tworzy się aplikacje i mało rozbudowane i bardziej rozbudowane. Jeśli nauczysz dobrze programować w 1 języku, zajarzysz o co lata, będziesz wiedział co chcesz zrobić i jak ma wyglądać końcowy produkt (program) to kwestia nauczenia lub douczenia się pozostałych języków nie będzie kłopotliwa.

Miałeś już praktyki? Co robiłeś, w jaką dziedzinę wszedłeś na “chwilę”?

somekind:

No i ja takie coś robię w C#. Więc o jakiej jednoplatformowości mówisz?

Więc jak mają nie być tylko na jedną platformę. Mam teraz powiedzmy Linuksa i maka więc jak Twoje aplikacje są wieloplatformowe, kiedy:

Programiki z mojej strony wymagają .NET, być może pójdą na Mono. Nie wiem, nie sprawdzałem, one są stare, a ja teraz zajmuję się zawodowo czymś innym.

Zamotałem się nieco - wynik jest taki, że Twoje programy są pod każdą platformę pod warunkiem, iż jest to Windows. Jak ktoś chce użyć na innym systemie to jest problem, ponieważ:

Programiki z mojej strony wymagają .NET, [b]być może pójdą na Mono[/b]. Nie wiem, nie sprawdzałem, one są stare, a ja teraz zajmuję się zawodowo czymś innym.

Więc wytłumacz mi, ponieważ nie widzę tego cross-platform C# OK, nie jestem programistą (moim kucykiem jest grafika) choć hobbystycznie staram się poza pracą znaleźć dla kodzenia czas. Niemniej nadal nie wiem, gdzie jest przenośność tego języka - chyba jest cross-platform tylko pod Windows.

sakaszli , proszę zapoznaj się z tą stroną oraz tym tematem, a następnie popraw tytuł tematu, używając przycisku ac7a4cd89050aa6e.gif

Stety albo nie stety w mojej szkole praktyki odbywają się pod koniec 3 klasy.

end;

Teraz mocno zastanawiam się między C# a delphi… W delphi czuje się jak ryba w wodzie, a gdy zainstalowałem C# to nie wiedziałem co do czego jest (wiadomo 1 raz wziąłem ten język na poważnie).

W delphi wszytsko jest czytelne nic nie wychodzi z ****. Chociaż c# daje większe pole do popisu.

Mono jest dostępne także na inne platformy.

Szukasz dziury w całym. Programista potrafi napisać program na każdą platformę, jeżeli tylko będzie mu się chciało. Nie musi tworzyć wieloplatformowych aplikacji tym bardziej, że często mu się to nie opłaca.

Duże firmy tworzące oprogramowanie też mają wieloplatformowość w nosie i jeżeli już to tworzą osobne wersje programu dla różnych platform.

No to masz, szlifuj C# i Delphi, a gdyby potrzebna była przesiadka to się przesiądziesz wg mnie bez problemu, jeśli będziesz wiedział o co chodzi.

Tzn z IDE C# i Delphi, bo gdybyś miał wszystko robić np. w Notepad++ no to byłoby mniej ciekawie.

Przyczepiłeś się paru moich programików i ciągle o nich gadasz, a ja już tłumaczyłem, że one są stare i takiego oprogramowania nie tworzę zawodowo. To, że w C# czy .NET można pisać oprogramowanie przywiązane do konkretnej platformy systemowej, nie znaczy, że nie da się w C# czy .NET pisać aplikacji dostępnych z różnych platform. Myślę, że to dość proste i zrozumiałe.

No właśnie - nie jesteś programistą, może napisałeś hobbystycznie parę programików, ale nie masz pojęcia o tworzeniu oprogramowania, nie znasz trendów, a samo oprogramowanie ograniczasz wyłącznie do aplikacji desktopowych. Wybacz, ale żeby dawać rady trzeba mieć jakieś doświadczenie i wiedzę, inaczej tylko zamieszasz komuś w głowie.

Jeśli chcesz zobaczyć aplikacje napisane w C# dostępne z dowolnego systemu operacyjnego, to proszę bardzo:

http://www.myspace.com/

http://stackoverflow.com/

https://www.mbank.com.pl/

http://mms.orange.pl/

A setek czy tysięcy innych nie zobaczysz, bo pracują w intranetach.

Wiesz, czytelność to kwestia obycia i przyzwyczajenia. Jeśli chodzi o C#, to w internecie jest sporo tutoriali, nawet wideo, pokazujących jak stworzyć swoją pierwszą aplikację.

Pobaw się tym i owym, a potem wybierz jeden język, którym zajmiesz się bardziej serio. Ale tak czy siak nie ma co liczyć, że będzie się programistą jednego języka. W pracy zawsze może się okazać, że trzeba przepisać jakiś kod z C++ na C# albo z Fortrana na Javę i nie będzie ważne to, że pierwszy raz widzisz dany język na oczy.

Ok dziękuję wszystkim za pomoc.

Pokombinuje trochę z C.

Pozdrawiam i jeszcze raz dziękuje.