Najlepszym sposobem, aby nauczyć początkujących do programu?

głosy
325

Oryginalny Pytanie

Jestem obecnie zaangażowany w nauczanie mojego brata do programu. On jest początkującym całkowity, ale bardzo inteligentny. (I on rzeczywiście chce się uczyć). Zauważyłem, że niektórzy z naszych sesji zdobyć ugrzęznąć w drobne szczegóły, a ja nie czuję już bardzo zorganizowana. ( Ale odpowiedzi na to stanowisko nie pomogło. )

Co mogę zrobić lepiej, aby skutecznie go nauczyć? Czy istnieje porządek logiczny, który można używać do uruchamiania przez pojęcie o koncepcji? Są tam zawiłości powinienem unikać na później?

Językiem pracujemy ze jest Python , ale rada w każdym języku jest mile widziane.


Jak pomóc

Jeśli masz dobrych Prosimy o dopisanie następującej w swojej odpowiedzi:

  • Ćwiczenia dla początkujących i pomysły projektowe
  • Zasoby dla początkujących nauczania
  • Screencasts / blogi / darmowych e-książek
  • książki drukujące, które są dobre dla początkujących

Proszę opisać zasobu wraz z linkiem do niego , więc mogę spojrzeć. Chcę, żeby wszyscy wiedzieli, że mają zdecydowanie używa niektóre z tych pomysłów. Twoje uwagi będą sumowane w tym poście.


Zasoby online dla nauczania początkujących:


Zalecane Books Print dla początkujących nauczania

Utwórz 06/08/2008 o 06:01
źródło użytkownik
W innych językach...                            


86 odpowiedzi

głosy
4

Jeśli on jest zainteresowany, nie są to drobne szczegóły dobre części? Korzystanie z pytona, już wyciąć GUI go wyłączyć tak, że zamieszanie znika. Dlaczego nie wybrać projekt, grę czy coś, i wdrożyć go. Klasyczny numer zgadywania hi-lo gra może być po prostu realizowane z wiersza poleceń w 20-30 linijek kodu (w zależności od języka oczywiście) i daje zmienne warunki, pętle i wprowadzania danych przez użytkownika.

Odpowiedział 06/08/2008 o 06:08
źródło użytkownik

głosy
2

Przede wszystkim zacząć się jak wszyscy inni: z Hello World programu. To proste, a to daje im podstawowe wyczucie układu programu. Spróbuj zapamiętać z powrotem do kiedy były pierwsze programowanie i jak trudne niektórych pojęć były - start proste.

Po Hello World, przenieść się do stworzenia kilku podstawowych zmiennych, arytmetyki, a następnie na logice i logicznej if / else. Jeśli masz jeden z twoich starych podręczników programowania, sprawdzić niektóre z wczesnych przykładów i mieć go uruchomić poprzez nich. Tylko nie próbuj wprowadzać zbyt dużo naraz, czy to będzie przytłaczająca i mylące.

Odpowiedział 06/08/2008 o 06:13
źródło użytkownik

głosy
0

Chciałbym faktycznie argumentować wybrać prostszy język, z mniejszymi instrukcji. Ja osobiście dowiedziałem się na temat podstawowych w domu, jak zrobił Jeff . W ten sposób, nie trzeba zagłębiać się bardziej skomplikowanych zagadnień, takich jak programowania obiektowego, a nawet procedur, jeśli nie chcą. Kiedyś może obsługiwać proste przepływ sterowania, a następnie przejść do czegoś nieco bardziej skomplikowane, ale tylko proste funkcje.

Może zacząć od bardzo prostych programów, które po prostu dodać 2 numery, a następnie rosną do czegoś, co może wymagać oddział, to może czytać i odpowiadać na wejście, a potem jakąś pętlę i rozpocząć łącząc je wszystkie razem. Wystarczy uruchomić trochę i kieruj się ku górze. Nie rób żadnych dużych projektów dopóki nie może pojąć podstawy (w przeciwnym razie może to równie dobrze być zbyt trudne i mógł zrezygnować w połowie). Kiedy już opanowane BASIC lub cokolwiek wybierzesz, przejść do czegoś bardziej skomplikowanego.

Tylko moja $ +0,02

Odpowiedział 06/08/2008 o 06:16
źródło użytkownik

głosy
2

Coś powinno być bardzo świadomy ucząc swojego brata do programu jest dla niego, aby nie polegać zbyt mocno na Ciebie. Często, kiedy znajdę się pomagając innym zaczną myśleć o mnie jako odpowiedź książki do wszystkich swoich pytań i zamiast eksperymentować, aby znaleźć odpowiedź oni po prostu zapytaj mnie. Często najlepszym nauczycielem jest eksperymentowanie i za każdym razem, gdy twój brat ma takie pytanie: „Co się stanie, jeśli dodam 2 na sznurku?” należy poinformować go, aby go wypróbować i zobaczyć na własne oczy. Również zauważyłem, że kiedy nie można uzyskać poprzez koncepcję do kogoś, to pomaga, aby zobaczyć przykładowy kod gdzie możemy spojrzeć na każdym segmencie indywidualnie i wyjaśnić to kawałek po kawałku. Jako marginesie Wprowadzenie do programowania często mają kłopoty z ideą programowania obiektowego, to mówią, że rozumieją to, gdy uczysz go do nich, ale nie dostanie jasną koncepcję, dopóki faktycznie jej wdrażania.

Odpowiedział 06/08/2008 o 06:18
źródło użytkownik

głosy
30

Można spróbować użyć Alice . Jest to program 3D przeznaczone do użytku w zajęciach wprowadzających programowania.

Dwa największe przeszkody dla nowych programistów często:

  • błędy składniowe
  • motywacja (pisanie czegoś sensownego i zabawa niż wymyślony)

Alicja wykorzystuje interfejs przeciągnij i upuść dla konstruowania programów, unikając możliwość błędów składniowych. Alicja pozwala skonstruować światów 3D i mieć swój kod znaków sterujących (proste) i animacji 3D, który jest zwykle o wiele bardziej interesujące niż wykonawczych związanych list.

Doświadczeni programiści mogą patrzeć na Alice jako zabawka i szydzą z przeciąganie i upuszczanie linii kodu, ale badania pokazują, że takie podejście działa.

Zastrzeżenie: Pracowałem na Alice.

Odpowiedział 06/08/2008 o 06:29
źródło użytkownik

głosy
15

Kurs dobry pyton jest MIT łagodne wprowadzenie do programowania w Pythonie . To wszystko za darmo online, a ty nie musisz być uberstudent MIT, żeby go zrozumieć.

Edit [ Justin Standardowy ]

Kurs wykorzystuje darmowe książki online: Jak myśleć jak informatyk
jestem na pewno znalezienie go całkiem użyteczne.

Odpowiedział 06/08/2008 o 06:47
źródło użytkownik

głosy
118

Miałem pracować z początkujących kilku (nie napisałem wiersza kodu) programistów i będę robić after warsztacie szkolnym z wysokimi uczniów tej jesieni. Jest to najbliższa rzecz Mam do dokumentacji. To wciąż w toku, ale mam nadzieję, że to pomaga.

1) FizzBuzz. Start z programów wiersza poleceń. Możesz napisać kilka zabawnych gier, lub narzędzi, bardzo szybko, a dowiesz się wszystkich funkcji językowych bardzo szybko, bez konieczności poznawania narzędzi graficznych pierwszy. Te wczesne aplikacje powinny być na tyle proste, że nie trzeba używać żadnych narzędzi do debugowania rzeczywistym ich pracy.

Jeżeli nic innego jak FizzBuzz rzeczy są dobre projekty. Twoje pierwsze kilka aplikacje nie powinny mieć do czynienia z DB, system plików, konfiguracji, itd. Są to pojęcia, które po prostu mylić większości ludzi, a gdy jesteś po prostu nauczyć składnię i podstawowe cechy ramowe naprawdę nie potrzeba więcej złożoności.

Niektóre projekty:

  • Witaj świecie!
  • Weź roku mojego urodzenia i obliczyć mój wiek (zaledwie (obecnie - wtedy) nie dokonywano korekty miesiąca). (prosta matematyka, wejście, wyjście)
  • Poprosić o kierunku (w górę, w dół, w lewo, w prawo), a następnie poinformować użytkownika o ich losie (spadek w otworze, znaleźć tort, ect). (Logiczna logiczne)
  • FizzBuzz, ale liczyć raz drugi. (Pętle, liczniki, a logiczne)
  • W zależności od ich wieku, niektóre naprawdę podoba aplikację, która wywołuje użytkownikom losową zniewagę w pewnym przedziale. (Pętle, tablice, czasomierze i losowo jeśli się przedział losowy)

2) prosty projekt Raz mają dobrą znajomość funkcji językowych, można rozpocząć pracę nad projektem (proste, zabawne gry działają dobrze.). Należy starać się, aby pierwszy projekt mógł być zakończona w ciągu 6-12 godzin. Nie spędzają czasu na architekta to wcześnie. Niech zaprojektować go, nawet jeśli to jest do bani. Jeśli to się rozpada, mówić o tym, co się stało i dlaczego nie udało, a następnie wybrać inny temat i zacząć od nowa.

