ការប្រៀបធៀបបរិស្ថានអភិវឌ្ឍន៍។ កម្មវិធីនិពន្ធ ឬ IDE? ការប៉ុនប៉ងមួយទៀតក្នុងការវិភាគ។ ការកសាង ការបំបាត់កំហុស និងការបំពេញទម្រង់

ការសរសេរក្នុង Python ដោយប្រើ IDLE ឬ Python Shell គឺងាយស្រួលណាស់នៅពេលនិយាយអំពីរឿងសាមញ្ញ ប៉ុន្តែនៅពេលដែលគម្រោងធំឡើង ការសរសេរកម្មវិធីក្លាយជាការឈឺចាប់។ ការប្រើ IDE ឬសូម្បីតែកម្មវិធីនិពន្ធកូដដ៏ល្អអាចធ្វើឱ្យជីវិតរបស់អ្នកកាន់តែងាយស្រួល។ ប៉ុន្តែសំណួរគឺ - តើត្រូវជ្រើសរើសអ្វី?

នៅក្នុងអត្ថបទនេះ យើងនឹងឆ្លងកាត់ឧបករណ៍មូលដ្ឋានដែលអនុញ្ញាតឱ្យអ្នកសរសេរនៅក្នុង Python ។ យើងនឹងមិនជ្រើសរើសសម្រាប់អ្នកទេ។ ជម្រើសល្អបំផុតប៉ុន្តែយើងនឹងពិនិត្យមើលគុណសម្បត្តិ និងគុណវិបត្តិនីមួយៗ និងជួយអ្នកធ្វើការសម្រេចចិត្តប្រកបដោយការយល់ដឹង។

តើ IDE និង Code Editor ជាអ្វី?

IDE (ឬបរិស្ថានអភិវឌ្ឍន៍រួមបញ្ចូលគ្នា) គឺជាកម្មវិធីដែលត្រូវបានរចនាឡើងសម្រាប់ការអភិវឌ្ឍន៍កម្មវិធី។ ដូចដែលឈ្មោះបានបង្ហាញ IDE នាំមកនូវឧបករណ៍ជាច្រើនដែលត្រូវបានរចនាឡើងជាពិសេសសម្រាប់ការអភិវឌ្ឍន៍។ ឧបករណ៍ទាំងនេះជាធម្មតារួមបញ្ចូលកម្មវិធីនិពន្ធដែលត្រូវបានរចនាឡើងដើម្បីធ្វើការជាមួយកូដ (ដូចជាការបន្លិចវាក្យសម្ព័ន្ធ និងការបំពេញដោយស្វ័យប្រវត្តិ); បង្កើត, ដំណើរការ, និងឧបករណ៍បំបាត់កំហុស; និងទម្រង់មួយចំនួននៃប្រព័ន្ធគ្រប់គ្រងកំណែ។

IDE ភាគច្រើនគាំទ្រភាសាសរសេរកម្មវិធីច្រើន និងមានមុខងារជាច្រើន ដែលមានន័យថាពួកវាអាចមានទំហំធំ ចំណាយពេលយូរដើម្បីទាញយក និងដំឡើង ហើយទាមទារចំណេះដឹងទូលំទូលាយដើម្បីប្រើប្រាស់ឱ្យបានត្រឹមត្រូវ។

ម្យ៉ាងវិញទៀត មានកម្មវិធីកែកូដ ដែលជាកម្មវិធីនិពន្ធអត្ថបទដែលមានការបន្លិចវាក្យសម្ព័ន្ធ និងសមត្ថភាពធ្វើទ្រង់ទ្រាយកូដ។ កម្មវិធីកែកូដល្អភាគច្រើនអាចដំណើរការកូដ និងប្រើកម្មវិធីបំបាត់កំហុស ហើយកម្មវិធីដែលល្អបំផុតក៏អាចធ្វើអន្តរកម្មជាមួយប្រព័ន្ធគ្រប់គ្រងកំណែផងដែរ។ បើប្រៀបធៀបទៅនឹង IDE កម្មវិធីកែកូដល្អជាធម្មតាស្រាលជាង និងលឿនជាង ប៉ុន្តែជាញឹកញាប់មានតម្លៃតិចជាងមុខងារ។

តម្រូវការសម្រាប់បរិយាកាសអភិវឌ្ឍន៍ល្អ។

ដូច្នេះតើយើងត្រូវការអ្វីខ្លះពីបរិយាកាសអភិវឌ្ឍន៍? សំណុំនៃមុខងារនៃបរិស្ថានផ្សេងៗគ្នាអាចខុសគ្នា ប៉ុន្តែមានសំណុំនៃរឿងជាមូលដ្ឋានដែលជួយសម្រួលដល់ការសរសេរកម្មវិធី៖

  • ការរក្សាទុកឯកសារ។ ប្រសិនបើ IDE ឬកម្មវិធីនិពន្ធមិនផ្តល់ឱ្យអ្នកនូវសមត្ថភាពក្នុងការរក្សាទុកការងាររបស់អ្នក ហើយក្រោយមកបើកអ្វីៗទាំងអស់ក្នុងស្ថានភាពដូចគ្នា នៅពេលដែលអ្នកបិទវា នោះវាមិនមែនជា IDE ច្រើននោះទេ។
  • ដំណើរការកូដពីបរិស្ថាន។ រឿងដដែលនេះ ប្រសិនបើអ្នកត្រូវការចេញពីបរិស្ថានដើម្បីដំណើរការកូដ នោះវាគ្មានអ្វីក្រៅពីកម្មវិធីនិពន្ធអត្ថបទសាមញ្ញនោះទេ។
  • ជំនួយការបំបាត់កំហុស។ លទ្ធភាពនៃជំហានតាមរយៈកូដគឺ មុខងារមូលដ្ឋាន IDEs ទាំងអស់ និងកម្មវិធីកែកូដល្អភាគច្រើន។
  • ការបន្លិចវាក្យសម្ព័ន្ធ។ សមត្ថភាពក្នុងការស្វែងរកយ៉ាងឆាប់រហ័ស ពាក្យគន្លឹះ, variables ជាដើម ធ្វើឱ្យការអាន និងស្វែងយល់កូដកាន់តែងាយស្រួល។
  • ការធ្វើទ្រង់ទ្រាយកូដដោយស្វ័យប្រវត្តិ។ កម្មវិធីនិពន្ធ ឬ IDE ណាមួយដែលតាមពិតនឹងស្គាល់សញ្ញាណមួយបន្ទាប់ពីមួយរយៈ ឬសម្រាប់ការបញ្ចេញមតិ ហើយនឹងចូលបន្ទាត់បន្ទាប់ដោយស្វ័យប្រវត្តិ។

ជាការពិតណាស់ មានលក្ខណៈពិសេសជាច្រើនទៀតដែលអ្នកមិនចង់ខកខាន ប៉ុន្តែចំណុចខាងលើគឺជាលក្ខណៈមូលដ្ឋានដែលបរិយាកាសអភិវឌ្ឍន៍ល្អគួរមាន។

ឥឡូវនេះសូមក្រឡេកមើលឧបករណ៍មួយចំនួន គោលបំណងទូទៅដែលអាចត្រូវបានប្រើសម្រាប់ការអភិវឌ្ឍន៍ Python ។

កម្មវិធីនិពន្ធ និង IDEs ដែលមានការគាំទ្រ Python

Eclipse + PyDev

ប្រសិនបើអ្នកនៅជិតសហគមន៍ប្រភពបើកចំហ នោះអ្នកប្រហែលជាធ្លាប់បានលឺអំពី Eclipse។ មានសម្រាប់ Linux, Windows និង OS X, Eclipse គឺជាប្រភពបើកចំហពិតប្រាកដ IDE សម្រាប់ការអភិវឌ្ឍន៍ Java ។ មានផ្នែកបន្ថែម និងផ្នែកបន្ថែមជាច្រើនដែលធ្វើឱ្យ Eclipse មានប្រយោជន៍សម្រាប់កិច្ចការផ្សេងៗ។

ផ្នែកបន្ថែមមួយបែបនេះគឺ PyDev ដែលផ្តល់នូវកុងសូល Python អន្តរកម្ម និងការបំបាត់កំហុស និងសមត្ថភាពបំពេញកូដ។ ការដំឡើងវាគឺសាមញ្ញ៖ បើកដំណើរការ Eclipse ជ្រើសរើស Help → Eclipse Marketplace បន្ទាប់មកស្វែងរក PyDev ។ ចុចដំឡើង ហើយចាប់ផ្តើម Eclipse ឡើងវិញប្រសិនបើចាំបាច់។

គុណសម្បត្តិ៖ ប្រសិនបើអ្នកបានដំឡើង Eclipse រួចហើយ នោះការដំឡើង PyDev នឹងលឿន និងរលូន។ យូ អ្នកប្រើប្រាស់ដែលមានបទពិសោធន៍ Eclipse នឹងមិនមានបញ្ហាក្នុងការរៀនផ្នែកបន្ថែមនេះទេ។

គុណវិបត្តិ៖ ប្រសិនបើអ្នកទើបតែចាប់ផ្តើមរៀន Python ឬការអភិវឌ្ឍន៍ជាទូទៅ Eclipse អាចជាបន្ទុកដ៏លើសលប់។ សូមចងចាំថាយើងបាននិយាយថា IDEs មានទំហំធំ ហើយត្រូវការបទពិសោធន៍បន្ថែម ការប្រើប្រាស់ពេញលេញ? ទាំងអស់នេះអាចត្រូវបាននិយាយអំពី Eclipse ។

អត្ថបទដ៏អស្ចារ្យ

ប្រភេទ៖ កម្មវិធីនិពន្ធកូដ
គេហទំព័រ៖ http://www.sublimetext.com

សរសេរដោយវិស្វករ Google ដែលមានក្តីសុបិនចង់អ្នកកែអត្ថបទល្អជាង Sublime Text គឺជាកម្មវិធីកែកូដដ៏ពេញនិយម។ មាននៅលើគ្រប់វេទិកាទាំងអស់ Sublime Text មានការគាំទ្រសម្រាប់កែសម្រួលកូដ Python ក៏ដូចជាសំណុំនៃផ្នែកបន្ថែមដែលហៅថាកញ្ចប់ដែលពង្រីកវាក្យសម្ព័ន្ធ និងសមត្ថភាពកែសម្រួលរបស់វា។

ការដំឡើងកញ្ចប់ Python បន្ថែមអាចជាល្បិច - កញ្ចប់ Sublime Text ទាំងអស់ត្រូវបានសរសេរនៅក្នុង Python ដូច្នេះការដំឡើងកញ្ចប់សហគមន៍អាចតម្រូវឱ្យដំណើរការស្គ្រីប Python ដោយផ្ទាល់នៅក្នុងកម្មវិធីនិពន្ធ។

គុណសម្បត្តិ:y អត្ថបទដ៏អស្ចារ្យ ចំនួនធំអ្នកគាំទ្រ។ ក្នុងនាមជាអ្នកកែកូដ អត្ថបទ Sublime មានល្បឿនលឿន ទម្ងន់ស្រាល និងត្រូវបានគាំទ្រយ៉ាងល្អ។

គុណវិបត្តិ៖ Sublime Text មិនគិតថ្លៃទេ ទោះបីជាអ្នកអាចប្រើរយៈពេលសាកល្បងដរាបណាអ្នកចូលចិត្តក៏ដោយ។ ការដំឡើងផ្នែកបន្ថែមអាចប្រែទៅជាដំណើរស្វែងរកមួយផ្សេងទៀត។ លើសពីនេះ កម្មវិធីនិពន្ធមិនគាំទ្រការកែកំហុស ឬដំណើរការកូដទេ។

អាតូម

ប្រភេទ៖ កម្មវិធីនិពន្ធកូដ
គេហទំព័រ៖ https://ato.io/

មាននៅលើវេទិកាទាំងអស់ Atom ត្រូវបានគេហៅថា "កម្មវិធីនិពន្ធអត្ថបទដែលអាចលួចចូលបាននៃសតវត្សទី 21" ។ អាតូមត្រូវបានសរសេរដោយប្រើអេឡិចត្រុង - ក្របខ័ណ្ឌសម្រាប់បង្កើតកម្មវិធីផ្ទៃតុឆ្លងវេទិកាដោយប្រើ JavaScript, HTML និង CSS - និងមានផ្នែកបន្ថែមជាច្រើន។ ការគាំទ្រ Python ក៏អាចត្រូវបានបើកដោយប្រើផ្នែកបន្ថែមដែលអាចត្រូវបានដំឡើងដោយផ្ទាល់ទៅក្នុង Atom ។

គុណសម្បត្តិ៖ គាំទ្រនៅលើវេទិកាទាំងអស់ អរគុណដល់ Electron ។ Atom មានទម្ងន់ស្រាល និងរហ័សក្នុងការទាញយក និងផ្ទុក។

គុណវិបត្តិ៖ ការ​គាំទ្រ​សម្រាប់​ការ​សាងសង់ និង​ការ​បំបាត់​កំហុស​មិន​ត្រូវ​បាន​ភ្ជាប់​មក​ជាមួយ​ទេ ប៉ុន្តែ​ត្រូវ​បាន​បន្ថែម​តាម​រយៈ​ផ្នែក​បន្ថែម។ ដោយសារតែ Atom ត្រូវបានសរសេរដោយប្រើ Electron វាតែងតែដំណើរការជាដំណើរការ JavaScript មិនមែនដូចនោះទេ។ កម្មវិធីដើម.

GNU Emacs

ប្រភេទ៖ កម្មវិធីនិពន្ធកូដ
គេហទំព័រ៖ https://www.gnu.org/software/emacs/

ជាយូរមុនសង្រ្គាម iPhone-Android មុនសង្រ្គាម Linux-Windows សូម្បីតែមុនសង្គ្រាម PC-Mac មានសង្រ្គាមអ្នកកែសម្រួលជាមួយ GNU Emacs ជាអ្នកប្រយុទ្ធម្នាក់។ ត្រូវបានពិពណ៌នាថាជា "កម្មវិធីនិពន្ធអត្ថបទដែលអាចពង្រីកបាន ប្ដូរតាមបំណង ឯកសារដោយខ្លួនឯង" GNU Emacs បាននៅជុំវិញស្ទើរតែដរាបណា UNIX ហើយទទួលបានលទ្ធផលដូចខាងក្រោម។

អាចរកបានដោយឥតគិតថ្លៃនៅលើគ្រប់វេទិកាទាំងអស់ (ក្នុងទម្រង់មួយឬមួយផ្សេងទៀត) GNU Emacs ប្រើភាសា Lisp សម្រាប់ការប្ដូរតាមបំណង។ ជាការពិតណាស់ ក៏មានស្គ្រីបប្ដូរតាមបំណងសម្រាប់ Python ផងដែរ។

គុណសម្បត្តិ៖ អ្នកធ្លាប់ស្គាល់ Emacs អ្នកប្រើ Emacs អ្នកចូលចិត្ត Emacs។ Lisp គឺជាភាសាទីពីររបស់អ្នក ហើយអ្នកដឹងថាអ្នកអាចធ្វើអ្វីជាមួយវាបាន។

គុណវិបត្តិ៖ ការប្ដូរតាមបំណងពាក់ព័ន្ធនឹងការសរសេរ (ឬចម្លងការបិទភ្ជាប់) កូដ Lisp នៅក្នុង ស្គ្រីបផ្សេងៗ. ប្រសិនបើមិនមានទេ អ្នកប្រហែលជាត្រូវរៀន Lisp ដើម្បីដោះស្រាយវា។

