ប្រូក្រាមីងប្រូក្រាមីង
តាមដាន៖
ការប្រើប្រាស់ Dependency ក្នុងការ​សរសេរសូហ្វវែរ៍

ថ្ងៃទី៖23 មករា 2021

ប្រវែង៖5 នាទី

Detail's card image

ក្នុងការ​សរសេរសូហ្វវែរ៍សព្វថ្ងៃនេះ យើងតែងតែប្រើកូដ ឫសូហ្វវែរ៍ដែលមានស្រាប់មកប្រើជាជាង​សរសេរ​ខ្លួន​ឯងទាំងអស់​ (Reuse)។ ហើយក្នុងការ​យក​កូដដែលមានស្រាប់លើអុីធឺណេត​មកប្រើនេះ (Package, Library ឫ Module) ដែលយើងហៅវាថា Dependency។

ការប្រើ Dependency នេះជួយឲ្យយើងអាច​សរសេរកូដបានលឿន និងងាយស្រួលជាងមុនដោយ​យកកូដដែលមានស្រាប់ដែលគេបានចែករំលែកជាលក្ខណៈ Open Source មកប្រើ​ទៅ​តាម​ការ​ដែល​យើង​ត្រូវការ។ អ្វីទៅជា Dependency ឲ្យប្រាកដ? Dependency ជា​កូដដែលយើង​យកប្រើនៅក្នុង Project របស់យើងក្នុងលក្ខណៈ Package, Library ឫ Module ជំនួសឲ្យការដែលត្រូវ​សរសេរ​ខ្លួនឯង។ ជាទូទៅ​ស្ទើរតែ​គ្រប់ភាសាប្រូក្រាមីង​ទៅហើយ​ដែលមាន Registry ដែលអាចឲ្យប្រូក្រាមើរ៍អាចចែក…

ចាវ៉ាស្ក្រីបត៍ក្នុងប្រៅស៍ស័រ

ថ្ងៃទី៖13 តុលា 2020

ប្រវែង៖2 នាទី

Detail's card image

ភាសាចាវ៉ាស្ក្រីបត៍ (JavaScript) ភាសាចាវ៉ាស្ក្រីបត៍តាំងពីដំបូងមកត្រូវបានគេសរសេរឡើងមកដើម្បីតែដំណើរការក្នុងប្រៅស៍ស័រតែប៉ុណ្ណោះ។ ចាវ៉ាស្ក្រីបត៍ត្រូវបានគេសរសេរឡើងមកដោយប្រើពេលតែដប់ថ្ងៃប៉ុណ្ណោះកាលពីជំនាន់ឆ្នាំ 90។

ប្រការនេះហើយដែលនាំឲ្យវាមិនមែនជាភាសារដែលមានមុខងារ និងគុណសម្បត្តិល្អគ្រប់គ្រាន់ប៉ុន្មាននោះទេ។ ដោយហេតុបែបហ្នឹងហើយបានជាគេព្យាយាម​ប្រើភាសាផ្សេងមកជំនួសវិញសម្រាប់សរសេរវែបសាយដូចដែលយើងបានឃើញមានមកដូចជា Flash, Java។ តែយ៉ាងណាការធ្វើបែបនេះក៏មិនបានធ្វើឲ្យការ​អភិវឌ្ឍន៍វែបសាយប្រសើរជាងមុនដែរ។ តែវាជាកត្តាជួយជំរុញឲ្យចាវ៉ាស្ក្រីបត៍បានវិវត្តន៍ជារឿយៗជារាងរាល់ឆ្នាំរហូតបានក្លាយជាភាសាដ៏មានឥទ្ធិពលដូចសព្វថ្ងៃនេះ។ ការព្យាយាមប្រើភាសាផ្សេងជំន…

គួរប្រើ Storage មួយណាសម្រាប់វែបសាយ?

ថ្ងៃទី៖23 កក្កដា 2020

ប្រវែង៖2 នាទី

Detail's card image

បើចង់ផ្ទុកទិន្នន័យរបស់វែបសាយដែលយើងធ្វើនៅក្នុង Browser យើងមានវិធីច្រើនក្នុងការផ្ទុក ឫ Cache ទិន្នន័យ ឫ Static Resources ផ្សេងៗ។ តើយើងគួរប្រើ Storage មួយណាល្អសម្រាប់ Client-Side Data Storing? ហើយធ្វើយ៉ាងណាដើម្បីទិន្នន័យមានសុវត្តិភាពល្អ? ថ្ងៃនេះយើងមកមើលពីប្រធានបទនេះទាំងអស់គ្នា! TL;DR សម្រាប់ទិន្នន័យតិចដូចជា String ដែលជា Key ខ្លីៗ យើងគួរប្រើ LocalStorage។

