Jakbym chciał zostać programistą...

raiden00

megazord
160
278
which-programming-language-should-i-learn-first-infographic.png
 

Szynka

Złota szynka wolnego rynku.
1 209
2 052
Potrzebuję napisać aplikację w Javie. Czy ktoś może polecić jakieś tutoriale dla początkujących w Javie ale znających podstawy programowania? Nie mam ochoty uczyć się co to jest pętla, ale z drugiej strony nie mam pojęcia jak organizować kod w te pakiety ani nawet w klasy :( Mam zamiar wysłać ten kod na taki konkurs i chciałbym uniknąć jakichś kardynalnych, podstawowych błędów, o których powinien wiedzieć każdy nowicjusz.
 

Alu

Well-Known Member
4 629
9 678
Jeśli nie masz nawet ochoty uczyć się co to pętla, to daruj sobie... to tak jakbyś napisał:

"Potrzebuję napisać książkę ale nie mam ochoty uczyć się co to alfabet."
 

Szynka

Złota szynka wolnego rynku.
1 209
2 052
Źle się wyraziłem. Wiem co to jest pętla, więc nie chcę znowu uczyć się po raz n-ty podstaw, a jedynie rzeczy charakterystycznych dla języka Java.
 

Szynka

Złota szynka wolnego rynku.
1 209
2 052
Ostatecznie mogę tak zrobić, ale nie jest to wygodne i szukam czegoś przystępniejszego. Na yt są jakieś filmiki "Java in one video", może to będzie dobre :p
 

Mad.lock

barbarzyńsko-pogański stratego-decentralizm
5 148
5 106
Ja też mam zawsze wrażenie, że "znowu te nudy o if i pętlach" ale w praktyce wychodzi zawsze, że w książkach wcale nie poświęcają na to dużo tekstu, a w różnych językach programowania są chyba zawsze jakieś różnice, które warto poznać. Na pewno nie zajmuje to tyle czasu, żeby tracić czas na szukanie tutorialu, w którym to pominięto.
Jeśli to ma być prosty program w jednym pliku, bez wielu klas i dziwactw, to robisz katalog o jakiejś unikatowej nazwie, to będzie nazwa pakietu. W nim plik o jakiejś nazwie i rozszerzeniu java, w nim na początku
Kod:
package unikatowanazwa;
Potem publiczna klasa o nazwie takiej jak plik bez rozszerzenia i w tej klasie musi być publiczna statyczna klasa o nazwie main(). I dopiero w niej piszesz jakbyś pisał normalnie program. Ta statyczna funkcja main jest wykonywana przez wirtualną maszynę automatycznie i nie pisze się znowu nigdzie main(), żeby się wykonała.

Nazwa pakietu to może być coś co kojarzy się z danym programem, a nazwa pliku to może być Main albo Run. Albo nazwa pakietu może się kojarzyć z autorem, a nazwa pliku z programem.

java to w ogóle język gdzie ordung must sein, w przeciwieństwie do pythona.
 
Ostatnia edycja:

Mad.lock

barbarzyńsko-pogański stratego-decentralizm
5 148
5 106
Dwa tygodnie ogarniałem i kombinowałem z Unity Engine i w końcu mam coś w co da się grać i nie ma widocznych bugów. Oczywiście nie ma tak dobrze i gra jest prymitywna do bólu, krótka, bez dźwięku, zapomniałem usunąć kursor i w ogóle jest do kitu.

Da się grać, czyli można wybrać jeden z dwóch leveli i męczyć się, żeby mieć jak najlepszy wynik. Gra zapamiętuje najlepsze wyniki.

Na sb pokazywałem raz lepszą mapę z bitcoinami, ale tamta wersja miała bugi i kod pisany bez przemyslenia, że nie chciało mi się tego naprawiać. Bonusy do zbierania, przeciwnicy i ciekawsze mapy to teraz kwestia tylko chęci.

Film trochę długawy i nudny, bo mnie trochę wciągnęło.
 

ernestbugaj

kresiarz umysłów
851
3 037
Wpadł mi wczoraj ciekawy, zagraniczny temacik, mianowicie szukam Senior Android Developera do współpracy kontraktowej w Berlinie dla dużej niemieckiej firmy tworzącej oprogramowanie dla biznesu. Jeśli chodzi o technologie to w zasadzie full stack + testy. Projekt może potrwać conajmniej 3 miesiące z dużym prawdopodobieństwem przedłużenia nawet do końca 2016 roku. Wymagana dobra znajomość języka angielskiego.
Wynagrodzenie w okolicach 250-300 eur/dzień ale względnie do ruszenia. Trzeba uwzględnić wszystkie koszty - transport, zakwaterowanie, no i oczywiście na końcu trzeba na tym wszystkim wyjść na plus:)
Jeśli ktoś jest zainteresowany albo zna kogoś, kto potencjalnie byłby zainteresowany tematem, to niech pisze na pw.
 