វី/វីម

ប្រភេទ៖ កម្មវិធីនិពន្ធកូដ
គេហទំព័រ៖ https://www.vim.org/

នៅផ្នែកម្ខាងទៀតនៃសង្រ្គាមអ្នកកែសម្រួលគឺ VI/VIM ។ អាចរកបានតាមលំនាំដើមនៅលើស្ទើរតែគ្រប់ប្រព័ន្ធ UNIX និង Mac OS X, VI បានឈ្នះអ្នកគាំទ្រយ៉ាងច្រើន។ VI និង VIM គឺជាកម្មវិធីកែសម្រួលម៉ូឌុលដែលបំបែកការមើលឯកសារពីការកែសម្រួលវា។ VIM រួមបញ្ចូលអ្វីគ្រប់យ៉ាងដែលមាននៅក្នុង VI រួមទាំងការកែលម្អមួយចំនួនដូចជាភាពអាចរកបាននៃផ្នែកបន្ថែម។ សម្រាប់ប្រភេទផ្សេងៗនៃកិច្ចការ Python អ្នកអាចប្រើ VIMScripts ។

គុណសម្បត្តិ៖ អ្នក​ស្គាល់ VI អ្នក​ប្រើ VI អ្នក​ស្រឡាញ់ VI ។ VIMScripts មិនបំភ័យអ្នកទេ ហើយអ្នកដឹងពីរបៀបពត់វាទៅតាមឆន្ទៈរបស់អ្នក។

គុណវិបត្តិ៖ ដូចទៅនឹង Emacs អ្នកមិនសូវស្រួលក្នុងការស្វែងរក ឬសរសេរស្គ្រីបដើម្បីបន្ថែមសមត្ថភាពអភិវឌ្ឍន៍ Python ហើយអ្នកមិនដឹងថាតើកម្មវិធីនិពន្ធ modal ត្រូវបានគេសន្មត់ថាដំណើរការទាល់តែសោះ។

ស្ទូឌីយោ Visual

គុណសម្បត្តិ៖ ដូចទៅនឹង Eclipse ប្រសិនបើអ្នកបានដំឡើង Visual Studio រួចហើយសម្រាប់គោលបំណងផ្សេងទៀត ការដំឡើង PTVS នឹងមិនមានបញ្ហាទេ។

គុណវិបត្តិ៖ ដូចទៅនឹង Eclipse ដែរ Visual Studio នឹងមានច្រើនបន្តិច ប្រសិនបើអ្នកត្រូវការ Python ប៉ុណ្ណោះ។ លើសពីនេះទៀត ប្រសិនបើអ្នកប្រើលីនុច នោះអ្នកមានបញ្ហា - មិនមាន Visual Studio សម្រាប់វេទិកានេះទេ។

កូដ Visual Studio

ប្រភេទ៖ កម្មវិធីនិពន្ធកូដ
គេហទំព័រ៖ https://code.visualstudio.com/
ឧបករណ៍ Python៖ https://marketplace.visualstudio.com/items?itemName=ms-python.python

Visual Studio Code (មិនត្រូវច្រឡំជាមួយ Visual Studio) គឺជាកម្មវិធីកែកូដដែលមានមុខងារពេញលេញដែលមាននៅលើ Windows, Linux និង Mac OS X។ VS Code គឺជាកម្មវិធីកែសម្រួលប្រភពបើកចំហដែលអាចពង្រីកបានដែលអាចប្ដូរតាមបំណងសម្រាប់កិច្ចការណាមួយ។ ដូច Atom ដែរ VS Code ត្រូវបានបង្កើតឡើងនៅលើ Electron ដូច្នេះវាមានគុណសម្បត្តិ និងគុណវិបត្តិដូចគ្នា។

ការបន្ថែមជំនួយ Python ទៅ VS Code មិនអាចងាយស្រួលជាងនេះទេ ស្វែងរក "Python" នៅក្នុង Marketplace ចុច "Install" ហើយចាប់ផ្តើមកម្មវិធីនិពន្ធឡើងវិញប្រសិនបើចាំបាច់។ VS Code នឹងរកឃើញអ្នកបកប្រែ Python របស់អ្នកដោយស្វ័យប្រវត្តិ និងបណ្ណាល័យដែលបានដំឡើង។

គុណសម្បត្តិ៖ សូមអរគុណដល់ Electron, VS Code មាននៅលើវេទិកាទាំងអស់ជាមួយនឹងមុខងារដ៏អស្ចារ្យ។ លើសពីនេះទៀត កូដប្រភពអាចត្រូវបានរកឃើញនៅក្នុងដែនសាធារណៈ។

គុណវិបត្តិ៖ ដោយសារ Electron ជាប់ពាក់ព័ន្ធ វាមានន័យថា VS Code មិនមែនជាកម្មវិធីដើមទេ។ លើសពីនេះទៀត សាសនារបស់មនុស្សមួយចំនួនរារាំងពួកគេពីការប្រើប្រាស់ផលិតផល Microsoft ។

កម្មវិធីនិពន្ធ និង IDE ដែលរចនាឡើងសម្រាប់ Python

PyCharm

មួយក្នុងចំណោម IDEs ដែលមានមុខងារពេញលេញល្អបំផុតដែលត្រូវបានរចនាឡើងជាពិសេសសម្រាប់ Python គឺ PyCharm ។ មានទាំងជម្រើស IDE ប្រភពបើកចំហ (សហគមន៍) និងបង់ប្រាក់ (វិជ្ជាជីវៈ) ។ PyCharm មាននៅលើ Windows, Mac OS X និង Linux ។

PyCharm គាំទ្រការអភិវឌ្ឍន៍ Python ចេញពីប្រអប់ - បើកឯកសារថ្មី ហើយចាប់ផ្តើមសរសេរកូដ។ អ្នកអាចដំណើរការ និងបំបាត់កំហុសកូដដោយផ្ទាល់ពី PyCharm ។ លើសពីនេះទៀត IDE មានការគាំទ្រសម្រាប់គម្រោង និងការគ្រប់គ្រងកំណែ។

គុណសម្បត្តិ៖ នេះគឺជាបរិស្ថានអភិវឌ្ឍន៍ Python ជាមួយនឹងការគាំទ្រសម្រាប់អ្វីគ្រប់យ៉ាង និងសហគមន៍ដ៏ល្អ។ នៅក្នុងវា ចេញពីប្រអប់ អ្នកអាចកែសម្រួល ដំណើរការ និងបំបាត់កូដ Python ។

គុណវិបត្តិ៖ PyCharm អាចនឹងយឺតក្នុងការផ្ទុក ហើយការកំណត់លំនាំដើមអាចនឹងត្រូវកែសម្រួលសម្រាប់គម្រោងដែលមានស្រាប់។

Spyder

Spyder គឺជា IDE ប្រភពបើកចំហសម្រាប់ Python ដែលធ្វើអោយប្រសើរឡើងសម្រាប់អ្នកវិទ្យាសាស្ត្រទិន្នន័យ។ Spyder ភ្ជាប់មកជាមួយកម្មវិធីគ្រប់គ្រងកញ្ចប់ Anaconda ដូច្នេះវាអាចទៅរួចដែលអ្នកបានដំឡើងវារួចហើយ។

អ្វីដែលគួរឱ្យចាប់អារម្មណ៍អំពី Spyder គឺថាវា។ ទស្សនិកជនគោលដៅគឺជាអ្នកវិទ្យាសាស្ត្រទិន្នន័យដែលប្រើ Python ។ ឧទាហរណ៍ Spyder ដំណើរការបានយ៉ាងល្អជាមួយបណ្ណាល័យវិទ្យាសាស្ត្រទិន្នន័យដូចជា SciPy, NumPy និង Matplotlib ។

Spyder មានមុខងារដែលអ្នកចង់បានពី IDE ស្តង់ដារ ដូចជាកម្មវិធីនិពន្ធកូដដែលមានការបន្លិចវាក្យសម្ព័ន្ធ ការបំពេញកូដ និងសូម្បីតែកម្មវិធីរុករកឯកសារដែលភ្ជាប់មកជាមួយ។

លក្ខណៈពិសេសប្លែករបស់ Spyder គឺវត្តមានរបស់អ្នករុករកអថេរ។ វាអនុញ្ញាតឱ្យអ្នកមើលតម្លៃអថេរក្នុងទម្រង់តារាងខាងស្ដាំនៅខាងក្នុង IDE ។ ការរួមបញ្ចូលជាមួយ IPython/Jupyter ក៏ដំណើរការល្អផងដែរ។

យើងអាចនិយាយអំពី Spyder ថាវា "ចុះមកផែនដី" ជាង IDEs ផ្សេងទៀត។ វាអាចត្រូវបានចាត់ទុកជាឧបករណ៍សម្រាប់គោលបំណងជាក់លាក់ជាជាងជាបរិយាកាសអភិវឌ្ឍន៍បឋម។ អ្វី​ដែល​អស្ចារ្យ​នោះ​គឺ​ថា​វា​មិន​គិត​ថ្លៃ បើក​ចំហ និង​មាន​នៅ​លើ Windows, macOS និង Linux។

គុណសម្បត្តិ៖ អ្នកគឺជាអ្នកវិទ្យាសាស្ត្រទិន្នន័យដែលប្រើ Anaconda ។

គុណវិបត្តិ៖ អ្នកអភិវឌ្ឍន៍ Python ដែលមានបទពិសោធន៍ច្រើនអាចរកឃើញថា Spyder មិនមានលក្ខណៈពិសេសគ្រប់គ្រាន់សម្រាប់ការងារប្រចាំថ្ងៃ ហើយនឹងជ្រើសរើស IDE ឬកម្មវិធីនិពន្ធដែលសំបូរទៅដោយមុខងារច្រើន។

ថុននី

ថុននីត្រូវបានគេហៅថា IDE សម្រាប់អ្នកចាប់ផ្តើមដំបូង។ សរសេរ និងថែរក្សាដោយវិទ្យាស្ថានព័ត៌មាននៅសាកលវិទ្យាល័យ Tartu ក្នុងប្រទេសអេស្តូនី ថុននីមាននៅលើវេទិកាសំខាន់ៗទាំងអស់។

តាមលំនាំដើម Tonny ដំឡើងជាមួយកំណែរួមបញ្ចូល Python ដូច្នេះអ្នកនឹងមិនចាំបាច់ដំឡើងអ្វីផ្សេងទៀតទេ។ អ្នកប្រើប្រាស់កម្រិតខ្ពស់ប្រហែលជាត្រូវផ្លាស់ប្តូរការកំណត់នេះដើម្បីឱ្យ IDE ស្វែងរក និងប្រើបណ្ណាល័យដែលបានដំឡើងរួចហើយ។

គុណសម្បត្តិ៖ អ្នកគឺជាអ្នកសរសេរកម្មវិធី Python ដែលទើបនឹងកើត ហើយអ្នកត្រូវការ IDE ដែលអ្នកអាចលោតចូលសកម្មភាពដោយផ្ទាល់។

គុណវិបត្តិ៖ អ្នកប្រើប្រាស់កម្រិតខ្ពស់នឹងមិនមានមុខងារគ្រប់គ្រាន់ទេ ហើយនឹងជំនួសអ្នកបកប្រែដែលភ្ជាប់មកជាមួយ។ លើសពីនេះទៀតដោយសារភាពថ្មីនៃ IDE បញ្ហាអាចកើតឡើងដែលមិនអាចដោះស្រាយបាន។ នៅពេលនេះទេ

ដូច្នេះតើអ្នកគួរជ្រើសរើសមួយណា?

  • ការចាប់ផ្តើម Pythonists គួរតែជ្រើសរើសអ្វីមួយដែលមានជម្រើសប្ដូរតាមបំណងតិចតួចបំផុត។ ឧបសគ្គតិចកាន់តែល្អ;
  • ប្រសិនបើអ្នកប្រើកម្មវិធីនិពន្ធមួយចំនួនរួចហើយសម្រាប់កិច្ចការផ្សេងទៀត បន្ទាប់មករកមើលអ្នកកែកូដ។
  • ជាការប្រសើរណាស់ ប្រសិនបើអ្នកមាន IDE សម្រាប់ភាសាផ្សេងទៀតរួចហើយ សូមព្យាយាមបន្ថែមជំនួយ Python ទៅក្នុងវា។

តើអ្នកចាប់អារម្មណ៍លើបណ្តាញដែរទេ? បន្ទាប់មកសូមមើលស្រដៀងគ្នារបស់យើងសម្រាប់ការអភិវឌ្ឍន៍គេហទំព័រ។

"ខ្ញុំបានបន្តឆ្ងល់ថាតើពេលណានឹងមកដល់ នៅពេលដែលខ្ញុំត្រូវនិយាយក្នុងរចនាប័ទ្ម "បាទ ខ្ញុំនៅអាយុរបស់អ្នក!... ។ល។" ហើយឥឡូវនេះ... ច្បាស់ណាស់ពីការប្រកាសថ្មីរបស់អ្នក - អាយុ 16 ឆ្នាំ ហើយអ្នកដាក់ខ្លួនឯងថាជាមនុស្សវ័យក្មេងដែលចាប់អារម្មណ៍លើការសរសេរកម្មវិធី ទាំងអ្នកនឹងប្រើ Go សម្រាប់គម្រោងបណ្តាញខ្នាតធំ ឬអ្នកមិនអាចរកវាឃើញ។ ពណ៌ចម្រុះសម្រាប់កម្មវិធីនិពន្ធ Sublime Text 3 ដើម្បីចាប់ផ្តើមសរសេរកម្មវិធី ជាមួយនឹងប្រធានបទមួយសម្រាប់ការងារពេលថ្ងៃ និងមួយទៀតសម្រាប់ការងារពេលយប់។ ហើយទាំងអស់នេះដូច្នេះថា ដូចដែលអ្នកដាក់វានៅក្នុងប្រកាសដូចគ្នានេះ នាពេលអនាគតដ៏ខ្លីម្តងទៀត - ចាប់ផ្តើមសរសេរជាភាសា golang ។ ឥឡូវនេះ IDE ខ្លួនវាស្ថិតនៅក្នុងសំណួរ។

នៅអាយុរបស់អ្នក ឬចាប់ពីអាយុ 12 ឆ្នាំរហូតដល់អាយុប្រហែល 16 ឆ្នាំ ខ្ញុំបានអង្គុយនៅផ្ទះនៅកុំព្យូទ័រ ES-1840 ដែលបំពាក់ដោយម៉ូនីទ័រ "អេឡិចត្រូនិក" ស-ខ្មៅ។ នៅទីនោះ ជឿខ្ញុំ គ្មានប្រធានបទ - ទាំងយប់ឬថ្ងៃ។ មិននិយាយពីការពិតដែលថាគំនិតនៃ "ក្រាហ្វិក" ត្រូវបានកាត់បន្ថយទៅជាក្បួនដោះស្រាយសម្រាប់ការបង្ហាញរាងធរណីមាត្រសាមញ្ញ, ជាក់ស្តែង, ដូច្នេះដើម្បីនិយាយ, "ក្នុងមួយភីកសែល" ។ មិនមាន IDE ដ៏ប្រណិតទេ ហើយន័រតុនត្រូវបានចាត់ទុកថាជាកំពូលនៃ UI ergonomics មេបញ្ជាការ Volkov. Windows និង GUI? ទេ យើងមិនបានឮទេ... មាន MS-DOS នៅក្នុងភាពរុងរឿងរបស់វា។