សម្រាប់ទិន្នន័យច្រើន Storage យើងគួរតែប្រើនោះគឺ IndexedDB ព្រោះវា Asynchronous ចំណែកឯ LocalStorage និង SessionStorage ដំណើរការបែប Synchronous ដែលវាអាចប្លុក Main Thread បាន។ សម្រាប់ Cache យើងគួរតែប្រើ Cache Storage API (Service Workers)។ ប្រភេទរបស់ Web Storage បើសិនជាយើ…

អ្វីទៅ UX/UI?

ថ្ងៃទី៖22 កក្កដា 2020

ប្រវែង៖1 នាទី

Detail's card image

សួស្ដី! ថ្ងៃនេះមានសំណួរមួយសួរមកពីប្អូនម្នាក់គាត់បានសួរខ្ញុំថា “អ្វីទៅជា UX/UI?”។ តាមពិតទៅខ្ញុំក៏មិនជាអ្នកជំនាញ​ឌីហ្សាញ​អីដែរ តែការងារឌីហ្សាញក៏ជាមួយក្នុងចំណោមការងារដែលខ្ញុំចាប់អារម្មណ៍ ហើយខ្ញុំក៏ធ្លាប់បានរៀនពីវា និងធ្លាប់បានធ្វើការងារឌីហ្សាញកម្មវិធី និងវែបសាយមួយចំនួនដែរកន្លងមកតួយ៉ាងប្លក់ដែលអ្នកទាំងអស់គ្នាកំពុងអាននេះផ្ទាល់។

អ៊ីចឹងហើយប្រហែលជាមានរឿងដែលខ្ញុំអាចនិយាយបានខ្លះដែរសម្រាប់ប្រធានបទនេះ។ អ៊ីចឹងយើងមកមើលទាំងអស់គ្នា! អ្វីទៅជា UX និង UI? ដំបូងបំផុតនោះគឺជំនាញ UX/UI មិនមែនសម្រាប់តែការរចនាវែបសាយ កម្មវិធីកុំព្យូទ័ កម្មវិធីទូរស័ព្ទ និងផលិតផលបច្ចេកវិទ្យា​តែ​ប៉ុណ្ណោះទេ។ យើងត្រូវការវាសម្រាប់ការឌីហ្សាញគ្រប់សព្វបែបយ៉ាងតាំងពីរបស…

អ្វីទៅ Git Stash?

ថ្ងៃទី៖2 កក្កដា 2020

ប្រវែង៖3 នាទី

Detail's card image

👉 Version Control ដោយប្រើកម្មវិធីគ្រប់គ្រងកំណែ Git បើយើងចេះប្រើ Git មែនយើងត្រូវតែឆ្លើយសំណួរនេះបាន “អ្វីទៅ Git Stash?” ដែលជាសំណួរដែលគេតែងតែសួរបើគេចង់សាកថាយើងពិតជាចេះប្រើ Git ស្ទាត់ពិតប្រាកដ ឫអត់នោះ។ អ៊ីចឹងយើងមកមើលទាំងអស់គ្នាថាយើងអាចប្រើ Git Stash នេះដើម្បីអ្វី។ អ្វីទៅជា Git Stash? Stash ជាមុខងារមួយក្នុង Git ដែលយើងអាចប្រើដើម្បីលុបរាល់ការកែប្រែមិនថាកូដ ឫហ្វាល់ផ្សេងៗក្នុង Branch ដែលយើងកំពុងធ្វើការ ហើយរក្សារទុកនៅកន្លែងមួយដែលយើងអាចទាញយកមកវិញនៅពេលក្រោយបាន។

ករណីដែលយើងប្រើ Stash ករណីដែលយើងប្រើ Stash មានច្រើនករណី តែជាទូទៅខ្ញុំប្រើវាពេល៖ ចង់ កូដពី ទាំងដែលមានកូដត្រូវបានកែរួចហើយខ្លះ ហើយវា ជាមួយកូដនៅលើ ។ ចង់ប្តូរ Branch ខណៈដែល…