kompowiec

freetard
2 568
2 622
Ciekawostka o c++ dlaczego trzeba się go uczyć całe życie
1 Stycznia 1998 roku, Bjarne Stroustrup udzielil wywiadu dla jednego z czasopism komputerowych - "IEEE Computer". Wydawcy mysleli, ze bedzie to nawiazanie do minionych siedmiu lat programowania obiektowego za pomoca jezyka, ktory sam stworzyl. W trakcie wywiadu, prowadzacy go redaktor zostal dosc niemile zaskoczony przez swojego rozmowce, co bylo powodem pozniejszej checi zatajenia tresci wywiadu przez wydawcow, tlumaczonej "dbaniem o dobro przemyslu komputerowego". Jednak jak to zwykle bywa w takich przypadkach, rowniez i tutaj wystapil tzw. przeciek informacji.

Oto kompletny odpis tego co zostalo powiedziane, bez jakichkolwiek obrobek merytorycznych. Dlatego tez nie wyglada to tak, jak w przypadku innych, wczesniej uzgadnianych wywiadow. Jednak mysle, ze spotka sie to z zainteresowaniem....

---

Redaktor: Minelo juz pare lat odkad zrewolucjonizowales swiat programowania. Co o tym myslisz, patrzac wstecz na swoje dokonania?


Stroustrup: Wlasciwie myslalem o tym tuz przed twoim przyjsciem. Pamietasz?... Wszyscy pisali w C, a problemem bylo to, ze byli w tym cholernie dobrzy. Rowniez uniwersytety byly dobre w nauczaniu tego jezyka. W bardzo szybkim tempie wypuszczali na swiat wykwalifikowanych (podkreslam slowo: wykwalifikowanych) absolwentow. To wlasnie spowodowalo problem.


Redaktor: Problem?


Stroustrup: Tak, problem. Pamietasz jak dawniej wszyscy pisali w Cobol-u?


Redaktor: Oczywiscie, ja tez w tym pisalem...


Stroustrup: Wiec na poczatku ci ludzie byli jak polbogowie. Mieli wysokie pensje, i traktowani byli niemalze jak czlonkowie rodziny krolewskiej.


Redaktor: To byly czasy..., prawda?


Stroustrup: Wlasnie! I co sie stalo? Firma IBM miala tego dosyc, wiec zainwestowala miliony dolarow na wytrenowanie tylu programistow, az bylo ich doslownie na peczki.


Redaktor: Z tego wlasnie powodu ja tez odszedlem. Pensje spadly w przeciagu roku na tyle, ze bardziej oplacalo sie pisanie artykulow do magazynow.


Stroustrup: Dokladnie. To samo stalo sie z programistami piszacymi w C.

Redaktor: No tak. Ale do czego zmierzasz?