ប៉ុន្តែមិត្តវ័យក្មេងរបស់ខ្ញុំមាន Borland TurboPascal, Borland C++, Microsoft GW-BASIC និងផ្សេងទៀត - សាមញ្ញបំផុតក្នុងន័យ សែលក្រាហ្វិក(ប្រសិនបើគំនិតបែបនេះអាចត្រូវបានរកឃើញនៅទីនោះ) ប៉ុន្តែបរិស្ថានអភិវឌ្ឍន៍ចាំបាច់សម្រាប់ MS-DOS អរគុណដែលមនុស្សជាច្រើនបានក្លាយជាអ្នកជំនាញដោយគ្មានប្រធានបទនៅពេលយប់។ អូ បាទ ខ្ញុំភ្លេចនិយាយ៖ មិនមានអ៊ិនធឺណិតនៅពេលនោះ ហើយចម្លើយចំពោះសំណួរដូចជា "តើខ្ញុំអាចធ្វើវាបានដោយរបៀបណាដើម្បី..." មិនអាចរកបានដោយប្រើ Google ទេ។ ហើយមិនមានសៀវភៅទេ។ លើកលែងតែសៀវភៅរបស់ V. E. Figurnov “IBM PC for the User” គឺស្ទើរតែជាព្រះគម្ពីរតែមួយគត់នៃជំនាន់របស់យើង ហើយការស្កែនឯកសារដែលភ្ជាប់មកជាមួយកំណែផ្លូវការនៃកម្មវិធីដែលបានរៀបរាប់ខាងលើ ហើយត្រូវបានគេចាត់ទុកថាមានតម្លៃជាងមាសទៅទៀត។

ដូចដែលខ្ញុំបានសរសេរទៅអ្នករួចហើយ ខ្ញុំស្គាល់មនុស្ស (ហើយមនុស្សជាច្រើនធ្វើ) ដែលគ្រោងរៀន Java ជាច្រើនឆ្នាំ ប៉ុន្តែមិនអាចសម្រេចចិត្តថាមួយណាល្អជាង - Eclipse ឬ NetBeans។ ជា​លទ្ធផល ពួកគេ​នៅ​កន្លែង​ដែល​ពួកគេ​នៅ​ដោយ​មិន​បាន​រៀន​អ្វី​សោះ។ ហើយទាំងអស់ដោយសារតែពួកគេបានចូលទៅជិតដំណើរការពីផ្នែកខុស ដោយជឿយ៉ាងច្បាស់ថាឫសគល់នៃការយល់ច្រឡំរបស់ពួកគេអំពីមូលដ្ឋានគ្រឹះនៃការសរសេរកម្មវិធីត្រូវបានផ្សារភ្ជាប់ជាមួយនឹងការប្រើប្រាស់ IDE ដែលមិនងាយស្រួល។

ខ្ញុំសូមជូនពរឱ្យអ្នករីកចម្រើន ដូច្នេះហើយខ្ញុំសូមសួរថាៈ កុំនិយាយឡើងវិញនូវបទពិសោធន៍របស់អ្នកចាញ់ ហើយកុំដើរលើតុងរួចរបស់អ្នកដទៃ។ រៀន និងចាប់ផ្តើមសរសេរកម្មវិធី ហើយទុកប្រធានបទសម្រាប់ពេលក្រោយ។

ខ្ញុំសូមលើកប្រធានបទដ៏ចម្រូងចម្រាសនេះម្តងទៀត។

ចាប់តាំងពីខ្ញុំចាប់ផ្តើមសរសេរកម្មវិធី សំណួរនេះបាននិងកំពុងលងបន្លាចខ្ញុំ ហើយប្រធានបទជាច្រើននៅលើវេទិកា និងមជ្ឈមណ្ឌលមិនបាននាំមកនូវភាពច្បាស់លាស់ណាមួយឡើយ។ លើសពីនេះ វាហាក់ដូចជាខ្ញុំថា ទឡ្ហីករណ៍មួយចំនួនសម្រាប់ភាគីទាំងពីរមិនត្រូវបានផ្តល់ឱ្យទេ។ ហើយអ្នកដែលបានផ្តល់ឱ្យមានអាទិភាពរបស់ពួកគេដែលបានកំណត់មិនត្រឹមត្រូវ ហើយបរិបទត្រូវបានបាត់។

នៅក្នុងអត្ថបទនេះ ខ្ញុំនឹងព្យាយាមកែការធ្វេសប្រហែសនេះ ហើយគូស “e” បន្តិចទៀត។

ខ្ញុំសូមអញ្ជើញអ្នកទាំងអស់គ្នាឱ្យចូលរួមក្នុងការស្វែងរកឧបករណ៍ដ៏ល្អ។

អំពីបទពិសោធន៍របស់ខ្ញុំ

ខ្ញុំចាប់ផ្តើមសរសេរកម្មវិធីនៅក្នុង DOS ។ នៅលើ Turbo Pascal ។ លើសពីនេះទៅទៀត សម្រាប់ហេតុផលមួយចំនួន យើងបានប្រើ IDE សម្រាប់តែការកែកំហុសប៉ុណ្ណោះ ហើយបន្ទាប់មកកម្រណាស់។ ដើម្បីសរសេរកូដ ពួកគេចូលចិត្តប្រើ edit.exe ដែលគ្មានឈ្មោះមួយចំនួន ដោយមិនមានការបន្លិចវាក្យសម្ព័ន្ធណាមួយដោយភ្ជាប់ជាមួយ Volkov Commander ។ ហើយវាគ្រប់គ្រាន់ហើយ។ ក្រោយមកខ្ញុំបានសិក្សាផ្នែក assembler ហើយមួយផ្នែកគឺ C++ ដោយប្រើវិធីដូចគ្នា។

ដោយបន្តសិក្សា C++ ខ្ញុំបានប្តូរទៅ Windows ហើយតាមនោះ Visual Studio - តើខ្ញុំនឹងនៅទីណាបើគ្មានវា។ ខ្ញុំបានរកឃើញកំណែ ប្រសិនបើខ្ញុំមិនច្រឡំទេ ចាប់ពីលេខ 5 ដល់លេខ 7។ បន្ទាប់ពី កម្មវិធីនិពន្ធសាមញ្ញវាជាអ្វីមួយ - ការបង្កើតកូដ និងការបំពេញដោយស្វ័យប្រវត្តិគឺជាការរីករាយ។ ពិត វាស្ទើរតែមិនអាចយល់បាននូវភាពល្អដែលបានបង្កើតទាំងអស់នេះ ប៉ុន្តែនេះហាក់ដូចជាមិនសំខាន់។

មួយរយៈក្រោយមក ខ្ញុំបានប្តូរទៅលីនុច ហើយចាប់ផ្តើមបង្កើតគេហទំព័រនៅក្នុង PHP ។ នៅទីនេះខ្ញុំបានសិក្សា vim ក្នុងពេលតែមួយ ហើយបានប្រើ ZendStudio សម្រាប់ការអភិវឌ្ឍន៍។ នៅចំណុចខ្លះខ្ញុំចាប់ផ្តើមប្រើតែ Vim សម្រាប់អ្វីគ្រប់យ៉ាង - ខ្ញុំបានប្រែក្លាយវាស្របតាមការបង្រៀនជាច្រើនទៅជាគំនិតតូចមួយ។ វាជាកន្លែងដែលខ្ញុំសរសេរ CMS ជិះកង់ដំបូងរបស់ខ្ញុំនៅក្នុង PHP ។

ខ្ញុំ​កត់​សម្គាល់​ថា មុន​ពេល​កម្មវិធី​នេះ​មិន​មែន​ជា​សកម្មភាព​ចម្បង​របស់​ខ្ញុំ​ទេ។ បាទ ខ្ញុំបានសរសេរឧបករណ៍ប្រើប្រាស់តូចៗជាច្រើនសម្រាប់ការងារ បង្កើតប្រធានបទសម្រាប់ WordPress ប៉ុន្តែសកម្មភាពសំខាន់របស់ខ្ញុំគឺការគ្រប់គ្រង។

នៅពេលដែលខ្ញុំចាប់ផ្តើមអភិវឌ្ឍជំនាញវិជ្ជាជីវៈ សមត្ថភាពរបស់ vim លែងគ្រប់គ្រាន់សម្រាប់ខ្ញុំទៀតហើយ។ ដំបូងមានសូរ្យគ្រាស បន្ទាប់មក netbeans ឥឡូវនេះ - phpstorm ។

អស់រយៈពេលកន្លះឆ្នាំចុងក្រោយនេះ ខ្ញុំបានព្យាយាមយ៉ាងខ្លាំងដើម្បីធ្វើជាម្ចាស់ emacs រួមទាំង។ ជាបរិយាកាសការងារសំខាន់។

ដូច្នេះខ្ញុំមានអ្វីដែលត្រូវប្រៀបធៀប ហើយខ្ញុំសង្ឃឹមថា គំនិតរបស់ខ្ញុំនឹងត្រូវបានបញ្ជាក់គ្រប់គ្រាន់ និងសមហេតុផល។

អាយឌីអេ? អាយឌី...

ខ្ញុំបានគិតជាយូរមកហើយថា ក្នុងទម្រង់បែបណា ដើម្បីបង្ហាញការប្រៀបធៀបគុណសម្បត្តិ និងគុណវិបត្តិរបស់ភាគី។ បញ្ជី​នេះ​មិន​ស័ក្តិសម​បំផុត​សម្រាប់​រឿង​នេះ​ទេ ព្រោះ​... ការចុះបញ្ជីសាមញ្ញមិនឆ្លុះបញ្ចាំងទាំងស្រុងពីខ្លឹមសារនៃបញ្ហានោះទេ។ កម្មវិធីនិពន្ធ និង IDE មិនផ្ទុយគ្នាទេ ប៉ុន្តែជាឧបករណ៍ដែលកម្មវិធីរបស់ពួកគេត្រួតលើគ្នានៅក្នុងតំបន់មួយចំនួន។ គុណសម្បត្តិនៃកម្មវិធីនិពន្ធគឺមិនតែងតែជាគុណវិបត្តិនៃបរិស្ថាននិងផ្ទុយមកវិញ។ សម្រាប់ហេតុផលនេះ ការពិភាក្សាដែលមានរចនាសម្ព័ន្ធច្រើន ឬតិចលើប្រធានបទបន្ត។

ខ្ញុំនឹងចាប់ផ្តើម ប្រហែលជាជាមួយនឹងគុណសម្បត្តិដែលមិនអាចប្រកែកបានរបស់អ្នកកែសម្រួល - សមត្ថភាពដ៏សម្បូរបែបរបស់វាសម្រាប់ធ្វើការជាមួយអត្ថបទ និងសមត្ថភាពក្នុងការធ្វើអ្វីៗគ្រប់យ៉ាងដោយមិនចាំបាច់ដកដៃចេញពីក្តារចុច។ បរិស្ថានភាគច្រើនមិនធ្វើបែបនេះទេ។ ប៉ុន្តែតើលក្ខណៈពិសេសបែបនេះចាំបាច់នៅពេលសរសេរកូដទេ? នៅពេលសរសេរអត្ថបទ ឬសំបុត្រ ខ្ញុំគិតថាវាងាយស្រួលក្នុងការផ្លាស់ប្តូរពាក្យ 2 ឬផ្លាស់ទីកថាខណ្ឌមួយទៅផ្នែកខាងលើនៃទំព័រដោយចុចគ្រាប់ចុចមួយ។ ប៉ុន្តែនៅក្នុងអត្ថបទរបស់កម្មវិធីនេះគឺក្នុងករណីភាគច្រើនគ្មានន័យ និងតម្រូវឱ្យមានការកែតម្រូវឡើងវិញ។ ហើយអ្នកត្រូវចំណាយសម្រាប់វាដោយប្រើផ្លូវកាត់ក្តារចុច emacs ដែលសម្លាប់ម្រាមដៃ ឬជាមួយនឹងពាក្យបញ្ជាដែលមិនប្រើខួរក្បាលតិចជាងនៅក្នុង vim ។ ប៉ុន្តែទាំងអស់នេះត្រូវតែចងចាំ! អ្វី​ដែល​អាច​ដោះស្រាយ​បាន​ដោយ​ប្រើ​ចលនា​កណ្ដុរ​មួយ​ដូច​ជា​ការ​ផ្លាស់ទី​បង្អួច ឬ​ការ​ផ្លាស់​ប្តូរ​ទំហំ​របស់​វា​ប្រែ​ទៅ​ជា​ដំណើរ​ស្វែងរក​ទាំងមូល។ បាទ/ចាស វាកាន់តែងាយស្រួលក្នុងការជ្រើសរើសអត្ថបទដោយប្រើកណ្ដុរ - កាន់តែច្បាស់ លឿនជាងមុន ហើយអ្នកមិនចាំបាច់រាប់ចំនួនពាក្យដែលមានទៅកន្លែងដែលចង់បាននៅក្នុងអត្ថបទនោះទេ។ ទេ អ្នកសរសេរកម្មវិធីផងដែរ។ អាចមុខងារទាំងនេះអាចមានប្រយោជន៍ ប៉ុន្តែការពិតគឺថា ពេលវេលាដែលចំណាយលើការកែកូដពិតជាមានការធ្វេសប្រហែស ដូច្នេះវានឹងមិនមានអត្ថប្រយោជន៍អ្វីឡើយក្នុងពេលវេលា។ ប៉ុន្តែភាពស្មុគស្មាញដ៏សំខាន់នៃឧបករណ៍គឺជាក់ស្តែង។

អ្នកសរសេរកម្មវិធីម្នាក់ចំណាយ 80% នៃពេលវេលារបស់គាត់ដើម្បីស្វែងយល់ពីកូដដែលបានសរសេរ និងឆ្លងកាត់វា។ ជាងនេះទៅទៀត ផ្លាស់ទីយ៉ាងជាក់លាក់តាមកូដ មិនមែនតាមអត្ថបទទេ! ហើយនៅទីនេះ អ្នកកែសម្រួលមិនអាចធ្វើអ្វីសោះដើម្បីជួយគាត់។ បញ្ជីនៃប៉ារ៉ាម៉ែត្រវិធីសាស្រ្តនឹងមិនត្រូវបានបង្ហាញនៅក្នុងព័ត៌មានជំនួយទេ វានឹងមិនអនុញ្ញាតឱ្យអ្នកចូលទៅកាន់និយមន័យនៃវិធីសាស្ត្រ ហើយវាក្យសម្ព័ន្ធនឹងមិនត្រូវបានពិនិត្យទេ។ ហើយ IDEs សូម្បីតែអ្វីដែលសាមញ្ញបំផុតក៏ដោះស្រាយវាយ៉ាងសាមញ្ញ និងឆើតឆាយ។ ថ្មីៗនេះខ្ញុំបានចំណាយពេលប្រហែល 10 នាទីដើម្បីស្វែងរកនិយមន័យនៃវិធីសាស្រ្តនៅក្នុងគម្រោងមួយដោយប្រើកម្មវិធីស្វែងរកប្រាក់របស់ emacs។ វាប្រែថាថ្នាក់ត្រូវបានកំណត់នៅក្នុងម៉ូឌុលមួយផ្សេងទៀត។ល។ 10 នាទីជំនួសឱ្យការចុចកណ្ដុរមួយ! ជាការពិតណាស់ ខ្ញុំមិនមានបទពិសោធន៍គ្រប់គ្រាន់នៅក្នុង emacs ដូច្នេះសូមឱ្យវាមានរយៈពេល 5 នាទីសូម្បីតែមួយនាទី។ ប៉ុន្តែសមាមាត្រនៅតែគួរឱ្យចាប់អារម្មណ៍។