W tym miejscu można rozpocząć wprowadzanie możliwości debugowania swoich narzędzi. Nawet jeśli widzisz problemu przez odczytanie kodu należy je uczyć, jak korzystać z narzędzi, a następnie pokazać im, jak można to zobaczyć. Który służy podwójnemu celowi nauczanie narzędzia do debugowania i uczy jak ID błędy bez użycia narzędzi.

Raz, czy projekt dostaje funkcjonalny można go używać do wprowadzenia narzędzia do refaktoryzacji. Jego dobry, jeśli można następnie rozszerzyć projekt z kilku prostych funkcji, które nigdy nie planowanych. Oznacza to zazwyczaj refaktoryzacji i znaczący debugowanie, ponieważ bardzo niewiele osób pisze nawet pół przyzwoity kod ich pierwszy raz.

Niektóre projekty:

  • gra wisielec
  • Eksperymentowanie z robotyki ( Vex i Mindstorms są opcje)

3) Prawdziwe Projekt Zacznij prawdziwego projektu, który może zająć trochę czasu. Użyj właściwej kontroli źródła, a aby punkt mieć harmonogram. Uruchomić ten projekt jak prawdziwy projektu, jeżeli nic innego jej dobre doświadczenie mając do czynienia z narzędziami.

Oczywiście trzeba dostosować to dla każdej osoby. Najważniejszą rzeczą, jaką znalazłem jest, aby nawet pierwsze proste aplikacje dotyczą co dana osoba jest zainteresowana.

Niektóre projekty:

  • Tetris
  • Plik tekstowy silnik blog oparty
  • Bardziej zaawansowana robotyka praca
Odpowiedział 06/08/2008 o 07:00
źródło użytkownik

głosy
2

Kiedyś uczyć programowania i twój brat ma jedną główną przewagę nad większość moich uczniów, że chce się uczyć :)

Jeśli zdecydujesz się pójść z C przyjaciel ma strony , która ma coś w rodzaju tych programów obsługi ze starszych pokoleń pamiętają jako podstawowy typ-ins. Im bardziej skomplikowana z nich korzystać ncurses jakiego rodzaju neguje ich zastosowanie jako pomoc dydaktyczna nieco, ale niektóre z nich są bardzo małe i małe rzeczy można dowiedzieć się ładunki bez nauczył.

Osobiście myślę, Python i Ruby byłoby zrobić wielkie pierwsze języków.

EDIT: lista początkujących zadań programistycznych pojawił noc może być tylko to, czego szukasz.

Odpowiedział 06/08/2008 o 07:07
źródło użytkownik

głosy
0

Myślę, że „mądrość tłumów” tu pracować. Jak większość ludzi nauczyć się programować? Wielu twierdzi, że zrobili tak, kopiując innych programów, zazwyczaj gier chcieli grać w podstawowym.

Możliwe, że trasa będzie pracować z nim też?

Odpowiedział 06/08/2008 o 07:20
źródło użytkownik

głosy
1

Jeśli chcesz nauczyć się podstaw programowania, bez specyficzny język, jest aplikacja o nazwie Scratch , który został stworzony w MIT. Jest zaprojektowany, aby pomóc ludziom rozwijać swoje umiejętności programistyczne. Jako użytkownicy tworzyć projekty podstaw, uczą się stworzyć warunki, pętle, itd. Jest także wspólnotą projektów zera, formularzu, który można pobrać projekty - w ten sposób można badać programy innych ludzi i zobaczyć, jak zostały one zbudowane.

Odpowiedział 06/08/2008 o 08:15
źródło użytkownik

głosy
2

To naprawdę zależy od stylu uczenia brata. Wielu ludzi nauczyć się szybciej, coraz ręce brudne i po prostu się do niego, krystalizujący pojęć i duży obraz, jak postęp i budować swoją wiedzę.

Ja wolę zacząć wielki obraz i drążyć do sedna. Pierwszą rzeczą, jaką chciałem wiedzieć, jak było to wszystko do siebie pasuje, a następnie cały ten bełkot obiektowego, a następnie o klasach i instancji i tak dalej. Chciałbym wiedzieć podstawowych pojęć i trochę teorii, zanim poznają składnię. Miałem trochę przewagi, bo napisał kilka gier w podstawowych 20 lat temu, ale nic więcej od tego czasu.

Być może warto cień procesu produkcyjnego zaczynając od ogólnej misji, a następnie planu i / lub schematu blokowego, a następnie opracować do jakiegoś pseudo kod (pochylony ku składni będzie ostatecznie wykorzystać), zanim faktycznie pisania kodu.

Złota zasada jest tu rozpracować Krzywa styl Twojego studenta.

Odpowiedział 06/08/2008 o 11:44
źródło użytkownik

głosy
7

http://tryruby.hobix.com/">Try Ruby (w przeglądarce)

Odpowiedział 06/08/2008 o 17:37
źródło użytkownik

głosy
0

Zgadzam się z Leac. I rzeczywiście grać Scratch czasami jeśli jestem znudzony. Jest to wizualny dość zabawny sposób patrzenia na kodzie.

Jak to działa jest to, że daje kilka „bloków” (one wyglądać legos), które można stos. I układając te klocki, i interakcji z płótna (gdzie umieścić swoje skrzaty, grafiki), można tworzyć gry, filmy, pokazy slajdów ... to naprawdę interesujące.

Kiedy jest pełna można przesłać go prawa do stron zera, co jest youtube-owski portal dla zastosowań zera. Nie tylko to, ale można pobrać pod żadnymi materiałami zamieszczonymi na stronie internetowej, i uczyć się od innych aplikacji lub rozszerzenia podstaw.

Odpowiedział 06/08/2008 o 18:32
źródło użytkownik

głosy
5

To fantastyczna książka, która moi mali bracia wykorzystywane do nauki:

http://pine.fm/LearnToProgram/

Oczywiście, najważniejsze jest, aby rozpocząć na prawdziwym, przydatny program jakiejś natychmiast po skończeniu książki.

Odpowiedział 07/08/2008 o 06:33
źródło użytkownik

głosy
0

Polecam zaczynając je z C / C ++. Uważam, że jest to dobry fundament dla niemal każdym innym języku. Ponadto, różne wersje Basic może być dość ryzykowna, co najlepsze, a nie mają żadnego realnego korelację z rzeczywistą programowania.

Odpowiedział 07/08/2008 o 06:35
źródło użytkownik

głosy
0

Myślę, że uczą się programować, ponieważ chcesz nauczyć się programu nigdy nie będzie tak dobry, jak uczą się programować, ponieważ chcemy, aby coś zrobić. Jeśli znajdziesz coś, że twój brat jest zainteresowany w podejmowaniu pracy, ponieważ chce, aby to działało, można po prostu zostawić go z Google i on to zrobi. I będzie musiał cię wokół, aby sprawdzić on idzie wzdłuż prawej ścieżce.

Myślę, że jednym z największych problemów z programowaniem nauczania w streszczeniu jest to, że nie ma kontekst w świecie rzeczywistym, że uczeń może się emocjonalnie zainwestowane w. Programowanie jest trudne, a tam musi być jakiś prawdziwy wypłat, aby to warte wysiłku to zrobić. W moim przypadku, to bym zrobił informatykę na uni, dowiedział Pascal i COBOL tam i dowiedziałem BASIC w domu wcześniej, ale nigdy naprawdę się nigdzie z nim, dopóki nie stał się samozatrudniony web designer z powrotem w latach 90. i mój klienci potrzebna funkcjonalność na swoich stronach internetowych, i byli gotowi zapłacić około 10x więcej funkcjonalności niż dla projektu. Umieszczenie jedzenie na stole jest piekło motywator!

Więc nauczyłem Perl, następnie ASP / VBScript, następnie JavaScript, wtedy Flash / ActionScript następnie PHP - wszystko w celu dokonania rzeczy chciałem się zdarzyć.

Odpowiedział 07/08/2008 o 08:47
źródło użytkownik


głosy
1

Myślę, że gdy ma on podstawy (zmienne, pętle, etc) w dół należy starać się pomóc mu znaleźć coś konkretnego, że jest on zainteresowany i pomóc mu nauczyć się potrzeby, aby tak się stało. Wiem, że jestem o wiele bardziej skłonni i motywację, aby coś zrobić, jeśli jest to interesujące dla mnie. Ponadto, upewnij się, niech walczą, choć niektóre z trudniejszych problemów, nie ma nic bardziej satysfakcjonującego niż momentu zrozumieć to na własną rękę.

Odpowiedział 07/08/2008 o 23:12
źródło użytkownik

głosy
4

Chciałbym tylko niech pisze ton kodu. Pozwól mu jechać we wszystkim, co robicie, i po prostu być dostępny, aby odpowiedzieć na pytania.