Stroustrup: Otoz pewnego dnia, kiedy siedzialem w swoim biurze, myslalem nad czyms co wprowadziloby troche rownowagi do owczesnej sytuacji. Zastanawialem sie co by bylo, gdyby istnial jezyk na tyle skomplikowany i trudny do nauczenia, ze nikt nie bylby w stanie zalewac rynku programistami. Mialem pare pomyslow z X10, no wiesz, X windows. To dopiero bylo okropne srodowisko graficzne... chodzilo tylko na maszynach typu Sun 3/60. Ale mialo swszystkie skladniki jakich potrzebowalem: naprawde smiesznie skomplikowana skladnie, metne i niejasne funkcje oraz pseudo obiektowa strukture. Nawet w dzisiejszych czasach, nikt kto chce pozostac przy zdrowych zmyslach, nie pisze w czystym kodzie X-windows.

Redaktor: Chyba zartujesz...?

Stroustrup: Ani troche. Byl tez kolejny problem. Unix zostal napisany w C, a to znaczylo ze kazdy programista piszacy w tym jezyku, mogl bardzo latwo przejsc na pisanie systemow operacyjnych. Pamietasz chyba ile wtedy programista takich glownych systemow zarabial?

Redaktor: Jasne ze tak, sam tez sie tym zajmowalem....

Stroustrup: Zatem ten nowy jezyk musial oddzielic sie od Unix-a, ukrywajac wszystkie wywolania systemowe. To umozliwiloby zarobienie paru groszy rowniez tym, ktorzy znali tylko DOS-a.

Redaktor: Nie wierze, ze to powiedziales...

Stroustrup: No coz, minelo juz troche czasu i moim zdaniem wiekszosc ludzi odkryla, ze cale C++ to tylko strata czasu, choc musze powiedziec, ze zajelo im to o wiele dluzej niz przypuszczalem.

Redaktor: Zatem, jak udalo ci sie osiagnac taki sukces?

Stroustrup: To mial byc tylko zart. Nigdy nie sadzilem, ze ludzie mogliby brac moja ksiazke na powaznie. Kazdy, nawet polglowek dostrzeze, ze programowanie zorientowane obiektowo jest nielogiczne, niewydajne i dziala wbrew intuicji.

Redaktor: Co?

Stroustrup: A co do wielokrotnego wykorzystywania kodu... - kiedy slyszales, zeby jakas firma dzialala w ten sposob?

Redaktor: No..., wlasciwie to nigdy, ale...

Stroustrup: No wlasnie! To znaczy, kilka probowalo w tamtych czasach. Byla taka firma z Oregonu - Mentor Graphics, ktora w '90 albo '91-szym roku probowala przepisac wszystko na C++ i niestety nie wyszlo im to na dobre. Bylo mi ich naprawde zal ale uwazam, ze ludzie powinni uczyc sie na wlasnych bledach.

Redaktor: Dokladnie. A im sie to nie udalo?

Stroustrup: Niestety ani troche. Problem w tym, ze wiekszosc firm ma tendencje do tuszowania swoich powazniejszych zaniedban, a wytlumaczenie sie akcjonariuszom ze straty 30 milionow dolarow, byloby dosc trudne. Sprawiedliwosci stalo sie zadosc, jednak w koncu udalo im sie jakos wyjsc na prosta.

Redaktor: Naprawde? No wiec sam widzisz, ze programowanie obiektowe skutkuje.

Stroustrup: Prawie. Pliki.EXE byly tak duze, ze ich zaladowanie na maszynie HP ze 128MB RAM-u, trwalo piec minut. Programy uruchamialy sie w slimaczym tempie. Wlasciwie myslalem, ze bedzie to glowna wada nowego jezyka, jednak nikogo to nie obchodzilo. Firmy takie jak Sun czy HP byly zbyt zadowolone ze sprzedazy swoich mocnych komputerow z ogromnymi zasobami, a wszystko po to tylko, zeby uruchamiac na nich proste, banalne programy. Wyobraz sobie, ze kiedy pojawil sie pierwszy kompilator C++ na komputerze AT&T, skompilowalem pod nim zwykle "Hello World" i wprost nie moglem uwierzyc rozmiarowi tego pliku - 2.1 MB.