ហើយនៅទីនេះ IDE បង្ហាញប្រហែលជាវាតែប៉ុណ្ណោះ ប៉ុន្តែអត្ថប្រយោជន៍ដ៏សំខាន់បំផុត - វត្តមាននៃកម្មវិធីញែកភាសាសរសេរកម្មវិធី។ បរិស្ថាន "យល់" ថាវាកំពុងកែសម្រួលកូដ។ កម្មវិធីនិពន្ធ - ទេ។ ហើយនេះរួមបញ្ចូលទាំងការបំពេញដោយស្វ័យប្រវត្តិ ការរុករក ការបន្លិចវាក្យសម្ព័ន្ធ និងពេលខ្លះ។ កំហុស semantic. វា​ហាក់​ដូចជា​លើស​ពី​នេះ រឿង​តូច​មួយ​ដ៏​ស្រស់​ស្អាត ការ​បណ្ដោយ​ខ្លួន។ ប៉ុន្តែវាប្រែទៅជាភាពចាំបាច់បន្ទាប់ពីទំហំនៃគម្រោងលើសពីដែនកំណត់ជាក់លាក់។ ហើយ​ដោយ​គិតគូរ​ពី​ក្របខណ្ឌ​ទំនើប​ដ៏​អស្ចារ្យ ដែនកំណត់​នេះ​មក​ស្ទើរតែ​ភ្លាមៗ។

បាទ/ចាស នៅលើគម្រោងដែលមានឯកសាររាប់សិប និងបន្ទាត់ពីរបីពាន់ ការបូកនេះមិនបង្ហាញឱ្យឃើញពីភាពរុងរឿងរបស់វានោះទេ។ កម្មវិធីនិពន្ធក៏អាចធ្វើការបំពេញដោយស្វ័យប្រវត្តិដូចគ្នាដែរ ប៉ុន្តែវានឹងមិនលុបចោលជម្រើសដែលគ្មានន័យឡើយ។ ហើយប្រសិនបើទំហំនៃគម្រោងឈានដល់ 100 ពាន់បន្ទាត់ និងមានឯកសាររាប់ពាន់ ដោយមិនរាប់បញ្ចូលបណ្ណាល័យ នោះវាក្លាយជាបញ្ហាក្នុងការជ្រើសរើសឈ្មោះត្រឹមត្រូវពីភាពខុសឆ្គងនៃឈ្មោះអថេរ វិធីសាស្រ្តនៃថ្នាក់ផ្សេងៗ ហើយគ្រាន់តែពាក្យពីមតិយោបល់ ( ខ្ញុំ​មាន​រឿង​នេះ​ក្នុង​ព្រោះ​ខ្ញុំ​មិន​ដឹង​ប្រហែល​ជា​គេ​ជួសជុល​វា)។ ការណែនាំឆ្លាតវៃលុបបំបាត់តម្រូវការក្នុងការចងចាំឈ្មោះ មុខងារដែលត្រូវការនិងប៉ារ៉ាម៉ែត្ររបស់ពួកគេ។ ជារឿយៗនេះគឺមិនអាចទៅរួចទេខាងរាងកាយ។

និយាយអំពីគម្រោង។ IDE ទាំងអស់មានគំនិតនេះ។ ការកំណត់ ធនធានត្រូវបានភ្ជាប់ទៅវា អ្នកអាចស្វែងរក។ល។ នៅក្នុងកម្មវិធីនិពន្ធ នេះគឺល្អបំផុតសម្រាប់ថតប្រព័ន្ធឯកសារបើកចំហ។ ជួនកាលបន្តិចទៀត។

ការរួមបញ្ចូលជាមួយឧបករណ៍បំបាត់កំហុសនៅក្នុងកម្មវិធីនិពន្ធក៏ទុកឱ្យមានការចង់បានផងដែរ។ ការធ្វើតេស្តឯកតា និងការកត់ត្រាក្នុងកម្រិតខ្លះជួយសង្រ្គោះស្ថានភាព ប៉ុន្តែពេលខ្លះអ្នកមិនអាចធ្វើវាដោយគ្មានឧបករណ៍បំបាត់កំហុសបានទេ។

នរណាម្នាក់អាចប្រកែកថាអ្នកកែសម្រួលទំនើបបានអនុវត្តមុខងារទាំងនេះជាច្រើនរួចហើយ ហើយមិនទាបជាង IDE ទំនើបបំផុតនោះទេ។ ខ្ញុំមិនយល់ស្របទេ។ ទីមួយ មិនមានការអនុវត្តពេញលេញទេ។ ពួកគេមិនធ្វើការដូចដែលពួកគេគួរ។ ទីពីរ ការដំឡើងទាំងអស់នេះគឺជាកិច្ចការដ៏លំបាករួចទៅហើយ។ បាទ/ចាស សូម្បីតែការកំណត់មុខងារខាងក្នុងរបស់កម្មវិធីនិពន្ធក៏មិនមែនជារឿងតូចតាចដែរ។ សាកល្បងនិយាយថា បើកលេខរៀងជួរក្នុង emacs! លើសពីនេះ ជាញឹកញាប់មុខងារចាំបាច់ត្រូវបានអនុវត្តដោយកម្មវិធីជំនួយរាប់សិប វាមិនច្បាស់ពីរបៀបដែលពួកវាទាក់ទងគ្នាទៅវិញទៅមក។ ហើយជារឿយៗពួកវាក៏មានកំណែ និងសាខាជាច្រើនដែលមិនតែងតែត្រូវគ្នា ត្រូវបានកំណត់រចនាសម្ព័ន្ធចម្លែកជាដើម។ ជាការពិតណាស់ អ្នកអាចចំណាយពេលមួយខែក្នុងការរៀបចំ និងដំឡើងអ្វីៗគ្រប់យ៉ាង (ដែលក៏ជាការចាប់អារម្មណ៍ជាច្រើនផងដែរ) ប៉ុន្តែវានឹងនាំអ្នកកែសម្រួលខិតទៅជិតកម្រិត IDE ប៉ុណ្ណោះ។ ជាឧទាហរណ៍ សូមត្រលប់ទៅគម្រោងដូចគ្នា - ខ្ញុំបានសាកល្បង Project នៅក្រោម vim និង projectile នៅក្រោម emacs និងកម្មវិធីជំនួយមួយចំនួនទៀត។ ប្រសិនបើ Projectile ច្រើន ឬតិចបំពេញតាមតម្រូវការរបស់ខ្ញុំ (ទោះបីជានៅក្នុងកំណែចុងក្រោយបំផុត ខ្ញុំមិនអាចបង្កើតគម្រោងបានទេ ដោយសារបញ្ហា) នោះ projectile បានបន្សល់ទុកនូវចំណាប់អារម្មណ៍អវិជ្ជមានយ៉ាងខ្លាំង។

យ៉ាង​ណា​ក៏​ដោយ អ្នក​កែ​សម្រួល​មាន​ផ្នែក​មួយ​ចំនួន​នៃ​កម្មវិធី​ដែល​ពួកគេ​ជា​អប្បបរមា​ផ្តល់​នូវ​ការ​ប្រកួត​ប្រជែង​សក្ដិសម​ចំពោះ​បរិស្ថាន​អភិវឌ្ឍន៍។

ទីមួយ ពួកគេអនុវត្តបានល្អប្រសើរលើគម្រោងតូចៗ។ វាគ្មានន័យទេក្នុងការផ្ទុកឧបករណ៍ច្រូតកាត់ IDE ដើម្បីធ្វើការជាមួយគម្រោងឯកសារ 10-20 ។ វាកាន់តែងាយស្រួលក្នុងការកែបន្ទាត់ 3-4 នៅក្នុងកម្មវិធីនិពន្ធ។

ទីពីរ នៅក្នុងតំបន់ជាក់លាក់មួយចំនួន គុណសម្បត្តិទាំងអស់របស់ IDEs ត្រូវបានកម្រិតចេញ។ ឧទាហរណ៍ ការអភិវឌ្ឍន៍កម្រិតទាបសម្រាប់លីនុច។ ខ្ញុំមិនបានធ្វើវាទេ ប៉ុន្តែការវិនិច្ឆ័យដោយរចនាសម្ព័ន្ធនៃកូដ និងចំណូលចិត្តរបស់អ្នកអភិវឌ្ឍន៍ (ប្រហែល 70% - emacs និង clones, 25% - vim, 5% - ប្រភេទកម្រនិងអសកម្មដូចជា jed) IDE មិនមានអ្វីទាំងអស់។ ដើម្បីធ្វើនៅទីនោះ។ កូដចាំបាច់ទាំងអស់ដើម្បីធ្វើការជាមួយត្រូវបានប្រមូល ជាធម្មតានៅក្នុងឯកសារមួយ ឬពីរ ហើយមិនចាំបាច់លោតពេញគម្រោងទាំងមូលនោះទេ។ ហើយការបំពេញដោយស្វ័យប្រវត្តិនឹងមិនអាចជួយបានច្រើនទេ នៅពេលជ្រើសរើសពីមុខងាររាប់សិប ឬពីរដែលមានឈ្មោះស្ទើរតែដូចគ្នា។

ទីបី អ្នកកែសម្រួលអាចធ្វើការជាមួយច្រើនជាងកូដ។ ថាមពលទាំងអស់របស់ពួកគេអាចត្រូវបានប្រើនៅពេលធ្វើការជាមួយឯកសារ csv ឬ xml ។ ឬអ្វីផ្សេងទៀតដែលពេលខ្លះចាំបាច់ ដូចជាអត្ថបទ ឬសំបុត្រ ហើយអ្នកមិនចាំបាច់រៀនឡើងវិញទេ ស្វែងរក កម្មវិធីងាយស្រួលឬចងចាំគ្រាប់ចុចក្តៅ - អ្វីគ្រប់យ៉ាងគឺនៅនឹងដៃអ្វីគ្រប់យ៉ាងគឺដូចគ្នា។

ទីបួន សមត្ថភាពក្នុងការធ្វើការជាមួយភាសាដែលមិនមាន IDE ល្អ។ ឧបមាថាជាមួយត្បូងទទឹមដូចគ្នា បរិស្ថានមិនបានជួយខ្ញុំច្រើនទេ។ SublimeText ប្រែទៅជាគ្រប់គ្រាន់។ ទោះបីជាខ្ញុំមិនបានធ្វើការជាមួយគម្រោង Ruby ធំក៏ដោយ ប្រហែលជា IDE នឹងបង្ហាញខ្លួនឯងនៅទីនោះ។

ហើយទីប្រាំ លទ្ធភាពដ៏ល្បីនៃការពង្រីក។ ជាមួយនឹងកម្មវិធីជំនួយដ៏ល្អ កម្មវិធីនិពន្ធកាន់តែងាយស្រួល! បូកនឹងភាពរីករាយនៃការបន្តលៃតម្រូវឧបករណ៍សំខាន់ និងអារម្មណ៍របស់អ្នក។ ការគ្រប់គ្រងពេញលេញខាងលើវាមានតម្លៃច្រើន។

សរុប

ខ្ញុំ​ពិត​ជា​មិន​ចូល​ចិត្ត IDEs, ទោះ​បី​ជា​វា​ហាក់​ដូច​ជា​ដូច្នេះ​ពី​អត្ថបទ​មុន. ខ្ញុំ​ចាត់​ទុក​ពួក​វា​ជា​រឿង​ដ៏​អស្ចារ្យ​ដោយ​មាន​មុខងារ​មិន​ចាំ​បាច់​ច្រើន យឺត និង​ទាមទារ​ធនធាន។ ហើយល្អបំផុតនៃពួកគេគឺមានតម្លៃថ្លៃណាស់។ លើសពីនេះទៅទៀតខ្ញុំជឿ ដោយប្រើ IDEសម្រាកនិងចងអ្នកទៅខ្លួនអ្នក។ សម្រាប់​អ្នក​និពន្ធ ផ្ទុយ​ទៅ​វិញ​គឺ​ពិត។ បូករួមទាំងលទ្ធភាពប្រើប្រាស់ និងលទ្ធភាពនៃការកែតម្រូវឱ្យសមស្របតាមតម្រូវការរបស់អ្នក។ យ៉ាងហោចណាស់ vim និង emacs ។ នៅទីបញ្ចប់ខ្ញុំគ្រាន់តែចូលចិត្តពួកគេ។ ជាឧទាហរណ៍ ខ្ញុំកំពុងសរសេរអត្ថបទនេះនៅក្នុង Emacs។

ប៉ុន្តែឧស្សាហកម្ម (និងការគ្រប់គ្រង) កំណត់តម្រូវការផ្ទាល់ខ្លួន។ ប្រសិនបើអ្នកមិនប្រើ IDE ទេ ដំណើរការនឹងធ្លាក់ចុះយ៉ាងខ្លាំង។ ប៉ុន្តែគ្មាននរណាម្នាក់នឹងផ្តល់ឱ្យអ្នកកន្លះម៉ោងដើម្បីស្វែងរកសញ្ញាក្បៀសដែលបាត់ក្នុង 10 ពាន់បន្ទាត់នៃកូដនោះទេ។ ទាំងអស់នេះគួរត្រូវបានធ្វើដោយស្វ័យប្រវត្តិ និងកែតម្រូវដោយស្វ័យប្រវត្តិ។ ពេលខ្លះខ្ញុំក៏ចូលចិត្តជីកកូដដោយគ្មានឧបករណ៍ - ប៉ុន្តែនៅកន្លែងធ្វើការនេះគឺជាការខ្ជះខ្ជាយពេលវេលាដែលមិនអាចទទួលយកបាន។

បន្ទាប់ពីការសាកល្បងនិងកំហុសរបស់ខ្ញុំទាំងអស់ខ្ញុំបានឈានដល់ការសន្និដ្ឋាននេះ - កម្មវិធីនិពន្ធ អាចប្រើសម្រាប់ការអភិវឌ្ឍន៍ ប៉ុន្តែជាមួយនឹង IDE បន្ទាប់ពីដែនកំណត់ជាក់លាក់មួយ វាមិនប្រៀបធៀបទេ ហើយការប្រើកម្មវិធីនិពន្ធសម្រាប់អ្វីមួយដែលអ្នកត្រូវបានបង់គឺជាប្រណីតដែលមិនអាចកាត់ថ្លៃបាន។ បាទ/ចាស ប្រសិនបើអ្នកប្រើការអនុវត្តការអភិវឌ្ឍន៍ត្រឹមត្រូវ ការរចនា/កូដឯកសារឱ្យបានត្រឹមត្រូវ និងអនុវត្តតាមស្តង់ដារ អ្នកអាចលុបបំបាត់ការខ្វះខាតរបស់កម្មវិធីនិពន្ធ។ ប៉ុន្តែយើងមិនរស់នៅក្នុងពិភពឧត្តមគតិទេ ដូច្នេះការប្រើ IDE គឺជាភាពចាំបាច់ ដោយមិនគិតពីបំណងប្រាថ្នារបស់យើងឡើយ។