Arrow Function កំណែចាវ៉ាស្ក្រីបត៍ ES6

ថ្ងៃទី៖1 កក្កដា 2020

ប្រវែង៖2 នាទី

Detail's card image

Arrow Function ឫ Fat Arrow Function ជារបៀបសរសេរ Function មួយបែបក្នុងភាសាចាវ៉ាស្ក្រីបត៍ដែលត្រូវបានបញ្ចេញក្នុងកំណែ ES6។ ចំណុចពិសេសរបស់វាគឺ ខ្លីងាយស្រួលសរសេរ ហើយវាមិនមាន Bindings ផ្ទាល់ខ្លួនរបស់វាទេ។

ពេលប្រើ Arrow Function យើងនឹងមិនអាចហៅ , , ឫ បានទេព្រោះវាអត់មានរបស់ទាំងអស់នេះក្នុងខ្លួនវាទេ។ ជា keyword មួយដែលជាទូទៅយើងប្រើសម្រាប់ហៅ Key ឫ Property របស់ Object ឫ Class។ តែសម្រាប់ Arrow Function វានឹងហៅ របស់ Function, Closure ឫ Class មេវិញ។ ជា Variable មួយដែលជា Array នៅក្នុង Function មួយដែលអាចឲ្យយើងហៅ Arguments របស់ Function នោះបាន។ ជា keyword មួយដែលយើងប្រើសម្រាប់ហៅ​ constructor របស់ Parent Class។ Arrow Function មិនអាចប…

ដេណូ - ណូដដែលល្អជាងមុន?

ថ្ងៃទី៖17 មិថុនា 2020

ប្រវែង៖2 នាទី

Detail's card image

ដេណូ (Deno) បានចេញកំណែផ្លូវការដំបូង v1 នៅកំឡុងពាក់កណ្ដាលខែមុនខែឧសភា។ បើអ្នកតាមដានពីពិភពប្រូក្រាមមីងចុងក្រោយ ប្រហែលជាបានលឺមកហើយ។

វាទទួលបានចំណាប់អារម្មណ៍ច្រើនសមគួរណាស់ ហើយមានរហូតដល់អ្នកខ្លះគេនិយាយថ្ងៃអវសានរបស់ណូដជិតមកដល់ហើយទៀតផង។ អ៊ីចឹងថ្ងៃនេះ យើងមកមើលថាតើដេណូជាអ្វី វាខុសពីណូដយ៉ាងណាខ្លះ ហើយវាពិតជាល្អជាងណូដមែនដែរឫទេ។ ##ដេណូជាអ្វី? ចំណុចខុសគ្នារវាងដេណូ និង ណូដ ដេណូ (Deno) ជាប្រូក្រាមដែល Secure សម្រាប់ដំណើការ JavaScript និង TypeScript ក្រៅវែបប្រៅស័រ​ថ្មីមួយ។ អ្នកដែលបង្កើតដេណូ និងណូដជាមនុស្សតែមួយគឹដោយលោក​ Ryan Dahl។ ដេណូប្រើ TypeScript, Rust, Tokio (សម្រាប់ Event Loop) និង V8 (Rusty-V8 ជា JavaScript Engine) ដែលខុសពីណូដដែលប…

អ្វីទៅ Static Site, SPA និង SSR?

ថ្ងៃទី៖13 មិថុនា 2020

ប្រវែង៖2 នាទី

Detail's card image

ក្នុងអត្ថបទនេះ ខ្ញុំនិយាយពីប្រភេទរបស់វែបសាយដែលមាន Static Site, SPA និង SSR។ អ្នកគួរតែយល់ពីគំនិតគោលរបស់ប្រភេទវែបសាយទាំងអស់នេះ ដើម្បីអាចរើសយកប្រភេទដែលត្រឹមត្រូវទៅតាមតម្រូវការរបស់វែបសាយដែលអ្នកនឹងធ្វើ។

ជាដំបូងយើងត្រូវយល់ថារាល់វែបសាយទាំងអស់ត្រូវដំណើរការនៅលើ Browser។ នៅពេលយើងចូលទៅកាន់វែបសាយណាមួយ Browser ផ្ញើរសំណើរទៅកាន់ Server ហើយ Server បញ្ជូនត្រលប់មកវិញជា Response មួយ។ ហើយបើ Response នោះជាកូដ HTML នោះ Browser នឹងយកបង្ហាញជាវែបសាយ។ តែថាកូដ HTML ដែល Server បញ្ជូនត្រលប់មកនោះ វាត្រូវបានបង្កើតឡើងដោយរបៀបណា? អ្វីទៅ Static Site? ដំបូងគេនោះគឺជាប្រភេទ Static​ Site។ រាល់កូដទាំងអស់ត្រូវបានបង្កើតហើយជាស្រេចមុននឹងគេយកវាទៅដាក់នៅលើ Server…

