kategoria: AMOS
[#91] Re: Kurs programowania dla zielonych - podstawy podstaw

@wali7, post #88

Całkiem ciekawe byłoby porównanie, jak wiele gier dla Amigi powstało w Amosie, a ile w C.


Wiekszosc gier sila rzeczy musiala powstac w ASM. Na drugim miejscu bedzie jednak Basic. Przynajmniej jezeli chodzi o ilosc, moim zdaniem.

piszesz, tyle że nie pod AmigaOS, a pod systemem Amos.


na tym polega kwintesencja BASICa. Dostajesz prosty czytelny dla kazdego jezyk jakim jest BASIC plus framework z tysiacami "latwych"/czytelnych funkcji dostepnych z czarodziejskiego kapelusza ktore ktos juz kiedys w miare poprawnie i optymalnie zakodowal.

Podczas gdy C jest praktycznie transparentny dla programów, umiejętnie napisane programy w C potrafią wycisnąć z chipsetu wszystko, co dla programów pod Amosem jest niemożliwe.


wszystko to moze wycisnac tylko asm, co nie zmienia faktu, ze napisane tego samego w C jest mozliwe, ale czy tak wygodne. W Amosie do niestd. rzeczy na hardware uzywa sie najczesciej asm ktory jest dosc wygodny do operowania na amigowym hardware. W C musisz to najpierw dobrze "opakowac" zeby umozliwic sobie w miare czytelny dostep i juz na tym wiekszosc polegnie, a jak nie wierzysz to zobacz sobie sterownik OCS/ECS/AGA dla Linuxa napisany wlasnie w C.

Ostatnia aktualizacja: 13.11.2014 10:56:29 przez morele
[#92] Re: Kurs programowania dla zielonych - podstawy podstaw

@ZbyniuR, post #86

Pamiętam z drugiej połowy lat 90ych chwalono w prasie Amiga E pod niebiosa.


nawet napisalem jeden program w E na miedzyszkolny konkurs informatyczny, a dlaczego wybralem E. Dobra wspolpraca z AmigaOS (mi wystarczyl wtedy exec, dos, intuition, graphics, math i byc moze cos jeszcze), naprawde bardzo szybki, maly i wygodny kompilator generujacy w miare optymalny kod (uzywalem na pozyczonej Amidze500+/2MB bez HDD, akurat padl mi HDD z Amiga, a na nowy sprzet musialem poczekac). E jest taki pro AmigaOS, latwo tez uzywac wstawek ASM, a do tego najbardziej podobny ze wszystkich innych do C, chociaz autor inspirowal sie bardziej Modula-2 czy Oberonem, jak dobrze pamietam, czyli takimi pascalopodobnymi jezykami, mozna tez napotkac elementy Lisp.

E to jednak dla mnie od 2 dekad zamknieta karta w historii, niewiele pamietam i nie bylbym w stanie uzywac, zreszta nie mam za bardzo na to juz ochoty

A może można zrobić zestaw prostych testów w różnych językach, by porównać długość i szybkość kodu, i pokazać ich listingi


bardzo dobry pomysl i mysle, ze na tym wyjdzie wyzszosc wszelkich BASICow, w tym takze AMOSa .

Wali7 na ten czas zaproponowal tylko Hello world . Zdziwilby sie, bo mozna wygenerowac krotszego execa z BASICa niz w przypadku std. helloworld dla C.

Co by obiektywnie określiło raz na zawsze który jest w czymś szybszy.


nie tylko pod tym katem nalezy oceniac, bo maks. szybkosc nie jest najistotniejsza i nie jest tez niezbedna w wiekszosci takich op.
[#93] Re: Kurs programowania dla zielonych - podstawy podstaw

@morele, post #91

W społeczności Unixowej mamy takie pojęcie jak bikeshed. Proponuje wszystkim z tego wątku zapoznać się z materiałem.

A później pozwolić pongowi w spokoju robić kurs w tym języku który najlepiej zna.
[#94] Re: Kurs programowania dla zielonych - podstawy podstaw

@wali7, post #67

I chodzi mi tylko o walkę z jednym, absolutnie nieprawdziwym mitem: że C jest trudny.


Pisanie w C jest relatywnie trude. Weźmy sytuację zupełnie zielonego użytkownika, który chciałby napisać prostą grę dla Amigi. W Amosie zajmie mu to pewnie kilka dni (wraz z nauką składni języka od zera), zanim dojdzie do takiego poziomu w C miną długie miesiące. Procent ludzi którzy odpadną zniechęceni po drodze będzie wielokrotnie większy w przypadku C. I to według mnie oznacza, że napisanie gry w C jest trudne, chociaż można się spierać, czy to dlatego, że sam C jest trudny czy z innych powodów, ale nie ma to w tej sytuacji zupełnie znaczenia, liczy się efekt.

Tu kilka cytatów, które dotyczą co prawda C++, ale idealnie pasują i do C:

http://stackoverflow.com/questions/1085134/why-is-c-relatively-harder-to-use-bad-choice-for-a-beginner


Learning to express yourself in code, breaking any problem down into something that can be expressed in terms of a programming language, that's the important skill. But C++ forces you to learn that while also juggling a very complex language, where you also have to figure out pointers, manual memory management, deal with out-of-bounds array accesses, cryptic template compile errors, memory leaks, more memory leaks and countless instances of undefined behavior. (cases where the compiler accepts the code, but the language standard does not specify any behavior, which means that anything might happen, even if the code seems to work. C++ features a huge number of these cases, whereas most languages try to catch or prevent all such errors at compile-time)


C is a useful language. Many languages are implemented it it, and many libraries and operating systems are too. Nonetheless, unless C is the only option, I wouldn't advocate it as a first language because it is hard to do anything immediately useful with it, in a small amount of time. Advocates argue that C is character building. Great job! Suffering is such a fun learning experience!


Rzeczy które pogrubiłem potrafią niejednego doprowadzić do czarnej rozpaczy, osiwienia i porzucenia programowania ze względu na totalne zniechęcenie. A chyba nie chcemy nikogo zniechęcać do zabawy w programowanie, bo przecież o zabawę tutaj chodzi a nie katorgę. Przy okazji przypominam, że mówimy o Amidze, gdzie każdy strzał w nie swoją pamięć może potencjalnie spowodować zawieszenie całego systemu.

Istotne jest wyjaśnienie jak poruszać kropką za pomocą joysticka, a nie jak zbudować własną implementację stosu czy alokatora pamięci, to są problemy na zupełnie innym poziomie i to zostawmy programistom którzy na tym zęby zjedli przez lata.




Ostatnia aktualizacja: 13.11.2014 11:37:45 przez jubi
[#95] Re: Kurs programowania dla zielonych - podstawy podstaw

@jubi, post #94

Moi Drodzy.
Widzę, że kolejny raz na PPA mamy powtórkę z rozrywki: zaczyna się od fajnego pomysłu, po czym następuje wzajemne udowadnianie sobie, co jest lepsze. Pogadamy, pogadamy i skończy się jak zwykle - czyli w Rzeźni pod tytułem: "Dlaczego C jest lepsze od asemblera/BASIC-a/AMOS-a/LOGO/PROLOG-a/LISP-a/Pascala/JAVY i dlaczego tylko ja tak sądzę."
Ja już napisałem, w jaki sposób mogę pomóc. A tak się składa, że chwilowo mam trochę wolnego czasu. Ile to potrwa - nie wiem, ale niekoniecznie długo. Dlatego jeżeli to ma przybrać realne kształty, to proszę, zamiast przekrzykiwać się na temat tego, co jest lepsze, zacznijcie pisać te swoje kursy. A jeżeli ktoś chce zrozumieć, co jest napisane w języku Goethego, proszę o informację. Ale konkretnie, o jaki tekst chodzi, a nie "zobacz, czy tam nie ma czegoś ciekawego."
[#96] Re: Kurs programowania dla zielonych - podstawy podstaw

@jubi, post #94

heh
nie lubię się udzielać w takich serialach (uwaga slay'a jest dobrym podsumowaniem wątku)
ale czytając niektóre wypowiedzi króciutko się chcę odnieść.

to wszystko relatywne - pisząc np. prostą grę logiczną imo nie ma sensu wybierać innego rozwiązania niż amos pro. I tak nie wyciśnie się więcej z asma czy c. A czas poświęcony na produkcję jest zasobem kluczowym.

Drugi przykład - piszemy rpg o modułowej budowie - edytory, różne zasoby, struktury danych. W amosie można się zamęczyć a pisząc w C poza wygodą dajemy sobie szansę sensownego wykorzystania kodu np. na innych platformach (czy nawet konfiguracjach jak ktoś jest koszernym amigowcem) i spieniężenia dużo większego nakładu pracy.

Pisząc np. oldshoolowego shmapa na a500 oczywisty wybór to asm.

Moim zdaniem uczyć się należy na jak najprostszych zadaniach (bo konkretny proj. to na pewno dobry pomysł) i przystępny język to podstawa. Zawsze można rozszerzyć swoją wiedzę we własnym zakresie... Albo odpalić za rok np. szkółkę C ;)

Imho na początek najlepszy byłby amos lub (ciut trudniejszy ale systemowy i na agę/cgx) blitz
[#97] Re: Kurs programowania dla zielonych - podstawy podstaw

@OSH, post #95

Ludzie! Ciagniecie bezsensowny brednioserial o wyzszosci C nad BASIC-ami wszelkimi juz trzecia strone. Po co? Czy o to was autor watku prosil? Cala ta dyskusja juz dawno powinna byc przeniesiona gdzie indziej!

Cholera, czlowiek wyskoczyl z dobra propozycja zrobienia szkolki Amos-a dla bardzo poczatkujacych. Chwala mu za to! Ale nie zdziwie sie jezeli po kilku stronach pieprzenia o C/C++ w jego watku gosciu straci zapal i ze szkolki nici.

Naprawde o to wam chodzi?
[#98] Re: Kurs programowania dla zielonych - podstawy podstaw

@morele, post #91

wszystko to moze wycisnac tylko asm, co nie zmienia faktu, ze napisane tego samego w C jest mozliwe

To może się jednak zdecyduj... Moim zdaniem napisanie tego samego w C nie tylko jest możliwe, ale kod będzie bardziej czytelny.
[#99] Re: Kurs programowania dla zielonych - podstawy podstaw

@mschulz, post #97

@mschulz: Przecież nie musi czytać tego pieprzenia, może robić szkółkę...
[#100] Re: Kurs programowania dla zielonych - podstawy podstaw

@jokov, post #96

Wiec zamiast ciagnac kolejny brednioserial idac najprostsza droga niech powstana dwa kursy:
Amos i C bo zarowno piszacych w jednym i drugim tutaj nie brakuje.


Do AMOSA juz mamy chetnych, a do C typuje Asmana, Kraszana, Minniata i niech Wali sie tez wykaze. Z tyloma uzytkownikami na pewno jakis kurs by powstal.
[#101] Re: Kurs programowania dla zielonych - podstawy podstaw

@selur, post #100

OK
[#102] Re: Kurs programowania dla zielonych - podstawy podstaw

@selur, post #100

a do C typuje Asmana


Ale przecież asman pisze już jeden kurs (wg. mnie bardzo fajny), który ukazuje się w PPA.
[#103] Re: Kurs programowania dla zielonych - podstawy podstaw

@selur, post #100

Dobrze gada! OK
[#104] Re: Kurs programowania dla zielonych - podstawy podstaw

@strim_, post #102

[#105] Re: Kurs programowania dla zielonych - podstawy podstaw

@selur, post #100

[#106] Re: Kurs programowania dla zielonych - podstawy podstaw

@Krashan, post #99

Czytam i analizuję wszystkie za i przeciw. Fajnie, że pojawiło się dużo opinii. Na pewno mnie to nie zniechęci do pracy. Wg mnie może to faktycznie dobry pomysł żeby pociągnąć 2 kursy jednocześnie albo... zrobić to równolegle na tych samych przykładach w Amosie i C :) Wtedy będziemy mogli porównać co jest szybsze, skuteczniejsze, który kod wygląda schludniej itd? Co do konkretów spróbujemy wystartować w następnym tygodniu.
[#107] Re: Kurs programowania dla zielonych - podstawy podstaw

@pong777, post #106

Masz moje moralne wsparcie. Obecnie jestem od półtora miesiąca studentem II roku informatyki i równolegle leczę się, dlatego na jakieś konkretne (merytoryczne) wsparcie z mojej strony też możesz liczyć.

Problemem C jest nie tylko trudność ogarnięcia tego przez nowicjuszy (na I roku byłem jednym z kilkunastu osób na roku, co zdało egzamin z języka C w pierwszym terminie), ale brak bibliotek dedykowanych grom. Dlatego programiści i twórcy wybierają AMOS lub jeszcze prostszy w obsłudze BackBone (ci co nie ogarniają pętli, procedur, zmiennych).

API GameX (jest to biblioteka do tworzenia gier, którą będę pisać) może coś w tej materii zmieni. Przynajmniej chcę, by ktoś kto ogarnia C miał ułatwione zadanie przy pisaniu gier. Docelowo jakaś aplikacja, lub prosty język do tworzenia gier jest w zasięgu moich możliwości.

Kurs pisania gry dla Amigi robi Asman w naszym rodzimym Polskim Piśmie Amigowym. Moim zdaniem jest to bardzo dobry kurs, warto wziąć pod uwagę opinie czytelników tego kursu przy tworzeniu nowego kursu.

Ja robię również kurs asemblera w Amigazynie. Nie jest to jednak kurs pisania gry, ale nauka samego asemblera i programu Asm-One. W numerze 2, który wyjdzie przed świętami niech moi czytelnicy przygotują się na solidną dawkę wiedzy.
[#108] Re: Kurs programowania dla zielonych - podstawy podstaw

@Hexmage960, post #107

Bardzo fajnie, że jest taki kurs. Może rzucam się na głęboką wodę, bo wcześniej miałem bardzo krótki kontakt z kilkoma językami i zazwyczaj znajomość kończyła się na wyświetlaniu jakiegoś prostego tekstu, a co najwyżej zadawania pytań przez komputer ;)

Zacząłem niedawno pisanie programu na asemblerze za pomocą filmików na YT, gdzie gość wpisywał coś na ekranie, a ja wciskałem pauzę i przepisywałem kod do programu. Niestety nie wiem za bardzo co robiłem i dlaczego akurat tak, bo filmik jest po angielsku, a tak dobry w angielskim to nie jestem. Później zaczęły się schody, bo gość zmieniał z każdym kolejnym filmikiem wersję asemblera i to co gość wpisywał nie działało w najnowszej wersji. W kolejnym filmiku już na początku brakuje nagrania z kilkunastoma bajtami kodu i nie wiem czego brakuje. No i na tym zakończyłem zabawę z asemblerem. Choć z tego co już wklepałem udało się uzyskać poziomą linię przesuwającą się w górę i w dół po kolorowym ekranie ;)
Niestety z kursu z Amigazynu nie skorzystałem jeszcze, bo musiałem wysłać Amigę do naprawy.
[#109] Re: Kurs programowania dla zielonych - podstawy podstaw

@pong777, post #106

moge pomoc przy przykladach jakby co.
[#110] Re: Kurs programowania dla zielonych - podstawy podstaw

@glichtanski, post #108

Przepisywanie zywcem z przykladu nie wglebiajac sie w tresc przypomina nauke w szkole, kiedy kazdy sciaga na sprawdzianie, pozniej wszyscy maja same dobre oceny... a wiedzy zero. Zdecydowanie nie tedy droga. ok, racja
[#111] Re: Kurs programowania dla zielonych - podstawy podstaw

@selur, post #110

Zaproponuj jakąś fajną metodę. Czy bardziej pogadanka czy objaśnienia co i skąd i jak można inaczej czy słownikowo - komenda i zasada działania, opis parametrów czy może taki dialog między osobą zieloną a nauczycielem gdzie osoba zielona zadaje wiele pytań a nauczyciel odpowiada? A może videokonferencja na żywo na Skype?

PS. Sam chętnie uczestniczyłbym w kursie C jako uczeń.

Ostatnia aktualizacja: 14.11.2014 19:33:02 przez pong777
[#112] Re: Kurs programowania dla zielonych - podstawy podstaw

@selur, post #110

ooo, to tak jak z naszymi konowalami OK
[#113] Re: Kurs programowania dla zielonych - podstawy podstaw

@pong777, post #111

Jeśli chodzi o kurs C, to moim zdaniem najlepiej (podobnie jak w przypadku AMOSa) uczyć się na przykładzie jakiegoś programu. Nie wiem co to miałoby być, ja osobiście nigdy nie napisałem żadnej gry (nigdy mnie to nie interesowało), niezależnie od języka programowania, zawsze to był program mniej bądź bardziej użytkowy.
Jeśli chodzi o C, to podstawy języka i WSZYSTKIE instrukcje są do opanowania w godzinę. Cała reszta to biblioteki zewnętrzne (przykładowo ANSI C nie posiada instrukcji wejścia-wyjścia, aby napisać "Hallo world" na ekranie trzeba dołączyć bibliotekę stdio, czyli "standard input-output" zawierającą m.in. instrukcję printf, która potrafi robić to co basicowe print i sporo więcej). Sam język posiada dosłownie kilka instrukcji :)
Ja nie jestem profesjonalistą, spore doświadczenie w C i zacięcie pedagogiczne łączy niewątpliwie krashan. Który już popełnił kilka kursów programowania. Nie wiem, czy chciałoby mu się w to bawić ponownie, tym bardziej, że wszystko to jest w sieci.
Ja mogę co najwyżej podać kilka przykładów. Zresztą, jak pisałem, nauczenie się C to godzina. Reszta to doświadczenie i nauka obsługi danego API (Application Programming Interface), które chcemy użyć i dalej konkretnego pakietu np. GUI tworzone za pomocą intuition.library, albo GUI tworzone za pomocą MUI. Moim zdaniem, po nauczeniu się podstaw C, uczymy się już nie języka, ale obsługi danego API. Ta wiedza będzie dokładnie taka sama przy chęci pisania pod system pod C, asm, czy AMOSa (da się, chociaż jest to obwarowane wieloma utrudnieniami.... na tyle skutecznie, że pisząc w Amosie nie ma sensu używać systemu, bo praktycznie taka sama wiedza i nakład pracy wymagany jest przy zrobieniu tego samego w C.... a taki program korzystający z systemu, a napisany w C na pewno będzie działał sprawniej).
A jak by taki kurs miał wyglądać? Wątek na forum? Tak jak przy AMOSowym Pongu? Można by zacząć od zupełnego zera (czyli Hallo world), omówić dogłębnie przykład i krok po kroku robić coraz bardziej skomplikowane. Tak sobie to wyobrażam. Można by zadawać pytania, a odpowiedzi mogły by udzielać różne osoby. Jednak w takiej sytuacji musiałby być jakiś moderator, co by nie doprowadzić do konfiktów między "nauczycielami"
[#114] Re: Kurs programowania dla zielonych - podstawy podstaw

@pong777, post #111

Ja proponuje skupic sie na materiale zapisujac go np. w brudnopisie a pozniej objasniac przed ekranem komputera w formie np. video. Pokazanie programu, wyjasnienie zasady dzialania i obserwacja co sie dzieje po uruchomieniu.
Jesli to ma byc od zera a zakladamy, ze tak bo to dla "zielonych", to trzeba wytlumaczyc zasade dzialania podstawowych komend i sposob zapisu programu. Czyli jak dziala edytor i jak komputer wykonuje napisany program, co robia poszczegolne komendy.

Na poczatek co to zmienna, zmienna tekstowa, etykieta, operatory + - * / ^ () : ; , REM, WAIT KEY, komenda PRINT AT, petla FOR NEXT, otwarcie ekranu Screen Open, komendy graficzne w trybie tekstowym PEN, CLS, PAPER, pozniej tablica DIM i READ, DATA, INPUT , GOTO, GOSUB RETURN i koniec programu END czyli absolutne minimum i podstawy.
Wszystko na zasadzie klikunastu krotkich programow w stylu
For i=1 to 10
Print "i = ";i
Wait key
Next i
a pozniej opisanie kolejno co robi dana komenda i jaki jest wynik tej czynnosci ale bez "naukowych" regulek. Wszystko ma byc jak najprosciej. Np. ze w zmiennej mozna zapisac jakas liczbe lub tekst , a nie, ze zmienna to komorka w pamieci operacyjnej mikrokomputera, charakteryzujaca sie dynamicznym przyjmowaniem okreslonych wartosci liczbowych, zapisanych w jednym z trzech systemow reprezentacji liczb ... bla bla bla bla i juz kazdy sie krzywi
Zadnego gadania w stylu: globalny, procedura, parametr binarny, heksadecymalny, bitplany, raster, obiekty blitera, sprajty itp itd. Na to przyjdzie czas w 10 lekcji (bo tyle czasu powinno byc przeznaczone na komendy, ktore wymienilem wczesniej) o ile sluchacz nie polegnie juz w 3
[#115] Re: Kurs programowania dla zielonych - podstawy podstaw

@wali7, post #113

"Zresztą, jak pisałem, nauczenie się C to godzina"

Hmmm
[#116] Re: Kurs programowania dla zielonych - podstawy podstaw

@selur, post #115

Jak ktoś nauczy się podstaw C (nawet bez minimalnego liźnięcia jakiejkolwiek biblioteki standardowej) w godzinę to niech napisze do mnie, rzucę programowanie od razu... Miałem się nie udzielać w tym wątku, ale...

Nawet jak ktoś znał wcześniej Basic, lub inny język programowania to nie wieżę, że nauczy się C w 1h.
Oprócz, przypisań, if, case, for, typów danych itd., są subtelne różnice nawet pomiędzy ++i, a i++, --i, i-- itd. struktury, tablice, wskaźniki i referencje, dynamiczna alokacja pamięci i zwalnianie jej. Dla kogoś kto nie liznął assemblera, wskaźnik, czy referencja jest rzeczą dość skomplikowaną, nawet może nie być oczywista dla kogoś kto zna assembler. Żeby poznać działanie tego wszystkiego, trzeba najpierw coś przeczytać, później wziąć przykład i popróbować.

Jeżeli ktoś nauczył się języka C w 1h, ma średnie zarobki, to proponuję od razu przebranżowić się na programistę C/C++, bo znaczy, że jest programistycznym geniuszem i będzie kosił niezłe siano, bo genialni programiści tego języka są bardzo poszukiwani (mi bardzo daleko do bycia średnio dobrym programistą C++, a pracuję zawodowo).

I nie uważam, że C jest tak samo prosty jak Amos. Amos jak wiele osób tutaj podkreśliło, od razu pozwala otworzyć ekran i naginać pixelami, w C, trzeba dołączyć bibliotekę, widzieć jak jej użyć... To czasami bywa bardzo trudne.

Ale dobra, w godzinę nie, ale w kilka godzin już można coś pobazgrać napisami po ekranie, stworzyć jakieś funkcje, jak będzie ktoś, kto pokaże jak podpiąć bibliotekę, jak otworzyć okno i rysować, to w miarę szybko można będzie się wszystkiego nauczyć i po pewnym czasie, dla ucznia C stanie się prostsze od Amosa. Punkt widzenia, zależy od punktu siedzenia, jak już ktoś umie C, to się wydaje banalny, ale jak ktoś się go dopiero uczy, to jest kosmicznie trudny.
[#117] Re: Kurs programowania dla zielonych - podstawy podstaw

@selur, post #115

C to:
- instrukcje - pętli for, while; warunek if; zwrócenie wyniku return; #include (która nie jest instrukcją, ale komendą preprocesora)... pewnie coś pominąłem, ale raczej nie więcej niż 3-4 polecenia języka
- operatory arytmetyczne, inkrementacja i dekrementacja
- zmienne, w tym struktury
- wskaźniki (bardzo ważna rzecz, podstawa przy używaniu AmigaOS )
- tworzenie funkcji
- ogólna wiedza, gdzie są jakieś funkcje, których możesz potrzebować (w stdio we/wy, w math np. instrukcja pierwiastkowania.... sam język C nie potrafi pierwiastkować... itp)
Tyle z gołego języka C musisz rozumieć, aby tworzyć programy dla AmigaOS. Opanowanie nie wymaga wiele czasu.
Reszta to znajomość funkcji AmigaOS, to już nie jest C: otwieranie bibliotek, otwieranie i obsługa okien, ekranów, gadżetów i requesterów... to jest wiedza o API AmigaOS, wspólna dla każdego programu systemowego, niezależna od użytego języka programowania.
[#118] Re: Kurs programowania dla zielonych - podstawy podstaw

@flops, post #116

Dokladnie.
Proponuje zapytac Kraszana, czy po 10 latach nauki C, napisanie DigiBoostera bylo proste i banalne.
[#119] Re: Kurs programowania dla zielonych - podstawy podstaw

@flops, post #116

No nie przesadzajmy ... . żeby napisać "hello world" w C ma mi zająć to kilka godzin ?
Nie róbmy z C jakiejś enigmy. Ogólnie wszystkie języki wysokiego poziomu mają w pewnym sensie jakąś wspólną cechę np. wspomniane PRINT z basica .
[#120] Re: Kurs programowania dla zielonych - podstawy podstaw

@wali7, post #117

Wali, cholernie mocno upraszczasz, nie wiem tylko po co.

- instrukcje - pętli for, while; warunek if; zwrócenie wyniku return; #include (która nie jest instrukcją, ale komendą preprocesora)... pewnie coś pominąłem, ale raczej nie więcej niż 3-4 polecenia języka


Do tego jeszcze wyjasnienie dlaczego oprocz #include czlowiek musi jakies biblioteki linkerowi podawac. Do tego dopisz jeszcze typy danych. Wyjasnij poczatkujacemu programiscie dlaczego w C nie ma bezposredniego typu dla sekwencji znakow. String na typie char* to nie to samo.

zmienne, w tym struktury


Zasieg zmiennych, slowa kluczowe static i volatile. Dlaczego glowny program niekoniecznie widzi ze jakas zmienna sie zmienila jesli zrobilem to np. w przerwaniu. Co oznacza zmienna static w ciele funkcji a co poza nia.

- wskaźniki (bardzo ważna rzecz, podstawa przy używaniu AmigaOS )


Do tego jeszcze zarzadzanie pamiecia i krotki kurs poslugiwania sie ciagami znakow. Bo inaczej amator nie bedzie wiedzial dlaczego skladnia if (napis == "Ala ma kota") nie dziala. Wyjasnij poczatkujacemu, ze zapisywanie danych do sekcji .rodata nie jest dobrym pomyslem. Bez porzadnej dawki wiedzy programy amatorow beda ciekly pamiecia na lewo i prawo, albo odwolywaly sie do fragmentow pamieci ktore juz zostaly zwolnione. Przykladow mozna by mnozyc w nieskonczonosc.

Tyle z gołego języka C musisz rozumieć, aby tworzyć programy dla AmigaOS. Opanowanie nie wymaga wiele czasu.


Opanowanie na poziomie dajacym niestabilne programy wywalajace przy byle okazji caly system faktycznie nie wymaga wiele czasu. Pamietanie o wszystkich szczegolach juz tak.

C jest swietnym jezykiem. To taki nowoczesny wieloplatformowy assembler. Ale jak kazdy jezyk jednak dosc niskopoziomowy pozwala programiscie na duzo. Bardzo duzo. Basic, jak chociazby Amos, jest tutaj o niebo lepszy. Prowadzi za raczke daje szanse na zabawe w przekuwanie pomyslu na dzialajacy program bez potrzeby pamietania o tym, ze tak wspaniale narzedzie jak jezyk C moze ci odstrzelic noge ;) DO nauki to juz nawet Pascal bylby lepszy od C.
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem