6 Tools ที่ Developers ควรรู้จักและใช้งานให้เป็น

24-มิ.ย.-20

คัมภีร์เทพ IT

สำหรับ Developers แล้ว การทำงานให้เกิดประสิทธิผล รวดเร็ว และมีประสิทธิภาพ ถือเป็นเรื่องที่จำเป็นในการทำงาน อีกทั้งยังต้องพัฒนาตัวเอง เรียนรู้สิ่งใหม่ ๆ อยู่เสมอ การที่รู้จัก Tools ต่าง ๆ จะช่วยให้ทำงานได้ดียิ่งขึ้น ซึ่งบทความนี้จะมาแนะนำ 6 Tools ที่ Developers ควรรู้จักและใช้งานให้เป็น

1. Oh My Zsh

Oh My Zsh เป็น Wrapper สำหรับ Z Shell ที่ช่วยทำให้ Terminal ของคุณเป็น Tool ที่น่าใช้งานมากยิ่งขึ้น

นอกจากจะมี Themes ให้เลือกมากมาย, Functions ที่ช่วยอำนวยความสะดวกในการทำงาน และมี Build-in มาพร้อมอยู่แล้ว คุณยังจะได้เพลิดเพลินกับ Plugins ที่ช่วยเพิ่มความสามารถของการใช้งานได้มากขึ้น รวมไปถึง Docker, Kubernetes Kubectl, tmux และอื่น ๆ อีกมากมาย

สำหรับ Features ที่น่าใช้งานก็คือ Tab Completion และ Tab Cycling ซึ่งจะช่วยให้คุณสามารถไปยัง Directories และ Files ต่าง ๆ ได้เพียงแค่คลิกไปที่ Tab เท่านั้น

หากจะกล่าวถึง Prompt ที่น่าสนใจ ที่จะช่วยให้คุณได้ทุกสิ่งที่คุณต้องการ ก็คือ

สำหรับ Theme ที่ใช้ด้านบนก็คือ geoffgarside และ Color Scheme ใน iTerm2 ก็คือ Tango Dark ซึ่งคุณสามารถดู Color Scheme ของ iTerm เพิ่มเติมได้ที่นี่

2. direnv

direnv เป็น Shell Extension ที่ Load ตัว Environment Variables ให้โดยอัตโนมัติ เมื่อคุณทำการ cd ลงใน Directory

สิ่งนี้จะช่วยให้คุณประหยัดเวลาได้มากขึ้น โดยเฉพาะอย่างยิ่งเมื่อคุณต้องทำงานกับหลาย Projects ซึ่งล้วนต้องการ ENV Variables ที่แตกต่างกัน หรือแม้แต่ Values ที่แตกต่างกันสำหรับ ENV Variables เดียวกัน

มันติดตั้งได้ง่าย อีกทั้งยังช่วยให้เขียน .envrc File ได้ง่ายยิ่งขึ้น เนื่องจากมันเป็น export BLAH=BLAH Statements ที่คุณเขียนไว้ใน .profile หรือ .*rc Files ของคุณอยู่แล้ว

เมื่อคุณออกไปจาก Directory ด้วย .envrc File มันจะทำการยกเลิก ENV Variables เหล่านั้นให้โดยอัตโนมัติ ซึ่งถือว่าสะดวกมาก คุณสามารถดูการทำงานเบื้องต้นของมัน ได้ที่ด้านล่าง:

3. Lighthouse/Chrome DevTools

Lighthouse (พร้อม Function การทำงาน ที่ติดตั้งภายใน Chrome) เป็น Open-Source Plugin สำหรับตรวจสอบ Performance ของ Website ของคุณ

ด้วยการที่มีทุกอย่างตั้งแต่ Text Compression ไปจนถึง Render-Blocking Resources เครื่องมือนี้จะทำการ Scan Website ที่กำหนด และสร้าง Report ออกมาเพื่อช่วยให้คุณทราบว่า อะไรที่ทำให้ Page ของคุณทำงานช้า

สิ่งนี้มีความสำคัญอย่างยิ่งสำหรับการทำให้ Website ทั้งมีประสิทธิภาพและสามารถเข้าถึงได้ง่าย

มี Developers จำนวนมากที่ต้องการเข้าสู่แวดวง Web Development และส่วนใหญ่ก็เรียนรู้ที่จะสร้าง Website ที่ดูดี แต่พอพิจารณาถึงเรื่องประสิทธิภาพ กลับเป็นสิ่งที่มักถูกมองข้าม ซึ่งที่จริงแล้วก็มีความสำคัญพอ ๆ กับเรื่องความสวยงาม

มีบาง Website ที่มีขนาดใหญ่มากและมีการ Load Resources ไปมากมายจนไม่สามารถใช้งานได้จริงภายใต้สัญญาณ Internet ที่ช้า หรือใช้พลังงาน Battery เป็นจำนวนมากใน Mobile Devices