Redaktor: Co? Zgoda, ale kompilatory bardzo sie od tamtego czasu zmienily.

Stroustrup: Czyzby? Wezmy na przyklad ostatnia wersje g++ - nie uzyskasz wiekszej redukcji objetosci jak zaledwie o niecale 0.5 MB. Moglbym przytoczyc ci jeszcze kilka innych przykladow z calego swiata. Swego czasu firma British Telecom miala z tego powodu nie lada katastrofe, ale na szczescie udalo im sie w pore usunac problemy i zaczac od nowa. Australian Telecom nie miala tyle szczescia, co ich brytyjski odpowiednik. Teraz dochodza mnie sluchy, ze Siemens buduje kolejnego "dinozaura" martwiac sie coraz bardziej o to,

aby sprzet rownowazyl wymagania programow. Czy zatem wielopoziomowe dziedziczenie nie jest po prostu pomylka?

Redaktor: Przeciez C++ jest bezpiecznym jezykiem.

Stroustrup: Naprawde w to wierzysz? Czy kiedykolwiek pracowales nad projektem w C++? Oto co sie dzieje: po pierwsze, w C++ istnieje wystarczajaco duzo pulapek, dzieki ktorym tylko najbanalniejsze projekty dzialaja za pierwszym razem. Wez np. przeladowanie jakiegos operatora. Pod koniec projektu, prawie kazdy modul je posiada, bo w mniemaniu programistow powinno ono wystapic, przeciez o tym mowiono im na kursach szkoleniowych. Zatem ten sam operator w kazdym kolejnym module oznacza cos zupelnie innego. A sprobuj nad tym zapanowac, kiedy bedziesz mial okolo setki modulow... A co do ukrywania danych: O Boze, czasami nie sposob sie nie rozesmiac, kiedy slysze o firmach starajacych sie sprawic aby ich moduly ze soba wspolpracowaly. Mysle, ze slowo "synergetyczny" zostalo specjalnie wymyslone, aby mozna bylo szefowi projektu "przekrecac noz w zebrach".

Redaktor: Musze przyznac, ze zaczynam byc tym wszystkim przerazony. Mowisz, ze stworzyles ten jezyk po to, aby wzrosly pensje programistow? To okropne!

Stroustrup: Nie zupelnie. Przeciez kazdy ma wybor. Nie przypuszczalem, ze az tak bardzo wymknie sie to spod kontroli, jednak stalo sie. C++ juz stopniowo wymiera, ale programisci dalej sa dobrze oplacani - szczegolnie ci, ktorzy zajmuja sie tworzeniem projektow za pomoca tego steku bzdur. Zdajesz sobie sprawe, ze pracowanie nad duzym modulem programu w C++ nie jest mozliwe, jesli sam go nie napisales?

Redaktor: Jak to?

Stroustrup: Nie kojarzysz o czym mowie, prawda? A pamietasz dyrektywe: typedef?

Redaktor: Oczywiscie ze tak.

Stroustrup: Przypomnij sobie ile czasu zabiera sledzenie "po omacku" plikow naglowkowych tylko po to, aby dowiedziec sie ze np. 'RoofRaised' to liczba typu double. Wyobraz sobie ile czasu zabiera znalezienie wszystkich konkretnych dyrektyw typedef we wszystkich klasach jakiegos wiekszego projektu.

Redaktor: Po czym zatem poznales swoj sukces?

