Jump to content

Програмирање - дигресије

Оцени ову тему


Препоручена порука

On 19.5.2017. at 22:45, Tumaralo. рече

13241124_1309995459028401_58994972510968

Hamza Bendelladj je čovek koji je hakovao 217 banaka i uzeo im 4 milijarde dolara. Sav "ukradeni" novac je poklonio narodu Afrike i Palestine, a kada je bio vešan, umro je sa osmehom na licu.

Тотални фејк. И количина новца и смртна казна. 
https://www.hackread.com/hamza-bendelladj-spyeye-trojan-death/

 

"Свуда пођи, себи дођи." - Владимир М. Миливојевић  deka.gif

Link to comment
Подели на овим сајтовима

Кад смо код рекурзије: А како другачије покупити све коментаре на неки пост на Фејсу кроз Фејзбук АПИ без рекурзије?

Рекурзија је "кева" кад мора, а ако не мора, шта ће ти.

"Свуда пођи, себи дођи." - Владимир М. Миливојевић  deka.gif

Link to comment
Подели на овим сајтовима

Свака рекурзивна функција може да се напише итеративно. Направиш листу/стек, елементе првог нивоа у њу, онда овако нешто:

while (stack.Count > 0)
{
// Узмеш један елемент са стека
// Урадиш са њим шта треба
// Убациш на стек све његове "чилдрен"
}

ΜΟΛΩΝ ΛΑΒΕ

Link to comment
Подели на овим сајтовима

пре 5 часа, Grizzly Adams рече

Свака рекурзивна функција може да се напише итеративно. Направиш листу/стек, елементе првог нивоа у њу, онда овако нешто:

while (stack.Count > 0)
{
// Узмеш један елемент са стека
// Урадиш са њим шта треба
// Убациш на стек све његове "чилдрен"
}

Ово је наравно потпуно тачно и тако се и ради.

Али да ли примећујеш нешто чудно кад ставиш овај одговор поред одговора да рекурзију не треба користити и да је ”непожељна у капитализму”? 

Link to comment
Подели на овим сајтовима

пре 5 часа, Juanito рече

Ово је наравно потпуно тачно и тако се и ради.

Али да ли примећујеш нешто чудно кад ставиш овај одговор поред одговора да рекурзију не треба користити и да је ”непожељна у капитализму”? 

Не... Шо?

ΜΟΛΩΝ ΛΑΒΕ

Link to comment
Подели на овим сајтовима

On 2017-5-20 at 18:05, Tumaralo. рече

Koliko se najnoviji php7 razlikuje od php-a koji je bio aktuelan 2011te godine?

Zbog tutorijala koji pratim... da li da se prebacim na nešto novije ili su u pitanju detalji?

php7-infographic.png

Чисто да стекнеш утисак о томе ;)

О детаљима више http://php.net/

Свакако је савет да испратиш новије туторијале, мислим да имаш PHP7 књигу у оној архиви коју сам ти послао

Link to comment
Подели на овим сајтовима

пре 5 часа, Grizzly Adams рече

Не... Шо?

Рекурзија ти је имплицитни стек. Ти у ствари реимплементираш рекурзију. А рекурзија ти је вишег нивоа него стек. И људи опет кажу да не ваља рекурзија, а ваља стек. То је исто као када би рекао да не ваљају објекти и полиморфизам, него да треба користити старе добре if наредбе да разликујеш тип објекта. А performance overhead имаш и у случају рекурзије и и случају "виртуелних" метода.

Да будем јасан,  не наговрам ову децу да користе рекурзију. Нек слушају менаџере и оне који их плаћају. Само ми опасно иде на нерве та наопака логика у нашој индустрији да се бежи од свега што мирише на математику. И док архитектама и грађевинцима (који не беже од математике и физике) зграде и мостови ретко падају, исто се не би могло рећи за софтвер...

Али добро, ко сам ја да млатим нешто, "капитализам" је рекао своје. 

Link to comment
Подели на овим сајтовима

пре 1 минут, Juanito рече

Само ми опасно иде на нерве та наопака логика у нашој индустрији да се бежи од свега што мирише на математику. И док архитектама и грађевинцима (који не беже од математике и физике) зграде и мостови ретко падају, исто се не би могло рећи за софтвер...

Али добро, ко сам ја да млатим нешто, "капитализам" је рекао своје. 

А, разумем сад.

Јесте да је ово "реплика" онога што рекурзија ради, али је овде експлицитно оно што је у рекурзивним фукнијама "невидљиво". Тако да ће програмер морати да види и води рачуна, нпр. о величини стека и алокацији меморије. Што је наравно изузетно битна ствар.