หากคุณได้ลองใช้งานมัน คุณจะได้เห็นว่า มันช่วยเพิ่มความเร็วและเพิ่มประสิทธิภาพให้กับ Website ของคุณได้มากแค่ไหน

หมายเหตุ: เครื่องมือนี้ยังสามารถใช้งานกับ Web Servers (Locally Hosted) ของคุณผ่าน Chrome Web Tools โดยคุณสามารถกด Cmd + Alt + I → Audit Tab → Generate Report

4. vim-plug and MELPA Stable

หากคุณใช้งาน Vim หรือ Emacs ก็จะรู้ว่า มันมี Plugins ที่มีประโยชน์มากมายสำหรับ Text Editors เพื่อให้คุณทำงานได้ง่ายขึ้น

ตั้งแต่ Syntax Highlighting ไปจนถึง Symbol Indexing, Plugins เหล่านี้สามารถช่วยเพิ่มความสะดวกสบายให้กับคุณ หรือช่วยเปลี่ยน Text Editor ของคุณให้กลายเป็นสิ่งที่จะมีประโยชน์กับคุณอย่างมาก อย่างเช่น ตรวจสอบ Clojure Features ของ Emacs Live

vim-plug และ และ MELPA Stable เป็นตัวจัดการ Plugin (Plugin Managers) สำหรับ Vim และ Emacs ตามลำดับ คุณสามารถใช้งานมันด้วยการติดตั้ง Plugins ทั้งหมดที่คุณต้องการ

5. command-line fuzzy finder (fzf)

command-line fuzzy finder (หรือ fzf) เป็น Fuzzy Search Tool ที่ใช้ในการค้นหา Files ใน Directory Tree ได้อย่างรวดเร็ว ซึ่งมันถูกเขียนขึ้นโดย Engineer คนเดียวกันกับที่ทำ vim-plug (Junegunn Choi)

เครื่องมือนี้ทำงานได้รวดเร็ว เนื่องจากมันถูกเขียนขึ้นในภาษา Go และใช้ Concurrent Threads ในการแบ่งและจัดการกับ Workloads ต่าง ๆ

เพื่อให้ใช้ fzf ได้ดีขึ้น คุณสามารถ Map Aliases ทั้ง 2 นี้ใน Shell Profile:

 

คุณสามารถพิมพ์ตัวอักษร v ตามด้วย ชื่อ File เพื่อเปิดใน Neovim

คุณสามารถรวมมันเข้ากับ fzf เพื่อให้ทำการค้นหา File ที่ต้องการได้อย่างรวดเร็ว ผลลัพธ์ของ fzf ก็คือ ชื่อของ File พร้อมทั้ง Full Path จากนั้นคุณสามารถส่งผ่านมันเป็น Argument ไปยัง v Alias ของคุณได้

แล้วผลลัพธ์เป็นอย่างไร? สามารถค้นหา File และเปิด File ได้อย่างรวดเร็วใน Neovim

6. The Silver Searcher (Ag)

Silver Searcher (Ag) โดยพื้นฐานแล้ว ถือเป็น recursive grep ที่มีความฉลาดอย่างมาก

ในขณะที่ fzf (ในข้อที่ 5) นั้นยอดเยี่ยมสำหรับการค้นหาชื่อ Files แต่ Ag เหมาะสำหรับการค้นหา Content ภายใน Files เหล่านั้นสำหรับ Tokens และการ Matches ที่เฉพาะเจาะจง

สิ่งที่ทำให้มันยอดเยี่ยม ก็คือ มันจะไม่สนใจ Files ที่เป็นส่วนหนึ่งของ .gitignore File ของคุณโดยอัตโนมัติ ขณะที่ grep -r จะใช้เพื่อทำการ Irrelevant Match ภายใน node_modules ของคุณ แต่ Ag จะใช้เวลาในการค้นหาที่รวดเร็ว เพราะมันค้นหาเฉพาะ File ที่สำคัญเท่านั้น

โดยทั่วไป ผลลัพธ์ของ Ag จะมีการแสดงหมายเลขบรรทัดให้ด้วย ในทางเทคนิคแล้วคุณจะได้ผลลัพธ์ทุกสิ่งเหมือนอย่างที่ Ag ทำด้วยการส่ง Arguments จำนวนมากไปยัง grep แต่ในสุดท้ายแล้ว Ag ก็ยังถือว่าเร็วกว่าหลายเท่า อยู่ดี

ที่มา:  https://medium.com/

 

 

รับตำแหน่งงานไอทีใหม่ๆ ด้วยบริการ IT Job Alert

 

อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ

เพิ่มเพื่อน

 

บทความล่าสุด