Връщайки се на OOP, привидно е по- лесно, особено за неучили математика, защото имаме синтаксис, подобен на (основни заслуги на Java):
subject.verb(object);
Което е много близко до немските езици, какъвто е и английския в сърцевината си (макар, че има много френски думи в себе си).
// The bear is eating the pear
// Der Bär frisst die Birne | Der Bär isst die Birne
// Мечката яде круша
bear.eats(pear);
За нас не, но за англо и немско говорящите ООП е по- близко до конструкцията на езика им, което им дава предимството да пишат програми мислейки ги на собствения си език.
В контраст, фунцкионалното е математика, което се учи след изучаването на основния (майчин език) и самото математическо мислене иска дисциплина, докато се придобие.
// корен квадратен
n -> n * n
T.e., OOP привидно следва да е по- близка абстракция до лексиката и логиката изградена върху лексиката, отколкото до математиката и по- лесна за възприемане от масите. Когато абстракцията порасне, вече влизаме в едни много гадни филми, но причината за това може да е лошото мислене и планиране, а не точно, че OOP не става.
Другият филм е с immutable state. Но можем да имаме и OOP с immutable state.
От тук следва въпроса, как може човек да дефинира 2? С човешки език може да се обърка. С математика може да бъде по- успешен.
2 e по- голямо от едно, то е сборът на едно плюс едно, и т.н.
С ламбда е по- лесно
0 = f => x => x
1 = f => x => f(x)
2 = f => x => f(f(x))
3 = f => x => f(f(f(x)))
4 = f => x => f(f(f(f(f(x))))
Но определено ми е по- трудно да го чета. Докато светът е написан на математика, собственото ми съзнание го обработва много по- добре с лексика.
Rabin
Последно редактирано на 03.08.2020 от Rabin, видяно: 1702 пъти. #2451
Не съм казал, че ич не ползват техни технологии.
Баш енжина на търсачката им НЕ е на .нет. Доколкото разбирам са пуснали сорса и ти дадох линк.
Туй искам да кажа, не ми приписвай други неща.
Друг пример, мога да кажа, че крокодилът е по- зелен, отколкото е дълъг. Как ще го напиша с lambda? Лексиката предава едни по- висши абстрактни идеи, а светът функционира с други, по- математически абстрактни модели. Та вероятно стигаме до общото мнение - OOP e подходящи за проблеми от тип X, a FP за проблеми от тип Y.
Stilgar
Създадено на 03.08.2020, видяно: 1882 пъти. #2454
Цитирам какво точно каза
Що не си ползват таа платформа самите М$, за търсачката си?
Да не ползват означава, че има 0 реда код на .NET там. Демек говориш глупутки както обикновено. Аз съм сигурен, че най-много код в Bing има на .NET ти твърдиш, че не се използва. В Bing има повече код на .NET отколкото в Google Search на Java
Rabin
Последно редактирано на 03.08.2020 от Rabin, видяно: 1702 пъти. #2455
Хубо де не си ме разпрал правилно, айде мир.
Ядрото не е на .НЕТ, на .НЕТ пишат шаренийката отгоре. Тъй бива ли?
Айде има си нарочна тема вече за тоя спор.
bvbfan
Създадено на 03.08.2020, видяно: 1869 пъти. #2457
В Bing има повече код на .NET отколкото в Google Search на Java
Как твърдиш подобно нещо като не си видял кода? Оспамихте темата с тъпотиите на М$, дето не стават за нищо.
Stilgar
Създадено на 03.08.2020, видяно: 1871 пъти. #2459
Хубо де не си ме разпрал правилно, айде мир.
Ядрото не е на .НЕТ, на .НЕТ пишат шаренийката отгоре. Тъй бива ли?
Айде има си нарочна тема вече за тоя спор.
Аааа не! Не е че не съм те разбрал правилно. Написал си глупост.
Отделно, че точно това и Google не го пишат на Java така че не виждам каква би била потенциалната връзка с обсъжданото тук.
Uncle Bob има една хипотеза, че няма да бъдат измисляни други съществени парадигми. ООП-то обезопасява и ограничава function pointer indirection, а ФП assignment оператора. И повече няма накъде да се забранява.
Мисля, че OOP e връх първоначално, защото е по- близко до лексиката и позволява на нематематици да станат програмисти, а после Java-та изби рибата с лесния си синтаксис и така нататък. Сега минаваш 2-3 курса и те вземат джуниър на 2к, преди това може да си бил и международен шофьор, няма значение. Ако можеш да си полезен на бизнеса, ще те наемат.
Rabin
Създадено на 03.08.2020, видяно: 1702 пъти. #2468
Uncle Bob има една хипотеза, че няма да бъдат измисляни други съществени парадигми.
Писал съм на чисто графичен език, дето пишеш текст веднъж на високосна.
Чича ти Боб да ми еде протеиновата вафла!
Stilgar
Създадено на 03.08.2020, видяно: 1843 пъти. #2476
Чичо Боб е overrated. Освен това потресаващо скучен и за слушане и за четене.
Евлампи
Създадено на 03.08.2020, видяно: 1837 пъти. #2484
Връщайки се на OOP, привидно е по- лесно, особено за неучили математика, защото имаме синтаксис, подобен на (основни заслуги на Java):
subject.verb(object);
Мислил съм кое прави някои по-лесно 'щракващи' към програмирането и не виждам само една доминираща нишка, по-скоро е някаква комбинация на дизордъри :)
Имаше разни добри по математика обаче някак просто си го неможеха програмосването, никой от тия дето в някаква степен го чувахме не бяхме двойкаджия по математика разбира се но за широк спектър от програмистки проблеми изглежда някакъв санитарен минимум математически заложби там за логика, индукция и формал рийзън са предостатъчни.
Някакъв вид минимални лингвистични заложби също изглежда имат роля, то реално е преводачество по същество, забелязал съм че тия дето така по-ни се удаваше се представяме нелошо и в чужденските езици обаче отново - някои от най-добрите в чужденските езици не похващаха нищо завалиите като тръгнат да програмират.
Друго нещо мисля че е в известна степен граничещо с извратеност въображение, тия дето не чуваха програмирането сякаш имаха склонност бързо да отхвърлят идея просто щото ОЧЕВИДНО изглежда откачена докато тия дето ни кефеше смело си фантазирахме, добре де, ясно че не може така ама все пак я да си пофантазираме и то вземе та се окаже че криво ляво по някакъв начин някакво поне куцо приближение могло.
Разбира се склонността към налудност за излизане от зоната на комфорт и учене на нови неща привидно без непосредствена далавера явно също има важна роля, дори човек да е ретрограден мракобес като Дон Реба и да отрича модните чекии все пак нескриваемо избива една ярка червена нишка за лесно усвояване на нови неща в движение дето човек не ги счита 'за негови' и нормален просто би отхвърлил това на прима виста.
Та не мисля че оопето се е наложило толкова заради синтаксиса, впечатленията ми са че който е склонен да щракне за програмирането синтаксиса му е абсолютно най-малкия проблем, а който не щракаше и на български да го накараш да ти пише и ти да му превеждаш пак някак не можеше да си изфантазира и декомпозира задачата на някакво поне макар и куцо ниво, просто запичат въпреки че ако им енумерираш възможностите би трябвало да го могат, нито са тъпи нито нищо, даже може да са по-яки с математиката или езиците, просто някак не им щраква и това е
Не да щракнеш толкова. Да напишеш какъвто и да е код не е толкова трудно и да си перфектен програмист не ти гарантира финансови успехи. Мисля, че да пренесеш абстракцията от главата си в код е по- лесно с OOP, особено ако си научил добре английски или немски. По- low абстракция е с математика.
А да почнеш да програмираш... аз почнах, защото исках да направя сайт на един бар, в който работех. HTML + CSS, после PHP. После хванах PHPBB и Wordpress и направих на няколко мутробарока сайтове за някакви пари. Бях "онова, сервитьорчето хакер", който им правеше сайтове и им оправяше интернета, което тогава се оказа полезно за съществуването ми. Взе, че ми хареса, исках да отида в чужбина и исках да уча програмиране и отидох в университет в чужбина, което ми даде и по- лесен residence permit. Съчетах 2 мои желания. Определям като много съществена волята, за да успееш. Много се отказват по пътя към нещо, защото нямат достатъчна воля. Това съм го виждал с доста колеги в университета, че блокират и само един от тях завърши. Виждам го и в някои джуниъри, блокират. Не знаят какъв код да напишат, защото го виждат като код. А то е описание на абстракция с друг език, който прилича на английски, но не точно.
Евлампи
Създадено на 03.08.2020, видяно: 1821 пъти. #2502
Мисля, че да пренесеш абстракцията от главата си в код е по- лесно с OOP
Аз засега съм по-скоро склонен да вярвам че 'щракването' за каубойското процедурно програмиране (тоест базовата структурно функционална декомпозиция и последователен команда->изпълнение модел там с ифовете и циклите (което е отражение на идеята да имаш глупаво но покорно и работливо ропче в лицето на компютъра) е летвата под която дори добри в математиката или чуждите езици не похващат а над това реално е все тая, въпреки че човек неизбежно има предпочитания, дали щото така са го облъчили като е бил заек или после развити няма значение което пък е въпрос и на прагматизъм, ако постоянно си поставяме под въпрос 'абе, верно ли избрах правилната религия' ще откачим, confirmation bias изглежда е важен защитен механизъм щото иначе човек мое да изпуши за норматив :)
stewie
Създадено на 03.08.2020, видяно: 1716 пъти. #2511
Чичо Боб е overrated. Освен това потресаващо скучен и за слушане и за четене.
Да определно Чичо Боб можа само да диша пръднята от подкастите на твоята дружина :)
stewie
Създадено на 03.08.2020, видяно: 1716 пъти. #2512
Са да питам, понеже не ми се четат постове : Колко от вас пишат активно на функционален език за програмиране, че въобще я има тази тема ?
Rabin
Създадено на 03.08.2020, видяно: 1702 пъти. #2515
Са да питам, понеже не ми се четат постове : Колко от вас пишат активно на функционален език за програмиране, че въобще я има тази тема ?
Язе. Пиша ембед.
stewie
Създадено на 03.08.2020, видяно: 1716 пъти. #2518
Са да питам, понеже не ми се четат постове : Колко от вас пишат активно на функционален език за програмиране, че въобще я има тази тема ?
Язе. Пиша ембед.
Как е името на този функционален език ?
Rabin
Създадено на 03.08.2020, видяно: 1702 пъти. #2522
Са да питам, понеже не ми се четат постове : Колко от вас пишат активно на функционален език за програмиране, че въобще я има тази тема ?