Pereiti prie turinio

GPC

Patvirtinti nariai
  • Pranešimai

    344
  • Užsiregistravo

  • Lankėsi

  • Atsiliepimai

    100%

GPC Pranešimai

  1. Sveiki,

     

    Pats užsiėmęs darbais, taigi reikia C programuotojo atlikti keliom užduotim:

     

    1.

    Parašyti skriptą 'routify', kuris, naudojant txt failą, kuriame yra surašytos stočių jungtys, surastų greičiausią kelią tarp 2 stočių.

    Txt failas tokiu formatu:

    Baker Street, Bond Street, Regent’s Park
    Bond Street, Baker Street, Green Park, Marble Arch, Oxford Circus
    Charing Cross, Piccadilly Circus, Leicester Square
    ...
    

     

    Ir skriptas turi veikti taip:

    $ routify "Charing Cross" "Holborn"
    Charing Cross
    Leicester Square
    Covent Garden
    Holborn
    

     

    2. Parašyti skriptą, kuris justify'kuotų tekstą. T.y. bus duodamas paragrafas ir linijos ilgis (raidžių numeris), skriptas turi sulygiuoti tekstą iš abiejų pusių.

     

    Reikia tvarkingo kodo su komentarais. Į PM parašykit terminus (kainą bei laiką, reikia iki trečiadienio).

  2. Sveiki,

     

    Bežiūrėdamas Mr Robot pamačiau įdomų dalyką, kaip padėjus telefoną jis užregistruoja visus wifi signalus aplinkui. Kiek girdėjau visi hack'ai rodomi seriale yra tikri, taigi įdomu ar kas susidūrė su tokiais - kaip toks dalykas vadinamas, kaip padaryti, kaip apsisaugoti? Ar toks dalykas gali rasti skylių belaidžiame tinkle, ar labiau naudojamas duomenim pasisavinti?

     

    Dėkui

  3. Sveiki,

     

    Gal kas susidūrę - kaip įrašyti Operacinę Sistemą (ar Windows ar kokią Linux distribuciją) į USB Memory Stick'ą, kad viskas jame ir būtų? T.y. įkišus į PC ir pasirinkus kad bootintų iš ten, užsikrautų iškart OS, ir visos programos/failai kuriuos įrašau pasiliktų ten, kitam kartui? Geriausia, kad ir neturėtų priėjimo prie HDD, t.y. įšėmus flašiuką neliktų jokių pėdsakų?

     

    Nelabai žinau kaip ieškot, terandu pamokas kaip padaryti Bootable USB Memory Stick'ą, t.y. kad įrašyti operacinę sistemą, tačiau man reikia kad pati sistema su viskuo ir liktų flašiuke?

     

     

    Dėkui

  4. Kaip ir sako, gali bandyti extendinti modelį arba tiesiog funkcionalumą papildyti su trait'u. O šiaip tai modelių pavadinimai sako, kad ten padaryta kažkokia "x...nia". Turi būti maždaug taip:

     

    File - failų modelis

    Page - puslapių modelis

    Banner - banerių modelis

     

    ir t.t.

     

    Extendinant tiesiog vėl rašai:

     

    namespace App\CustomModels;
    
    use App\Models\Page as PageModel
    
    class Page extends PageModel
    

     

    Nereikia ten tų with prirašinėti.

     

    EDIT: kaip suprantu nori iš vieno "Page" modelio pasiimti ir failus ir banerius, bet dabar turi du modelius? Visu pirma pradžioje nereikėjo kurti tam dviejų skirtingų modelių, o jeigu jau taip buvo, tai trink tu juos ir tvarkykis normaliai, nes visi relationshipai gali būti sudėti ir į vieną. Nereikia kurtis atskirų modelių ir jų pavadinimuose aprašyti visus relationshipus :D

     

    
    class Page extends Model 
    {
       public function banners()
       {
           return $this->hasMany('App\Models\Banner');
       }
    
       public function files()
       {
           return $this->hasMany('App\Models\File');
       }
    }
    
    

     

    Dar vienas variantas, jeigu jau per daug darbo viską keisti, tai susikurk kažkokį "MainModel" ir visus modelius extendink į pastarąjį, o pastarąjį į Model. Ir tame "MainModel" rašyk funcionalumą, kurį galėsi pasiekti iš visų kitų modelių. Pvz:

     

    
    class MainModel extends Model {} // Model --> Illuminate\Database\Eloquent\Model
    
    class PageBanner extends MainModel {}
    
    class PageFiles extends MainModel {}
    
    

     

    Traitas netinka, kadangi vėl kartoju, jog pagrindinio modulio (Pages) keisti negalima. Aš suprantu, kad galiu ir 10 relationship'ų rašyt į tą failą. Tačiau man failo keisti negalima. Kadangi sistema sudėta iš modulių, kurie turi savo versijas atskirai, aš negaliu sukurti modulio, kuris turės priklausomybė nuo to ar 'Pages' modulis buvo update'intas ir turi banners() metodą ar ne.

     

    Va paskutinį tavo variantą turbūt ir darysim. Pasirašiau dinamiškus relationship'us pačiam frameworke, galbūt darysiu Pull Request, pažiūrėsiu ar žmonės mano, jog naudinga būtų tokia funkcija. Jeigu ne, persikelsiu metodus į naują bazinį Modelį.

     

    Dėkui.

  5. Parasai nauja modeli, kuris extendina orginalu ir nesuki galvos?

     

    Nelabai tinka struktūr. Tarkim turiu Page modelį, turiu PageBanners modelį, ir PageFiles modelį. Extendinant, man reiktų rašyti maždaug class PageWithBannersWithFiles extends Page. Ir tai, kai kurie saitai turės PageFiles modelį, kai kurie ne, ir struktūra labai greit subyrės jei kiekvienas modulis extendins visus kitus modulius. Todėl ir ieškau sprendimo, kaip kiekvienas modulis gali pridėti reikiama funkcionalumą į kitus modulius nelaužant jų, ir betkada išjungus modulį kiti moduliai nesulūš.

  6. Jei normaliai parašyti moduliai juos visada galima extend'inti, o ir config'ai jiems gali būti individualūs. Taip kad pasidarai vieną modulį composer'yje, o atskirose sistemose jį extendini ir pasirašai savo reikiamą funkcionalumą. Tokiu atveju nenukenčia modulis ir jis visą laiką tures naujausius updeitus.

     

    Hmm, paprastai extendinti butu geras variantas, taciau modulis turi ne tik savo klases, taciau ir asset'us (css/js/img), db migracijas, html template'us ir pns., ir juos norint pakeisti vistiek reikes modulio kopijos atskiros?

  7. Jūsų požvilgis į šį dalyką keistas. Kokie dizaino pavyzdžiai... Neegzistuoja ieškoma literatūra, visa tais elementari logika. Sukurpiate izoliaciją, core failai - ne naudotojo reikalas. Laikykitės architektūrinio paskirstymo principo, kad ir to paties MVC. Visa paslaptis - viena ar kelios architektūrinės dalys yra neredaguotinas branduolys, iš kurio išplaukia kiti principai. Sėkmės...

     

    Žinoma nesitikiu pavyzdžių būtent tokios sistemos, tačiau bet kokių dalių, susijusių principų, pattern'ų ir pnš.

     

    Kolkas radau šį atsakymą, kur yra gerų link'ų tolimesniam skaitymui:

    http://stackoverflow.com/questions/10763006/plugin-architecture-in-web-apps-examples-or-code-snippets

     

    Taip, yra core failai, tačiau tinklapis gali būt toks custom, jo reikia ir kažkokio interface'o pakeisti tas funkcijas. Taip pat, daugelis tinklapiu pavyzdžiui turės Blog modulį, tačiau jis nebus core. Ieškom sprendimo, jog visi (tiek core tiek ne core) moduliai būtų kuo daugiau atnaujinti su master sistema, tačiau tuo pačiu metu paliekant visas custom funkcijas idėtas būtent tam tiklapiui.

     

    Kolkas mąstau kažkiek įterpti Wordpress'o pluginų logiką, t.y. naudoti actions ir filters, kad įterpti funkcijas į kitus modulius ar core funkcionalumą. Dėl VCS, galvoju kiekvienam projektui fork'inti pagrindinę repo, ir kopijoje daryti visus pakeitimus. Tokiu atveju, teoriškai galimėtų gan lengvai bet kokius atnaujinimus iš master repo siųsti į tą fork, taip pat bet kokius custom funkcionalumus siųsti iš to fork atgal į master arba kitiem klientam.

     

    Taip pat, sistema nebus kaip Wordpress ar pnš., kad klientas pats ieškosis ir siųsis modulius. Visi moduliai bus kurti in-house ir mes patys juos instaliuosime ir konfiguruosime. Viso šito esmė, padaryti greitą deploy'inimo procesą, kaip galimai daugiausiai išnaudojant faktą, jog didelis procentas visų tinklapių naudoją tas pačias funkcijas, tuo pačiu metu leidžiant greitai įdėti custom funkcijas ir jas kelti iš kliento į klientą.

  8. UK - Web Developeris, 2 dienos (15h gryno darbo) per sav. (studentas), £877.5/men. 3 metai oficiali patirtis. Taciau masina ir kambari/buta issinuomuot ir tiek neuztenka studentu miestely gyvenant su visom islaidom, finansu dar reik skolintis is valdzios panasiai.

  9. Sveiki,

     

    Kuriam CMS, kuria naudosim daugybei tinklapiu, taciau truksta ziniu kaip padaryt, ko norime. Net nezinau kaip pavadint tokius dalykus, tai sunku labai susirast literaturos, dizaino pavyzdziu ir pns. tokiai sistemai, gal kas susidurete.

     

    Pati sistema bus sudeta is moduliu, ir kiekvienam tinklapiui bus irasyti tam tikras kiekis "core" moduliu ir papildomu pagal pasirinkima. Ko norime, tai kad visas core kodas ir moduliai butu vienoj centrinei vietoje, is kurios galimetu bet kada atnaujinti visas deploy'intas sistemas. Taip pat, kiekvienas modelis gali tureti pakeitimu individualiuose tinklapiuose, taciau irgi reikia kad atnaujinti lengvai butu galima. Kaip keisti "core" funkcionaluma, paliekant galimybe atsinaujinti naujas funkcijas is master repositorijos, ir pns niuancai.

     

    Konkretaus kodo nereikia, taciau jei kas su bet kuo panasiu susidure, labai praverstu bet kokia literatura apie kaip moduliarizacijos ir skirstytos sistemos rasomos, kad kiekviena sistema galetu but tam tikru kiekiu custom taciau palaikyti ir atnaujinti is pagrindines sistemos.

     

    Dekui

  10. Kazkoki tu cia bruda mastai... View'sas numeti viena ant return'o ir vsio. Jeigu reikia kazka mandresnio - viduje skaidai i dalis ir pakrauni per include/extend ar kaip kitaip.

     

    Nesupratau, ka norejai pasakyti.

     

    Stackoverflow'e kodas yra, trumpai: turiu for loop'a, kuriame loop'ina per Field objektus, ir kviecia Field->showInput(), kuris turi grazinti atskira view'sa, taciau po pirmos iteracijos kiti views'ai vienodi buna, nors Field instance yra kita.

  11. Sveiki,

     

    Kaip maciau nemazai cia Laravel ismananciu zmoniu, galbut zinos kaip isprest mano problema.

     

    Problema yra jog man reikia loadinti ta pati view faila, tik naudojant skirtinga data (objektus). Dabar kai loadinu, visi views atrodo taip pat (t.y. naudoja duomenis, kurie buvo pasiusti pirmam instance). Kaip suprantu, cache'ina ta view ir kai vel kraunu, ignoruoja ka as jam persiunciu ir tiesiog duoda man rezultata pirmos view generacijos.

     

    Sunku gan ispasakoti ka bandau padaryti, cia surasiau viska su kodu:

    http://stackoverflow.com/questions/38994362/laravel-create-instances-of-same-view-with-different-data

     

     

    Jei kas galetu padeti tikrai dekingas buciau.

     

     

    Dekui

  12. sitas variantas netiktu?

     

    [...]

     

    Jo, jeigu traits butu galima dinamiskai uzdeti, tai turbut butu idealiausias variantas, taciau kiek ziurejau nelabai.

     

    Pirma mintis ir buvo kaip cia sakai, tiesiog ideti relationship'us tarp moduliu. Tiesiog norejau paziureti ar yra koks dizaino sprendimas, jog nelietus vieno modulio, kiti modeliai galetu prideti funkcionaluma, kadangi bandom kurt sistema kuri butu kaip imanoma automatizuota.

     

    Dekui uz pagalba, turbut teks daryti tavo budais.

  13. Sveiki,

     

    Bandau kurt Laravel aplikacija, taciau niekaip nesugalvoju geros strukturos.

     

    Esme, kad visa sistema turi but is moduliu. Kiekvienas modulis turi savo routes, controllerius, modelius etc., viskas sujungta per ServiceProvider'i. Mano problema:

     

    Turiu Pages moduli. Jame yra Page modelis (Eloquent\Model), kuris turi savas funkcijas, viskas ok, ir kiti modeliai naudoja ta moduli, kad atvaizduoti puslapius (pakeiciant turini ar pns.). Bet tuomet, tarkim noriu modulio PageFiles, kuris leistu prie kiekvieno Page moduliu prisegti failus. I pati Page moduli lengva butu irasyt, paprastas relationship, taciau kaip man padaryt, kad tas atskiras modulis sukurtu ta relationship ant Page modulio? Tiesiog extend Page negaliu, kadangi, bus bent keli moduliai, kurie nores prideti funkcijas i Pages moduli, ir kiekvienas jeigu extendins Base moduli, tuomet vienu metu tik viena funkcija galimes naudoti (t.y. jeigu bus klases PagesWithFiles ir PagesWithBanners tai tik viena vienu metu galimes naudot). Man reiktu budo, kad pacios Pages klases nekeitus, kitas modulis galetu pridet tarkim metoda Page->getFiles() arba Page->banners ir pns., lyg pacioj klasej butu irasyta.

     

    Dekui uz pagalba.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...