Wierzcie lub nie, ale po kilku miesiącach pism ton kodu bzdura, on rozpocząć się pomysł i zacząć pisać lepsze programy. W tym momencie można ugrzęznąć w szczegółach (pamięć, etc), a także mówić o ogólnych zasad projektowania.

Słyszałem, że to, co oddziela wielkich artystów od przeciętnych nich jest to, że za każdym razem ćwiczyć, poprawić coś, nieważne jak małe. Niech swoją praktykę brat, a on za każdym razem poprawić Siada przy klawiaturze.

Edit: [Justin Standard]

Esteban, to przypomina mi o niedawnym kodowania horror poście , a ja nie , że masz rację. Ale myślę, że nadal opłaca się znaleźć sposoby, aby kierować swoją praktykę. Nie ma wątpliwości, chcę go pisać jak najwięcej kod jak on nie wie, jak to zrobić. Ów jednego powodu pytam o przykładowe projekty.

Odpowiedział 09/08/2008 o 02:37
źródło użytkownik

głosy
1

Uczono mnie przez uczenie się, jak rozwiązywać problemy w języku agnostyka sposób przy użyciu schematów i PDL (program do projektowania języka). Po kilku tygodniach, że nauczyłem się przekształcić PDL Napisałem do języka. Cieszę się, że w ten sposób dowiedział się, ponieważ spędziłem większość moich lat programowania, rozwiązywania problemów, bez obecności języka. Jakiego języka używać zawsze szczegółów wdrażania i nie jest częścią projektu.

Konieczności rozwiązania problemu, łamiąc go down w jego podstawowych kroków jest kluczową umiejętnością. Myślę, że jest to jedna z rzeczy, która oddziela tych, które można zaprogramować od tych, które nie mogą.

W miarę, jak można rozwiązać kolejność pojęć języka Wierzę, najprostszym sposobem jest podjęcie decyzji, który ma mieć projekt w umyśle i zająć pojęcia jak są one potrzebne. Dzięki temu można je stosować, ponieważ są one potrzebne na coś, co Cię interesuje robi. Ucząc się języka, że ​​dobrze jest mieć kilka prostych projektów na uwadze i kilka z postępującą złożonością. Decydując się na te pomogą Ci nakreślić pojęć, które są potrzebne i ich kolejność.

Odpowiedział 09/08/2008 o 03:23
źródło użytkownik

głosy
0

Po pierwsze, myślę, że ma już kilka świetnych odpowiedzi, więc postaram się nie dupe zbyt dużo.

  • Pobierz je napisać dużo kodu, należy je zadawać pytania, aby utrzymać mózgu soki płynące.
  • Powiedziałbym Dont ugrzęznąć z bardzo szczegółowych informacji, dopóki nie uruchamiać się do implikacji nich, albo proszą.

Myślę, że jednym z największych punktów chciałbym zapewnić, że rozumieją podstawowych pojęć ram. Wiem, że pracują w Pythonie (które nie mają pojęcia o tym), ale na przykład z ASP.NET coraz ludziom zrozumieć strona / code za modelu może być prawdziwym wyzwaniem, ale jego krytyczne , że rozumieją go. Jako przykład, Niedawno miałem pytanie na forum o „ gdzie mogę umieścić mój kod dostępu do danych, w pliku«CS»lub«aspx»plik ”.

Więc powiedziałbym, w przeważającej części, niech poprowadzić drogę, właśnie tam je wspierać w razie potrzeby, i skłonić więcej pytań, aby utrzymać zainteresowanie. Wystarczy upewnić się, że mają podstawy w dół, i nie pozwól im działać, zanim będą mogły chodzić.

Powodzenia!

Odpowiedział 09/08/2008 o 07:52
źródło użytkownik

głosy
1

Polecam również oglądanie niektórych screencasts - są zazwyczaj tworzone w kontekście konkretnej technologii nie język, choć jeśli jest wyświetlany kod Pythona, które zrobię :). Chodzi o to - są one tworzone przez kilka dobrych programistów i oglądanie jak Program dobrych programistów jest dobrą rzeczą. Ty i twój brat zrobić programowanie rówieśniczej, a także, że może być jeszcze lepszy pomysł. Tylko nie zapomnij, aby wyjaśnić, dlaczego coś zrobić w ten sposób, a nie w ten sposób. Myślę, że najlepszym sposobem nauki programowania jest z dobrych przykładów i nie próbuje nawet zobaczyć złych.

Odpowiedział 09/08/2008 o 09:17
źródło użytkownik

głosy
1

Robert Czytaj napisał przydatny przewodnik, Jak być programistą , który obejmuje szeroki zakres zagadnień programowych, które początkujący uznałby za pomocną.

Odpowiedział 09/08/2008 o 17:28
źródło użytkownik

głosy
1

Było już grono świetnych odpowiedzi, ale dla początkującego, chciałbym z całego serca polecam Hackety Hack . Został on stworzony przez nieracjonalnie płodny why_the_lucky_stiff specjalnie w celu świadczenia / logo / Pascal-jak środowisko podstawowego dla nowych programistów do eksperymentowania. To zasadniczo zręczny Ruby IDE z niektórych wielkich bibliotek (flash video, IM, serwer WWW) oraz interaktywne lekcje. To sprawia, że dobry skok do programowania, gdyż wybrał lekcje, które wykonują zabawnych, przydatnych rzeczy. „Hello, world” nie może zaimponować tuż nietoperza, ale tworząc niestandardowy IM klienta w 20 minut może zainspirować kogoś, kto by się uczyć. Baw się dobrze!

Odpowiedział 11/08/2008 o 05:30
źródło użytkownik

głosy
1

Skopiować kilka prostych linii kodu po linii i je odczytać i zinterpretować go jak idą razem. Będą one wkrótce się dogadać. Zacząłem programowanie na Żołądź Electron z fragmentów kodu z czasopism Acorn. Nie miałem pojęcia o programowaniu, kiedy miałem 6, kiedyś skopiować tekst, ale stopniowo dowiedziałam się, co oznaczało różne słowa.

Odpowiedział 11/08/2008 o 13:23
źródło użytkownik

głosy
0

Polecam najpierw nauczanie samych podstaw, które są wykorzystywane w niemal każdym języku, ale robi to bez języka. Zarys wszystkie podstawowe pojęcia if-else if-else, pętle, Classes, Typy zmiennych, konstrukcje, itd. Wszystko to, co jest podstawą większości języków. Następnie przejść do naprawdę zrozumienie logicznych, porównań i kompleksu i lub oświadczenia, aby uzyskać wrażenie, na jakie wyniki są dla bardziej złożonych oświadczeń.

Robiąc to w ten sposób będzie zrozumieć koncepcje programowania i mają o wiele łatwiej wkraczającego językach, a stamtąd jej po prostu nauczyć zawiłe szczegóły dotyczące języków, jego funkcji i składni.

Odpowiedział 11/08/2008 o 13:30
źródło użytkownik

głosy
0

Mój ulubiony projekt „rozpocząć naukę kodem” to gra Snakes lub Tron ponieważ pozwala rozpocząć powolne (zmienne do przechowywania bieżące „pozycja robaka”, tablice do przechowywania pozycji robaków jeśli robak jest dłuższy niż jeden „kawałek”, pętle, aby przenieść robaka, jeśli / przełącznik, aby umożliwić użytkownikowi zmienić kierunek robaka, ...). Pozwala ona również zawierać więcej i więcej rzeczy do projektu w dłuższej perspektywie, programowanie np obiektu (jeden robak jest jeden obiekt z szansy na dwa robaki w tym samym czasie) z dziedziczenia (odchodzenie od „Snakes” na „Tron "albo na odwrót, gdzie robak nieznacznie zmienia zachowanie).

Sugeruję, że używasz XNA firmy Microsoft , aby rozpocząć. Z mojego doświadczenia wynika, począwszy do programu jest dużo więcej zabawy, jeśli można zobaczyć coś na ekranie, a XNA sprawia, że naprawdę łatwo dostać coś poruszającego się na ekranie. Jest to dość łatwe do zrobienia drobne zmiany i uzyskać inny wygląd, na przykład przez zmieniających się kolorach, więc widzi, że jego działania mają wpływ -> wrażenie sukcesu. Sukces jest zabawa, która jest wielka motywacja, aby utrzymać się na nauce.

Odpowiedział 11/08/2008 o 13:59
źródło użytkownik

głosy
1

Może się to wydawać głupie, ale dlaczego starasz się nauczyć swojego brata do programu?

Często najlepszym środowisko nauczania składa się z bramki, które mogą być osiągnięte przez początkującego zapalony (przykładowy program), duży zapas zasobów (Google / tutoriale / książki), a wiedzę źródło porad, które mogą dostarczyć wskazówek, gdy są potrzebne.

Można z pewnością pomoże w wyborze dla dwóch pierwszych, ale ostatni jest podstawowa rola.

Odpowiedział 13/08/2008 o 07:10
źródło użytkownik

głosy
1

Sugerowałbym biorąc podejście similiar do książki, Accelerated C ++ , w których pokrycie części C ++, które są zwykle przydatne do tworzenia prostych programów. Dla każdego nowego programowania myślę, że coś do pokazania małym nakładzie pracy jest dobrym sposobem, aby utrzymać ich zainteresowanie. Kiedy już pokryte podstaw Pythona to należy usiąść i niech experiement z językiem.

W jednym z moich tematów Uniwersytet dla tego semestru podjęły podejścia zwanego Problem Based Learning (PBL), w których oni używają wykłady w celu stymulowania studentów o różnych podejść do problemu. Ponieważ twój brat jest zapalonym należy podjąć similiar podejście. Ustaw mu małe projekty do pracy i niech zrozumieć to dla siebie. Potem kiedy już zakończy można przejść przez jego podejścia i porównać i różnymi metodami.

Jeśli można dać mu tylko odpowiednią kwotę pomocy do kierowania go we właściwym kierunku, to powinien on być w porządku. Providng mu kilka dobrych stron internetowych i książek byłoby również dobrym pomysłem.

Chciałbym również polecam trzymać z dala od IDE na etapach wyjściowych. Korzystanie z wiersza polecenia i edytor tekstu da mu lepsze zrozumienie zachodzących procesów w kompilacji / kodu montażu.

Mam nadzieję, że już od jakiegoś pomoc. :)

