rATRIJS Posted July 27, 2011 Report Share Posted July 27, 2011 Interesē jūsu viedoklis. Vai šo testu/uzdevumu var izmantot kā praktisko daļu darba intervijā, lai atlasītu potenciālos nākamos kolēģus? Darba tituls būtu "Junior PHP Developer" - būtībā cilvēks, kuram nav liela pieredze praktiskā darbā. Visticamāk nesen pabeidzis universitāti, taču noteikti nepieciešams zināt PHP (ne labā līmenī, bet vismaz sintakses un galveno lietu līmenī). Cik daudz laika jūsuprāt vajadzētu atvēlēt šādam testam? Kā arī - vai tas nav par vieglu/sarežģītu meklētajam kandidātam balstoties uz prasībām? Paldies un atvainojos, ka uzdevums ir angliski. Quote Link to comment Share on other sites More sharing options...
lostz Posted July 27, 2011 Report Share Posted July 27, 2011 tā kā esu cilvēks ar virspusēju php/sql zināšanām, uzskatu, kad vienīgais, kas nepieder pie vārda ne labā līmenī ir OOP, faktiski to pieskaita pie padziļinātajām zināšanām. Tā šis uzdevums, es uzskatu ir laba praktiskā daļa intervijai, bet par laiku gan ir grūti spriest cik veltīt, jo ja cilvēks ir tikai iesācējs, labāk būtu, ja ir cilvēki piemēram, 3-4 intervijā, skatīties, kas ātrāk izpildīs uzdevumu un kvalitatīvāk. un pēc tā skatīties. Quote Link to comment Share on other sites More sharing options...
daGrevis Posted July 28, 2011 Report Share Posted July 28, 2011 OOP ir pilnīgs un noteikts standarts. Tās nav padziļinātas zināšanas! 30 - 45 minūtes, rATRIJS. Es teiktu, ka ir nedaudz par sarežģītu. Quote Link to comment Share on other sites More sharing options...
rpr Posted July 28, 2011 Report Share Posted July 28, 2011 par kādu rekursiju iet runa, ja tas ir 1-d masīvs? Quote Link to comment Share on other sites More sharing options...
daGrevis Posted July 28, 2011 Report Share Posted July 28, 2011 Kur Tu redzi, ka tas ir 1D masīvs? Tur rakstīts, ka tas ir masīvs ar elementiem. Jāaprēķina kopējā visu elementu summa. Quote Link to comment Share on other sites More sharing options...
spainis Posted July 28, 2011 Report Share Posted July 28, 2011 (edited) function magic_shit($array) { if(!empty($array)) { return array_pop($array) + magic_shit($array); } return 0; } Edited July 28, 2011 by spainis Quote Link to comment Share on other sites More sharing options...
Maris-S Posted July 28, 2011 Report Share Posted July 28, 2011 Rpr, bet kur ir problēma realizēt šo lietu ar rekursīvu funkciju? Protams tā nedarītu reālajos projektos, tur izmantotu vienkārši array_sum() funkciju, bet pārbaudīt vai cilvēks zina, kas ir rekursija ar šādu piemēru varētu. Kaut gan piekrītu daGrevis, priekš juniora pa sarežģītu, īpaši ja būs jātaisa bez googles un php dokumentācijas palīdzības. Quote Link to comment Share on other sites More sharing options...
rpr Posted July 28, 2011 Report Share Posted July 28, 2011 varbūt izkskaidrojat kas ir rekursija, es to saprotu, ka ar kaut kāda metode izsauc pati sevi, lai veiktu aprēķinus. bet pie 1-d masīva es tādu rekursiju nemaz navaru uztaisīt. Quote Link to comment Share on other sites More sharing options...
spainis Posted July 28, 2011 Report Share Posted July 28, 2011 varbūt izkskaidrojat kas ir rekursija, es to saprotu, ka ar kaut kāda metode izsauc pati sevi, lai veiktu aprēķinus. bet pie 1-d masīva es tādu rekursiju nemaz navaru uztaisīt. sūdīgi tev :( Quote Link to comment Share on other sites More sharing options...
v3rb0 Posted July 28, 2011 Report Share Posted July 28, 2011 Varbūt var iedot kādu snipletu/f-ju/bibliotēku ar kuru pie db piekonektēties, jo tās reti kurš no galvas atcerās, kā nekā konekciju uz db raksta tikai sākot jaunu projektu/nopietni refakturējot esošo, bet reāli ikdienā tāds juniors tāpat izmantos jau projektā esošas lietas komunicēšanai ar db. Bet ja šis skaitās par sarežģītu, tad ko tas programmētājs juniors programmēs, ja nesanāk viņam uztaisīt masīva elementu saskaitīšanu? Quote Link to comment Share on other sites More sharing options...
Maris-S Posted July 28, 2011 Report Share Posted July 28, 2011 (edited) Rpr, kaut vai tā: $array = array(1, 2, 4, 8, 10); function a_sum($key) { global $array; if (isset($array[$key])) return $array[$key] + a_sum($key + 1); else return 0; } echo(a_sum(0)); V3rb0, uzdevums priekš juniora ir par sarežģītu, ka jau teicu, īpaši, ja būs jātaisa bez googles un php dokumentācijas palīdzības, jo te ir jāzina ne tikai vienkāršs cikls, bet arī rekursija un oop, klāt vēl rakstzīmju virknes pārtaisīšana uz masīvu, explode(), kuru juniors no galvas varētu arī nezināt un jā, pats arī piezīmēji ka savienojumu ar db arī ne kurš katrs juniors varēs sataisīt no galvas. Protams ja ir pieejama dokumentācija un internets uzdevuma pārbaudes laikā, tad pavisam cita lieta. Edited July 28, 2011 by Maris-S Quote Link to comment Share on other sites More sharing options...
codez Posted July 28, 2011 Report Share Posted July 28, 2011 (edited) Manuprāt, uzdevumiem nav jābūt abstraktiem un atrautiem no realitātes, līdz ar to pats uzdeums neredzot tā praktisko jēgu un vēl prasība summēt masīvu rekursīvi ir nedaudz dīvains. Labāk būtu uzdot uzdevumu, kurā praktiski pārbaudītu pamatzināšanas un izpratni par drošību, pietam, no pavisam praktiska piemēra. Tas varētu būt, piemēram, ToDo lists vienā lapā, kur ir visi Todo ieraksti un lejā input un textarea jauna ieraksta pievienošanai, papildus var arī, lai ierakstiem ir x, ar kuru var tos izdzēst. Var atļaut taisīt gan ar ajax, gan ar parastu form POST. Uzdevums izpildāms dažos desmitos rindiņu un profesionālim sastādīs ap 10 minūtēm, kamēr iesāčējam vajadzētu tikt galā 45 min. Uzdevumā uzreiz var pārbaudīt vai māk aizsardzību pret injekcijām, XSS, XSRF. Šāds uzdevums ir labs, jo to pilnībā var atrisināt ar PHP zināšanām, bet tai pašā laikā var parādīt arī savu prasmi javascript, jquery vai css zināšanās. P.S. Pietam viennozīmīgi uzdevumu risinot, jāļauj izmantot google un dokumentācija. Edited July 28, 2011 by codez Quote Link to comment Share on other sites More sharing options...
daGrevis Posted July 28, 2011 Report Share Posted July 28, 2011 Piekrītu codez. Par 100%. Quote Link to comment Share on other sites More sharing options...
rATRIJS Posted July 28, 2011 Author Report Share Posted July 28, 2011 Paldies par atbildeem. Jaa - internets ir pieejams testa izpildes laikaa. Papildus tam ir veel atveerts PHP Doc kaa .chm fails. Tas viss arii tiek izstaastiits kandidaatam, kaa viss nepiecieshamais jau ir atveerts taa kaa atliek vien ALT+TAB'ot, lai visu paarluukotu. Zinaamas gruutiibas kandidaatiem, iespeejams, sagaadaa, tas, ka tiek izmantots Linux, tachu manupraat tai nevajadzeetu buut probleemai, jo shaada uzdevuma viekshanai jaaveic gandriiz identiskas darbiibas uz jebkuras OS. Pirms testa saakshanaas kandidaatam veel tiek pateikts, ka, ja kaada PHP funkcija nav zinaama, tad to var uzrakstiit pseido-kodaa vai vismaz komentaaru veidaa. Iemesls kaadeelj es sho vispaar jautaaju ir taads, ka vakar bija pirmaa interviju diena un NEVIENS no atnaakushajiem cilveekiem pat nepietuvojaas kaut kaa jeedziiga uzrakstiishanai, kaut gan CV, izgliitiibaa un dazhiem pat darba veesture saciija, ka ar shaadu uzdevumu probleemaam buut nevajadzeetu. Reti kursh vispaar uzrakstiija vairaak par 10 rindinjaam un NEVIENS no uzrakstiitajiem koda gabaliem nemaz neparseetos. Pie MySQL vispaar neviens veel nebija ticis un tikai VIENS cilveeks izmantoja $_GET, lai dabuutu masiivu. Paareejie dariija kaut kaa shaadi (ar visaadaam sintakses kljuudaam): $array = array(1, 2, 3, 4); Un cilveeks kas izmantoja $_GET dariija shaadi: array[]=$_GET Taadeelj es satraucos, ka, iespeejams, uzdevums ir par gruutu (lai gan pasham taa nebuut neliekas). Iespeejams pa maz laika vinjiem tika dots. Vinjiem bija aptuveni 20min vienatnee un peecaak iespeeja pabeigt, ja vinji ir tuvu nobeigumam... Vai kaadam no shejienieshiem ir pieredze liidziigu uzdevumu (darba kandidaatu atlase) veikshanai? Jo es tiktieshaam biju izbriiniits, jo biju gaidiijis ko krietni labaaku un vismaz dazhus cilveekus, kurus es veeleetos sev redzeet kaa savus koleegjus Piedevaam interveejot tos cilveekus vinji likaas tiiri normaali un spriezhot peec vinju teiktaa par savaam zinaashanaam nekam shaadam nevajadzeetu notikt. Tik peec testa naaca dazhaadi attaisnojumi... Pieziimeeshu, ka shis viss notiek UK. codez: jaa - iespeejams reaalas dziives uzdevums buutu saprotamaaks. Diemzheel HTML, CSS, JS zinaashanas shai darba lomai nav obligaata prasiiba, taadeelj pacentiishos izgudrot kaut ko uz plika PHP. Paldies. Quote Link to comment Share on other sites More sharing options...
daGrevis Posted July 28, 2011 Report Share Posted July 28, 2011 Man vienmēr tie briti likušies tādi pastulbi... :D Es Tavā vietā nepazeminātu uzdevuma grūtumu or whatever - Anglijā ir jābūt kādam cilvēkam, kas ar to tiek galā! :D Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.