<bgdev />free

Вход Регистрация

OOP vs FP
0

0 1 2 3 4 5 6
#2450 (ツ) Courvoisier
Създадено на 03.08.2020, видяно: 1598 пъти.

Връщайки се на 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))))

Но определено ми е по- трудно да го чета. Докато светът е написан на математика, собственото ми съзнание го обработва много по- добре с лексика.

#2451 (ツ) Rabin
Последно редактирано на 03.08.2020 от Rabin, видяно: 1400 пъти.

Не съм казал, че ич не ползват техни технологии. Баш енжина на търсачката им НЕ е на .нет. Доколкото разбирам са пуснали сорса и ти дадох линк. Туй искам да кажа, не ми приписвай други неща.

About

A distributed approximate nearest neighborhood search (ANN) library which provides a high quality vector index build, search and distributed online serving toolkits for large scale vector search scenario.

#2452 (ツ) Courvoisier
Създадено на 03.08.2020, видяно: 1583 пъти.

Друг пример, мога да кажа, че крокодилът е по- зелен, отколкото е дълъг. Как ще го напиша с lambda? Лексиката предава едни по- висши абстрактни идеи, а светът функционира с други, по- математически абстрактни модели. Та вероятно стигаме до общото мнение - OOP e подходящи за проблеми от тип X, a FP за проблеми от тип Y.

#2454 (ツ) Stilgar
Създадено на 03.08.2020, видяно: 1580 пъти.
Rabin

Не съм казал, че ич не ползват техни технологии. Баш енжина на търсачката им НЕ е на .нет. Доколкото разбирам са пуснали сорса и ти дадох линк.

About

A distributed approximate nearest neighborhood search (ANN) library which provides a high quality vector index build, search and distributed online serving toolkits for large scale vector search scenario.

Туй искам да кажа, не ми приписвай други неща.

Цитирам какво точно каза

Що не си ползват таа платформа самите М$, за търсачката си?

Да не ползват означава, че има 0 реда код на .NET там. Демек говориш глупутки както обикновено. Аз съм сигурен, че най-много код в Bing има на .NET ти твърдиш, че не се използва. В Bing има повече код на .NET отколкото в Google Search на Java

#2455 (ツ) Rabin
Последно редактирано на 03.08.2020 от Rabin, видяно: 1400 пъти.

Хубо де не си ме разпрал правилно, айде мир. Ядрото не е на .НЕТ, на .НЕТ пишат шаренийката отгоре. Тъй бива ли? Айде има си нарочна тема вече за тоя спор.

#2457 (ツ) bvbfan
Създадено на 03.08.2020, видяно: 1567 пъти.
Stilgar

В Bing има повече код на .NET отколкото в Google Search на Java

Как твърдиш подобно нещо като не си видял кода? Оспамихте темата с тъпотиите на М$, дето не стават за нищо.

#2459 (ツ) Stilgar
Създадено на 03.08.2020, видяно: 1569 пъти.
Rabin

Хубо де не си ме разпрал правилно, айде мир. Ядрото не е на .НЕТ, на .НЕТ пишат шаренийката отгоре. Тъй бива ли? Айде има си нарочна тема вече за тоя спор.

Аааа не! Не е че не съм те разбрал правилно. Написал си глупост.

Отделно, че точно това и Google не го пишат на Java така че не виждам каква би била потенциалната връзка с обсъжданото тук.

#2460 (ツ) Courvoisier
Последно редактирано на 03.08.2020 от Courvoisier, видяно: 1567 пъти.
bvbfan

Как твърдиш подобно нещо като не си видял кода? Оспамихте темата с тъпотиите на М$, дето не стават за нищо.

От една страна, почти всеки десктоп и лаптоп са на уиндоус, но от друга почти всеки сървър е на линукс. Само жендърите са на macos, аз така разбрах. rofl

Вдигнах тема, Java vs .NET, там може да продължите/м