Многе од тих парадигми - рекурзија, LINQ и сл. су веома моћне ако веома добро разумеш како "раде". Иначе може да се направи циркус са њима. Није да ми капиталисти те ствари одбацујемо зато што не волимо математику, него зато што се у пракси показало да траже искуство и опрез. Ако одеш на неколико интервјуа за озбиљније фирме, видећеш да често траже да направиш итеративно решење за рекурзиван проблем. Ако пошаљеш рекурзивно решење они ти кажу "супер, ај сад напиши то исто без рекурзије".

ΜΟΛΩΝ ΛΑΒΕ

Link to comment
Подели на овим сајтовима

пре 12 минута, Grizzly Adams рече

Ако одеш на неколико интервјуа за озбиљније фирме, видећеш да често траже да направиш итеративно решење за рекурзиван проблем. Ако пошаљеш рекурзивно решење они ти кажу "супер, ај сад напиши то исто без рекурзије".

Свакако да комплетан програмер треба и мора да зна и једно и друго. 

Али да сад питам тог што интервјуише да ми каже зашто је и у којим условима једно боље од другог, вероватно многи не би знали да објасне. Понављају научене мантре. А да не говорим о томе да многи не знају како све то варира од језика до језика и од компајлера до компајлера (често и за исти језик). Оно што важи за један језик, може бити потпуно супротно у другом. 

Link to comment
Подели на овим сајтовима

Па може, само мора да разумеш и менаџере. Њихов посао је да обезбеде да се све заврши без жртава, а немају довољно времена ни контролу над свим детаљима. Посебно шта неко зна и колико зна. Једноставно мора да држиш ствари под контролом колико је могуће... Јер ако за*ереш онда људи остају без посла итд.

Био сам у ситуацији да цео тим буде отпуштен, то је стварно непријатно искуство. Мада није мојом кривицом, убацили су ме пред крај да "спасим шта се спасити може"... Клијент је једино мене од целог тима после задржао, све су истерали и заменили са неким Украјинцима. А све зато што тај пре мене није водио рачуна о тим стварима.

У пракси мора да имаш неке "појасеве" ко у карате, па ко положи за плави појас може да користи ножне ударце, а тек на браон може из скока да шутира. Дао си ми идеју... :)

ΜΟΛΩΝ ΛΑΒΕ

Link to comment
Подели на овим сајтовима

пре 3 часа, Grizzly Adams рече

Многе од тих парадигми - рекурзија, LINQ и сл. су веома моћне ако веома добро разумеш како "раде". Иначе може да се направи циркус са њима.

Кад радиш са релативно малим секвенцама (кориснички интерфејс, неколико хиљада артикала и слично), какав тачно циркус можеш да направиш са рекурзијом, а да не можеш са петљом?

А нарочито, какав посебан циркус можеш да направиш са LINQ-ом у односу на алтернативе?

Зар ситуације у којима ће програмер

пре 3 часа, Grizzly Adams рече

морати да види и води рачуна, нпр. о величини стека и алокацији меморије

нису далеко плодније тле за разне циркусе од приступа на високом нивоу апстракције као што је  LINQ?

Зар мутација низа није далеко, далеко плодније тле за циркусе од враћања нове копије, као што се то чини код LINQ-a?

Link to comment
Подели на овим сајтовима

пре 36 минута, Grizzly Adams рече

Надам се да ћеш имати прилике да водиш тим програмера који треба да заврши нешто у року... ;)

Па то те и питам, волео бих да видим конкретно како се пробија рок ако неко напише bla.Select уместо foreach truć in bla. Стварно не контам. Тај тим кога си споменуо је отпуштен због LINQ-a?

Link to comment
Подели на овим сајтовима

Нисам сигуран колико си свестан да је одбацивање напретка под изговором "завршавања посла" штетно глобално. Ако је заиста једино могуће "завршити пос'о" са старим, а не постоји ниједан фундаментални разлог за то, то само значи да имамо системски проблем у образовању програмера, а не да је ново лоше. Какав тужни изговор људи који би требало да предводе напредак цивилизације  

А веровао или не, има људи који "завршавају пос'о", а мисле и раде потпуно другачије.

Баш бих живо волео да пронађем изјаве "завршавача посла" из времена кад су неком тамо паметњаковићу пале на памет петље...

Link to comment
Подели на овим сајтовима

×
×
  • Креирај ново...