យើងធ្វើបទបង្ហាញជូនអ្នកនូវការសម្របខ្លួននៃអត្ថបទមួយដោយ Martin Heller អ្នកសរសេរកម្មវិធី និងជាអ្នកកែសម្រួលធនធាន JavaWorld ។ អ្នកប្រហែលជាធ្លាប់បានលឺរួចហើយអំពី IDE ដែលពេញនិយមបំផុតទាំងបីសម្រាប់ការអភិវឌ្ឍន៍នៅលើ ភាសាចាវ៉ា. 90 ភាគរយនៃអ្នកសរសេរកម្មវិធីឧស្សាហកម្មប្រើទាំង Eclipse, NetBeans ឬ IntelliJ IDEA ហើយ IDE នីមួយៗមានគុណសម្បត្តិ និងគុណវិបត្តិផ្ទាល់ខ្លួន។ នៅក្នុងអត្ថបទនេះ យើងនឹងព្យាយាមពណ៌នាពួកគេដើម្បីឱ្យអ្នកយល់ថាមួយណាដែលសាកសមនឹងអ្នក។ ទោះបីជាជាការពិតក៏ដោយ វាជាការប្រសើរក្នុងការសាកល្បងទាំងបីនៅកន្លែងធ្វើការ ហើយស្វែងរកអ្វីដែលល្អបំផុតសម្រាប់អ្នក។ គ្មានការពិនិត្យឡើងវិញអាចជំនួសវាបានទេ។ ខ្ញុំបានធ្វើការជាមួយ IDEs ទាំងនេះពីមុនមក ប៉ុន្តែសម្រាប់ការសិក្សានេះ ខ្ញុំបានដំឡើង IntelliJ IDEA Ultimate 2016.2, Eclipse Neon Java EE, និង NetBeans 8.1 Java EE នៅលើកុំព្យូទ័រយួរដៃ MacBook Pro ។ ខ្ញុំបានសាកល្បង IDE លើគម្រោង Java ប្រភពបើកចំហជាច្រើន។

អ្វីដែលត្រូវរំពឹងពី IDE

IDE ទំនើបសម្រាប់ "អ្នកអភិវឌ្ឍន៍ Java ដែលមានសុខភាពល្អ" គួរតែគាំទ្រ Java 8, Scala, Groovy ក៏ដូចជាភាសានិម្មិតផ្សេងទៀត ម៉ាស៊ីន Javaដែលគាត់ប្រើជាប្រចាំ។ ការគាំទ្រសម្រាប់ម៉ាស៊ីនមេកម្មវិធីសំខាន់ៗ និងក្របខ័ណ្ឌបណ្ដាញពេញនិយមបំផុត រួមទាំង Spring MVC, JSF, Struts, GWT, Play, Wicket, Grails និង Vaadin ក៏នឹងមានប្រយោជន៍ផងដែរ។ IDE ត្រូវតែត្រូវគ្នាជាមួយប្រព័ន្ធគ្រប់គ្រងកំណែណាមួយដូចជា Ant, Maven ឬ Gradle រួមជាមួយ Git, SVN, CVS, Mercurial ឬ Bazaar ។ លើសពីនេះ សម្រាប់បរិយាកាសអភិវឌ្ឍន៍ វាមានសារៈសំខាន់ណាស់ក្នុងការធ្វើការជាមួយមូលដ្ឋានទិន្នន័យ និងស្រទាប់អតិថិជននៃជង់របស់អ្នក ដើម្បីមានការគាំទ្រសម្រាប់ JavaScript, TypeScript, HTML, SQL, JavaServer Pages, Hibernate ក៏ដូចជា Java Persistence ផងដែរ។ API ជាចុងក្រោយ វាជាឡូជីខលដើម្បីសង្ឃឹមថា IDE នឹងអនុញ្ញាតឱ្យអ្នកកែសម្រួល បង្កើត បំបាត់កំហុស និងសាកល្បងប្រព័ន្ធដោយមិនចាំបាច់មានភាពតានតឹង។ តាមឧត្ដមគតិ បរិយាកាសអភិវឌ្ឍន៍មិនត្រឹមតែគាំទ្រការបំពេញកូដឆ្លាតវៃប៉ុណ្ណោះទេ ថែមទាំងការកែឆ្នៃប្រឌិតឆ្លាតវៃ និងម៉ែត្រកូដផងដែរ។ ក្នុងករណីជាច្រើន វានឹងមានប្រយោជន៍ក្នុងការគាំទ្រក្របខ័ណ្ឌសាកល្បង និង stubs ។ ប្រសិនបើក្រុមរបស់អ្នកប្រើប្រព័ន្ធសំបុត្រ និង CI/CD នោះអ្នកត្រូវការ IDE ដើម្បីអាចភ្ជាប់ទៅពួកគេ។ ហើយសម្រេចចិត្តថាតើអ្នកត្រូវការការដាក់ពង្រាយ និងការបំបាត់កំហុសនៅក្នុងធុង និងពពក។ យើង​បាន​រាយ​បញ្ជី​តែ​ការ​រំពឹង​ទុក​ជា​មូលដ្ឋាន​ប៉ុណ្ណោះ (ប្រហែល​ជា​អ្នក​មាន​អ្វី​ដែល​ត្រូវ​បន្ថែម) ហើយ​ឥឡូវ​នេះ​សូម​ពិនិត្យ​មើល​គូ​ប្រកួត​ប្រជែង​របស់​យើង​ឲ្យ​កាន់តែ​ច្បាស់។

IntelliJ IDEA


នៅក្នុងលក្ខខណ្ឌនៃលក្ខណៈពិសេស និងតម្លៃ IntelliJ IDEA មានពីរកំណែ៖ ការបោះពុម្ពសហគមន៍ឥតគិតថ្លៃ និងការបោះពុម្ពចុងក្រោយដែលបង់ប្រាក់ជាមួយនឹងមុខងារបន្ថែម។ ការបោះពុម្ពសហគមន៍ត្រូវបានរចនាឡើងសម្រាប់ការអភិវឌ្ឍន៍ JVM និង Android ។ កំណែឥតគិតថ្លៃគាំទ្រ Java, Kotlin, Groovy និង Scala ។ ប្រព័ន្ធប្រតិបត្តិការ Android; Maven, Gradle និង SBT; ធ្វើការជាមួយប្រព័ន្ធគ្រប់គ្រងកំណែ Git, SVN, Mercurial និង CVS ។ ការបោះពុម្ពចុងក្រោយគឺសមរម្យសម្រាប់ការអភិវឌ្ឍន៍គេហទំព័រ និងសហគ្រាស។ កំណែ IDE នេះមិនត្រឹមតែដំណើរការជាមួយ Git, SVN, Mercurial និង CVS ប៉ុណ្ណោះទេ ប៉ុន្តែថែមទាំងជាមួយ Perforce, ClearCase និង TFS ផងដែរ។ នៅក្នុងវា អ្នកអាចសរសេរជា JavaScript និង TypeScript; ធម្មជាតិមាន ការគាំទ្រ Java EE, Spring, GWT, Vaadin, Play, Grails និងក្របខ័ណ្ឌផ្សេងៗទៀត។ ហើយជាការពិតណាស់ យើងមិនអាចធ្វើបានដោយគ្មាន SQL និងឧបករណ៍សម្រាប់ធ្វើការជាមួយមូលដ្ឋានទិន្នន័យទេ។ គំនិតដែលណែនាំអ្នកអភិវឌ្ឍន៍នៃ IDE នេះនៅពេលបង្កើតគោលការណ៍កំណត់តម្លៃគឺថាកំណែពាណិជ្ជកម្មរបស់វា (Ultimate) នឹងយកកន្លែងរបស់វានៅលើកុំព្យូទ័ររបស់អ្នកជំនាញ ដោយសារផលិតភាពរបស់ពួកគេនឹងកើនឡើង។ ប្រសិនបើអ្នកសរសេរកម្មវិធី Java រកបាន 50 ពាន់ដុល្លារក្នុងមួយឆ្នាំ (ឬច្រើនជាងនេះ) នោះការត្រឡប់មកវិញលើអ្វីដែលគាត់បានចំណាយ IDE ដែលបានបង់ការវិនិយោគ IntelliJ IDEA ($500 សម្រាប់ការជាវប្រចាំឆ្នាំ) នឹងកើតឡើងយ៉ាងលឿនដោយសារតែការបង្កើនល្បឿនបន្តិចនៃការងាររបស់ខ្លួន។ នៅឆ្នាំបន្តបន្ទាប់ តម្លៃសម្រាប់អាជីវកម្មធ្លាក់ចុះ សម្រាប់អ្នកចាប់ផ្តើមអាជីវកម្ម និងអ្នកឯករាជ្យ វាទាបជាងយ៉ាងខ្លាំង ហើយសម្រាប់សិស្ស គ្រូបង្រៀន ជើងឯក Java និងអ្នកអភិវឌ្ឍន៍ប្រភពបើកចំហ វាឥតគិតថ្លៃទាំងស្រុង។ IntelliJ IDEA ចាប់អារម្មណ៍ជាមួយនឹងការយល់ដឹងអំពីកូដដ៏ស៊ីជម្រៅរបស់វា ergonomics ឆ្លាតវៃ លក្ខណៈពិសេសអភិវឌ្ឍន៍ដែលភ្ជាប់មកជាមួយ និងការគាំទ្រពហុភាសា។
រូបភាពទី 1. IntelliJ IDEA បង្ហាញចំនួននៃការព្រមាន និងការទាយដោយផ្អែកលើការវិភាគស្ថិតិនៃកូដ Java ។ អ្នកអាចសិក្សាការសន្មត់ឱ្យបានលំអិតដោយចុចលើពួកវា ដូចបង្ហាញក្នុងរូបភាព។ ក្នុងករណីជាច្រើន អ្នកនឹងទទួលបានបញ្ជីដែលមានជម្រើស និងជម្រើសកែតម្រូវ។

ការយល់ដឹងស៊ីជម្រៅអំពីកូដ

ការបន្លិចវាក្យសម្ព័ន្ធ និងការបំពេញកូដសាមញ្ញគឺជារឿងធម្មតាសម្រាប់អ្នកកែសម្រួល Java ទំនើបណាមួយ។ IDEA បានទៅបន្ថែមទៀតដោយផ្តល់ជូននូវ "ការបំពេញដោយស្វ័យប្រវត្តិឆ្លាតវៃ" ។ ពាក្យនេះមានន័យថាបរិយាកាសអភិវឌ្ឍន៍បង្ហាញបញ្ជីនិមិត្តសញ្ញាដែលពាក់ព័ន្ធបំផុតដែលអាចអនុវត្តបានក្នុងបរិបទដែលបានផ្តល់ឱ្យ។ បញ្ជីនៃនិមិត្តសញ្ញាអាស្រ័យមិនត្រឹមតែលើបរិបទដូចនោះទេ និមិត្តសញ្ញា "ទទួលយកជាទូទៅ" ប៉ុន្តែនៅលើរចនាប័ទ្មសរសេរកម្មវិធីរបស់អ្នកអភិវឌ្ឍន៍ ថាតើគាត់ប្រើប្រតិបត្តិករជាក់លាក់ញឹកញាប់ប៉ុណ្ណា។ "ការបញ្ចប់ខ្សែសង្វាក់" ថែមទាំងបង្ហាញបញ្ជីនៃនិមិត្តសញ្ញាដែលអាចអនុវត្តបានដែលត្រូវបានអនុញ្ញាតតាមរយៈវិធីសាស្រ្ត ឬអ្នកទទួលនៅក្នុងបរិបទបច្ចុប្បន្ន។ លើសពីនេះទៀត សម្រាប់សមាជិកឋិតិវន្ត ឬថេរ IDEA បន្ថែមសេចក្តីថ្លែងការណ៍នាំចូលចាំបាច់ណាមួយដោយស្វ័យប្រវត្តិ។ ក្នុងគ្រប់ករណីនៃការបំពេញដោយស្វ័យប្រវត្តិ IDEA ព្យាយាមទស្សន៍ទាយប្រភេទនៃនិមិត្តសញ្ញានៅពេលដំណើរការ កែលម្អការជ្រើសរើសរបស់វា ហើយថែមទាំងអនុវត្តការខាសប្រភេទប្រសិនបើចាំបាច់។ កូដ Java ច្រើនតែរួមបញ្ចូលផ្នែកតូចៗពីភាសាផ្សេងទៀតជាខ្សែអក្សរ។ IDEA អាចបញ្ចូល SQL, XPath, HTML, CSS, ឬកូដ JavaScript ទៅក្នុងអក្សរអក្សរចាវ៉ា។ ក្នុងន័យនេះ IDE អាច refactor code ជាច្រើនភាសា។ ឧទាហរណ៍ ប្រសិនបើអ្នកប្តូរឈ្មោះថ្នាក់ក្នុង JPA mapping នោះ IDEA នឹងធ្វើបច្ចុប្បន្នភាពធាតុ JPA ដែលត្រូវគ្នា និងថ្នាក់កន្សោម។ នៅពេលកែកូដមួយដុំ អ្នកអភិវឌ្ឍន៍មានបំណងប្រាថ្នាមួយ (ធម្មជាតិពិត)៖ សម្រាប់លេខស្ទួនទាំងអស់នៃកូដនេះក៏ត្រូវកែឡើងវិញផងដែរ។ IDEA Ultimate រក​ឃើញ​បំណែក​ស្ទួន និង​បំណែក​ស្រដៀង​គ្នា ហើយ​ក៏​អនុវត្ត​ការ​កែច្នៃ​ឡើងវិញ​ចំពោះ​ពួកវា​ផងដែរ។ IntelliJ IDEA ញែកកូដនៅពេលផ្ទុក និងដោយផ្ទាល់នៅពេលអ្នកបញ្ចូលវា។ វាចង្អុលបង្ហាញពីបញ្ហាដែលសង្ស័យ (ដូចនៅក្នុងរូបភាពរបស់យើងខាងលើ) ហើយជាជម្រើសផ្តល់នូវបញ្ជីនៃការជួសជុលរហ័សដែលទំនងជាបញ្ហាដែលបានរកឃើញ។

Ergonomics