Odpowiedział 13/08/2008 o 10:29
źródło użytkownik

głosy
0

Ten wątek jest bardzo przydatne dla mnie jako początkującego (> 100 linii kodu) programatora.

W oparciu o to, co ja przeszedłem, gdy skończyłem z „Hello World” i przenieść się do zmiennych i „if / else” oświadczenie, mam zapped zbyt dużo składni; nie wiedząc, co z nimi zrobić.

Więc z ciekawą prostego projektu, mogę dostać moje zainteresowanie się ponownie. Istnieje dość dużo propozycji projektowych tutaj.

Mogę zadać pytania tutaj?

Czy lepiej nauczyć się języka skryptowego jak AutoHotkey pierwszy?

Edit: [Justin Standard]

Myślę, że się czegoś makro-Based jak AutoHotkey pomoże tylko minimalnie. Spróbuj nauki języka „real” programowania pierwszy. Najłatwiej zacząć z (według większości ludzi) są Python i Ruby . I rzecz Python, ale obie są bardzo proste. Istnieje również pełen wpis stackoverflow , który odpowiada na pytanie, który język na początek.

Odpowiedział 14/08/2008 o 02:30
źródło użytkownik

głosy
0

Na początku byłem zainteresowany tym, jak pracował różne programy, więc zacząłem patrząc na kodzie źródłowym. Potem, kiedy zacząłem rozumieć, jak program działa, chciałbym zmienić niektóre parametry, aby zobaczyć co się stanie. Więc w zasadzie nauczyłem się czytać, zanim nauczył się pisać. Który nawiasem mówiąc jest to, jak większość ludzi, uczyć się angielskiego.

Więc jeśli ja starałem się nauczyć kogoś jak programować dałbym im mały program, aby spróbować odczytać i zrozumieć, jak to działa, i mieć je tylko po prostu bawić się z kodem źródłowym.

Tylko wtedy dam im „zadania”, aby spróbować osiągnąć.

Teraz, gdyby mieli konkretny powód, dla chcących nauczyć się programować, z pewnością byłoby to dobry pomysł, aby zacząć coś na wzór tego, co chcą osiągnąć. Na przykład, jeśli chcieli być biegły w aplikacji jak blender , to definably być dobry pomysł, aby rozpocząć z Alice .

Absolutnie polecam trzymać z językiem, który ma zbieranie śmieci, jak D , Perl lub jakimś języku interpretowanym jak javascript. To może być dobry pomysł, aby trzymać się z dala od momentu Perl Perl 6 jest bliżej do końca, ponieważ rozwiązuje niektóre z trudności z zapoznaniem Perl.

Odpowiedział 14/08/2008 o 17:23
źródło użytkownik

głosy
1

Mnóstwo rzeczy zadziałał mi się na początku, ale nie więcej niż prostych mechaników. Koncepcje, od razu zabrał się. Ale tęsknię klamrę zamykającą? Łatwe do zrobienia i często trudne do debugowania, w nietrywialne programu.

Tak, moja skromna rada: nie understimate podstawy (jak dobre pisanie). Brzmi naprawczych, a nawet głupie, ale uratował mnie tyle żalu wcześnie w moim procesie uczenia się, kiedy natknąłem się prostą techniką wpisując pełną „szkielet” struktury kodu, a następnie po prostu wypełnienie go.

Za „if” w Pythonie, początek:

if  :

W języku C / C ++ / C # / Java:

if () 
{

}

W Pascal / Delphi:

If () Then
Begin

End

Następnie wpisz pomiędzy otworem i tokenów zamknięcia. Gdy to się solidną zwyczaj, więc to zrobić bez myślenia, bardziej mózgu uwalnia się zrobić fajne rzeczy. Nie bardzo krzykliwe nieco rady odpowiedzieć, przyznaję, ale taki, który Osobiście widziałem zrobić wiele dobrego!

Edit: [ Justin Standardowy ]

Dzięki za wkład, skrzydło. Podobne do tego, co pan powiedział, jedną z rzeczy, starałem się pomóc mój brat pamięta składni Pythona scopingu, jest to, że za każdym razem jest dwukropek, musi wciąć następny wiersz, a za każdym razem, on uważa, że ​​powinno się wciąć, nie lepiej być dwukropek kończąc poprzednią linię.

Odpowiedział 16/08/2008 o 01:46
źródło użytkownik

głosy
0

Moje osobiste doświadczenie zaczęło się w elementarnym użyciem logo Writer (która w sposób ewoluowała do podstaw), przyznane byłem małym dzieckiem i komputery, na których nie jest tak niesamowite, jak są obecnie, ale na jakiś czas zajęło mi miejsca I hadn” t przedtem ... myślę, że to w jaki sposób mam podłączyć w branży ... mogę powiedzieć, że to właśnie te pierwsze wrażenia w oparciu o taką prostotą i chłodu, które wykonane towary, które przyklejają się do mojej głowy do końca życia. W ten sposób podstawy w nauczaniu programowania należy uczyć ... prosty proces, który tęskni magii.

Powrót do mojego pierwszego CS 101, zacząłem z pojęciami co algorytm był budując Tequila Sunrise (krok po kroku proces, który może być powtarzany w każdym czasie z odpowiednich składników, które będą prowadzić do tego samego wyjścia), a stamtąd przechodzimy do podstawowych funkcji matematycznych z wykorzystaniem systemu (jak EHaskins mówił ... zacząć od drobnych, a następnie zbudować w górę), a stamtąd do pojęć pętli, Boolean logika, a następnie budowanie struktur w koncepcji obiektów i niektórych wykonaniach symulacji .. ,

Jedną z dobrych rzeczy na temat tego podejścia jest to, że język nie jest celem, ale tylko narzędziem w procesie uczenia się pojęć i podstaw programowania (podobnie jak operatory, funkcje i jeszcze są w matematyce).

IMHO nauki podstaw programowania i tworząc fundament jest prawdopodobnie najlepszą rzeczą, jaką można nauczyć swojego brata, gdy celem jest pokryta potem u można przejść do bardziej ogólnego użytku języku jak python i dać im wyższe koncepcje jak architektura i projektowanie wzorów ( ich naturalne w procesie tak dostanie stosowanie dobrych praktyk z wczesnych etapach i będzie widać je jako część procesu) ... jesteśmy daleko od wymyślania ciepłej wody, ale zawsze trzeba zacząć od utworzenia pożar.

Stamtąd na niebo jest granicą!

Odpowiedział 16/08/2008 o 16:56
źródło użytkownik

głosy
1

Jak o tym: Tarło kolejną generację hakerów Nat Torkington.

Odpowiedział 18/08/2008 o 16:24
źródło użytkownik

głosy
0

Moim zdaniem tendencyjne, C jest najlepszym punktem do rozpoczęcia. Język jest mały, to najwyższy poziom cechy są wszechobecne i funkcje niskosygnałowe pozwalają nauczyć maszynę.

Znalazłem C Primer Plus, 5th Edition bardzo pomocne jako programista początku prawie bez doświadczenia w programowaniu. Zakłada ona, bez wcześniejszego doświadczenia w programowaniu, zabawa do odczytu i obejmuje C na głębokości (włącznie z najnowszym standardem C99).

Odpowiedział 19/08/2008 o 09:37
źródło użytkownik

głosy
1

Jest to książka o nazwie Code . Nie pamiętam, kto to napisał, ale to przechodzi podstawami wiele rzeczy, że my (programiści) znają i biorą za pewnik, że ludzie rozmawiamy również wiedzieć. Wszystko z jak można liczyć binarne how pracy procesorów. To nie ma nic do czynienia z językami programowania w nim (również z tego co pamiętam), ale jest to całkiem dobry grunt. Muszę przyznać, że jestem również szkoły, która wierzy trzeba wiedzieć, jak działa komputer, aby móc skutecznie zaprogramować rzeczy dla niego.

