Programavimas

Pradėjo likehsvilius, birželio 29, 2012, 22:46:40

« ankstesnis - sekantis »
Žemyn

likehsvilius

Citata iš: Phoenix  birželio 30, 2012, 00:10:12
Patys nejaučiat kad į offtopą nukrypot su šitais pašnekesiais? Tema apie žaidimus, o jie apie programavimą varo.. Tam yra PM žinutės :)

O tu nematei koks cia temu skyrius? ??? Offtopic o si tema yra jos poteme...

Deivis

Sveiki,ieskau zmoniu galinciu suprogramuoti zaidima.862168950

Slender

Citata iš: RoxiO  birželio 29, 2012, 23:01:43

C++ žiauriai lanksti kalba. Visur gali panaudot. Delphi - atgyvena, neverta imt. 8-bit binary gali padaryti absoliučiai betką. Štai kaip atrodo binuaru parašytas žodis "KOMPIUTERIS" -> 0100101101001111010011010101000001001001010101010101010001000101010100100100100101010011


Tai, kad kaip tik C++ nėra lanksti. Labai mažai kas naudoją ją šiais laikais rimtiems projektams. Renkasi Python.

Bla

Citata iš: Slender  birželio 28, 2015, 00:09:27
<...>

Tai, kad kaip tik C++ nėra lanksti. Labai mažai kas naudoją ją šiais laikais rimtiems projektams. Renkasi Python.


Mhm, Python. Tuo viskas ir pasakyta. :) Python sintaksiškai kaip ir graži kalba, nors čia yra labai didelis skonio reikalas, nes riestinių skliaustų buvimas kai kam yra daug gražiau ir logiškiau). Bet tikrai sutinku, jog ant popieriaus rašyti pseudokodą Python'u daug gražiau ir mieliau nei kokiu C#. Tačiau apskritai Python'e jokios rimtos OOP realizacijos nėra (multiple inheritance dažniau yra blogis nei gėris). Kaip ir C++, beje, kur turi rūpintis dar ir atminties apvalymu. O šiais laikais konkrečiai rinkoje ieškoma C# programuotojų, nes su C# projektai kepami daug greičiau nei kokiu Python ar C++.

O dar, pradedant kalbėti apie projektavimo šablonus, esminius principus, tokius kaip TDD, SOLID, tai C# visomis prasmėmis lenkia daugumą šiuolaikinių programavimo kalbų. Kita vertus, pats C# nieko ypatingo savyje neturi, išskyrus gan lanksčią sintaksę ir gerą plečiamumą. O toliau jau eina įvairūs Microsoft produktai, paketai, kuriuos gali gauti per NuGet. Ir būtent šia prasme C# dauguma programuotojų šiais laikais ir naudoja.

Kita vertus, nenurašykime C++. C++ yra ganėtinai žemo abstrakcijos lygio kalba, kuri turi pakankamai nebogų atminties, netgi paties procesoriaus valdymo primityvų, kas leidžia turėti didelę kontrolę ir atmintį valdyti pagal poreikį. Tad C++ naudojama tokiuose projektuose, kur reikia ar atmintį taupyti, ar kaip nors ypatingai ją valdyti (netgi sudėtinguose žaidimuose C++ geriau naudoti). O štai C# naudotum bendros paskirties projektuose, kur nereikia ypač sudėtingų algoritmų realizacijos, nes atminties valdymas tau nerūpi ir tuo pasirūpina Garbage Collector.

Bet taip pat nenurašykime ir Python. Python irgi nebloga kalba, turinti lanksčią sintaksę ir neblogą pritaikymą. Tačiau teigti, kad va rimti projektai kuriami tik su Python, yra kvailoka. Rimti projektai gali būti kuriami skirtingomis programavimo kalbomis. O pats programavimo kalbos išmanymas dar nieko nereiškia. Kur kas svarbiau yra supratimas, kaip sistemoje užtikrinti aukštesnį abstrakcijos lygmenį ir užtikrinti, kad tas aukštesnis lygmuo nieko nesugriauna.

Toliau pastebėjimas yra toks. Paprastas programavimas yra lengvas, bet pažangus yra sudėtingas ir to reikia mokytis metų metus. Netgi tie, kas puikiai išmano daug programavimo kalbų, dar nebūtinai išmano ir paties programavimo principus. O norint gerai išmokti tuos principus, reikia daug studijuoti ne tik programavimą, bet ir logikos, matematikos. O šiuolaikinėje IT rinkoje, tiksliai kalbant, ir pačių programuotojų, gerai išmanančių logiką ir matematiką programuotojų yra labai mažai.

Tad galime sugrįžti ir netgi prie to paties Pascal, kalbos, kuri buvo sukurta būtent tuo tikslu, kad padėtų studijuojantiems geriau išmokti programavimo. Na Pascal yra gan sukta kalba studijuoti programavimą ir galbūt tą reikėtų keisti, bet naudoti C#, C++ ar Python kaip mokymosi programuoti priemonę būtų labai kvaila, nes iš šių kalbų nebūtų aišku, kas gi tiksliai yra objektinis programavimas, procedūrinis, funkcinis ir kitos paradigmos. :)

Aukštyn