Jump to content
php.lv forumi

F3llony

Reģistrētie lietotāji
  • Posts

    1,353
  • Joined

  • Last visited

Everything posted by F3llony

  1. F3llony

    Par sapulce

    Tas ir izdarāms. Taču arī šeit ir problēmas - par ko runāt, par ko stāstīt?
  2. First of all, ui/ux developer and leading the design? Isn't that what a web designer is for? But alright, we can sail with this. Extensions? Extensions of what? Thats a pretty serious gap right there, 1.3k honestly? And, wait, is 700 for a LEAD even a option? So, you are ok hiring a guy for 700 as a UX lead for your team, is that what you are saying? And please, do include website and company identifying information, if you have any.
  3. F3llony

    Par sapulce

    Interese ir. Pagrūti gan kaut ko uzrīkot 3000km no Rīgas esot...
  4. F3llony

    Par sapulce

    nezinu varbut ir varbut nav tagad ir tadi vieti ka techhub ipasi sapulce
  5. Tu domā, ka LMT ir mikrouzņēmums? :D
  6. Jā, dod man iemeslu tev iedurt acī ar vecu gurķi.
  7. Tu tagad samauci visu vienā maisā atkal. Bizness ne ap ko negrozās. Bizness definē prasības; Ko tu sauc par biznesa modeli, patiesībā sauc "biznesa objekts" ala "dumb entity" ala "data transfer object" ala "anemic domain object", atkarībā no konteksta; Tu runā par kaut kādu smart entity un biznesa loģikas implementācijas hibrīdu. Cilvēki tā programmēja 2005. gadā. Un realitātē notiks tieši otrādi - tu dosies uz kontrolieri, kurš izmanto servisu, tad tu aiziesi uz servisu un viss būs ļoti skaidrs, kā manā piemērā. Ar tavu smart samačkātot entitiju viss būs vienā milzīgā blāķī un cilvēki tevi pamatoti ienīdīs - testēšana nebūs iespēja, kods būs cieši kopā, refaktorēšana būs sāpe un kaut ka modificēšana globalizētā biznesa loģikā arī. Nē. Un nebāz, lūdzu, konkrēta freimworka konceptus, šajā gadījumā, Laravel "komandas", kas ir tie paši servisi vienā maisā ar arhitektūras un programmēšanas konceptiem in general. Laravel command bus ir tā pati servisu kolekcija, kur katra komanda ir serviss. Serviss savukārt ir jebkas, kas dara kaut kādu konkrētu uzdevumu domēna zonā. Lai gan tik dziļi pieduroties mans piemērs augstāk arī nebija īsti pareizs - ImageUploadService būtu serviss, kas izmantotu ImageValidatorService, ImageEntityCreatorService un FileSystemAbstractionService, piemēra pēc. Nē. Ja tu visu šo loģiku saliksi vienā maisā, tev būs entitija, kas ir pa 10k rindām. Un pat konceptuāli, entitija var pastāvēt ar visām vērtībām null, kā tukšs objekts - šajā gadījumā biznesa prasība veidojas pret pārliecību, ka entitija nevarētu būt bez image utml, bet tas ir validācijas, ne datu glabāšanas vai manipulācijas domēns - t.i. objektam, kura mērkis ir glabāt datus būtu jāvalidē konkrētās entitijas domēnā, bet citā "domain concern", aļa servisā. Šādi, mainot rules, tu mainīsi nevis pašu entitiju, bet gan validācijas servisu, kas pie reizes neietekmēs tavas vecās entitijas (pie dotas implementācijas). Uhh, palagi.
  8. Tāds termins, kā biznesa modelis programmēšanā nepastāv. Ja tu domāji biznesa loģiku, tad biznesa loģikas implementācija ir serviss - klases, un objekti kas satur biznesa loģikas implementāciju.
  9. Manuprāt, tu esi pazudis tulkojumā. Mēģināšu precizēt: Kontrolieris - tas, pamatā, ir serviss, kas deleģē uzdevumus starp citiem servisiem - kā tieši tu organizē deleģāciju ir cits jautājums. Parasti, pats kontrolieris neko pats par sevi nedara, t.i. tevis minētajā piemēra, kontrolieris saņemtu Request, jeb informāciju, ka ir saņemts fails, nodotu faila darbības kādam servisam un no servisa atgriezto atbildi atdotu viewam, jeb skatam; Modelis - par modeļiem parasti sauc datubāzes entitijas, jeb objektus, kas reprezentē ierakstus datubāzē (taču ne vienmēr - konkrētajā kontekstā gan). Modeļi parasti ir 2 veidu: Smart entity: modelis, kas pats atbild par sevis glabāšanu un ir pašpietiekams - t.i. var veikt vienkāršas darbības pret saviem datiem (piem, no title izveidot slug utt.), spēj komunicēt ar ORM utt. Simple entity: modelis, kurš vienkārši glabā vērtības bet nesatur praktiski nekādu biznesa loģiku. Skat. doctrine entity. Domēna modelis: ar ORM un datubāzi maz saistīts, abstrakts termins. Domēna modelis ir veids, kā organizēt un veidot arhitektūru. ORM modelis var būt domēna modeļa daļa. Biznesa loģika, servisu loģika un DB abstrakcija ir domēna modeļa daļas. Domēna modelis nav kaut kāds objekts vai kaut kas tamlīdzīgs, tas ir organizācijas veids, līdzīgi ka MVC. Un kā mēs varam atrisināt tevis minēto piemēru: <?php class ImageUploadController { public function uploadAction( Request $request, ImageUploadService $imageUploadService ) { $error = $entity = false; if ($request->has('uploaded_file')) { try { $entity = $imageUploadService->handleUpload($request->get('uploaded_file')); } catch (ImageUploadException $e) { $error = $e; } } $this->renderView('someview', [ 'entity' => $entity, 'error' => $error ]); } } class ImageUploadService { private $orm; public function __construct(ORM $orm) { $this->orm = $orm; } public function handleUpload($fileInfo) { $this->validateUpload($fileInfo); $this->moveFile($fileInfo); return $this->createFileRecord($fileInfo); } private function validateUpload($fileInfo) { /** ... Validation logic */ } private function moveFile($fileInfo) { /** ... Moving file in FS logic */ } private function createFileRecord($fileInfo) { $record = new ImageEntity(); /** Set data to entity etc */ $this->orm->save($record); return $record; } } class ImageEntity { private $id; private $uploadDate; private $originalName; /** getters, setters, etc. **/ } Konkrētajā gadījunā, visas šīs klases ir daļa no attēla augšupielādes domēna modeļa.
  10. Daļēji jau viņam taisnība. Lielais vairums pilsoņu, kas meklē SEO uberpakalpojumus ir vai nu tie, kas vēlas sakārtot savu lapu, vai nu tie, kas vēlas maģijas palīdzību un "būt pirmie visos jautājumos visā googlē un vai var nopirkt google". Pēdējais sastopams biežāk, kā pirmais.
  11. F3llony

    Uzdevums 3

    Es izprotu, ka šī funkcija tiek lietota lai novērstu biasu no Sw/Hw random source ievades filtrējot bitus pāros pa divi, ar mērķi novērst korelāciju starp biasētu ievadi un random source izvadi, un pārvērst biasetu bitstrīmu nebiasētā, pieņemot, ka atmests relatīvi liels daudzums bitu. Kādu laiku atpakaļ es pielietoju šo funkciju lai filtrētu bitu straumi veidojot sPRNG, kas kā avotu izmanto skaņas kartes statiku. Konkrētajā gadījumā paņēmu 44100Hz statiku no aux pa tiešo no draivera, amplificēju, pārvērtu saprotamā bināras straumes reprezentācijā un pielietoju konkrēto filtru lai, atkal, novērstu biasu, kas varētu rasties statikas vietā aux ievadē rakstot biasētu audio ar mērķi biasēt RNG izvadi. Un darbojas tas tāpēc, ka arī statika ir pseido-vienmērīga, t.i. signāli un klusums nav vienmērīgi izdalīts visā ievadē. Šajā gadījumā konkrētais filtrs uz katru signāla pāreju (rising edge, falling edge) izvadīs vienu nejaušu bitu. Vēl kaut ko gribi zināt? Also, lmafo => lmfao
  12. F3llony

    Uzdevums 3

    Pastāstīsi man arī kas tur tik smieklīgs?
  13. F3llony

    Uzdevums 3

    Paldies, bet es neesmu Von Neumans un šī nav mana debiasa filtra funkcija.
  14. F3llony

    Uzdevums 3

    Nav runa par N sekvencēm, kas varētu izvadīt kaut ko, ir dotas divas sekvences, kurām acīmredzot ir dažādas izvades, jo savādāk uzdevums būtu pilnīgi nafig bezjēdzīgs - tieši otrādi - paša uzdevuma klātbūtne nosaka, ka jau zināmā atbilde nevar būt patiesa, jo nezināmā atbilde tiek pieprasīta. Tu šobrīd izdari pieņēmumu, kas varētu būt vai nebūt pareizs, uz savu galvu un tad argumentē, ka pierādījums, kas pamatots ar pieņēmumu un kam, izņemot pašu pieņēmumu, nav pamata (es uzdevumā ne apstiprināju, ne noliedzu, ka izvades ir vienādas) ir patiess, un tagad man būtu jāpierāda, ka tas nav patiess. Unwarranted assumption, shifting burden of proof. So, once again, pieņēmums, ka abām ievadēm ir vienāda izvade nav patiess un risinājums nav pareizs. Case closed, move on. Jebkuru uzdevumu var piespiest izpildīt kaut kā un pateikt, jā, bet redz es izspiedu no tava uzdevuma kaut ko un redz kur ir rezultāts. Tas nekas, ka rezultāts ir kuiņa, jo tu taču neteici, ka rezultātam ir jābūt pareizam. Wow. Tā es piemēram varētu izspiest no tava uzdevuma 2, ka rezultāts ir rozā, jo Jānis ir psihopāts un neprot skaitīt, līdz ar to viņš pateica, ka nezina tos skaitļus tāpēc, ka jams zina šos skaitļus un patiesībā viņš nemaz neprot skaitīt vai runāt, jo Jānis patiesībā ir ķirbis un Pēterim tikai izlikās. Jo tu taču neteici, ka Pēteris ir normāls cilvēks un pašreiz neatrodas psihiatriskajā klīnikā, kur jams tiek ārstēts no šizofrēnijas.
  15. F3llony

    Uzdevums 3

    Beidz trollēt. Uzdevumā ir skaidri un gaiši prasīts a) implementēt X b) noteikt rezultātu sekvencei, kas nav piemērā dotā sekvence.
  16. F3llony

    Uzdevums 3

    Tas atgriež piemēra rezultātu, ne uzdevumā prasītās ievades rezultātu.
  17. F3llony

    Uzdevums 3

    Īsākais kods noteikti neuzvarēs. Okei, izvirzīšu kritērijus lai būtu interesantāk: Kodam jādarbojas; Kodam jābūt viegli lasāmam, skaidri saprotamam un ar komentāriem; Jebkurā valodā izņemot Scala; Un nav gluži tā, ka pareiza ir jebkura, kas atgriež pareizu piemēra atbildi - tik pat labi var uzrakstīt vienkāršu return kā martins. Tas neskaitīsies gan. Pirmo sekvenci es speciāli sāku rakstīt šādi, lai plus mīnus būtu saprotams uzreiz:
  18. F3llony

    Uzdevums 3

    Tuvu, bet tomēr nē. Otrā sekvence ir Un risinājums ir
  19. F3llony

    Uzdevums 3

    Ok, neviens? Hint: rising edge, falling edge.
  20. F3llony

    Uzdevums 3

    Asprātis :D bet nē, tik vienkārši arī nav.
  21. F3llony

    Uzdevums 3

    Neaizmirsa, bet uzdevumam ir maz sakara ar matemātiku. T.i. risinājums neprasa aprēķinus. Risinājums vairāk izskatītos kaut kā šādi: b = x(a)
  22. Vai arī var vienkārši sazināties ar autoru/maintaineri un pajautāt, ko vajag izdarīt nevis grābt pa galvu, pa kaklu.
  23. Nu re. Vari, ja gribi. Vai sanåca garåk? Jå. Vai cilvēks, kurš nāks pēc tevis, pēc gada tur kaut ko labot pateiks paldies? Noteikti. Vai tu kaut ko īpaši zaudēji pārrakstot nedaudz verbozāk? Nē. Kaut kur, neatminu kur, lasīju, ka kodu nepieciešams rakstīt tā, itkā tas, kuram tas pēc tevis būs jāuztur ir maniaks ar cirvi, kurš zina, kur dzīvo tu un tava ģimene.
  24. F3llony

    Uzdevums 3

    Izskatās, ka PHP topā tagad prātlauži. Te būs viens diezgan vienkāršs. Ir dota skaitļu sekvence (A): 10110101010001001010010100101000101010100010101001010101001001010010101 Apstrādājot doto sekvenci ar algoritmu X, iegūstam skaitļu sekvenci (B): 100001100111111111000010011 Uzdevums: Implementē algoritmu X un nosaki sekvenci (B) šai sekvencei: 10101001000001010101001010100101001000010010101001000101011110001010001 P.S. codez, es zinu, ka tu zini. Ļauj kādam citam vispirms.
  25. Prieks vismaz, ka neieskenēji kādu perfokarti no '50jiem. Jo 10 gadus vecs koda gabals pilnīgi nopietni kaut ko pierāda. Mhm mhm. Also, es nevienā brīdi neteicu, ka nesapratu, ko tu esi tur uzrakstījis. Es teicu, ka tas ir nelasāms mēsls, kas bez manis un tevis, kā autora, šeit diez vai vairāk par pāris cilvēkiem būs saprotams. Konkrētā problēma ir prātlauzis, nevis kaut kāds reāls, efektīvs algoritms kuru nu visi tagad lietos un vajag optimizēt katru rindu. Ja gribi pievienot kaut kādu vērtību, uzraksti skaisti, verbozi.
×
×
  • Create New...