Odpowiedział 19/08/2008 o 15:52
źródło użytkownik

głosy
28

Polecam Logo (aka żółwia), aby uzyskać podstawowe pojęcia w dół. Zapewnia dobrą piaskownicy z bezpośrednim sprzężeniem zwrotnym graficznym i można demostrate pętle, zmienne, funkcje warunkowe itd Ta strona zapewnia doskonałą samouczek.

Po Logo, przenieść do Python czy Ruby. Polecam Python, jak to jest na podstawie ABC, który został wymyślony na potrzeby programowania nauczania.

Ucząc programowania muszę druga sugestia EHaskins w prostych projektów i następnie złożonych projektów. Najlepszym sposobem, aby dowiedzieć się, ma się rozpocząć z określonym wynikiem i mierzalną kamień milowy. Utrzymuje lekcje skoncentrowane, pozwala studentowi do budowania umiejętności, a następnie zbudować na tych umiejętności i daje coś studentów, aby pokazać znajomym. Nie lekceważ potęgi mający coś do pokazania swojej pracy.

Teoretycznie można trzymać Pythonie, jak Python można zrobić prawie wszystko. To dobry pojazd uczyć programowania obiektowego oraz (Most) algorytmów. Można uruchomić Pythona w trybie interaktywnym jak wiersza poleceń do poczuć, jak to działa, lub uruchomić całe skrypty naraz. Można uruchamiać skrypty interpretowane w locie, lub skompilować je w plikach binarnych. Istnieją tysiące modułów do rozszerzenia funkcjonalności. Można dokonać graficzny kalkulator, jak ten w pakiecie z Windows, lub można dokonać klienta IRC, lub cokolwiek innego.

Xkcd opisuje moc Pythona trochę lepiej: „Ty lecisz! Jak?”  "Pyton!"

Można przenieść do C # lub Java po tym, choć nie oferują wiele, że Python nie ma jeszcze. Korzyść z nich jest to, że używają oni C-styl składni, które wielu (śmiem powiedzieć większość?) Języki korzystania. Nie trzeba się martwić o zarządzanie pamięcią jeszcze, ale można się przyzwyczaić do posiadania nieco więcej swobody i mniej za rękę z tłumacza języka. Python wymusza spacje i wcięcia, co jest miłe, przez większość czasu, ale nie zawsze. C # i Java pozwala zarządzać własną spacje pozostając silnie wpisany.

Stamtąd średnia to C lub C ++. Wolność w tych językach jest niemal egzystencjalne. Jesteś teraz za własnego zarządzania pamięcią. Nie ma garbage collection pomóc. W tym miejscu można nauczyć naprawdę zaawansowanych algorytmów (jak mergesort i quicksort). W tym miejscu można dowiedzieć się dlaczego „usterka segmentacji” to przekleństwo. W tym miejscu można pobrać kod źródłowy jądra Linux i patrzeć w przepaść. Zacznij od pisania okrągły bufor i stos na łańcuchach. Następnie kieruj się ku górze.

Odpowiedział 20/08/2008 o 22:09
źródło użytkownik

głosy
2

Jeśli brat twój ma dostęp do iTunes, może on pobrać wykłady wideo wprowadzającego informatyki oczywiście Richarda Buckland w University of New South Wales. To wciągająca instruktor i obejmuje podstawy informatyki i języka C. Jeśli nic innego, powiedz bratu grać vids w tle, a niektóre pojęcia mogą zatopić się przez osmozę. :)

COMP1917 Wyższa Computing - 2008 Sesja 1 http://deimos3.apple.com/WebObjects/Core.woa/Browse/unsw.edu.au.1504975442.01504975444

Jeśli link nie działa, oto ścieżka:

Start -> iTunes U -> Inżynieria -> COMP1917 Wyższa Computing - 2008 Sesja 1

Odpowiedział 20/08/2008 o 22:54
źródło użytkownik

głosy
0

Dla mnie, odkrywania i eksperymentowania w IDE sama pomógł mi nauczyć Java i Visual Basic, ale ja nauczyłem się podstaw programowania w przykry sposób Perl 5. Nie było wtedy wolna IDE, więc oznaczało to kody pisania w Notatniku , zapisując go, a następnie uruchomić interpreter perla.

Powiedziałbym, że IDE czynią nauki podstaw programowania łatwiejsze. Spróbuj zabawy z struktur kontroli i zmiennych pierwszych. Powiedzieć w języku Java:

int a = 5;

for (int i = 0; i < a; i++) {
     System.out.println("i is now " + i);
}

Zasadniczo, po prostu nauka struktur kontrolnych i zmienne pozwoli początkującym rozpocząć kodowanie już materiał zabawy.

Odpowiedział 22/08/2008 o 11:32
źródło użytkownik

głosy
11

Kluczową sprawą jest to, że dana osoba musi mieć jakiś problem, że chcą rozwiązywania. Jeżeli nie ma programu, który chcesz napisać (i coś sensownego i dobrze zdefiniowany, a nie „chcę napisać następną Quake!”) To nie można nauczyć się programu, bo nie masz nic do motywować , To znaczy, można czytać książki i mają chropowatą zrozumienia składni i semantyki języka, ale dopóki nie ma programu, który ma zostać napisany nigdy pojąć pokrzywy.

Jeśli to impuls istnieje wtedy wszystko inne jest tylko drobne szczegóły.

Odpowiedział 22/08/2008 o 11:35
źródło użytkownik

głosy
1

Python jest łatwe dla nowych programistów do nauki. Nie zaplątać się w specyfice zarządzania pamięcią oraz definicji typu. Zanurkuj w Pythonie jest dobry przewodnik dla początkujących do Python programowania. Kiedy moja siostra chciała dowiedzieć się programowanie zwróciłem ją do linii „fory” książek, które znalazła bardzo łatwe do odczytania i zrozumienia. Uważam, że trudno po prostu zacząć uczyć kogoś, bo nie mają leksykon do korzystania z nich. Najpierw trzeba go przeczytać kilka książek lub samouczki i poprosić o pytania. Stamtąd można przypisać projektów i stopnia im. I trudno się uczyć programowania, bo nauczył się go w ciągu prawie 15 lat majstrować wokół.

Odpowiedział 22/08/2008 o 15:09
źródło użytkownik

głosy
1

Projekt Euler posiada szereg interesujących problemów matematycznych, które mogłyby stanowić świetny materiał dla początkujących programator do cięcia na zęby. Problemy zaczynają łatwy i zwiększają się w trudnej sytuacji i w internecie jest pełno przykładowych rozwiązań w różnych językach programowania .

Odpowiedział 22/08/2008 o 21:27
źródło użytkownik

głosy
1

Polecam Charles Petzold książka kod - Ukryte Langauge komputera sprzętu i oprogramowania jako doskonałej ogólnym wprowadzeniem do sposobu pracy komputerów.

Istnieje wiele informacji w książce (382 stron), a może to potrwać początkującego trochę czasu na czytanie, ale to było warto. Petzold udaje się wyjaśnić wiele podstawowych pojęć komputerów i programowania od prostych kodów, przekaźniki, pamięci, procesory do systemów operacyjnych i GUI w bardzo jasny i przyjemny sposób. Zapewni ona żadnego czytelnika z poczuciem, co faktycznie dzieje się za kulisami, gdy piszą kod.

Na pewno chcesz to było ok, kiedy po raz pierwszy uczą się programować!

Odpowiedział 23/08/2008 o 19:14
źródło użytkownik

głosy
2

istnieje Wikibook że jest bardzo dobry do nauki Pythona .

Nie wiem, w jaki sposób Wikibooks są dla innych języków, ale ja osobiście nauczyłem pytona z Wikibook jak to było w lutym 2007

ps - jeśli jesteś zaznajomiony z Wikibooks , to w zasadzie wersja wikipedii o książce authoringu. To trochę trudne do opisania, ale jeśli sprawdzić kilka książek na nie zobaczysz, jak to działa

Odpowiedział 26/08/2008 o 04:39
źródło użytkownik

głosy
1

Nie wiem na pewno, co będzie najlepsze dla twojego brata, ale wiem, że zacząłem z pytona. Grałem w różne gry z bardzo młodym wieku i chciał, aby mój własny, więc mój wujek wprowadził mnie do Pythona z Pygame bibliotece. Posiada wiele tutoriali i sprawia, że wszystko proste (WAY łatwiejsze niż openGL moim zdaniem). To jest ograniczona do 2D, ale powinien być prosty i tak zaczynasz.

Mój wuj zaleca Pythona, ponieważ był zainteresowany to w tym czasie, ale polecam go, teraz dość wiedzę, ponieważ jest łatwy do opanowania, intuicyjne (lub tak intuicyjne, jak język programowania można dostać) i proste (ale na pewno nie uproszczone) ,

Ja osobiście znaleźć podstawowe programowanie po prostu nauczyć się programowania nieprzyzwoicie nudne w czasie, ale podniósł znaczny entuzjazm jak poszedłem. Naprawdę chciałem się uczyć, aby zbudować coś, a nie tylko się go uczyć.

