1999 m.: Atsinaujina truputį paatostogavę Vartiklio naujienos! Netrukus bus pasiūlyta platinaujų paslaugų aibė - nepražiopsokite, stebėkite http://www.spauda.lt ir http://www.lithuanian.net -------------------------------------------------------------- VELTUI PRIIMU REKLAMINIUS SKELBIMUS! Teikite vartiklis@elnet.lt -------------------------------------------------------------- O didžiausias pasikeitimas per šiuo pusantro mėnesio - VARTIKLIO BALSAVIMŲ puslapis, kas savaitę pasiūlantis naują temą. Šios savaitės tema - PORNOGRAFIJA yra adresu: http://www.spauda.lt/logs/vote/sex.htm Ankstesnės temos buvo Internetas, vasaros atostogos,
plastinės operacijos ir reklama. Rezultatus ir atsiliepimus paskaitykite: PRISIMINKIME JONINES!!! X failas Nr 99
Pastaba: Tekstas buvo pateiktas "Respublikai", bet liko neatspausdintas... --------------- PARAMOS FONDAS SPINDULYS" ------------------ Onkologiniai ligoniai ir gydymo komplikacijos Tuskulėnų 28-16, 2051 Vilnius, tel. 22/758018, faks. 22/475415, E.p.: tagri@takas.lt Lietuvos TB Sostinės skyrius, 45, B. kodas 60111, a/s 644001604, biudž. sąsk. 831001608 Bus dėkingas asmenims bei firmoms, galinčioms paaukoti jų naudotą darbui tinkamą biuro orgtechniką ir baldus, sukurti ir padovanoti interneto puslapį ir bet kokią kitą pagalbą. ---------------------------------------------------------------- Vartiklio Naujienos yra adresu:
http://www.spauda.lt/box/ Visos Vartiklio žinios kaip ant padėkliuko: http://www.spauda.lt/logs/seeknews.htm
Informatika Redaktoriaus (j.skendelis[eta]elnet.lt) žodis Parinkime kalbą Lyginant su gimtąja kalba Ypatingą svarbą turi tai, kaip mes mokomės. Geras pavyzdys yra gimtosios kalbos mokymasis. Jis gerokai skiriasi nuo užsienio kalbų mokymosi. Pradžioje nesimokome jokių gramatikos taisyklių (net nenutuokiame, kad tokios yra). Tiesiog intuityviai mokomės kalbėti (kažkokių nepaprastai kūrybingu ir neįtikėtinu būdu, kurį Humboldt vadina energetine faze). Tai panašu į žaidimą, kurį pradedi žaisti nežinodamas taisyklių, kurias sužinai tik žaidimo eigoje. Taip kompiuterinius žaidimus pradeda žaisti vaikai - ir jie į juos "įsikerta" nepaprastai greitai. Užsienio (ar programavimo) kalbą išmokstame kitaip - pradedami kalbos koncepcija ir gramatika. Niedada neišmokstama programavimo kalbos tiesiog ėmus ją naudoti (kaip neišmokstama ir jos nenaudojant). Istorinis patyrimas Daug kas teigia, kad naudinga kuo anksčiau pradėti mokyti objektinių programavimo kalbų. Tačiau šį principą dar per anksti absoliutizuoti - modulinis programavimo stilius turi daug tvirtesnius pagrindus. Žinoma nemažai atvejų, kai objektinis programavimo stilius mažai padeda valdant sudėtingus projektus. Tačiau dar svarbiau - universitetai turi pateikti ne vienintelė absoliučią tiesą. Jie turi išmokyti studentus apmąstyti įvairias galimybes. Į pagalbą ateina ir istorija. Juk egzistuoja (ir tebesitęsia) programavimo istorija. Programavimo vystymosi krypties pasirinkimas nebuvo atsitiktinis. Jis prasidėjo konstantų, kintamųjų, algoritmų ir funkcijų (bet ne objektų) sąvokomis. Nemažai vandens nubėgo, kol mokslininkai perkando šias pagrindines koncepcijas, kad galėtų pakilti iki klasių ir objektų abstrakcijų. Pirmoji objektinio prograamvimo kalba buvo "Simula", pasirodžiusi 1967-aisiais (po 20 metų nuo programavimų kalbos eros pradžios). Tai kodėl studentus turime pradėti mokyti "iš kito galo" ne vienam jų ilgą laiką neįsisavinant programavimo pagrindų. Kad geriau įsivaizduotume padėtų, pasižiūrėkime į pora analogijų. Tarkime, kad pradžios mokykloje matematikos mokymą pradėtume aibių teorija. Tai būtų įdomus pabandymas, tačiau sunkus išbandymas mokiniams. Kitas pavyzdys: pradėti mokyti p programavimą lygiagrečiųjų skaičiavimų šviesoje, kurioje nuoseklus programos vyksmas yra tik vienas atskiras atvejis. Tad tokia būtų vizija:
Ne - Javai? Kokios programavimo kalbos pagrindu galima realizuoti šią viziją? Fontran, C/C++, Pascal, Modula. Oberon, Smalltalk, Delphi ar Visual Basic? O kaip su jaunėle Java? Java yra gryna ir išbaigta kalba (ir tarp išvardintųjų - viena geriausių). Ji daug švaresnė ir galingesnė už dabar Lietuvoje įsigalėjusią Pascal kalbą. Tačiau Java naudojimas mokymui (pirmąja kalba) sukelia nemažai abejonių, nes nemažai svarbių programavimo sąvokų perteikiamos tik netiesiogiai (modulis tėra atskira klasių atmaina; procedūra - atskiras metodo atvejis; konstanta - atskiras kintamojo atvejis). Tai gražu matematinio tyrumo atžvilgiu, tačiau sunkiai įsisavinama. Įsivaizduokite, kad aš vietoje "nunešk Petrui knygą", pasakyčiau: "pasiųsk signalą knygos klasės įsikūnijimui, kad įvykdytų jos perkėlimo metodą, kuriam nurodomas Petro asmens objektas iš žmonių klasės, kuri yra išvestinė iš gyvų būtybių klasės". Java nekuriame programos iš modulių. Ji yra klasių rinkinys pradedant programa susidedančia iš vienos
klasės, kuriai reikia priskirti "static" atributą (o kodėl, paaiškinama vėliau). Ir kuo toliau, tuo blogiau.
Aprašai ir realizacijos atskiriamos naudojant abstrakčias klases ir jų modifikatorius. Tačiau šiedu
neatskiriami kaip atskiri sintaksiniai vienetai ir tos sąvokos nėra išgryninamos. Java kalboje tiesiogiai
neišskiriami ir parametrų perdavimo būdai. Pvz., sunku realizuoti net ir dviejų skaičių sukeitimo procedūrą
(kaip šiame Pascal pavyzdyje): procedure Sukeisk (var k1, k2: integer) var x: integer; begin x := k1; k1 := k2; k2 := x; end; Java kalboje tektų sukurti objektą, susidedantį iš dviejų skaičių, kurio "Sukeisk" metodas grąžina naują šio objekto reikšmę. Ar tokiam mažmožiui reikalingas naujas objektas? Ir pabaigoje palyginimui du konstantos aprašai. Pirmasis - Pascal kalba: Kaip jas aiškintumėte pradedančiajam? ![]() Smegenys programuojant skiriasi nuo kalbant kalbomis (2021 m. sausis) Ar tai nustebino? Apie programavimą yra daugybė klaidingų nuomonių. Pvz., kad jei moki kelias programavimo kalbas, tada, tarkim, ispanų kalbą nebus sunku išmokti. Ir jei sekasi su kalbomis bandyk programuoti. Tačiau programavimas visai nepanašus į kalbų naudojimą. Ir tai parodo naujausias MIT ir Tufts un-to tyrimas. Buvo atlikti du eksperimentai: pirmas susijęs su Python, o kitas - Scratch, grafine kalba. Nors yra glaudus panašumas tarp tekstinės ir grafinės programavimų kalbos, turėtų būti lingvistinis skirtumas. Tiek Python, tiek Scratch atveju patirtis labai panaši. Skirtumas atrodo daugiausia proceso pabaigoje. Tyrimui panaudotas magnetinio rezonanso metodas. Įdomu, kad smegenų sričių aktyvacija skyrėsi abiem smegenų pusėms, kai kalbų atveju ryškiai dominavo kairysis pusrutulis. Viena išvada iš šių tyrimų yra tas, kad programavimo mokymasis neturėtų būti pradedamas vėlai, mat kalbos lengviausiai išmokstamos ankstyvame amžiuje, kai smegenys yra plastiškiausi. Jūsų žodžiai
Dirbtinis protas? | |
![]() |
![]() |