briedis Posted March 11, 2020 Report Share Posted March 11, 2020 Troļļoju, troļļoju...bet es nešaubos, ka ir daudzi, kas tieši tā arī domā, kas ir ļoti biedējoši. Quote Link to comment Share on other sites More sharing options...
codez Posted March 11, 2020 Report Share Posted March 11, 2020 6 hours ago, briedis said: Man arī patīk konfigurēt webpack pašam, jo tas liek vismaz atsvaidzināt zināšanas par pašreizējo ekosistēmu. Par šo lūdzu sīkāk, vai arī runa ir vienkārši par Parcel? Quote Link to comment Share on other sites More sharing options...
codehighriga Posted March 12, 2020 Report Share Posted March 12, 2020 Ļoti ceru, ka Grey_Wolf arī troļļo, bet laikam jau nē. Quote Link to comment Share on other sites More sharing options...
briedis Posted March 12, 2020 Report Share Posted March 12, 2020 11 hours ago, codez said: Par šo lūdzu sīkāk, vai arī runa ir vienkārši par Parcel? Pirmo reizi par tādu Parcel dzirdu. Bet ko tur sīkā - es paņemu laravelu ar mix un zero configs... (nu neskaitot pielikt klāt kkādus pluginus) Quote Link to comment Share on other sites More sharing options...
webi Posted March 12, 2020 Report Share Posted March 12, 2020 Ar ietvariem viss ir labi līdz brīdim, kad jāsāk optimizācija. Jaunās skolas programmētāji teiks, ka jāceļ jauda serveriem, jo dzelži, elektrība lēta un par ekoloģiju po*uj! Vecās, ka jāraksta no 0, lai viss ir izsekojams, bez liekām darbībām, ar minimālu procesora un atmiņas noslodzi. Noteikti ir arī "freimvorku naži", kuri ietvara kodu pārzin kā savu kabatu un spēj visu optimizēt līdz maksimumam. Katrā ziņā strīdēties par to ir bezjēdzīgi... Katram projektam savi programmētāji ar savu skatījumu un izvēli kādus risinājumus lietot. Lietotājam svarīgs UI, UX un ātrdarbība, vienalga html ģenerē Laravel, Phalcon vai Perl... Quote Link to comment Share on other sites More sharing options...
briedis Posted March 12, 2020 Report Share Posted March 12, 2020 37 minutes ago, webi said: Ar ietvariem viss ir labi līdz brīdim, kad jāsāk optimizācija. Jaunās skolas programmētāji teiks, ka jāceļ jauda serveriem, jo dzelži, elektrība lēta un par ekoloģiju po*uj! Vecās, ka jāraksta no 0, lai viss ir izsekojams, bez liekām darbībām, ar minimālu procesora un atmiņas noslodzi. Noteikti ir arī "freimvorku naži", kuri ietvara kodu pārzin kā savu kabatu un spēj visu optimizēt līdz maksimumam. Katrā ziņā strīdēties par to ir bezjēdzīgi... Katram projektam savi programmētāji ar savu skatījumu un izvēli kādus risinājumus lietot. Lietotājam svarīgs UI, UX un ātrdarbība, vienalga html ģenerē Laravel, Phalcon vai Perl... Optimizēt frameworka kodu 99.99% gadījumu ir pats pēdējais ko vajag darīt. Viens sūdīgs kvērijs, vai arī kvēriji ciklā, vai neoptimizēts attēls pirmajā lapā nodara daudz lielāku ļaunumu nekā frameworka boot laiks. Tā kā tas nav liels aspekts. Es gan vairāk varu spriest par Laravelu, kas ir diezgan elastīgs frameworks, kas arī ļautu izgriezt ārā dažādas nevajadzīgas lietas, ja nu tiešām pēdējais salmiņš ir paša boot laika optimizācija. Quote Link to comment Share on other sites More sharing options...
codehighriga Posted March 12, 2020 Report Share Posted March 12, 2020 Tikko izveidotajā blakus topikā labs piemērs par "pazušanu" - kāds uzkodējis paštaisītu CMS/ietvaru un tagad pazudis. Ej nu meklē citu, kas varēs atjaunot. Ja būtu lietoti vispārzināmi ietvari un standarti - gan jau tagad būtu vieglāk. Quote Link to comment Share on other sites More sharing options...
codez Posted March 12, 2020 Report Share Posted March 12, 2020 (edited) 3 hours ago, briedis said: Bet ko tur sīkā - es paņemu laravelu ar mix un zero configs... Vai laravela mix tiks galā ar šādiem uzdevumiem? Piemēram: - izvēlēties vairākus entry punktus, ja ir vajadzīgi vairāki js bundļi (piemēram, vajag webworker-im vai kādam embedojamam widgetam atsevišķu bundli); - iestatīt optimizēšanu, minimizēšanu un nesmukošanu (uglify) - ar kaudzi parametru, kurus pielāgot konkrētai vajadzībai; - rakstīs JS modernākā versijā (ES6, Typescript, etc.), bet galā iegūt savietojamu kodu; - iestatīt dažādus buildošanas parametrus, atkarībā vai taisi DEV vai PROD buildu - pārsvarā ātrdarbībai - tas ir, dev versijā piemēram neizmantot uglify, lai, piemēram, builds ir 1/2 sekundi, nevis 20. Edited March 12, 2020 by codez Quote Link to comment Share on other sites More sharing options...
mad182 Posted March 12, 2020 Report Share Posted March 12, 2020 3 minutes ago, codehighriga said: Tikko izveidotajā blakus topikā labs piemērs par "pazušanu" - kāds uzkodējis paštaisītu CMS/ietvaru un tagad pazudis. Ej nu meklē citu, kas varēs atjaunot. Ja būtu lietoti vispārzināmi ietvari un standarti - gan jau tagad būtu vieglāk. Domā ja tam arhaiskajam tabulu brīnumam apakšā būtu vēl iepīts kāds padsmitgadīgs (php 5.1) ietvars tas kaut ko padarītu labāku un visi stātos rindā tur kaut ko darīt? Pie tam, neviens jau nav teicis ka nav... Quote Link to comment Share on other sites More sharing options...
briedis Posted March 12, 2020 Report Share Posted March 12, 2020 6 minutes ago, codez said: Vai laravela mix tiks galā ar šādiem uzdevumiem? Piemēram: - izvēlēties vairāku entry punktus, ja ir vajadzīgi vairāki js bundļi (piemēram, vajag webworker-im vai kādam embedojamam widgetam atsevišķu bundli); - iestatīt optimizēšanu, minimizēšanu un nesmukošanu (uglify) - ar kaudzi parametru, kurus pielāgot konkrētai vajadzībai; - rakstīs JS modernākā versijā (ES6, Typescript, etc.), bet galā iegūt savietojamu kodu; - iestatīt dažādus buildošanas parametrus, atkarībā vai taisi DEV vai PROD buildu - pārsvarā ātrdarbībai - tas ir, dev versijā piemēram neizmantot uglify, lai, piemēram, builds ir 1/2 sekundi, nevis 20. Mans mix config fails, kas: 1. minificē/versionē ja laiž npm run prod 2. iznes npm libus atsevišķā failā (vai vairākos) 3. iekļauj bable pluginus Out of box strādā arī hot reloads. Kas nozīmē, ka labojot kodu re-builds būs <1-2s noteikti. Pašos layoutos (base layout) atliek izmantot frameworka metodi, kas parūpējās, lai strādā arī versionēšana, ja ir buildots ar prod flagu. <script src="{{ mix('js/app.js') }}"></script> No lietām, kuras neesmu mēgīnājis - vairākus entry pointus, bet pieļauju iespēju, ka to var risināt ar mix.js(..cits-fails.js), jo js/app.js satur visu vue bootstrapu. const mix = require('laravel-mix'); const webpackConfig = require('./webpack.config'); mix.webpackConfig(webpackConfig); mix.babelConfig({ plugins: [ '@babel/plugin-proposal-class-properties', '@babel/plugin-proposal-optional-chaining', '@babel/plugin-proposal-private-methods', ], }); mix.js('resources/js/app.js', 'public/js') .sass('resources/sass/app.scss', 'public/css') .sass('resources/sass/custom.scss', 'public/css') .extract(['vue', 'vee-validate', 'vuex', 'bootstrap-vue']) .extract(['moment'], 'js/moment') .extract(['sweetalert2'], 'js/sweetalert'); if (mix.inProduction()) { mix.version(); } Man grūti iztēloties, ka tas viss varētu būt vēl vienkāršāk... Quote Link to comment Share on other sites More sharing options...
codehighriga Posted March 12, 2020 Report Share Posted March 12, 2020 2 minutes ago, mad182 said: Domā ja tam arhaiskajam tabulu brīnumam apakšā būtu vēl iepīts kāds padsmitgadīgs (php 5.1) ietvars tas kaut ko padarītu labāku un visi stātos rindā tur kaut ko darīt? Pie tam, neviens jau nav teicis ka nav... Rindā noteikti nestātos taču jebkura ietvara izmantošana noteikti uzlabotu pārtaisīšanas sāpju līmeni. Konkrētais piemērs varbūt ir mazāk relevants, jo fokuss par 90% ir uz frontendu, taču mierīgi varētu iztēloties kaut ko no sērijas "Pievienot Omniva pakomātu shippingu", "Pievienot banklink", vai ko tamlīdzīgu. Quote Link to comment Share on other sites More sharing options...
webi Posted March 12, 2020 Report Share Posted March 12, 2020 31 minutes ago, briedis said: Optimizēt frameworka kodu 99.99% gadījumu ir pats pēdējais ko vajag darīt. Viens sūdīgs kvērijs, vai arī kvēriji ciklā, vai neoptimizēts attēls pirmajā lapā nodara daudz lielāku ļaunumu nekā frameworka boot laiks. Tā kā tas nav liels aspekts. Es gan vairāk varu spriest par Laravelu, kas ir diezgan elastīgs frameworks, kas arī ļautu izgriezt ārā dažādas nevajadzīgas lietas, ja nu tiešām pēdējais salmiņš ir paša boot laika optimizācija. Tas, ka datubāzes arhitektūra un pieprasījumi ir ātrdarbības pamatā, ir vispārzināms. Mazāk zināms par servera atmiņas un procesora jaudas racionālu izmantošanu. Visam ir robeža, noteikti ne konkrēta, bet katram projektam un serverim sava. Pēc pieredzes, pie aptuveni 1000+ pieprasījumiem sekundē uz viduvēja servera, rodas vēlme, lai optimizēts ir viss, ko var optimizēt. Kad vairs nav kur piesieties, var sākt celt servera jaudu. Viedoklis mans subjektīvais, nevienam neko neuzspiežu un nepasniedzu kā vienīgo patiesību. Vienkārši esmu slinks, vecs un negribu labot svešu kodu... :D Quote Link to comment Share on other sites More sharing options...
codez Posted March 12, 2020 Report Share Posted March 12, 2020 @briedis, ok skaidrs, mix ir vienkārši abstrakcija virsū webpackam, kurā principā populārākās webpack rules ir abstrahētas ar funkciju, taču, ja būs specifiski configa parametri, tik un tā nāksies configurēt +- tikpat, cik plikā webpakā. Un tik vienkāršotā situācijā arī pliks webpack config nebūs īpaši kompleksāks. Praksē tas ir tradeoffs - jo augstāka abstrakcija, jo mazāk kontroles - tātad, ja pietiek tik kontroles, cik sniedz mix, tad noteikti ir ok, ja nē, ērtāk , manuprāt, būs izmantot pliku webpack. Tikai īsti nav skaidrs, kāpēc mix configā ir jāekstrakto katra 3rd party bibliotēka vai jānorāda stylesheeti, ja webpack automātiski māk iekļaut visas šādas bibliotēkas. Quote Link to comment Share on other sites More sharing options...
codehighriga Posted March 12, 2020 Report Share Posted March 12, 2020 12 minutes ago, codez said: @briedis, ok skaidrs, mix ir vienkārši abstrakcija virsū webpackam, kurā principā populārākās webpack rules ir abstrahētas ar funkciju, taču, ja būs specifiski configa parametri, tik un tā nāksies configurēt +- tikpat, cik plikā webpakā. Un tik vienkāršotā situācijā arī pliks webpack config nebūs īpaši kompleksāks. Praksē tas ir tradeoffs - jo augstāka abstrakcija, jo mazāk kontroles - tātad, ja pietiek tik kontroles, cik sniedz mix, tad noteikti ir ok, ja nē, ērtāk , manuprāt, būs izmantot pliku webpack. Ko Parcel dara labāk / citādāk? Quote Link to comment Share on other sites More sharing options...
codez Posted March 12, 2020 Report Share Posted March 12, 2020 (edited) 20 minutes ago, codehighriga said: Ko Parcel dara labāk / citādāk? Es Parcel neesmu izmantojis. Izmantoju Webpack. Edited March 12, 2020 by codez 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.