1 419
pakeitimų
Pipedija - tautosaka, gandai, kliedesiai ir jokios tiesos! Durniausia wiki enciklopedija durnapedija!
| (nerodoma 11 tarpinių versijų, sukurtų 8 naudotojų) | |||
| 1 eilutė: | 1 eilutė: | ||
[[Vaizdas:Frontendas_ir_bakendas.jpg|400px|thumb|right|Čia tokiu vizualiai suprantamu būdu paaiškinta, kaip išties padarytos tos programos, kurios gražiai atrodo ir gerai veikia. Išties tai jūs neįsivaizduojate, koksai [[šūdas]] tenai slepiasi.]] | [[Vaizdas:Frontendas_ir_bakendas.jpg|400px|thumb|right|Čia tokiu vizualiai suprantamu būdu paaiškinta, kaip išties padarytos tos programos, kurios gražiai atrodo ir gerai veikia. Išties tai jūs neįsivaizduojate, koksai [[šūdas]] tenai slepiasi.]] | ||
'''Programavimas''' - tai kai kažkas sukuria kokią tai [[programa|programą]], parašydamas ją kokia nors '''programavimo kalba'''. Tai ta programa šitaip būna suprogramuojama, o suprogramavimui būna naudojamos įvairiausios '''programavimo kalbos'''. Taip kad programavimas ir programavimo kalbos išties yra viena ir tas pats. | '''Programavimas''' - tai kai kažkas sukuria kokią tai [[programa|programą]], parašydamas ją kokia nors '''programavimo kalba'''. Tai ta programa šitaip būna suprogramuojama, o suprogramavimui būna naudojamos įvairiausios '''programavimo kalbos'''. Taip kad programavimas ir programavimo kalbos išties yra viena ir tas pats. Realiai gi pati programavimo esmė - tai susigaudyti kaip veikia [[duomenų tipai]], o tada jau tuos tipus ir apdirbinėti. | ||
Paprastai programavimo kalba tėra tam tikra komandų seka, kur komandos arba daro veiksmą, arba kažkam priskiria kokias tai reikšmes, arba kaip tai keičia programos vykdymo tvarką. | Paprastai programavimo kalba tėra tam tikra komandų seka, kur komandos arba daro veiksmą, arba kažkam priskiria kokias tai reikšmes, arba kaip tai keičia programos vykdymo tvarką. | ||
| 20 eilutė: | 20 eilutė: | ||
Pradedant programuoti, svarbu suprasti kelias paprasčiausias sąvokas. Jas supratus, paskui jau viskas vyksta lengviau. Bet jei bendrų sąvokų nesuprasit, tai bus sunku. Todėl geriau pradėti nuo tų svarbiausių dalykų. Gal jie pradžioje atrodys kiek abstrakčiai, bet juos supratus, paskui bus lengviau. | Pradedant programuoti, svarbu suprasti kelias paprasčiausias sąvokas. Jas supratus, paskui jau viskas vyksta lengviau. Bet jei bendrų sąvokų nesuprasit, tai bus sunku. Todėl geriau pradėti nuo tų svarbiausių dalykų. Gal jie pradžioje atrodys kiek abstrakčiai, bet juos supratus, paskui bus lengviau. | ||
Bendros sąvokos: | ==== Bendros programavimo sąvokos ==== | ||
Bendros sąvokos, kurias reikia žinoti vien tam, kad suprastum, ką išvis darai: | |||
* [[Transliatorius]] - tokia programa, kurios dėka galima įvykdyti jūsų parašytą programą. Paprastai būna dviejų rūšių transliatoriai: | * [[Transliatorius]] - tokia programa, kurios dėka galima įvykdyti jūsų parašytą programą. Paprastai būna dviejų rūšių transliatoriai: | ||
** [[ | ** [[Interpretatorius]] - tokia speciali programa, kuri vykdo jūsų parašytą programą tiesiog ją skaitydama ir vykdydama | ||
** [[Kompiliatorius]] - tokia speciali programa, kuri jūsų parašytą programą išverčia į mašininį kodą ir tada gaunasi dvejetainė programa, vykdoma tiesiogiai ant [[procesorius|procesoriaus]] | ** [[Kompiliatorius]] - tokia speciali programa, kuri jūsų parašytą programą išverčia į mašininį kodą ir tada gaunasi dvejetainė programa, vykdoma tiesiogiai ant [[procesorius|procesoriaus]] | ||
Programavimo sąvokos: | Programos: | ||
* Sorcai arba tekstai - tai tekstas, parašytas tam tikra programavimo kalba - t.y., tai, ką rašai ir redaguoji, kol pavyksta gauti rezultatą | |||
* Dvejetainis arba kompiliuotas kodas - tai sutransliuota programa, kuri jau gali būti vykdoma | |||
==== Duomenų tipai ==== | |||
{{Main|Duomenų tipai}} | |||
Duomenų tipai yra svarbiausia - kol jų nesuprasit, tol išvis nesuprasite ir ką darote su savo programa. Visi nekenčia mokytis duomenų tipų, bet kol jų neišmoksta, tol neišmoksta ir programuoti. | |||
Bendriausi duomenų tipai yra tokie: | |||
* Paprasti duomenys (pvz., integer, char, float) | |||
* Sudėtingi duomenys (pvz., array, structure, string) | |||
* Visokios [[rodyklės]] arba [[pointeriai]] | |||
==== Programavimo praktikos sąvokos ==== | |||
Programavimo sąvokos, kurias jau reikia tiesiog išmokti, besimokant programuoti: | |||
* Komentaras - toksai laisvas tekstas, kuris specialiai pažymimas taip, kad transliatorius jį ignoruotų, todėl žmonės komentaruose gali rašyti ką nori ir kas jiems patogu | * Komentaras - toksai laisvas tekstas, kuris specialiai pažymimas taip, kad transliatorius jį ignoruotų, todėl žmonės komentaruose gali rašyti ką nori ir kas jiems patogu | ||
* Kintamasis - tai kažkokia atminties ląstelė, kaip kokia dėžutė, į kurią galima pasidėti kokius nors duomenis, pvz., skaičių, raidę, sakinį ar dar kažką | * Kintamasis - tai kažkokia atminties ląstelė, kaip kokia dėžutė, į kurią galima pasidėti kokius nors duomenis, pvz., skaičių, raidę, sakinį ar dar kažką | ||
| 37 eilutė: | 53 eilutė: | ||
** Kai kuriose kalbose būna, kad vienas sakinys - tai viena eilutė ir viskas | ** Kai kuriose kalbose būna, kad vienas sakinys - tai viena eilutė ir viskas | ||
** Kitose kalbose sakiniai būna sudėtingesni, pradedami ir užbaigiami kokiais nors kabliataškiais ar panašiai | ** Kitose kalbose sakiniai būna sudėtingesni, pradedami ir užbaigiami kokiais nors kabliataškiais ar panašiai | ||
* Sąlyginis sakinys arba ifas (nuo žodžio "IF") - toksai sakinys, kuris vykdomas tik jei yra įvykdyta sąlyga: | * [[Sąlyginis sakinys]] arba [[ifas]] (nuo žodžio "IF") - toksai sakinys, kuris vykdomas tik jei yra įvykdyta sąlyga: | ||
** Paprastu atveju būna tiesiog if, bet gali būti if, tada veiksmas, o tada, jei if nesuveikė - tai atlternatyvus veiksmas - else | ** Paprastu atveju būna tiesiog if, bet gali būti if, tada veiksmas, o tada, jei if nesuveikė - tai atlternatyvus veiksmas - else. Nuo to ir dažnas šio sakinio pavadinimas - [[If-else]]. | ||
* Ciklas - tai toks sąlyginis sakinys, kuris liepia veiksmų seką vykdyti daug kartų. Praktikoje pasiteisina dviejų tipų ciklai: | * Ciklas - tai toks sąlyginis sakinys, kuris liepia veiksmų seką vykdyti daug kartų. Praktikoje pasiteisina dviejų tipų ciklai: | ||
** For - tai ciklas, kuris tiesiog įvykdo kažkokį veiksmą kiek tai kartų | ** For - tai ciklas, kuris tiesiog įvykdo kažkokį veiksmą kiek tai kartų | ||
| 44 eilutė: | 60 eilutė: | ||
Aaaa... Šitos sąvokos veikia praktiškai visose programavimo kalbose, ir jei jas kažkurioje kalboje išmokote - tai jau ta kalba galite ir programuoti. Štai ir viskas! Jei šias sąvokas žinote, tai jau turite ir pagrindus! | Aaaa... Šitos sąvokos veikia praktiškai visose programavimo kalbose, ir jei jas kažkurioje kalboje išmokote - tai jau ta kalba galite ir programuoti. Štai ir viskas! Jei šias sąvokas žinote, tai jau turite ir pagrindus! | ||
== Pipedijai žinomos programavimo kalbos == | == Pipedijai žinomos programavimo kalbos == | ||
| 52 eilutė: | 67 eilutė: | ||
O dar be visų šitų yra ypatingai brangi ir šilumą skleidžianti [[dibilų kalba]], kuri yra lietuviška ir todėl išskirtinai unikali, bet programuoti leidžia visai normaliai, taip kad galima čia visai neblogai kažką daryti ta kalba, todėl ji yra mūsų pasididžiavimas, nes nei [[latviai]], nei [[estai]] jokios nuosavos programavimo kalbos nesukūrė, o mes jau turime. | O dar be visų šitų yra ypatingai brangi ir šilumą skleidžianti [[dibilų kalba]], kuri yra lietuviška ir todėl išskirtinai unikali, bet programuoti leidžia visai normaliai, taip kad galima čia visai neblogai kažką daryti ta kalba, todėl ji yra mūsų pasididžiavimas, nes nei [[latviai]], nei [[estai]] jokios nuosavos programavimo kalbos nesukūrė, o mes jau turime. | ||
Klasikinis programavimo kalbų skirstymas yra pagal abstrakciją ir paprastumą: | |||
* [[Aukšto lygio programavimo kalbos]] - smarkiai abstrahuojančios, dažniausiai paprastesnės išmokti, apsaugančios programuotojus nuo klaidų | |||
* [[Žemo lygio programavimo kalbos]] - paprastai greitesnės, neribojančios programuotojo, tačiau programos sunkiai perkeliamos, o programuotojams leidžiama pridaryti nesąmonių | |||
| 79 eilutė: | 98 eilutė: | ||
* [[Java]] | * [[Java]] | ||
* [[Java Script]] | * [[Java Script]] | ||
* [[Lua]] | |||
* [[Pascal]] | * [[Pascal]] | ||
** [[Objective Pascal]] | ** [[Objective Pascal]] | ||
| 84 eilutė: | 104 eilutė: | ||
* [[Perl]] | * [[Perl]] | ||
* [[PHP]] | * [[PHP]] | ||
* [[Rust]] | |||
* [[Kotlin]] | |||
| 106 eilutė: | 128 eilutė: | ||
* [[Focal]] | * [[Focal]] | ||
* [[Onoff]] | * [[Onoff]] | ||
* [[Golang]] | |||
Visus šitų nesusipratimų mylėtojus visada galima atpažinti iš to, kad jie baisiai pasipiktina, kai jų mylimą šūdkalbę kas nors pavadina šūdkalbe. Štai ir čia koks nors Ruby ar Python mylėtojas užsius dabar, nes pamatė savo mylimą kalbą visokių atliekų sąraše. O kokią nors Logo kalbą ir netgi Cobol pamatė sąraše normalių kalbų. | Visus šitų nesusipratimų mylėtojus visada galima atpažinti iš to, kad jie baisiai pasipiktina, kai jų mylimą šūdkalbę kas nors pavadina šūdkalbe. Štai ir čia koks nors Ruby ar Python mylėtojas užsius dabar, nes pamatė savo mylimą kalbą visokių atliekų sąraše. O kokią nors Logo kalbą ir netgi Cobol pamatė sąraše normalių kalbų. | ||
| 118 eilutė: | 141 eilutė: | ||
Dar kitais atvejais būna ir taip, kad kokie nors durniai prišika visokių kliedesių į kalbą, kur paskui jau interpretatorius visą tą šlamštą ima tiesiog filtruoti, o paskui tie durniai paskelbia, esą sukūrė kažką labai gudraus ir dvasingo. Tai čia išvis yra kažkokie kliedesiai. | Dar kitais atvejais būna ir taip, kad kokie nors durniai prišika visokių kliedesių į kalbą, kur paskui jau interpretatorius visą tą šlamštą ima tiesiog filtruoti, o paskui tie durniai paskelbia, esą sukūrė kažką labai gudraus ir dvasingo. Tai čia išvis yra kažkokie kliedesiai. | ||
Visgi retkarčiais pasitaiko ir išties įdomių programavimo koncepcijų, kurios vertos gilesnio panagrinėjimo, nes gerokai skiriasi nuo įprastinių. | Visgi retkarčiais pasitaiko ir išties įdomių programavimo koncepcijų, kurios vertos gilesnio panagrinėjimo, nes gerokai skiriasi nuo įprastinių, kaip pvz., tokia realiai nenormali [[APL]] kalba. | ||
Menamai ezoterinės programavimo kalbos yra vat štai tokios: | Menamai ezoterinės programavimo kalbos yra vat štai tokios: | ||
| 148 eilutė: | 171 eilutė: | ||
Kiti būna, kad neturi kaip apibrėžti skirtumo apie tai, kas ta programavimo kalba, nes nežino, kas ta [[Tiuringo mašina]]. Tai tokie būna, kad pradeda aiškinti, jog čia išvis nėra kokios nors kalbos. O dar kiti dėl tų pačių priežasčių ima aiškinti, kad ir koks nors [[JavaScript]] nėra programavimo kalba, ir [[PHP]] nėra programavimo kalba, ir netgi [[asembleris]] nėra programavimo kalba, o koks nors [[Pascal]] yra tiktai pusiau programavimo kalba. Tai čia mes patariame tokiems truputį [[EN|pasimokyti daugiau]]. | Kiti būna, kad neturi kaip apibrėžti skirtumo apie tai, kas ta programavimo kalba, nes nežino, kas ta [[Tiuringo mašina]]. Tai tokie būna, kad pradeda aiškinti, jog čia išvis nėra kokios nors kalbos. O dar kiti dėl tų pačių priežasčių ima aiškinti, kad ir koks nors [[JavaScript]] nėra programavimo kalba, ir [[PHP]] nėra programavimo kalba, ir netgi [[asembleris]] nėra programavimo kalba, o koks nors [[Pascal]] yra tiktai pusiau programavimo kalba. Tai čia mes patariame tokiems truputį [[EN|pasimokyti daugiau]]. | ||
== Dar žr. == | |||
* [[Protokolai]] - tai irgi tam tikros kalbos, dažniausiai daug primityvesnės už programavimo kalbas, tačiau kartu skirtos interakcijai tarp dviejų kompiuterių ar prorgamų | |||
pakeitimų