Odpowiedział 26/08/2008 o 20:12
źródło użytkownik

głosy
0

Najlepszym sposobem, aby dowiedzieć się czegokolwiek jest zacząć od podstawowego. Można znaleźć jakieś dobre książki tekstu, aby wyjaśnić, co jest programowanie, algorytmy, pamięć.

Następnym krokiem wybrać język, którym zależy to tylko od tego, co nauczyciel wie, dlaczego uczeń chce się uczyć.

To jest tylko kod, kod, kod. Kod każdy przykład prosto z książki. Następnie zmień go lekko zrobić kolejną akcję. Uczenie się program jest aktywny nie proces bierną. Nie można po prostu odczytać C ++ Sposób programowania przez Dietal a następnie oczekiwać na kod C ++ bez aktywnie zrobić podczas czytania.

Nawet jeśli jesteś doświadczonym programistą to pomaga pisać kod w książce, aby dowiedzieć się czegoś nowego.

Odpowiedział 27/08/2008 o 16:25
źródło użytkownik

głosy
1

Rozpocząć zadając mu pytanie: „ Jakie rodzaje rzeczy chcesz zrobić z komputerem

Następnie należy wybrać zestaw działań, które pasują do jego odpowiedź, a następnie wybierz język, który pozwala te rzeczy do zrobienia. Tym lepiej, jeśli jest to proste (lub simplifiable) środowisko skryptów (np Applescript, Ruby, każda powłoka (KSH, Bash, a nawet pliki .bat).

Powody są następujące:

  1. Jeśli on jest zainteresowany wynikami, będzie prawdopodobnie bardziej zmotywowani niż jeśli masz go liczyć królików Fibonacciego.
  2. Jeśli on uzyskanie wyników lubi, to pewnie wymyślić wariacje na temat działań tworzonych.
  3. Jeśli uczysz go, on nie prowadzi poważną karierę (jeszcze); Zawsze jest czas, aby przełączyć się na „siłę przemysłowe” języków później.
Odpowiedział 29/08/2008 o 00:59
źródło użytkownik

głosy
1

Dobrym źródłem uczyć młodych ludzi jest wolna eBook „Wymyśl własne gry z Python”:

http://pythonbook.coffeeghost.net/book1/IYOCGwP_book1.pdf

Odpowiedział 01/09/2008 o 14:21
źródło użytkownik

głosy
0

Coś do rozważenia ... nie każdy jest zdolny do programowania:

Niektórzy ludzie po prostu nie można ominąć takie rzeczy jak:

A = 1

B = 2

A = B

(Osoby te będą nadal myśleć a = 1)

Jeff mówił o tym też. W rzeczywistości, mój przykład jest w linku (i wyjaśnił, do bagażnika).

Odpowiedział 04/09/2008 o 21:23
źródło użytkownik

głosy
0

Może się to wydawać dziwne, ale zaczęło pisania kodu poprzez automatyzację zadań i analiza danych w mojej poprzedniej pracy. Zostało to osiągnięte poprzez rejestrowanie następnie studiując kod makra Excel wygenerowany. Oczywiście takie podejście zakłada, można dowiedzieć się poprzez VB.

Odpowiedział 05/09/2008 o 03:20
źródło użytkownik

głosy
0

Niektóre dodatkowe informacje, które ktoś mógłby dołączyć do Jasona Pratt wcześniejszym poście na Alice ... Konkretnie, Storytelling Alice wariantu.

Chociaż badanie przedstawione cele gimnazjum dziewczęta, można znaleźć białego papieru napisany przez Caitlin Kelleher ciekawego.

Odpowiedział 06/09/2008 o 16:30
źródło użytkownik

głosy
0

Kiedyś jeden z moich dzieci jest CEEBot . To nie python, ale uczy programowania w stylu C / Java w formie zabawy, robota programowania rodzaju gry. Jest skierowany do 10-15-latków, ale jest to naprawdę dobry.

Odpowiedział 06/09/2008 o 17:42
źródło użytkownik

głosy
0

Mając małe, otrzymywane celów jest jednym z najlepszych sposobów, aby dowiedzieć się żadnych umiejętności. Programowanie nie jest inaczej. Python jest wielkim język na początek, ponieważ jest łatwy do nauczenia, czyste i można jeszcze zrobić zaawansowanych rzeczy. Python jest ograniczona tylko przez wyobraźnię.

Jednym ze sposobów, aby naprawdę ktoś zainteresowany jest, aby dać im małe projekty, które mogą zrobić w godzinę lub więcej. Kiedy pierwotnie rozpoczął naukę Pythona I odtwarzanie kodu Golf . Mają wiele małych problemów, które pomogą nauczyć się podstaw programowania. Polecam po prostu staramy się rozwiązać jednym z wyzwań dzień, a potem bawić się z pojęciami uczonych. Musisz uczynić uczenie zaprogramować zabawy lub odsetki zostaną bardzo szybko stracił.

Odpowiedział 07/09/2008 o 21:25
źródło użytkownik

głosy
1

Jeśli jest on zainteresowany niż bym nie martwić skupiając się na grach i etażerka. Chciałbym po prostu chwycić że książka początkujących nauczyć się x 'byłaś o wyrzucić i dać mu i niech walczą przez nią. Może o tym rozmawiać po czym zrobić kolejny i kolejny. Po czym bym powiązać program z niego, aby mógł dowiedzieć się, jak płytkie i lame te książki czytał były. Wtedy zaczynam mieć go zakodować coś dla siebie. Witryna do śledzenia statystyk softball lub cokolwiek by go zaangażować. Dla mnie to była baza dla wina z powrotem w ciągu dnia.

Po tym chciałbym zacząć się na rzeczywistych książek, projektowanie domen itp

Odpowiedział 08/09/2008 o 18:40
źródło użytkownik


głosy
12

Pakiet python VPython - Programowanie 3D dla zwykłego śmiertelnika ( samouczek wideo ).

Przykładowy kod:

from visual import *

floor = box (pos=(0,0,0), length=4, height=0.5, width=4, color=color.blue)
ball = sphere (pos=(0,4,0), radius=1, color=color.red)
ball.velocity = vector(0,-1,0)
dt = 0.01

while 1:
    rate (100)
    ball.pos = ball.pos + ball.velocity*dt
    if ball.y < ball.radius:
        ball.velocity.y = -ball.velocity.y
    else:
        ball.velocity.y = ball.velocity.y - 9.8*dt

VPython odbijając piłka http://vpython.org/bounce.gif

Odpowiedział 08/09/2008 o 19:26
źródło użytkownik

głosy
1

I odtłuszczone poprzez komentarze i wygląda jak nikt nie wspomniał Podstawy programowania z www.CodeBetter.com . Chociaż wymaga trochę fundamencie, z pewnością może być kolejnym krokiem w procesie uczenia się.

Odpowiedział 10/09/2008 o 01:29
źródło użytkownik

głosy
0

Jako nie-programista siebie, znalazłem książkę „Programowanie” od pragmatyczne programistów bardzo pomocne z punktu widzenia prymitywny. To przystępny i łatwy do odczytania dla początkujących. To nie zajmie Ci od początkującego do eksperta, ale będzie przygotować się na to, co zrobić, gdy wybrać język i odebrać swój pierwszy „nauczyć się programować w języku (tu)” książkę.

Odpowiedział 12/09/2008 o 21:51
źródło użytkownik

głosy
0

Kilka innych platformach startowych:

  • Dobrym programowalny kalkulator (to co ja nauczyłem się na powrót w latach 70.), a następnie HP41 HP25, teraz TI69, etc.
  • Interaktywnych platform fikcja, jak „Poinformuj 7” zapewnić inny kąt na całość
  • Flash / ActionScript

Wszystkie one różnią i wciągające, i każdy jeden z nich może wywołać tego rodzaju odsetek, które są wymagane, aby uzyskać początkujący i działa.

LBB

Odpowiedział 16/09/2008 o 07:51
źródło użytkownik

głosy
0

Ja polecam Pomyśl Python .

Odpowiedział 16/09/2008 o 11:31
źródło użytkownik

głosy
1

Raz, że ma podstawy, proponuję Wieża Hanoi jako dobre ćwiczenie. Polecam zaczynając od drewnianej zabawce Jeśli masz jeden; niech starają się rozwiązać ten problem przez siebie i opisać swoją metodę w sposób systematyczny. Pokaż mu, gdzie rekurencji wchodzi w grę. Wytłumacz mu, jak liczba ruchów zależy od liczby dysków. Pozwól mu napisać program do drukowania sekwencję ruchów, w wybranym języku.

Odpowiedział 19/09/2008 o 12:43
źródło użytkownik

głosy
0

Twoje pytanie dość zależy od wieku i wykształcenia swojego brata, ale gdyby to dziecko / nastolatek, polecam zrobić kilka programowanie GUI lub programowania graficznego pierwszy (w płótno itp). Wygląda dobrze, a masz natychmiastowych rezultatów. Algorytmy są nudne i zbyt abstrakcyjne dla młodzieży (przed powiedzieć 15 lat).

Kiedy zacząłem programowania na ZX Spectrum (ja na to 12 lat), lubiłem rysować różne rzeczy na ekranie, i nadal było interesujące. Ja nie dowiedzieć się o rzeczywistych algorytmicznych technik, dopóki nie było może 18. Nie daj się zwieść, że takie „proste” programowanie jest zły początek; interes osoby, uczenia się jest najważniejszą częścią.

Tak, chciałbym spojrzeć na PyKDE, PyGTK, PyQt lub Python + OpenGL (są z pewnością kilka tutoriali w internecie, znam niektórych czeskich dzieci, ale to nie pomoże :)).