#2464 (ツ) realinformatik
Създадено на 03.08.2020, видяно: 1558 пъти.

Uncle Bob има една хипотеза, че няма да бъдат измисляни други съществени парадигми. ООП-то обезопасява и ограничава function pointer indirection, а ФП assignment оператора. И повече няма накъде да се забранява.

#2466 (ツ) Courvoisier
Създадено на 03.08.2020, видяно: 1555 пъти.

Мисля, че OOP e връх първоначално, защото е по- близко до лексиката и позволява на нематематици да станат програмисти, а после Java-та изби рибата с лесния си синтаксис и така нататък. Сега минаваш 2-3 курса и те вземат джуниър на 2к, преди това може да си бил и международен шофьор, няма значение. Ако можеш да си полезен на бизнеса, ще те наемат.

#2468 (ツ) Rabin
Създадено на 03.08.2020, видяно: 1400 пъти.
realinformatik

Uncle Bob има една хипотеза, че няма да бъдат измисляни други съществени парадигми.

Писал съм на чисто графичен език, дето пишеш текст веднъж на високосна. Чича ти Боб да ми еде протеиновата вафла!

#2476 (ツ) Stilgar
Създадено на 03.08.2020, видяно: 1541 пъти.

Чичо Боб е overrated. Освен това потресаващо скучен и за слушане и за четене.

#2484 (ツ) Евлампи
Създадено на 03.08.2020, видяно: 1535 пъти.
Courvoisier

Връщайки се на OOP, привидно е по- лесно, особено за неучили математика, защото имаме синтаксис, подобен на (основни заслуги на Java):

subject.verb(object);

Мислил съм кое прави някои по-лесно 'щракващи' към програмирането и не виждам само една доминираща нишка, по-скоро е някаква комбинация на дизордъри :)

Имаше разни добри по математика обаче някак просто си го неможеха програмосването, никой от тия дето в някаква степен го чувахме не бяхме двойкаджия по математика разбира се но за широк спектър от програмистки проблеми изглежда някакъв санитарен минимум математически заложби там за логика, индукция и формал рийзън са предостатъчни.

Някакъв вид минимални лингвистични заложби също изглежда имат роля, то реално е преводачество по същество, забелязал съм че тия дето така по-ни се удаваше се представяме нелошо и в чужденските езици обаче отново - някои от най-добрите в чужденските езици не похващаха нищо завалиите като тръгнат да програмират.

Друго нещо мисля че е в известна степен граничещо с извратеност въображение, тия дето не чуваха програмирането сякаш имаха склонност бързо да отхвърлят идея просто щото ОЧЕВИДНО изглежда откачена докато тия дето ни кефеше смело си фантазирахме, добре де, ясно че не може така ама все пак я да си пофантазираме и то вземе та се окаже че криво ляво по някакъв начин някакво поне куцо приближение могло.

Разбира се склонността към налудност за излизане от зоната на комфорт и учене на нови неща привидно без непосредствена далавера явно също има важна роля, дори човек да е ретрограден мракобес като Дон Реба и да отрича модните чекии все пак нескриваемо избива една ярка червена нишка за лесно усвояване на нови неща в движение дето човек не ги счита 'за негови' и нормален просто би отхвърлил това на прима виста.

Та не мисля че оопето се е наложило толкова заради синтаксиса, впечатленията ми са че който е склонен да щракне за програмирането синтаксиса му е абсолютно най-малкия проблем, а който не щракаше и на български да го накараш да ти пише и ти да му превеждаш пак някак не можеше да си изфантазира и декомпозира задачата на някакво поне макар и куцо ниво, просто запичат въпреки че ако им енумерираш възможностите би трябвало да го могат, нито са тъпи нито нищо, даже може да са по-яки с математиката или езиците, просто някак не им щраква и това е

#2490 (ツ) Courvoisier
Последно редактирано на 03.08.2020 от Courvoisier, видяно: 1529 пъти.