Version Control ដោយប្រើកម្មវិធីគ្រប់គ្រងកំណែ Git

ថ្ងៃទី៖11 មិថុនា 2020

ប្រវែង៖1 នាទី

Detail's card image

##តើអ្វីទៅជាការគ្រប់គ្រងកំណែរ? ហើយអីទៅ Git? Version Control ឫ ការគ្រប់គ្រងកំណែរ (VSC) ជាការគ្រប់គ្រងរាល់កំណែប្រែនៃកូដ ឫ ឯកសារផ្សេងៗនៅក្នុងគម្រោងសូហ្វវែរ៍។ Git ជា​កម្មវិធី​គ្រប់គ្រង​កំណែរ​ដែល​វា​អាច​ជួយ​យើង​កត់​ត្រា​រាល់​កំណែ​ប្រែ​របស់​កូដ​ទាំង​អស់​ជា​កំណែរ​ៗ ហើយវាមានភាពងាយស្រួលមែនទែនក្នុងការត្រលប់ទៅកំណែមុនបើមានអីខុសប្រកតី ឫប្ដូរមកកំណែចុងក្រោយវិញ។

ពេលប្រើ Git យើងបង្កើតវាជា Repository មួយ។ យើងមានលទ្ធភាពចែកវាជា Branch ដែល Branch នីមួយៗយើងអាចធ្វើការផ្សេងៗពីគ្នាបានដែលវាជួយឲ្យកូដយើងមិនជាន់គ្នា។ ពេលធ្វើរួច យើងអាចដាក់វាបញ្ជូលគ្នាវិញ (Merge) ទៅក្នុង Main Branch ដែលយើងភាគច្រើនហៅវាថា Master Branch វិញបាន។ ម្យ៉ាងទៀតមុននឹង Merge…

ពេលធ្វើ Software Project មិនគួររំលងរបស់ទាំងអស់នេះ

ថ្ងៃទី៖9 មិថុនា 2020

ប្រវែង៖3 នាទី

Detail's card image

សួស្ដី! ថ្ងៃនេះខ្ញុំសូមនិយាយដល់ Tools ដែលខ្ញុំតែងតែប្រើពេលធ្វើ Software Project។ តែមុននឹងចាប់ផ្ដើម ខ្ញុំសូមនិយាយដល់ SDLC របស់ SWEBOK សិន។

អីគេទៅ SWEBOK? SWEBOK មកពីពាក្យថា SoftWare Engineering Body of Knowledge ឫយើងហៅវាថាជាស្ដង់ដារដែលណែនាំពីវិស្វកម្មសូហ្វវែរ៍។ ហើយ SDLC មកពីពាក្យថា Software Development Life Cycle ដែលវានិយាយពីវដ្ដជីវិតនៃការអភិវឌ្ឍន៍សូហ្វវែរ៍។ នៅក្នុង SDLC គេបែងចែកវាជា 5 ដំណាក់កាលសំខាន់ៗដែលរួមមាន៖ Requirement Analysis ៖ ក្នុងដំណាក់កាលដំបូងនេះ គេត្រូវសិក្សាពីសូហ្វវែរ៍ដែលយើងនឹងធ្វើសិនថាអាចទៅរួច ឫក៏អត់? ហើយបើសិនជាទៅរួចតើសូហ្វវែរ៍ដែលយើងនឹងធ្វើគួរមានមុខងារ និងលក្ខណៈសម្បត្តិអ្វីខ្លះ។ Design ៖ បន្ទាប់មកយើងត្រ…

Node.js ចំណុចថ្មីមួយរបស់ចាវ៉ាស្ក្រីបត៍

ថ្ងៃទី៖8 មិថុនា 2020

ប្រវែង៖1 នាទី

Detail's card image