IntelliJ IDEA ត្រូវ​បាន​រចនា​ឡើង ដើម្បី​កុំ​ឲ្យ​អ្នក​អភិវឌ្ឍន៍​ចេញ​ពី​ស្ថានភាព​ផលិតភាព​ដែល​កំពុង​មាន​នៅ​ពេល​ដែល​គាត់​មាន​ស្រាប់។ បង្អួចគម្រោង ដែលបង្ហាញក្នុងរូបភាពទីមួយនៅខាងឆ្វេង បាត់ដោយការចុចកណ្ដុរសាមញ្ញ ដើម្បីឱ្យអ្នកសរសេរកម្មវិធីអាចផ្តោតលើបង្អួចកម្មវិធីកែកូដ។ សម្រាប់សកម្មភាពទាំងអស់ដែលត្រូវការពេលកំពុងសរសេរកូដ មានផ្លូវកាត់ក្តារចុចសម្រាប់ពួកគេ។ ការហៅទូរស័ព្ទរហ័សរួមទាំងនិយមន័យនៃនិមិត្តសញ្ញានៅក្នុងបង្អួចដែលលេចឡើង។ ដំបូង បន្សំទាំងអស់នេះពិបាកចងចាំ ប៉ុន្តែបន្តិចម្ដងៗ អ្នកស៊ាំនឹងពួកវា ហើយប្រើតែពួកវាប៉ុណ្ណោះ។ ទោះជាយ៉ាងណាក៏ដោយ ទោះបីជាអ្នកសរសេរកម្មវិធីមិនប្រើផ្លូវកាត់ក្តារចុច ដូចដែលការអនុវត្តបង្ហាញក៏ដោយ គាត់ស៊ាំនឹងការធ្វើការនៅក្នុង IDEA យ៉ាងងាយស្រួល និងរហ័ស។ ខ្ញុំចង់កត់សម្គាល់ជាពិសេសចំពោះកម្មវិធីបំបាត់កំហុស IDEA៖ តម្លៃអថេរត្រូវបានបង្ហាញដោយផ្ទាល់នៅក្នុងបង្អួចកម្មវិធីនិពន្ធ នៅជាប់នឹងកូដប្រភពដែលត្រូវគ្នា។ នៅពេលដែលស្ថានភាពនៃអថេរផ្លាស់ប្តូរ ពណ៌បន្លិចក៏ផ្លាស់ប្តូរផងដែរ។

ឧបករណ៍ដែលភ្ជាប់មកជាមួយ