Не да щракнеш толкова. Да напишеш какъвто и да е код не е толкова трудно и да си перфектен програмист не ти гарантира финансови успехи. Мисля, че да пренесеш абстракцията от главата си в код е по- лесно с OOP, особено ако си научил добре английски или немски. По- low абстракция е с математика.

А да почнеш да програмираш... аз почнах, защото исках да направя сайт на един бар, в който работех. HTML + CSS, после PHP. После хванах PHPBB и Wordpress и направих на няколко мутробарока сайтове за някакви пари. Бях "онова, сервитьорчето хакер", който им правеше сайтове и им оправяше интернета, което тогава се оказа полезно за съществуването ми. Взе, че ми хареса, исках да отида в чужбина и исках да уча програмиране и отидох в университет в чужбина, което ми даде и по- лесен residence permit. Съчетах 2 мои желания. Определям като много съществена волята, за да успееш. Много се отказват по пътя към нещо, защото нямат достатъчна воля. Това съм го виждал с доста колеги в университета, че блокират и само един от тях завърши. Виждам го и в някои джуниъри, блокират. Не знаят какъв код да напишат, защото го виждат като код. А то е описание на абстракция с друг език, който прилича на английски, но не точно.

#2502 (ツ) Евлампи
Създадено на 03.08.2020, видяно: 1519 пъти.
Courvoisier

Мисля, че да пренесеш абстракцията от главата си в код е по- лесно с OOP

Аз засега съм по-скоро склонен да вярвам че 'щракването' за каубойското процедурно програмиране (тоест базовата структурно функционална декомпозиция и последователен команда->изпълнение модел там с ифовете и циклите (което е отражение на идеята да имаш глупаво но покорно и работливо ропче в лицето на компютъра) е летвата под която дори добри в математиката или чуждите езици не похващат а над това реално е все тая, въпреки че човек неизбежно има предпочитания, дали щото така са го облъчили като е бил заек или после развити няма значение което пък е въпрос и на прагматизъм, ако постоянно си поставяме под въпрос 'абе, верно ли избрах правилната религия' ще откачим, confirmation bias изглежда е важен защитен механизъм щото иначе човек мое да изпуши за норматив :)

#2511 (ツ) stewie
Създадено на 03.08.2020, видяно: 1414 пъти.
Stilgar

Чичо Боб е overrated. Освен това потресаващо скучен и за слушане и за четене.

Да определно Чичо Боб можа само да диша пръднята от подкастите на твоята дружина :)

#2512 (ツ) stewie
Създадено на 03.08.2020, видяно: 1414 пъти.

Са да питам, понеже не ми се четат постове : Колко от вас пишат активно на функционален език за програмиране, че въобще я има тази тема ?

#2515 (ツ) Rabin
Създадено на 03.08.2020, видяно: 1400 пъти.
stewie

Са да питам, понеже не ми се четат постове : Колко от вас пишат активно на функционален език за програмиране, че въобще я има тази тема ?

Язе. Пиша ембед.

#2518 (ツ) stewie
Създадено на 03.08.2020, видяно: 1414 пъти.
Rabin
stewie

Са да питам, понеже не ми се четат постове : Колко от вас пишат активно на функционален език за програмиране, че въобще я има тази тема ?

Язе. Пиша ембед.

Как е името на този функционален език ?

#2522 (ツ) Rabin
Създадено на 03.08.2020, видяно: 1400 пъти.
stewie
Rabin
stewie

Са да питам, понеже не ми се четат постове : Колко от вас пишат активно на функционален език за програмиране, че въобще я има тази тема ?

Язе. Пиша ембед.

Как е името на този функционален език ?

С

0 1 2 3 4 5 6

OOP vs FP
0

AsmBB v3.0 (check-in: a316dab8b98d07d9); SQLite v3.42.0 (check-in: 831d0fb2836b71c9);
©2016..2023 John Found; Licensed under EUPL. Powered by Assembly language Created with Fresh IDE