Stroustrup: Pamietasz ile zajmowalo stworzenie sredniej objetosci projektu w C? Okolo 6 miesiecy. To troche za krotko, aby facet majacy zone i dzieci mogl zarobic na utrzymanie i w miare godziwy standard zycia. A wez teraz napisz ten sam projekt uzywajac C++...i co otrzymasz? Powiem ci – jeden do dwoch lat. Czyz to nie wspaniale zapewnienie sobie pracy? Kolejna rzecz. Uniwersytety nie nauczaly C od tak dawna, ze teraz brakuje porzadnych programistow piszacych w tym jezyku. Szczegolnie tych, ktorzy wiedza cos na temat programowania pod systemami z rodziny Unix-a. Ilu teraz wiedzialoby co zrobic z 'malloc', skoro przez tyle lat uzywali 'new' - i nigdy nie zaprzatali sobie glowy sprawdzaniem wartosci zwracanego kodu. W rzeczywistosci, wiekszosc z programistow C++ pomija te zwracane wartosci. Co sie stalo ze starym, dobrym '-1'? Przynajmniej wiedziales, ze masz blad, bez grzezniecia w caly ten balagan z 'try', 'throw' i 'catch'.

Redaktor: Ale przeciez dziedziczenie oszczedza mnostwo czasu i pracy...

Stroustrup: Tak sadzisz? Czy kiedykolwiek zauwazyles roznice miedzy planowaniem projektu w C, a planowaniem projektu w C++? To drugie jest trzy razy dluzsze. Musisz dokladnie upewnic sie, ze wszystko co powinno byc dziedziczone, jest dziedziczone, a wszystko co nie powinno - nie jest. A potem i tak wystepuja w tym bledy. Kto przedtem slyszal o jakiejs konsumpcji pamieci przez program napisany w zwyklym C? A teraz znajdywanie ich, to chleb powszedni. Wiekszosc firm pod tym wzgledem poddaje sie, wypuszczaja na rynek swoj produkt, wiedzac ze cieknie z niego jak z dziurawego worka, no ale wtedy unikaja kosztow zwiazanych z lataniem tych dziur.

Redaktor: Sa do tego odpowiednie narzedzia...

Stroustrup:...z ktorych wiekszosc zostala napisana w C++.

Redaktor: Czy zdajesz sobie sprawe z tego, ze jesli opublikujemy ten wywiad, to prawdopodobnie zostaniesz
 

kompowiec

freetard
2 568
2 622
"zlinczowany"?

Stroustrup: Watpie. Jak juz powiedzialem, C++ minal juz swoj szczyt rozkwitu i popularnosci i zadna firma przy zdrowych zmyslach nie zacznie tworzenia projektu w C++ bez wstepnych prob. One powinny ich przekonac, ze zmierzaja prosto ku katastrofie. A jesli tego nie zauwaza, to niech maja na co zasluzyli. Wiesz, probowalem kiedys przekonac Dennis'a Ritchie, aby przepisal Unix-a w C++.

Redaktor: O moj Boze..., i co powiedzial?

Stroustrup: Na szczescie ma poczucie humoru. Mysle ze obaj, on i Brian Kernighan juz wtedy zorientowali sie o co mi chodzi, ale trzymali to w tajemnicy. Dennis powiedzial, ze jesli chce, to pomoze mi napisac w C++ wersje DOS-a.

Redaktor: A chciales?

Stroustrup: Wlasciwie to napisalem DOS-a w C++. Jak skonczymy, to dam ci wersje demo. Dziala to u mnie na Sparc 20. Chodzi jak rakieta przy czterech procesorach i zajmuje tylko jakies 70 MB twardego dysku.

Redaktor: A jak sie sprawuje na zwyklym PC?

Stroustrup: Teraz to sobie zartujesz. Czy nigdy nie widziales Windows'95? Mysle o nim jak o moim najwiekszym sukcesie. Prawie przegralem, zanim cokolwiek sie zaczelo.

Redaktor: Wiesz, ten pomysl na Unix++ naprawde mnie zastanawia. Gdzies na swiecie ktos na pewno sie za to wezmie.

Stroustrup: Na pewno nie, jesli przeczyta ten wywiad.

Redaktor: Przykro mi, ale nie wydaje mi sie, zebysmy mogli cokolwiek z tego opublikowac.