Oczywiście, jeśli twój brat jest starszy i ma wykształcenie blisko matematyki, można udać się bezpośrednio do algorytmów i takie.

Odpowiedział 19/09/2008 o 13:08
źródło użytkownik

głosy
1

Bardzo dobry film wprowadzenie Oczywiście przez Stanford University (wymagana wcześniejsza wiedza):

Metodologia programowania

Nauczy dobrych „metody” każdy programista powinien wiedzieć, a niektóre programowania Java.

Odpowiedział 20/09/2008 o 23:23
źródło użytkownik

głosy
0

Bez względu na język i środowisko wybierzesz, jeśli student chce się uczyć ze względów zawodowych lub zrobić „prawdziwe” programowanie (cokolwiek to jest), że im rozpocząć pisząc swoje programy startowe 1 na papierze i biorąc je uruchomić. Wrócić z wyjściowych i / lub błędów wyników i je naprawić rzeczy na papierze.

Nie jest to szczególnie na początku trudniej niż robi to na ekranie i uderzanie bieg, ale sprawi, że rzeczy o wiele łatwiej, gdy zaczną odkryć wspaniały świat błędów.

1) Krótko mówiąc, „Hello, World!” - programy typu, które jeszcze kilka logicznych i / lub obliczeń, należy to zrobić do kilku programów, które mogą mieć błędy

Odpowiedział 21/09/2008 o 23:27
źródło użytkownik

głosy
0

Cokolwiek piszą je przejść przez niego w debugger linia po linii na pierwszym biegu. Niech zobaczyć na własne oczy , co komputer robi. To zajmuje dużo tajemnicy z rzeczy, zmniejsza zastraszanie ( „oh, każda linia jest naprawdę takie proste!”), A także pomaga im nauczyć debugowanie umiejętności i rozpoznać dlaczego typowe błędy są często (i dlaczego są błędy)

Odpowiedział 21/09/2008 o 23:30
źródło użytkownik

głosy
0

+1 do Stanford wykładów uniwersyteckich. http://see.stanford.edu/see/courseinfo.aspx?coll=824a47e1-135f-4508-a5aa-866adcae1111

Są proste, o wysokiej jakości i mogę ręczyć za ich zdolność do nauczania początkujących (ja jako jeden z nich).

Odpowiedział 03/10/2008 o 12:38
źródło użytkownik

głosy
0

Proponuję „ Informatyki Unplugged ” jako komplementarnego materiału dydaktycznego.

Odpowiedział 12/10/2008 o 00:32
źródło użytkownik

głosy
0

„Kto się boi C ​​++” Przez Heller

Może być warto spróbować

Odpowiedział 30/10/2008 o 05:38
źródło użytkownik

głosy
0

Microsoft Small Basic to darmowe środowisko programistyczne .NET oparte na celu być „zabawa” środowisko uczenia się dla początkujących. Język jest podzbiorem VB, a nawet zawiera „Turtle” obiekt znany z języka Logo. Strona zawiera tutorial krok po kroku.

Odpowiedział 18/11/2008 o 02:40
źródło użytkownik

głosy
0

Zgadzam się z superjoe30 powyżej, ale nie mam jeszcze wystarczającej reputacji zostawić komentarz.

Byłem profesorem CS przez 4 lata. Języki były podstawowe, a następnie Pascal, ale to naprawdę nie ma znaczenia, co jest język.

Największym lekcja dowiedziałem się jako nowy prof było, bez względu na to, jak proste Myślałem koncepcją było, to nie jest proste do początkujących. Nigdy nie jechać szybciej niż Twój uczeń może przejść. Nie mogę podkreślić, że wystarczy. Idź naprawdę wolno.

Chciałbym zacząć od bardzo prostych rzeczy, przeczytać i wydrukować, może prostego obliczenia, tak aby uzyskać student używany do stawiania coś i zaczyna coś. Następnie, jeśli sprawozdania. Wtedy naprawdę proste dla pętli, zawsze chodzi o coś student może napisać i mieć trochę zabawy z.

Następnie chciałbym wydać około 3 tygodnie nauczanie bardzo prosty rodzaj języka maszynowego na fałszywych maszynie dziesiętnych zwanego SIMPL, że można jednoetapowy. Powodem robi to tak student mógł zobaczyć, gdzie „guma spotyka drogę”, że komputery są rzeczy, krok po kroku, a to sprawia, że ​​różnica jakiej kolejności zdarzyć się wszystko. Bez tego, studenci mają tendencję do myślenia, że ​​komputer może rodzaj przeczytać zdanie i robić wszystko na raz.

Następnie z powrotem do Basic. Parę tygodni na tablicach, bo to jest duża szybkość gula. Potem kolejne pliki, które to kolejny guz prędkości. Co mam na myśli przez „podbić prędkości” jest student może płynąć wzdłuż uczucie dość pewny siebie, a następnie uderzyć z koncepcji, takich jak tablice, i są one całkowicie stracił ponownie, aż łatwość ich przez niego.

Następnie z tych umiejętności pod ich pasów, musiałbym im wybrać projekt, termin, ponieważ to, co sprawia, że ​​programowanie interesujące. Bez stosowania do niego, to naprawdę nudne. Proponuję różnorodnych projektów, takich jak gry, programy księgowe, programy naukowe, etc. To jest naprawdę wielki, aby zobaczyć je dostać włączony. Często pytali mnie o pomoc, a to świetnie, bo wiedzą, że uczenie się.

Choć robią swoje projekty, będziemy w dalszym ciągu bardziej zaawansowane techniki programowania - wyszukiwanie, sortowanie, łączenie, jak zrobić prostą bazę danych, etc.

Powodzenia. Nauczanie jest ciężka praca, ale spełniających gdy widzisz studenci rosnąć.

Odpowiedział 18/11/2008 o 03:06
źródło użytkownik

głosy
1

Książka: Programowanie Java dla dzieci, rodziców i dziadków (PDF)

Nie mam osobistych doświadczeń o nauce za pomocą tej książki, ale wydaje się być dobre, bo szybko przechodzi do wytwarzania coś widzialnego, a nie spędzać zbyt dużo czasu z składniowych najmniejszych szczegółów bitty. Czy ktoś tu spróbował wykorzystać tę książkę?

Odpowiedział 14/02/2009 o 14:47
źródło użytkownik

głosy
12

Rozpocznij z grafiką żółwia w Pythonie.

Chciałbym używać grafiki żółwia, który jest standardowo wyposażony w Pythonie. Jest to wizualny, prosty i można używać tego środowiska wprowadzić wiele pojęć programowania takich jak iteracji i procedura rozmów, zanim się zbyt daleko w składni. Rozważmy następujący interaktywną sesję w Pythonie:

>>> from turtle import *
>>> setup()
>>> title("turtle test")
>>> clear()
>>>
>>> #DRAW A SQUARE
>>> down()        #pen down
>>> forward(50)   #move forward 50 units
>>> right(90)     #turn right 90 degrees
>>> forward(50)
>>> right(90)
>>> forward(50)
>>> right(90)
>>> forward(50)
>>>
>>> #INTRODUCE ITERATION TO SIMPLIFY SQUARE CODE
>>> clear()
>>> for i in range(4):
        forward(50)
        right(90)
>>>
>>> #INTRODUCE PROCEDURES   
>>> def square(length):
        down()
        for i in range(4):
            forward(length)
            right(90)
>>>
>>> #HAVE STUDENTS PREDICT WHAT THIS WILL DRAW
>>> for i in range(50):
        up()
        left(90)
        forward(25)
        square(i)
>>>
>>> #NOW HAVE THE STUDENTS WRITE CODE TO DRAW
>>> #A SQUARE 'TUNNEL' (I.E. CONCENTRIC SQUARES
>>> #GETTING SMALLER AND SMALLER).
>>>
>>> #AFTER THAT, MAKE THE TUNNEL ROTATE BY HAVING
>>> #EACH SUCCESSIVE SQUARE TILTED

Próbując zrealizować dwa ostatnie zadania, będą mieli wiele nieudanych prób, ale awarie będą interesujące wizualnie, a oni szybko dowiedzieć się, jak starają się dowiedzieć, dlaczego nie rysować czego oczekiwano.

Odpowiedział 25/02/2009 o 22:00
źródło użytkownik

głosy
1