ហេលឡូវើរ៍ល! ថ្ងៃនេះខ្ញុំចង់និយាយពីចាវ៉ាស្ក្រីបត៍បន្តដោយយើងមកស្វែងយល់ពីណូដ។​ អ៊ីចឹងតោះ! ##អីទៅជាណូដ? ណូដជាចាវ៉ាស្ក្រីបត៍ runtime ដែលវាត្រូវបានសរសរឡើងដោយប្រើ Chromium V8 (ចាវ៉ាស្ក្រីបត៍អ៊ីនជីន) និង LibUV (សម្រាប់ Cross-platform Asynchronous I/O)។ បើនិយាយស្រួលស្ដាប់ទៅណូដផ្ដល់ Environment មួយដែលយើងអាចដំណើរការ​កូដចាវ៉ាស្រ្កីបត៍បានដោយមិនចាំបាច់ត្រូវការ Browser’s Engine ទៀតនោះទេ។

ណូដប្រើ​ម៉ូឌែល​ Single​ Thread​, Event​ Loop​, Asynchronous​ Event​-Driven​, Non​-Blocking​ IO​។ វា​មាន​មាឌតូច​ និង​មានប្រសិទ្ធភាព​ក្នុង​ការងារ​ Concurrent​ Connection​ និង​ធ្វើការងារ​ IO​ បានយ៉ាងល្អប្រសើរ។ ចា​វ៉ាស្ក្រី​បត៍​អនុញ្ញា​ត​ឱ្យ​គេ​អាចប​ង…

អ៊ីកម៉ាស្ក្រីបត៍ (ECMAScript)

ថ្ងៃទី៖7 មិថុនា 2020

ប្រវែង៖2 នាទី

Detail's card image

ហេឡូវើរ៍ល! សួរស្ដី! បើអ្នកទាំងអស់គ្នារៀនកូដ ប្រាកដជាបានលឺពីចាវ៉ាស្ក្រីបត៍ហើយ ហើយក៏ប្រហែលជាបានលឺមកផងដែរថាវាជាភាសាមួយដែលមានគេស្អប់ និងឈឺក្បាលនឹងវាច្រើនបំផុតមួយដែរ។ ថ្ងៃនេះយើងមក​សិក្សាពី​កំណែអ៊ីកម៉ាស្រីបត៍ដែលជាស្ដង់ដាររបស់ចាវ៉ាស្ក្រីបត៍សង្ខេបៗទាំងអស់គ្នា។

អ៊ីកម៉ាអន្តរជាតិ (ecma international​ — European Computer Manufacturers Association International) ជាសមាគមន៍បង្កើតឡើងមកដើម្បីចុះស្ដង់ដារប្រព័ន្ធព័ត៌មាន និង​ទំនាក់ទំនង។ មុនដំបូងអត់មាន International ទេសម្រាប់តែ​ទ្វីប​អឺរ៉ុបទេ តែក្រោយមក​ថែម International ដើម្បីពង្រីកស្ដង់ដារនេះសម្រាប់ពិភពលោកទាំងមូល។ អ៊ីកម៉ាស្ក្រីបត៍ ជាស្ដង់ដារសម្រាប់ភាសាស្ក្រីបត៍។ ចាវ៉ាស្ក្រីបត៍ ដែលជាកំ…

Previous
1
2
Next
រូបភាពជ្រើសរើស
កំពុងឡូដ...
អត្ថបទ​ពេញនិយម
Article's thumbnail

ការប្រើប្រាស់ Dependency ក្នុងការ​សរសេរសូហ្វវែរ៍

Article's thumbnail

ដំណើរកម្សាន្តបោះតង់ និងឡើងជួរភ្នំឱរ៉ាល់របស់ខ្ញុំ

Article's thumbnail

ពេលធ្វើ Software Project មិនគួររំលងរបស់ទាំងអស់នេះ

Article's thumbnail

មានអ្វីកើតឡើងពេល Apple ប្ដូរមក ARM?

Article's thumbnail

អ្វីទៅ UX/UI?

អត្ថបទ​ថ្មីៗ
Article's thumbnail

ការប្រើប្រាស់ Dependency ក្នុងការ​សរសេរសូហ្វវែរ៍

Article's thumbnail

លាហើយបណ្ដាញសង្គម

Article's thumbnail

រឿងដែលកំពុងតែកើតឡើងមកលើ Intel

Article's thumbnail

ចាវ៉ាស្ក្រីបត៍ក្នុងប្រៅស៍ស័រ

Article's thumbnail

គួរប្រើ Storage មួយណាសម្រាប់វែបសាយ?

You've reached singularity, the beginning of time!