Stroustrup: Ale to jest opowiesc stulecia. Ja chce tylko, zeby wszyscy moi koledzy po fachu pamietali mnie za to, co dla nich zrobilem. Wiesz ile zarabia w dzisiejszych czasach programista znajacy C++?

Redaktor: Ostatnio slyszalem, ze ci najlepsi dostaja $70 - $80 za godzine.

Stroustrup: Widzisz? I zaloze sie, ze sa tyle warci. Sledzenie wszystkich tych "pulapek" jakie umiescilem w C++ nie jest wcale latwe. Tak jak juz mowilem wczesniej, kazdy programista piszacy w C++ czuje sie zwiazany jakas mistyczna obietnica do uzywania w swoich projektach kazdego przekletego elementu tego jezyka. Czasami to naprawde mnie denerwuje, nawet jesli jest zgodne z moim pierwotnym celem. Po tych wszystkich latach, prawie polubilem ten jezyk.

Redaktor: To znaczy, ze przedtem go nie lubiles?

Stroustrup: Nienawidzilem go. Wydaje sie nawet niezgrabny, zgodzisz sie? Ale kiedy zaczely przychodzic do mnie tantiemy..... no coz, sam rozumiesz.

Redaktor: Chwileczke. A co z referencjami? Musisz przyznac, ze ulepszyles wskazniki zwyklego C.

Stroustrup: Hmm... Zawsze sie nad tym zastanawialem. Najpierw myslalem, ze faktycznie je ulepszylem. Potem jednak rozmawialem o tym z pewnym facetem, ktory od poczatku pisal wszystkie swoje programy w C++. Powiedzial mi, ze nigdy nie moze zapamietac czy jego zmienne przekazywane sa przez referencje czy przez dereferencje, wiec zawsze uzywa wskaznikow. Powiedzial, ze ta mala gwiazdka zawsze mu przypomina.

Redaktor: Coz, w tym momencie zwykle mowie: 'dziekuje ci bardzo za wywiad', ale tutaj nie wydaje sie to stosownym.

Stroustrup: Obiecaj mi, ze to opublikujesz. Po prostu gryzie mnie sumienie, dlatego cie o to prosze.

Redaktor: Dam ci znac, ale juz przeczuwam co powie moj wydawca.

Stroustrup: Ale kto by w to uwierzyl? Mimo wszystko, czy mozesz przyslac mi kopie tasmy z tym wywiadem?

Redaktor: OK, to moge zrobic.
http://confiable.nazwa.pl/texty/text_Wywiad_Cpp.htm
 
OP
OP
A

Antoni Wiech

Guest
I co, został ktoś tym programistą?
W pełnym tego słowa znaczeniu nie zostałem, bo nie przycisnąłem tematu. Jednak niedawno zaprogramowałem makro w excelu (VBA), bo potrzebowałem usprawnienia przy wrzucaniu baz danych na serwer. Przez 3 dni skanowałem po 10 h tutoriale polskie i angielskie i myślałem, że mi łeb wybuchnie, ale ogarnąłem. To chyba najlepszy sposób dla mnie uczenia się programowania z konkretnym celem.
 

kompowiec

freetard
2 568
2 622
Jednak niedawno zaprogramowałem makro w excelu (VBA), bo potrzebowałem usprawnienia przy wrzucaniu baz danych na serwer
U mnie też nie najlepiej. Na moim githubie zrobiłem projekt w C++ który co prawda się kompiluje ale nie uruchamia -_- #przegryw
a kiedy zobaczyłem ten wywiad to mi się żołądek wywrócił.
To chyba najlepszy sposób dla mnie uczenia się programowania z konkretnym celem.
Oczywiście. Ale działa to tylko wtedy, jeśli znasz podstawy i podstawy algorytmiki. Myślenie algorytmiczne łatwo osiągnąć przez scratcha, niedawno zacząłem. Potem już tylko odpowiednie komendy do danego języka się pisze i szlus.

Sam miałem parę pomysłów na programy ale większość mi przepadła wraz z backupem -_-
 
Do góry Bottom