kiedy już nauczył ich jak programować, może chcą nauczyć się rozwijać oprogramowanie .. Myślę, że dla Grega Wilsona Software Stolarka Oczywiście jest super .. to również wykorzystuje Pythona jako języka studenta.

Odpowiedział 18/03/2009 o 15:51
źródło użytkownik

głosy
1

Myślę, że Python jest naprawdę wielki Język zacząć: :-)

Proponuję spróbować http://www.pythonchallenge.com/

To budować jak mała przygoda i co Solutions łączy Cię do nowej miły problem.

Po soluting problemu uzyskać dostęp do ładnym Forum aby porozmawiać o kod i dostać się do zobaczyć, co inni ludzie stworzyli.

Odpowiedział 08/07/2009 o 10:57
źródło użytkownik

głosy
1

Mogę polecić mojego projektu, PythonTurtle .

Podsumowanie:

PythonTurtle stara się zapewnić drogę najniższy próg do nauki Pythona. Studenci dowodzić interaktywną powłokę Pythona (podobny do rozwoju środowiska IDLE) i używać funkcji Pythona przenieść żółwia wyświetlany na ekranie. Ilustrowany ekran pomocy wprowadza studenta z podstawami programowania Python natomiast wykazanie, jak przenieść żółwia.

To wygląda tak:

alt text http://www.pythonturtle.com/screenshot.gif

Odpowiedział 04/08/2009 o 22:42
źródło użytkownik

głosy
2

Myślę, że Python jest świetny pomysł. Dałbym mu kilka podstawowych zadań do zrobienia na własną rękę i powiedzieć mu, że każdy martwy kończy uderzy prawdopodobnie mogą być rozwiązane przez podróż do google. Dla mnie przynajmniej, rozwiązanie problemu na własną rękę zawsze to lepiej trzymać niż ktoś mówi mi rozwiązanie.

Niektóre z możliwych projektów (w przypadkowej kolejności):

  • Coin Flip symulator. Niech dane wejściowe żądaną liczbę prób dla Rzut monetą. Wykonać ją i wyświetlić wyniki wraz z odsetkiem dla głów i ogonów.

  • Zrób przetwornik temperatury z menu, które ma danych wprowadzonych przez użytkownika do wyboru, jaki rodzaj konwersji użytkownik chce zrobić. Po wybraniu konwersji i robi to, należy powrócić do menu głównego.

    Oto przykład z rozszerzonym konwerter z tej samej idei: http://pastebin.org/6541

  • Zrobić program, który pobiera dane wejściowe numeryczną i wyświetla stopień się to przekładać się. Będzie to skończyć oceny, czy i przed wejście Elif sprawozdania dowiedzieć się, gdzie to pasuje.

  • Zrobić prosty quiz, który przechodzi kilka pytań wielokrotnego wyboru lub wypełnić puste pytania. Na koniec będzie on wyświetlany w jaki sposób użytkownik zrobił. On może wybrać jakieś pytania chce.

  • Weź wejście jakiegoś (przypuszczalnie dużą liczbę groszy) i przekształcić go w większych nominałach. Na przykład, 149 dolarów centy = 1, 1 czwarta 2 dimes i 4 groszy.

  • Tworzenie prostych List Manager. Móc dodawać / usuwać list i dodawanie / usuwanie wpisów w tych wykazach. Oto przykład Boże Narodzenie List Manager: http://pastebin.org/6543

  • Stworzyć program, który będzie budować, a następnie sprawdzić, czy wprowadzone cyfry tworzą magiczny kwadrat (z tablicy 2D). Oto niektóre przykładowy kod, ale powinno to naprawdę wydrukować na plac przy każdym kroku, aby pokazać, gdzie użytkownik jest w kategoriach buliding kwadrat: http://pastebin.org/6544

Chciałbym również zasugerować jakiejś rzeczy z xTurtle lub innym modułem graficznym mieszać rzeczy i zachować go z coraz nudne. Oczywiście, jest to programowanie praktyka bardzo dużo i nie skryptowy, który wiele osób rzeczywiście byłoby przy użyciu Pythona dla, ale przykłady dałem dość dużo bezpośrednio zaczerpnięte z kiedy uczyłem się przez pytona i to było dla mnie. Powodzenia!

Odpowiedział 04/08/2009 o 23:20
źródło użytkownik

głosy
1

Spróbuj znaleźć kopię dlaczego'S (Poignant) Przewodnik po Ruby on-line. Oryginalna strona jest nieaktywny, ale jestem pewien, że istnieje kilka luster tam. To nie jest typowy podręcznik programowania; stawia unikalne (i zabawne) spin na uczenie się nowego języka, który może dopasować swoją przyjaciółkę. Nie wspominając, Ruby jest doskonałym językiem do nauczenia się.

Odpowiedział 26/08/2009 o 16:22
źródło użytkownik

głosy
0

Użyj prawdziwego świata analogie i znaków wyimaginowane uczyć ich programowanie. Jak wtedy, gdy uczę ludzi o zmiennych i instrukcji sterujących etc.

Zwykle zaczynam przykład kalkulatora. Mówię sobie wyobrazić u mają pole dla każdej zmiennej i u mają tablice 10 kart z numerami 0 - 9 drukowanych na nich. Powiedzieć, że pole może posiadać jeden karton na raz i podobnych sposobów, aby wyjaśnić jak działają elementy programowania

I nacisk na jak każdy operator działa .. jak prostego „=” operatora zawsze oblicza prawą stronę najpierw w jedną wartość. i umieścić tę wartość w polu o nazwie „NUM_1” (która jest zmienna nazwa)

To był bardzo skuteczny, ponieważ są one w stanie bardzo szybko wyobrazić przepływu.

Odpowiedział 18/12/2009 o 15:59
źródło użytkownik

głosy
2

Tylko upewnij się, że zabawa!

Zadziwiająco Scala może być najprostszym przypadku próby Kojo

Odpowiedział 19/03/2010 o 14:44
źródło użytkownik

głosy
2

Jeśli Twój brat lubi łamigłówki, polecam Pythona wyzwanie . Nie chciałbym używać go jako narzędzia formalnego nauczania w 1 na 1 tutorialu, ale to coś, co można zrobić, gdy nie jesteśmy razem wyzwanie siebie i mieć trochę zabawy.

Odpowiedział 07/04/2010 o 01:35
źródło użytkownik

głosy
1

Academic Ziemia łączy oferuje bezpłatne kursy informatyki z najlepszych uniwersytetów. Mają sekcję ukierunkowaną Rozpoczęcie Informatyki. Języki nauczane w kursach rozpoczynających się zmieniać:

  • MIT - Wprowadzenie do informatyki i programowania - Python
  • Stanford - Computer Science I: Metodologia programowania - Java
  • Harvard - Wstęp do informatyki I - C (główny nacisk), z kilkoma innymi posypane w środek na dobre (na przykład, SQL, PHP, LISP, Assembler, itd.)
  • Berkeley - dialekt języka LISP
Odpowiedział 17/04/2010 o 13:33
źródło użytkownik

głosy
8

Nie wiem, czy ktoś wspomniał o tym tu jeszcze, ale warto sprawdzić Zed Shaw „s Dowiedz Pythona trudna droga

Mam nadzieję że to pomoże

Odpowiedział 19/10/2010 o 01:42
źródło użytkownik

głosy
2

Python Wyzwanie

Odpowiedział 08/12/2010 o 17:58
źródło użytkownik

głosy
2

Po przejściu kilku darmowych e-książek, znalazłem najlepsza książka do nauki programu została Head First Programming publikowanych przez O'Reily Press. Wykorzystuje Python jako język i daje programów do pracy od samego początku. Wszystkie one są bardziej interesujące, że „Hello World”. Jest wart swojej ceny spędziłem na nim, a ponieważ było się na trochę być może uda się znaleźć taniej używaną kopię na eBay lub Amazon.

Odpowiedział 03/01/2011 o 02:54
źródło użytkownik

głosy
0

Zapytaj swojego brata, czy jest coś, że chciałby, aby program zrobić lub wymyślić projekt dla niego, że myślisz, że go interesuje.

Coś gdzie on może wiedzieć co wyjście ma być i skierować go do materiałów (on-line lub w formie drukowanej), odnoszącymi się do projektu. Czy on przyjdzie do pytona lub programowania „na zimno” być cierpliwy jak pracuje jego drogę zrozumienia podstaw, takich jak składni, błędów, określenie zakresu i być przygotowanym na bok i pozwolić mu działać i zrobić swoje własne błędy podczas uruchamiania, aby zobaczyć światło żarówka przejść nad głową.

Odpowiedział 12/05/2011 o 14:28
źródło użytkownik

głosy
0

Gorąco polecam Python Programming: Wprowadzenie do informatyki 2nd Edition przez Johna Zelle . Jest ona ukierunkowana początkujących, i zajmuje się semantyką programowania. Po przeczytaniu będzie można odebrać inne języki znacznie szybciej, ponieważ semantycznej vs. składniowej podejścia zelle za. Sprawdź to!

Odpowiedział 29/05/2011 o 04:05
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more