IntelliJ IDEA ផ្តល់នូវចំណុចប្រទាក់តែមួយដើម្បីធ្វើអន្តរកម្មជាមួយប្រព័ន្ធគ្រប់គ្រងកំណែភាគច្រើន រួមទាំង Git, SVN, Mercurial, CVS, Perforce និង TFS ។ អ្នកអាចគ្រប់គ្រងការផ្លាស់ប្តូរដោយផ្ទាល់នៅក្នុង IDE ដែលវាងាយស្រួលណាស់។ នៅពេលខ្ញុំកំពុងសាកល្បង IDEA ខ្ញុំមានបំណងចង់ឱ្យការផ្លាស់ប្តូរចុងក្រោយបំផុតនៃកូដប្រភពបង្ហាញនៅក្នុងបង្អួចកម្មវិធីនិពន្ធជាចំណារពន្យល់ (ដូចដែលកើតឡើងឧទាហរណ៍នៅក្នុង Visual Studio)។ ដូចដែលវាប្រែចេញ IDEA មានកម្មវិធីជំនួយពិសេសសម្រាប់រឿងនេះ។ IDEA ក៏មានភ្ជាប់មកជាមួយនូវឧបករណ៍សាងសង់ ពេលវេលាដំណើរការសាកល្បង ឧបករណ៍គ្របដណ្តប់ និងបង្អួចស្ថានីយដែលភ្ជាប់មកជាមួយផងដែរ។ IntelliJ មិនមាន profiler ផ្ទាល់ខ្លួនទេ ប៉ុន្តែភាគីទីបីអាចភ្ជាប់ជាមួយវាដោយប្រើកម្មវិធីជំនួយ។ ឧទាហរណ៍ YourKit ដែលបង្កើតឡើងដោយអតីតអ្នកអភិវឌ្ឍន៍ឈានមុខគេរបស់ JetBrains ឬ VisualVM (ដែលជាកំណែដែលបានវេចខ្ចប់ឡើងវិញនៃទម្រង់ NetBeans) ។ ការបំបាត់កំហុសនៅក្នុង Java អាចជាការឈឺចាប់នៅពេលដែលមានរឿងអាថ៌កំបាំងគ្រប់ប្រភេទកើតឡើងចំពោះថ្នាក់ដែលអ្នកមិនមានប្រភព។ IDEA រួមបញ្ចូលឧបករណ៍ decompiler សម្រាប់ករណីបែបនេះ។ ការសរសេរកម្មវិធីផ្នែកខាងម៉ាស៊ីនមេនៅក្នុង Java តម្រូវឱ្យមានអន្តរកម្មជាញឹកញាប់ជាមួយមូលដ្ឋានទិន្នន័យ ដូច្នេះអ្នកសរសេរកម្មវិធី IDEA Ultimate នឹងពេញចិត្តក្នុងការស្តាប់នូវភាពងាយស្រួលនៃឧបករណ៍សម្រាប់ធ្វើការជាមួយ SQL និងមូលដ្ឋានទិន្នន័យ។ ប៉ុន្តែប្រសិនបើសមត្ថភាពរបស់ពួកគេមិនគ្រប់គ្រាន់សម្រាប់នរណាម្នាក់ អ្នកអាចទិញកំណែ IDEA Ultimate ជាមួយនឹង SQL IDE (DataGrip) ដែលភ្ជាប់មកជាមួយ។ ទោះយ៉ាងណាក៏ដោយ វានឹងមានតម្លៃថ្លៃជាងការជាវ IDEA Ultimate ធម្មតា។ IntelliJ IDEA គាំទ្រម៉ាស៊ីនមេកម្មវិធី JVM សំខាន់ៗទាំងអស់ ហើយអនុញ្ញាតឱ្យអ្នកដាក់ពង្រាយ និងបំបាត់កំហុសនៅលើម៉ាស៊ីនមេទាំងនេះ ដែលលុបបំបាត់ការស្គាល់ អ្នកសរសេរកម្មវិធី Javaការលំបាករបស់សហគ្រាស។ IDEA ក៏គាំទ្រ Docker (តាមរយៈកម្មវិធីជំនួយដែលបន្ថែមបង្អួចឧបករណ៍ Docker ពិសេសទៅបរិយាកាសអភិវឌ្ឍន៍។ ដោយវិធីនេះ IDEA មានកម្មវិធីជំនួយជាច្រើនតោន។

ពហុកោណពិតប្រាកដ

IDEA បានពង្រីកការគាំទ្រកូដសម្រាប់ Spring, Java EE, Grails, Play, Android, GWT, Vaadin, Thymeleaf, Android, React, AngularJS និងក្របខ័ណ្ឌផ្សេងទៀត។ អ្នកប្រហែលជាបានកត់សម្គាល់ថាមិនមែនទាំងអស់សុទ្ធតែជា Java ជាក់លាក់នោះទេ។ IDEA "យល់" ភាសាផ្សេងទៀតដោយផ្ទាល់ចេញពីប្រអប់ - Groovy, Kotlin, Scala, JavaScript, TypeScript និង SQL ។ ប្រសិនបើអ្នករកមិនឃើញភាសាដែលអ្នកត្រូវការនៅក្នុងបញ្ជីនេះទេ ពេលបច្ចុប្បន្នមានកម្មវិធីជំនួយភាសា IntelliJ ចំនួន 19 ដែលគាំទ្រជាពិសេស R, Elm និង D ។


អស់រយៈពេលជាច្រើនឆ្នាំ Eclipse ទទួលបានប្រជាប្រិយភាពយ៉ាងជឿជាក់ក្នុងចំណោម Java IDE ។ បរិស្ថាននេះគឺឥតគិតថ្លៃទាំងស្រុង ប្រភពបើកចំហដែលបានសរសេរជាចម្បងនៅក្នុង Java ។ ទោះយ៉ាងណាក៏ដោយ ស្ថាបត្យកម្មម៉ូឌុលរបស់វាអនុញ្ញាតឱ្យប្រើ Eclipse ជាមួយភាសាផ្សេងទៀត។ គម្រោង Eclipse ដែលផ្តួចផ្តើមដោយ IBM បានបង្ហាញខ្លួនក្នុងឆ្នាំ 2001។ ពួកគេចង់ជំនួសបរិស្ថានអភិវឌ្ឍន៍គ្រួសារ IBM Visual Age ដែលមានមូលដ្ឋានលើ Smalltalk ។ ជាការប្រសើរណាស់ គោលដៅសំខាន់ សូម្បីតែឈ្មោះក៏បានបង្ហាញដែរ គឺដើម្បីបញ្ចេញ Microsoft Visual Studio (សូរ្យគ្រាសជាភាសាអង់គ្លេសមានន័យថា សូរ្យគ្រាស)។ ការចល័តរបស់ Java ជួយឱ្យ Eclipse ជាបរិស្ថានឆ្លងវេទិកា៖ IDE នេះដំណើរការលើ Linux, Mac OS X, Solaris និង Windows ។ សម្រាប់កាន់តែប្រសើរ ឬអាក្រក់ជាងនេះ កញ្ចប់ឧបករណ៍ធាតុក្រាហ្វិកស្តង់ដារ Java (SWT) យ៉ាងហោចណាស់ទទួលខុសត្រូវដោយផ្នែក រូបរាងសូរ្យគ្រាស។ Eclipse ជំពាក់ការអនុវត្តរបស់វា (ឬដូចដែលអ្នកប្រាថ្នាល្អខ្លះនិយាយថា ខ្វះវា) ទៅ JVM ។ Eclipse ដំណើរការយឺតណាស់ ដោយសារវាត្រូវបានចាក់ឫសនៅក្នុងផ្នែករឹងចាស់ និងកំណែបុរាណរបស់ JVM ។ សូម្បីតែសព្វថ្ងៃនេះវាហាក់ដូចជាយឺត ជាពិសេសប្រសិនបើអ្នកភ្ជាប់កម្មវិធីជំនួយជាច្រើនទៅវា។ ធនធានមួយចំនួនរបស់ Eclipse អាចត្រូវបានកំណត់គុណលក្ខណៈជាកម្មវិធីចងក្រងបន្ថែមដែលភ្ជាប់មកជាមួយរបស់វា ដែលដំណើរការនៅពេលណាដែលឯកសារត្រូវបានផ្ទុក ឬកូដត្រូវបានធ្វើបច្ចុប្បន្នភាព។ នេះ​ជា​រឿង​ដែល​មាន​ប្រយោជន៍ វា​ចាប់​កំហុស​ពេល​បញ្ចូល​អត្ថបទ។ ដោយមិនគិតពីការស្ថាបនា គម្រោង Eclipse រក្សាគំរូមាតិកាដែលមានព័ត៌មានអំពីឋានានុក្រមនៃប្រភេទ ឯកសារយោង និងការប្រកាសនៃធាតុ Java ។ កំណែបច្ចុប្បន្ននៃ Eclipse ត្រូវបានគេហៅថា Neon (4.6.0) ។ ខ្ញុំបានដំឡើង Eclipse Java EE IDE សម្រាប់អ្នកអភិវឌ្ឍន៍គេហទំព័រ (នេះមិនមែនជាជម្រើសតែមួយទេ អ្នកអាចជ្រើសរើសអ្វីផ្សេងទៀត)។ វាមានតិចតួចបំផុត។ Eclipse SDKហើយកម្មវិធីជំនួយត្រូវបានបន្ថែមតាមការស្នើសុំ។ ដោយវិធីនេះ ការធ្វើការជាមួយកម្មវិធីជំនួយនៅក្នុង IDE នេះមិនមែនសម្រាប់បេះដូងខ្សោយនោះទេ។ កម្មវិធីជំនួយភាគីទីបីតែងតែប៉ះទង្គិចគ្នាទៅវិញទៅមក ទោះបីជាលក្ខណៈផ្លូវការរបស់ពួកគេមិននិយាយអ្វីអំពីរឿងនេះក៏ដោយ។
រូបភាពទី 2: ពីឆ្វេងទៅស្តាំមានបន្ទះបួន ឧបករណ៍ Eclipse៖ Package Explorer, Java Editor, Java Class Structure និង Task List។ គម្រោងដែលបានផ្ទុកទៅក្នុង Eclipse នៅក្នុងរូបភាពនេះគឺជាក្របខ័ណ្ឌសាកល្បង JUnit ។ បន្ទះអាចផ្លាស់ប្តូរបានយ៉ាងងាយស្រួល។

ការគាំទ្រកម្មវិធីជំនួយ

ប្រព័ន្ធអេកូកម្មវិធីជំនួយ Eclipse គឺទាំងពីរ ចំណុចខ្លាំង IDE នេះ និងបញ្ហាចម្បងមួយរបស់វា។ វាគឺដោយសារតែភាពមិនស៊ីគ្នានៃកម្មវិធីជំនួយ ដែលជួនកាលការជួបប្រជុំគ្នាទាំងមូលគាំង ហើយអ្នកសរសេរកម្មវិធីត្រូវចាប់ផ្តើមការងារម្តងទៀត។ បច្ចុប្បន្នមានកម្មវិធីជំនួយជាង 1,700 ដែលត្រូវបានសរសេរសម្រាប់ Eclipse ផ្លូវការ និងក្រៅផ្លូវការ ដែលអាចឬប្រហែលជាមិនដំណើរការល្អ។ កម្មវិធីជំនួយ Eclipse គាំទ្រភាសាសរសេរកម្មវិធីច្រើនជាង 100 និងក្របខ័ណ្ឌអភិវឌ្ឍន៍កម្មវិធីស្ទើរតែ 200 ។ ម៉ាស៊ីនមេ Java ភាគច្រើនក៏ត្រូវបានគាំទ្រផងដែរ៖ ប្រសិនបើអ្នកកំណត់ការភ្ជាប់ម៉ាស៊ីនមេថ្មីពី Eclipse អ្នកនឹងត្រូវយកទៅក្នុងបញ្ជីនៃថតអ្នកលក់ ដែលអ្នកនឹងរកឃើញម៉ាស៊ីនមេកម្មវិធីប្រហែល 30 ។ មានតែជម្រើសប៉ុណ្ណោះ។ Apache Tomcatវានឹងមានចំនួនប្រាំបួនបំណែក។ អ្នកលក់ពាណិជ្ចកម្មមានទំនោរប្រមូលផ្តុំដំណោះស្រាយរបស់ពួកគេជាមួយគ្នា៖ ឧទាហរណ៍ មានតែធាតុ Red Hat JBoss Middleware ហើយនៅខាងក្នុងអ្នកនឹងឃើញឧបករណ៍ម៉ាស៊ីនមេ WildFly និង EAP ក៏ដូចជា JBoss AS ។

ការកែសម្រួល ការកែលម្អ និងការបំបាត់កំហុស

បទពិសោធន៍ដំបូងរបស់អ្នកជាមួយ Eclipse អាចមានភាពច្របូកច្របល់ ហើយថែមទាំងអាចយល់ច្រលំទៀតផង។ ជំហានដំបូងគឺត្រូវរៀបចំ Eclipse និងប្រើប្រាស់ជាមួយស្ថាបត្យកម្មគំនិតនៃកន្លែងធ្វើការ ទិដ្ឋភាព និងទិដ្ឋភាពរបស់វា។ ទាំងអស់នេះត្រូវបានកំណត់ដោយកម្មវិធីជំនួយដែលអ្នកបានដំឡើង។ សម្រាប់ការអភិវឌ្ឍន៍ Java ផ្នែកខាងម៉ាស៊ីនមេ អ្នកទំនងជានឹងប្រើទិដ្ឋភាពរុករក Java, Java EE, និង Java, ទិដ្ឋភាពកញ្ចប់ Explorer, ទិដ្ឋភាពបំបាត់កំហុស, ទិដ្ឋភាពធ្វើសមកាលកម្មឧបករណ៍បណ្ដាញពាក្យបញ្ជា ទិដ្ឋភាពអភិវឌ្ឍន៍មូលដ្ឋានទិន្នន័យ និងទិដ្ឋភាពបំបាត់កំហុសមូលដ្ឋានទិន្នន័យ។ នៅក្នុងការអនុវត្ត អ្វីគ្រប់យ៉ាងសមហេតុផលនៅពេលអ្នកបើកបង្អួចដែលអ្នកត្រូវការ។ Eclipse ស្ទើរតែតែងតែផ្តល់នូវវិធីជាច្រើនដើម្បីដោះស្រាយបញ្ហាជាក់លាក់ណាមួយ។ ឧទាហរណ៍ អ្នក​អាច​មើល​កូដ​ដោយ​ប្រើ​ទស្សនវិស័យ​រុករក Java ។ អ្វីដែលត្រូវជ្រើសរើសគឺជាបញ្ហានៃរសជាតិនិងជម្រើស។ ការស្វែងរក Java ពិសេសអនុញ្ញាតឱ្យអ្នកស្វែងរកការប្រកាស សេចក្តីយោង និងការកើតឡើងនៃកញ្ចប់ Java ប្រភេទ វិធីសាស្ត្រ វាល។ អ្នកក៏អាចប្រើការចូលប្រើការស្វែងរករហ័ស និងការមើលជាមុនផងដែរ។ គំរូកូដទូទៅអាចត្រូវបានបង្កើតពីគំរូកូដ។ Java Refactoring in Eclipse គាំទ្រប្រតិបត្តិការចំនួន 23 រាប់ចាប់ពីប្រតិបត្តិការប្តូរឈ្មោះធម្មតា រហូតដល់ការផ្លាស់ប្តូរមិនសូវច្បាស់ (ដូចនៅក្នុងសៀវភៅរបស់ Martin Fowler)។ Eclipse គាំទ្រទាំងការបំបាត់កំហុសក្នុងមូលដ្ឋាន និងពីចម្ងាយ ផ្តល់ជូនអ្នកកំពុងប្រើ JVM ដែលគាំទ្រការកែកំហុសពីចម្ងាយ។ ការបំបាត់កំហុសគឺជាស្តង់ដារស្អាត៖ អ្នកកំណត់ ចំណុចត្រួតពិនិត្យហើយបន្ទាប់មកមើលអថេរនៅក្នុងផ្ទាំងបំបាត់កំហុស។ ជា​ការ​ពិត​ណាស់ អ្នក​អាច​បោះ​ជំហាន​តាម​រយៈ​កូដ​របស់​អ្នក និង​វាយ​តម្លៃ​កន្សោម។ Eclipse មានមូលដ្ឋានឯកសារទូលំទូលាយ ដែលមានអាយុខុសគ្នា, តម្លៃនិងការប្រើប្រាស់។ ជាអកុសល ការស្វែងរករូបភាពនៅក្នុងការណែនាំដែលមិនទាក់ទងទៅនឹងកំណែបច្ចុប្បន្ន ឧទាហរណ៍ ជាមួយនឹងចំណុចប្រទាក់ហួសសម័យ និងប្លង់ប៊ូតុង គឺជាការកើតឡើងទូទៅសម្រាប់ IDE នេះ។ ជាអកុសល បញ្ហានៃការធ្វើបច្ចុប្បន្នភាពឯកសារយឺតគឺជារឿងធម្មតាណាស់សម្រាប់គម្រោងកូដប្រភពណាមួយ។


NetBeans បានចាប់ផ្តើមជាគម្រោងនិស្សិតសាកលវិទ្យាល័យនៅទីក្រុង Prague ក្នុងឆ្នាំ 1996 ។ នៅឆ្នាំ 1997 IDE បានក្លាយជាផលិតផលពាណិជ្ជកម្ម ហើយនៅឆ្នាំ 1999 វាត្រូវបានទិញដោយ Sun Microsystems (ឪពុកម្តាយរបស់ Java) ហើយនៅឆ្នាំបន្ទាប់បានបង្ហាញការចេញផ្សាយប្រភពបើកចំហ។ កំណែបច្ចុប្បន្ន 8.1 ដំណើរការលើម៉ាស៊ីនដែលដំណើរការ Windows, Mac OS X, Linux និង Solaris ។ ជាការប្រសើរណាស់ កញ្ចប់ចល័តអាចដំណើរការលើប្រព័ន្ធណាមួយដែលមានម៉ាស៊ីន Java ។ ខ្ញុំបានទាញយកកញ្ចប់ Java EE សម្រាប់ខ្លួនខ្ញុំផ្ទាល់ វាគឺជាកញ្ចប់ទាញយកមួយក្នុងចំណោមកញ្ចប់ទាញយកចំនួនប្រាំមួយដែលអាចមាន។ កញ្ចប់នេះគាំទ្រ JavaScript និង HTML, GlassFish និង Tomcat ប៉ុន្តែមិនគាំទ្រ PHP, C/C++/Fortran, Groovy និង Grails ទេ៖ ពួកគេអាចទទួលបាននៅក្នុងកញ្ចប់ “All Inclusive” (ឬធម្មតា “ទាំងអស់”)។ ទោះយ៉ាងណាក៏ដោយ ប្រសិនបើខ្ញុំប្រាថ្នា ខ្ញុំអាចទាញយកការគាំទ្រសម្រាប់ភាសាខាងលើនៅពេលណាមួយដោយជ្រើសរើសកម្មវិធីជំនួយដែលសមស្រប (ឬផ្សេងទៀត)។ NetBeans មានពួកវាតិចជាង Eclipse ប៉ុន្តែជាធម្មតាពួកគេមិនមានជម្លោះជាមួយគ្នាទេ។ ការដួលរលំនេះ Oracle (ដែលបានទទួល NetBeans បន្ទាប់ពីទទួលបាន Sun Microsystems) បានសម្រេចចិត្តផ្ទេរបរិយាកាសអភិវឌ្ឍន៍នេះក្រោមស្លាបរបស់ Apache Software Foundation រួមជាមួយនឹងសិទ្ធិទាំងអស់ កូដប្រភព ពាណិជ្ជសញ្ញា ដែន "netbeans.org" និងហេដ្ឋារចនាសម្ព័ន្ធមួយចំនួនទៀត។ ធាតុ។ ដូច្នេះ អនាគតនៃគម្រោងនេះនៅតែមិនច្បាស់លាស់ ទោះបីជាពីមុនប្រព័ន្ធមានសិទ្ធិពាក់ព័ន្ធមួយចំនួនក៏ដោយ។ ដូច្នេះហើយ វាគឺជា NetBeans ដែលបានទទួលការគាំទ្រដំបូងសម្រាប់ Java 8 ស្ទើរតែភ្លាមៗបន្ទាប់ពីការចេញផ្សាយនៃវេទិកាដែលបានធ្វើបច្ចុប្បន្នភាព ហើយត្រូវបានគេហៅថា "IDE ផ្លូវការសម្រាប់ Java 8" ។ ទោះជាយ៉ាងណាក៏ដោយ មួយខែបន្ទាប់ពីការចេញផ្សាយរបស់វា អត្ថប្រយោជន៍នេះត្រូវបានបាត់បង់៖ នៅពេលនោះ IDEs ផ្សេងទៀតក៏ទទួលបានការគាំទ្រសម្រាប់ Java 8 ផងដែរ។ ទោះយ៉ាងណាក៏ដោយ ខ្ញុំចង់ចង្អុលបង្ហាញថា ការគាំទ្រ Java 8 របស់ NetBeans ពិតជាល្អ ហើយ IDE គឺល្អសម្រាប់ការត្បាញ Java 8 ទៅជាកូដ "ចាស់" ។ កម្មវិធីនិពន្ធ អ្នកវិភាគកូដ និងអ្នកបំប្លែងរបស់វា នឹងជួយអ្នកសរសេរកម្មវិធីឱ្យប្រសើរឡើងនូវកូដដោយប្រើការស្ថាបនាលក្ខណៈនៃ Java 8 - កន្សោម lambda ប្រតិបត្តិករមុខងារ និងសេចក្តីយោងវិធីសាស្ត្រ។ កម្មវិធីជំនួយ JavaScript នៅក្នុង NetBeans 8 ធ្វើការងារដ៏អស្ចារ្យក្នុងការគាំទ្រ Node.js និង ឧបករណ៍ចុងក្រោយបំផុត។ JavaScript ដូចជា Gulp និង Mocha ក៏ដូចជាការគាំទ្រសម្រាប់អ្នកបកប្រែ Nashorn JavaScript ។
រូបភាពទី 3. នៅទីនេះ NetBeans កំពុងដំណើរការគម្រោងដែលមានមូលដ្ឋានលើ Maven ដូចគ្នាដែល IntelliJ IDEA ត្រូវបានបើកក្នុងរូបភាពទី 1។ ចំណាំមុខងារកម្រិតខ្ពស់នៅក្នុង ម៉ឺនុយបរិបទនិងម៉ឺនុយរង refactoring

ការកែសំរួលនិងការកែសំរួលឡើងវិញ

កម្មវិធីនិពន្ធ NetBeans គាំទ្រភាសា រកឃើញកំហុសនៅពេលអ្នកវាយ និងជួយអ្នកជាមួយនឹងព័ត៌មានជំនួយ និងការបំពេញកូដឆ្លាតវៃ។ យោងតាមអារម្មណ៍ប្រធានបទ IDE ដោះស្រាយកិច្ចការនេះលឿនជាង Eclipse ប៉ុន្តែយឺតជាង IntelliJ IDEA បន្តិច។ លើសពីនេះទៀត NetBeans មាន វិសាលគមពេញលេញឧបករណ៍ refactoring (ដូចបង្ហាញក្នុងរូបភាពទី 3) ដែលអនុញ្ញាតឱ្យអ្នកសរសេរកម្មវិធីរៀបចំកូដឡើងវិញដោយមិនចាំបាច់បំបែកវា ធ្វើការវិភាគប្រភព និងក៏ផ្តល់នូវព័ត៌មានជំនួយជាច្រើនសម្រាប់ការជួសជុលរហ័ស ឬផ្នែកបន្ថែមកូដផងដែរ។ NetBeans រួមបញ្ចូលឧបករណ៍រចនា Swing GUI ដែលពីមុនត្រូវបានគេស្គាល់ថា "Project Matisse" ។ អ្នកអភិវឌ្ឍន៍សូមកោតសរសើរយ៉ាងខ្លាំងចំពោះឧបករណ៍ត្រួតពិនិត្យ និងការផ្លាស់ប្តូរដោយស្វ័យប្រវត្តិ ដែលណែនាំនៅក្នុង NetBeans 7.1 ។ វាអនុញ្ញាតឱ្យអ្នកវិភាគកូដគម្រោង និងធ្វើការកែលម្អដែលបានស្នើ។ ទោះបីជាដោយផ្ទាល់ក៏ដោយ ខ្ញុំចូលចិត្តសាកល្បងកូដផ្ទាល់ខ្លួនរបស់ខ្ញុំទាំងអស់ជាមួយនឹងការធ្វើតេស្តឯកតាជាមុនសិន ហើយមានតែបន្ទាប់មកដំណើរការឧបករណ៍ដែលអាចធ្វើការផ្លាស់ប្តូររ៉ាឌីកាល់បាន។ ខ្ញុំបានរងទុក្ខម្តងហើយម្តងទៀតពីគ្រប់ប្រភេទ ការកែតម្រូវដោយស្វ័យប្រវត្តិដែលនាំឱ្យមានផលវិបាកដែលមិនអាចជួសជុលបាន។

ការកសាង ការបំបាត់កំហុស និងការបំពេញទម្រង់

NetBeans មានការគាំទ្រដើមដ៏ល្អសម្រាប់ Maven និង Ant ក៏ដូចជាកម្មវិធីជំនួយសម្រាប់ Gradle ផងដែរ។ ខ្ញុំសប្បាយចិត្តខ្លាំងណាស់នៅពេលដែលខ្ញុំបានរកឃើញថាគម្រោង Maven ត្រូវបានចាត់ទុកជា "ដើមកំណើត" ដោយប្រព័ន្ធ។ នេះ​មាន​ន័យ​ថា​គេ​អាច​បើក​បាន​ជា​ជាង​នាំ​ចូល។ NetBeans ក៏មានការបង្ហាញក្រាហ្វិកដ៏គួរឱ្យទាក់ទាញ (និងមានប្រយោជន៍) សម្រាប់ភាពអាស្រ័យ Maven ផងដែរ។ កម្មវិធីបំបាត់កំហុស NetBeans Java មិនអាក្រក់ទេ ប៉ុន្តែវាភ្ជាប់មកជាមួយការព្រមានមួយចំនួន។ កម្មវិធីបំបាត់កំហុសដែលមើលឃើញដាច់ដោយឡែកអនុញ្ញាតឱ្យអ្នកសរសេរកម្មវិធីថតរូបអេក្រង់នៃចំណុចប្រទាក់ក្រាហ្វិកអ្នកប្រើប្រាស់ និងរុករកចំណុចប្រទាក់នៃកម្មវិធីដែលបានធ្វើឡើងដោយប្រើ JavaFX និង Swing ។ NetBeans profiler ធ្វើឱ្យវាកាន់តែច្បាស់អំពីរបៀបដែល CPU និង memory ត្រូវបានប្រើប្រាស់ និងមានឧបករណ៍ដ៏ល្អសម្រាប់ស្វែងរកការលេចធ្លាយអង្គចងចាំ។

ការប្រៀបធៀបនៃយក្សទាំងបី

ខ្ញុំបានប្រើ IDE ទាំងបី Eclipse, NetBeans និង IntelliJ IDEA អស់ជាច្រើនឆ្នាំតាមលំដាប់លំដោយដែលបានរាយបញ្ជី។ រាល់ពេលដែលខ្ញុំប្តូរទៅ IDE ផ្សេង ខ្ញុំមានអារម្មណ៍ថាផលិតភាពរបស់ខ្ញុំកើនឡើង។ ប៉ុន្តែសូម្បីតែនៅពេលដែលខ្ញុំជឿជាក់យ៉ាងមុតមាំថា IDEA គឺជាជម្រើសចុងក្រោយរបស់ខ្ញុំ ពេលខ្លះខ្ញុំត្រូវត្រលប់ទៅ IDE មួយក្នុងចំណោម IDE ដែលនៅសល់។ នេះជាករណីឧទាហរណ៍នៅពេល Eclipse គឺជាឧបករណ៍តែមួយគត់ដែលគាំទ្រការអភិវឌ្ឍន៍ Android (សព្វថ្ងៃនេះមាន Android Studio IDE ផ្លូវការបច្ចុប្បន្នសម្រាប់ប្រព័ន្ធប្រតិបត្តិការ Android វាត្រូវបានផ្អែកលើ IntelliJ IDEA) ។ ជាការពិតណាស់ IDEs ទាំងបីមានអ្នកគាំទ្រ និងអ្នករារាំងរបស់ពួកគេ។ ខ្ញុំស្គាល់អ្នកអភិវឌ្ឍន៍ Java ជាច្រើនដែលស្រលាញ់ IntelliJ IDEA ក៏ដូចជាអ្នកគាំទ្រ Visual Studio C++ និង C# ដ៏ស្មោះត្រង់។ ជាញឹកញាប់ជាងនេះទៅទៀត មនុស្សទាំងនេះសប្បាយចិត្តជាមួយនឹងការពិតដែលថាផលិតភាពរបស់ពួកគេបានកើនឡើង ហើយតម្លៃនៃការជាវប្រចាំឆ្នាំត្រូវបានបង្វិលសងវិញបន្ទាប់ពីប្រើប្រាស់កំណែដែលបានបង់របស់ IDEA ពីរបីសប្តាហ៍។ ទោះជាយ៉ាងណាក៏ដោយ អ្នកប្រើប្រាស់ NetBeans និង Eclipse ក៏ត្រូវបានភ្ជាប់ជាមួយឧបករណ៍របស់ពួកគេជាញឹកញាប់ផងដែរ ហើយឆ្ងល់ថាហេតុអ្វីបានជាអ្នកសរសេរកម្មវិធីផ្សេងទៀតសុខចិត្តបង់ប្រាក់សម្រាប់ IDEA ។ ខ្ញុំនឹងណែនាំអ្នកអភិវឌ្ឍន៍ Java ថ្មីឱ្យនៅឱ្យឆ្ងាយពី Eclipse ។ ទោះបីជាការពិតដែលថាវានៅតែជា IDE ដ៏ពេញនិយមបំផុតសម្រាប់ Java វាជាការលំបាកសម្រាប់អ្នកចាប់ផ្តើមដំបូង: វាងាយស្រួលក្នុងការបាត់បង់នៅក្នុងព្រៃ Eclipse ទាំងកំឡុងពេលដាក់ពង្រាយប្រព័ន្ធ និងអំឡុងពេលធ្វើការប្រចាំថ្ងៃ។ Eclipse មានប្រព័ន្ធអេកូកម្មវិធីជំនួយយ៉ាងទូលំទូលាយបំផុតនៃ IDE ទាំងអស់ ហើយទំនងជាគាំងបំផុតដោយសារតែការដំឡើងសំណុំមិនឆបគ្នានៃកម្មវិធីជំនួយដូចគ្នាទាំងនេះ។ ជាអកុសល ខណៈពេលកំពុងប្រើ Eclipse ខ្ញុំត្រូវដកការជួបប្រជុំគ្នាដែលខូចផ្សេងទៀតនៃ IDE នេះម្តងហើយម្តងទៀត ហើយដំឡើងកញ្ចប់ "ស្អាត" ។ NetBeans គឺល្អសម្រាប់អ្នកអភិវឌ្ឍន៍ភាគច្រើន វាមាន profiler ដ៏អស្ចារ្យ ហើយខ្ញុំប្រើវាពេលខ្លះ។ ទោះយ៉ាងណាក៏ដោយ ខ្ញុំចូលចិត្តចំណាយសម្រាប់ IntelliJ IDEA Ultimate ។ ហើយអនាគតរបស់ NetBeans នៅតែមិនច្បាស់លាស់។ សម្រាប់អ្នកអភិវឌ្ឍន៍ Java ថ្មីដែលមិនទាន់មានថវិកាទិញឧបករណ៍នៅឡើយ ខ្ញុំសូមណែនាំឱ្យប្រើ NetBeans ឬ IntelliJ IDEA Community Edition អាស្រ័យលើតម្រូវការរបស់ពួកគេ។ ទីមួយគឺមានតម្លៃក្នុងការជ្រើសរើសសម្រាប់អ្នកដែលកំពុងសរសេរកូដ Java server ប៉ុន្តែប្រសិនបើអ្នកមិនធ្លាក់ចូលទៅក្នុងប្រភេទអ្នកដែលអាចទទួលបាន IntelliJ IDEA Ultimate ដោយឥតគិតថ្លៃ ឬជាមួយនឹងការបញ្ចុះតម្លៃយ៉ាងច្រើន (សិស្ស ឬអ្នកសរសេរកម្មវិធីទាំងនោះដែលកំពុងបង្កើតប្រភពបើកចំហ។ គម្រោង) ។

"ពន្លឺ" Java IDE

សព្វថ្ងៃនេះ អ្នកអភិវឌ្ឍន៍ Java ភាគច្រើនប្រើ IDEA, NetBeans ឬ Eclipse ប៉ុន្តែជួនកាលមានតម្រូវការសម្រាប់បរិស្ថានអភិវឌ្ឍន៍ស្រាលជាងមុន ឬសូម្បីតែកម្មវិធីនិពន្ធកូដដូចជា Sublime Text, emacs ឬ vim ដែលគាំទ្រកម្មវិធីជំនួយ Java ។ ខ្ញុំបានរាយបញ្ជីខាងក្រោមជម្រើសសមហេតុផលសម្រាប់អ្នកដែលកំពុងស្វែងរកអ្វីដែលស្រាលជាងនេះបន្តិច៖
  • DrJava - តូច បរិស្ថានឥតគិតថ្លៃការអភិវឌ្ឍន៍។ វា​ត្រូវ​បាន​បង្កើត​ឡើង​សម្រាប់​និស្សិត​នៅ​សាកលវិទ្យាល័យ Rice ហើយ​វា​បាន​ក្លាយ​ជា​ការ​ពេញ​និយម​យ៉ាង​ខ្លាំង៖ DrJava ត្រូវ​បាន​គេ​ទាញ​យក​ជាង 2 លាន​ដង​រួច​ទៅ​ហើយ។ DrJava ត្រូវបានរចនាឡើងដើម្បីលើកកម្ពស់ការអភិវឌ្ឍន៍ដែលជំរុញដោយការធ្វើតេស្ត។ ក្របខ័ណ្ឌមានកម្មវិធីកែកូដឆ្លាតវៃ បន្ទះអន្តរកម្មសម្រាប់វាយតម្លៃកូដកម្មវិធី ឧបករណ៍បំបាត់កំហុសកម្រិតប្រភព និងឧបករណ៍ធ្វើតេស្តឯកតា។
  • BlueJ គឺជាបរិស្ថានអភិវឌ្ឍន៍ Java ឥតគិតថ្លៃដែលបង្កើតឡើងដោយអ្នកឯកទេសមកពីសាកលវិទ្យាល័យ Kent សម្រាប់អ្នកសរសេរកម្មវិធីដំបូង។ បរិស្ថាននេះត្រូវបានគាំទ្រដោយ Oracle ។ BlueJ មានចំណុចប្រទាក់ស្អាត និងសាមញ្ញជាង IDEs អាជីពដូចជា NetBeans ឬ Eclipse ហើយថែមទាំងរួមបញ្ចូលការបង្រៀនពិសេសលើមូលដ្ឋាន OOP ផងដែរ។
  • JCreator គឺជា Java IDE តូចមួយផ្សេងទៀតសម្រាប់ Windows ដែលសរសេរក្នុង C++ (សម្រាប់ហេតុផលដំណើរការ)។ កំណែដែលបានបង់ Pro ត្រូវបានបំពាក់ដោយឧបករណ៍បំបាត់កំហុស ការគាំទ្រសម្រាប់ Ant និងអ្នកជំនួយកូដ និង កំណែឥតគិតថ្លៃ(LE) - ទេ។
  • Eclipse Che គឺជា cloud IDE ដែលមានមូលដ្ឋានលើ browser ដែលគាំទ្រ Java, C++, JavaScript, Python, PHP, Ruby និង SQL ។

ការជ្រើសរើស Java IDE អាស្រ័យលើគម្រោង

ខ្ញុំបានព្យាយាមពណ៌នាអំពីអត្ថប្រយោជន៍សំខាន់ៗនៃ Java IDE សំខាន់ៗចំនួនបីនីមួយៗ ហើយបានរៀបរាប់យ៉ាងខ្លីអំពីគូប្រជែងតូចៗដែលមានប្រយោជន៍របស់ពួកគេ។ ដើម្បីជ្រើសរើស IDE ត្រឹមត្រូវ អ្នកត្រូវថ្លឹងថ្លែងពីគុណសម្បត្តិ និងគុណវិបត្តិ ហើយប្រៀបធៀបវាជាមួយនឹងតម្រូវការរបស់អ្នក និងតម្រូវការនៃគម្រោងរបស់អ្នក។ ប្រសិនបើអ្នកកំពុងចូលរួមក្រុម វាជាការល្អក្នុងការប្រើ IDE ដូចគ្នានឹងអ្នកអភិវឌ្ឍន៍ផ្សេងទៀត ទោះបីជាវាមិនត្រូវបានទាមទារក៏ដោយ។ ប្រសិនបើក្រុមរបស់អ្នកបង្ហោះប្រភពនៅលើ GitHub វានឹងកាន់តែងាយស្រួល ប្រសិនបើ IDE របស់អ្នកគាំទ្រ GitHub ។ បាទ/ចាស អ្នកអាចដោះស្រាយការផ្ទេរកូដដោយគ្មាន IDE ដោយប្រើម៉ាស៊ីនភ្ញៀវ GitHub ឬ បន្ទាត់ពាក្យបញ្ជា git ។ ប៉ុន្តែតើការលោតបែបនេះរវាងប្រព័ន្ធផ្សេងៗនឹងមានប្រសិទ្ធភាពយ៉ាងណា? វាក៏សំខាន់ផងដែរដែល IDE គាំទ្រប្រព័ន្ធសាងសង់។ ឧទាហរណ៍ ប្រសិនបើនេះជា Maven អ្នកទំនងជាមិនចង់បង្កើតប្រព័ន្ធឡើងវិញនៅក្នុង Ant for ទេ។ ការធ្វើតេស្តក្នុងស្រុក. ជាសំណាងល្អ Java IDE ធំៗទាំងបីគាំទ្រ Ant, Maven និង Gradle ទាំងក្រៅប្រអប់ ឬជាមួយកម្មវិធីជំនួយ។ ប៉ុន្តែសម្រាប់ IDE "តូច" នេះប្រហែលជាមិនពិតទេ។ វាគឺជាបំណងប្រាថ្នាធម្មជាតិសម្រាប់បរិស្ថានអភិវឌ្ឍន៍ដើម្បីគាំទ្រកំណែរបស់ JRE ដែលត្រូវបានប្រើនៅក្នុងគម្រោង។ ប្រសិនបើកំណែមិនត្រូវគ្នា វាមានប្រូបាប៊ីលីតេខ្ពស់ក្នុងការទទួលបានកំហុសបន្ថែមជាច្រើន ដែលឧទាហរណ៍ វានឹងបង្ហាញនៅក្នុងអ្នក ប៉ុន្តែមិនមែននៅក្នុងសមាជិកក្រុមផ្សេងទៀតទេ។ វាមិនទំនងថាស្ថានភាពបែបនេះនឹងមានឥទ្ធិពលល្អលើកម្មផលរបស់អ្នកនោះទេ។ និយាយឱ្យត្រង់ទៅ ភាពមិនស៊ីសង្វាក់គ្នារបស់ JRE ទំនងជាកើតឡើងដោយសារតែកំហុសក្នុងការកំណត់រចនាសម្ព័ន្ធ ជាងដោយសារកង្វះការគាំទ្រ IDE លុះត្រាតែ IDE មិនទាន់បានធ្វើបច្ចុប្បន្នភាពទៅ កំណែថ្មី។ចាវ៉ា។ គ្រាន់តែជឿថាប្រសិនបើ IDE របស់អ្នកគាំទ្រយ៉ាងពេញលេញនូវក្របខ័ណ្ឌ និងបច្ចេកវិទ្យាដែលត្រូវបានប្រើនៅក្នុងគម្រោងនោះ វាពិតជាជួយបង្កើនល្បឿនការងារ។ អ្នកទំនងជានឹងគ្រប់គ្រងវាយ៉ាងណាក៏ដោយ។ ប៉ុន្តែប្រសិនបើ IDE យល់ពីរបៀបដែលសេចក្តីថ្លែងការណ៍ JPA ទាក់ទងនឹងអង្គភាព JPA និងថ្នាក់បញ្ចេញមតិ (ដូចជា IntelliJ) អ្នកនឹងចំណាយពេលតិចជាងមុនលើកូដដែលទាក់ទងនឹង JPA ជាងប្រសិនបើអ្នកយល់ខុសទាំងស្រុង។ ជាការប្រសើរណាស់ ប្រសិនបើ IDE គាំទ្រក្របខ័ណ្ឌនៃការធ្វើតេស្ត និងកម្មវិធីប្រតិបត្តិកូដដែលបានប្រើសម្រាប់គម្រោងនោះ អ្នកអាចដំណើរការការធ្វើតេស្តដោយមិនផ្លាស់ប្តូរបរិយាកាសការងារ។ នេះក៏នឹងបង្កើនល្បឿនដំណើរការអភិវឌ្ឍន៍ផងដែរ។ ជាចុងក្រោយ ការងារដំណើរការកាន់តែលឿន ប្រសិនបើ IDE ឆបគ្នាជាមួយប្រព័ន្ធតាមដានបញ្ហា និងសំបុត្ររបស់គម្រោង។ ជាថ្មីម្តងទៀត អ្នកអាចប្រើម៉ាស៊ីនភ្ញៀវឯករាជ្យ ឬគេហទំព័រដោយនិយាយថា JIRA ប៉ុន្តែវាពិបាកក្នុងការមិនយល់ស្របថាការពិនិត្យមើលសំបុត្រគឺលឿនជាងមុនដោយមិនផ្លាស់ប្តូរបង្អួច ខណៈពេលដែលនៅសល់ដោយផ្ទាល់នៅក្នុង IDE ។

ឥតគិតថ្លៃ ឬបង់ប្រាក់?

បន្ទាប់ពីបានសាកល្បង IntelliJ IDEA Ultimate ខ្ញុំទទួលបានអារម្មណ៍នៃបរិយាកាសអភិវឌ្ឍន៍ត្រឹមត្រូវ។ ប្រភេទនៃ Cadillac នៃពិភពលោក IDE ។ ជា​ថ្មី​ម្តង​ទៀត ខណៈ​ដែល​វា​មិន​គិត​ថ្លៃ ខ្ញុំ​គិត​ថា​ផលិតភាព​ដែល​ទទួល​បាន​ពី​ការ​ប្រើ​វា​គឺ​មាន​តម្លៃ​សម្រាប់​ការ​ជាវ​ប្រចាំ​ឆ្នាំ។ សម្រាប់អ្នកចាប់ផ្តើមដំបូងដែលមិនមានលទ្ធភាពជាវ IntelliJ IDEA Ultimate ប្រចាំឆ្នាំ ខ្ញុំសូមណែនាំឱ្យប្រើ NetBeans ជាជាង Eclipse ។ ជាការពិតណាស់ ប្រព័ន្ធអេកូកម្មវិធីជំនួយរបស់ Eclipse គឺត្រូវបានអភិវឌ្ឍច្រើនជាង IDE ផ្សេងទៀតនាពេលបច្ចុប្បន្ននេះ ប៉ុន្តែវាមានលក្ខណៈធំធាត់ និងគ្មានការងារធ្វើ៖ អ្នកអភិវឌ្ឍន៍ថ្មីថ្មោងនឹងប្រថុយនឹងការវង្វេងនៅក្នុងព្រៃនៃ IDE ជំនួសឱ្យការជ្រមុជក្នុងការងារ។ ខ្ញុំក៏បានប៉ះលើជម្មើសជំនួស "ស្រាល" ដែលពីរត្រូវបានរចនាជាពិសេសសម្រាប់គោលបំណងអប់រំ។ ជាការប្រសើរណាស់, ប្រសិនបើអ្នកទើបតែចាប់ផ្តើមរៀនភាសាហើយអ្នកចូលចិត្តបរិយាកាសតិចតួច - ហេតុអ្វីមិន?