DEV Community

Cover image for เส้นทางอาชีพการเป็น Software Developer กับ ChatGPT #4
devmountaintechfest
devmountaintechfest

Posted on

เส้นทางอาชีพการเป็น Software Developer กับ ChatGPT #4

หากอยากเริ่มต้นเป็น Backend Developer จะต้องศึกษาอะไรบ้าง

  • ศึกษาพื้นฐาน Internet
  • ศึกษาพื้นฐานการทำงานของ Computer
  • ศึกษา Programming Language
  • ศึกษา Version Control System
  • ศึกษา คำสั่ง Command line OS เบื้องต้น
  • ศึกษา ฐานข้อมูล
  • ศึกษา Design Pattern
  • ศึกษาการเขียน Test
  • ศึกษาการ Deployment CI/CD
  • ศึกษาการ Monitoring
  • ศึกษาการออกแบบ API Management และ Protocol ต่างๅ
  • ศึกษา Security OWASP Top 10
  • ศึกษา Virtual Machine หรือ Container
  • ศึกษาการออกแบบ System Architecture

การจะเป็น Backend Developer ที่เก่งกาจ มีเรื่องให้ศึกษามากมาย ซึ่งลำดับการเรียนรู้ การทำความเข้าใจในแต่ละคนจะไม่เท่ากัน บางคนอาจจะเข้าใจและเชี่ยวชาญบางเรื่องได้ก่อน ขึ้นอยู่กับความรู้ การฝึกฝน ประสบการณ์การเรียนรู้และลงมือทำแตกต่างกันไป ในบทความข้อเริ่มแชร์จาก Internet

Internet คืออะไร?
Internet หมายถึงเครือข่ายคอมพิวเตอร์ที่เชื่อมต่อกันทั่วโลกเป็นระบบโครงสร้างหนึ่งที่ใช้ในการสื่อสารแลกเปลี่ยนข้อมูลต่าง ๆ ระหว่างเครื่องคอมพิวเตอร์ ที่สามารถเชื่อมต่อกันได้ผ่านเครือข่ายอินเตอร์เน็ต (Internet Network) ที่เชื่อมต่อระหว่างเครื่องคอมพิวเตอร์จากทั่วโลกด้วยกัน ด้วยเทคโนโลยีการส่งข้อมูลแบบไอพี (IP) ซึ่งใช้โพรโตคอล TCP/IP ในการสื่อสารแลกเปลี่ยนข้อมูล ทำให้เป็นที่รู้จักกันว่าเป็นโลกออนไลน์ (Online world) ซึ่งเราสามารถเข้าถึงข้อมูลและทำรายการต่าง ๆ ผ่านอินเตอร์เน็ตได้ทุกที่ทุกเวลา ไม่ว่าจะเป็นการเข้าเว็บไซต์ สื่อสารผ่านอีเมล หรือใช้งานแอพพลิเคชันออนไลน์ต่าง ๆ อีกมากมาย

Image description

Internet ทำงานอย่างไร

Internet ทำงานโดยใช้โปรโตคอล TCP/IP (Transmission Control Protocol/Internet Protocol) ซึ่งเป็นชุดของกฎระเบียบในการสื่อสารระหว่างเครือข่ายคอมพิวเตอร์ โดย Internet เป็นเครือข่ายคอมพิวเตอร์ที่มีขนาดใหญ่และเชื่อมต่อกันได้หลายเครือข่ายคอมพิวเตอร์ทั่วโลกผ่านเทคโนโลยีเครือข่ายไร้สาย สามารถสื่อสารได้ผ่านระบบอินเทอร์เน็ต ที่เป็นพื้นที่สาธารณะที่ให้บริการเชื่อมต่อระหว่างเครือข่ายคอมพิวเตอร์ทั่วโลก โดยใช้โปรโตคอล TCP/IP เป็นเทคโนโลยีหลักในการสื่อสารข้อมูล ซึ่งส่งผ่านสื่อสารระหว่างเครือข่ายคอมพิวเตอร์ต่าง ๆ ในรูปแบบของแพคเกจข้อมูล (Data packet) โดยใช้ทางอากาศ (Wireless) หรือใช้สายเคเบิล (Wired) ในการส่งข้อมูล และมีหลายโปรแกรมและบริการที่ใช้งานบน Internet เช่น เว็บเบราว์เซอร์, อีเมล, แชท, การสื่อสารเสียงและวิดีโอ, การส่งข้อมูลไฟล์ และอื่น ๆ อีกมากมาย

ประวัติความเป็นมาเบื้องต้นของ Internet

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

ประวัติ Internet เริ่มต้นจากโครงข่าย ARPANET ที่ถูกสร้างขึ้นโดยองค์กร ARPA (Advanced Research Projects Agency) ของกองทัพสหรัฐฯในปี 1969 เพื่อใช้สื่อสารระหว่างฐานะวิทยาศาสตร์และศึกษาซอฟต์แวร์ โครงข่ายนี้เป็นต้นแบบในการสร้างระบบเครือข่ายคอมพิวเตอร์แบบแยกชั้น (Layered Network Architecture) ซึ่งใช้โปรโตคอล TCP/IP ที่ใช้สำหรับการส่งข้อมูลในระบบเครือข่ายคอมพิวเตอร์ และประสบความสำเร็จในการใช้งานกันมากขึ้นเรื่อย ๆ

ในช่วงปี 1980 ผู้ใช้งานเริ่มมีส่วนร่วมในการพัฒนาระบบ Internet โดยเฉพาะองค์กรวิชาการและหน่วยงานของภาครัฐที่มีการพัฒนาโครงสร้างการสื่อสารระหว่างเครือข่าย จนกระทั่งในปี 1990 ผู้ใช้งานสามารถเชื่อมต่อเข้าสู่ Internet ได้ด้วยเส้นสายโทรศัพท์แบบโมเด็ม (Modem) ทำให้ Internet กลายเป็นเครื่องมือสื่อสารที่สำคัญในการเชื่อมต่อกันทั้งในและต่างประเทศ

Http คืออะไร

HTTP ย่อมาจาก Hypertext Transfer Protocol คือโปรโตคอลที่ใช้ในการสื่อสารระหว่างเว็บไซต์ (Web) และเบราว์เซอร์ (Browser) หรือแอพพลิเคชันอื่น ๆ ที่สามารถเข้าถึงเว็บไซต์ได้ เป็นโปรโตคอลที่ถูกใช้งานมากที่สุดในการสื่อสารข้อมูลบนเว็บไซต์ในปัจจุบัน

HTTP ใช้วิธีการส่งข้อมูลแบบ Request-Response โดย Request จะถูกส่งจากเบราว์เซอร์ไปยังเว็บไซต์ เพื่อขอข้อมูลหรือทำการทำงานต่าง ๆ เช่น การแสดงผลเว็บไซต์ และ Response จะถูกส่งกลับมาจากเว็บไซต์ไปยังเบราว์เซอร์ เพื่อแสดงผลหรือทำงานตามที่ได้ร้องขอไว้ใน Request

Image description

ref: https://www.httpdebugger.com/images/article/http_protocol/http-session.jpg

Browser คืออะไร
Browser หรือ Web Browser เป็นโปรแกรมที่ใช้ในการแสดงผลเว็บเพจหรือเว็บไซต์บนอินเทอร์เน็ต โดยมีหน้าที่ดึงข้อมูลหน้าเว็บจากเว็บเซิร์ฟเวอร์แล้วแสดงผลให้เห็นกับผู้ใช้งานผ่านหน้าจอคอมพิวเตอร์หรืออุปกรณ์อื่นๆ เช่น โทรศัพท์มือถือ แท็บเล็ต และอื่นๆ

Browser สามารถใช้งานได้ง่ายและมีหลายเวอร์ชั่น ตัวอย่างเช่น Google Chrome, Mozilla Firefox, Safari, Microsoft Edge, และ Opera เป็นต้น โดยแต่ละเวอร์ชั่นอาจมีความสามารถและการใช้งานที่แตกต่างกันไปตามผู้พัฒนาและผู้ใช้งานที่ต้องการใช้งานในแบบต่างๆ

Image description

ref: https://media.coschedule.com/uploads/2022/07/ivrpowers-web-browser.007.jpeg

Http ทำงานอย่างไร
HTTP (Hypertext Transfer Protocol) เป็นโปรโตคอลที่ใช้ในการสื่อสารระหว่างเว็บเบราว์เซอร์และเว็บเซิร์ฟเวอร์ โดยมีหน้าที่ส่งข้อมูลระหว่างคอมพิวเตอร์กันแบบ stateless (ไม่มีสถานะการติดต่อกัน) ด้วยข้อมูลแบบข้อความ (text) รวมถึงไฟล์เพื่อแสดงผลหน้าเว็บไซต์ต่าง ๆ ซึ่งสามารถรองรับการติดต่อสื่อสารระหว่างเว็บเบราว์เซอร์และเว็บเซิร์ฟเวอร์ได้โดยมีการทำงานดังนี้

ผู้ใช้งานเปิดเว็บเบราว์เซอร์และพิมพ์ URL (Uniform Resource Locator) เพื่อเข้าถึงเว็บไซต์ที่ต้องการเข้าชม

เว็บเบราว์เซอร์จะส่ง HTTP Request ขอข้อมูลจากเว็บเซิร์ฟเวอร์โดยใช้โปรโตคอล HTTP โดยข้อมูล Request จะประกอบด้วย Method (GET, POST, PUT, DELETE เป็นต้น) และ Header ซึ่งจะมีข้อมูลเกี่ยวกับ Request เช่น Host, User-Agent, Accept เป็นต้น

เว็บเซิร์ฟเวอร์จะรับ HTTP Request และตรวจสอบการขอข้อมูล ถ้าขอข้อมูลถูกต้องและถูกอนุญาตให้เข้าถึง จะทำการส่ง HTTP Response กลับไปยังเว็บเบราว์เซอร์ โดยข้อมูล Response จะประกอบด้วย Status Code (200, 404, 500 เป็นต้น) และ Header ซึ่งจะมีข้อมูลเกี่ยวกับ Response เช่น Content-Type, Content-Length เป็นต้น รวมถึง Body ซึ่งจะประกอบด้วยข้อมูลหรือไฟล์ต่าง ๆ

TCP/IP คืออะไร ทำงานอย่างไร ต่างจาก Http อย่างไร
TCP/IP (Transmission Control Protocol/Internet Protocol) คือชุดของโปรโตคอลสำหรับการสื่อสารข้อมูลในระบบเครือข่ายอินเทอร์เน็ต ซึ่งมีหน้าที่ควบคุมการส่งข้อมูลระหว่างอุปกรณ์เครือข่ายต่างๆ โดยทำหน้าที่แบ่งแยกข้อมูลออกเป็นหลายช่วง แล้วส่งผ่านเครือข่ายอินเทอร์เน็ตไปยังอุปกรณ์ปลายทาง

โปรโตคอล TCP/IP ประกอบด้วยหลายชั้น โดยแต่ละชั้นมีหน้าที่แตกต่างกันไป ดังนั้นการสื่อสารข้อมูลจะต้องผ่านหลายชั้นเพื่อให้ถึงปลายทาง
แต่ HTTP (Hypertext Transfer Protocol) เป็นโปรโตคอลสำหรับการสื่อสารข้อมูลในรูปแบบของเว็บเพจ (web page) โดย HTTP เป็นส่วนหนึ่งของโปรโตคอลระดับแอปพลิเคชันของ TCP/IP และใช้ในการร้องขอ (request) และส่งคำตอบ (response) เมื่อมีการติดต่อกันระหว่างเว็บเบราว์เซอร์กับเว็บเซิร์ฟเวอร์ (web server) ที่เชื่อมต่อกันผ่านโปรโตคอล TCP/IP ดังนั้น HTTP เป็นส่วนย่อยของ TCP/IP ที่ใช้งานบนเว็บเบราว์เซอร์ ส่วน TCP/IP ใช้งานได้ทั่วไปในการสื่อสารข้อมูลในรูปแบบต่างๆ ไม่จำกัดเพียงการใช้งานบนเว็บเบราว์เซอร์เท่านั้น

TCP/IP มีส่วนประกอบอะไรบ้าง

TCP/IP (Transmission Control Protocol/Internet Protocol) เป็นโปรโตคอลในการสื่อสารข้อมูลระหว่างเครือข่ายคอมพิวเตอร์ โดยประกอบด้วยสองโปรโตคอลหลัก ได้แก่

Transmission Control Protocol (TCP) คือโปรโตคอลระดับสัญญาณที่จัดการการส่งข้อมูลที่มีขนาดใหญ่เป็นสิ่งที่เรียกว่า segments โดยใช้เทคนิคการตรวจสอบและจัดการข้อผิดพลาดในการส่งข้อมูล เช่น การยืนยันการรับส่งข้อมูลและการแก้ไขข้อผิดพลาดในการส่ง

Internet Protocol (IP) คือโปรโตคอลระดับเครือข่ายที่จัดการเกี่ยวกับการส่งแพคเก็ตของข้อมูลทางอินเทอร์เน็ตจากแหล่งต้นทางไปยังปลายทาง โดย IP จะรับแพคเก็ตข้อมูลและทำการส่งต่อไปยังอุปกรณ์ต่อไปจนกว่าจะเป็นเครื่องปลายทาง โดยใช้ที่อยู่ IP ที่กำหนดตามเครือข่าย

TCP/IP และ HTTP นั้นเป็นโปรโตคอลที่มีความสัมพันธ์กัน โดย HTTP จะใช้ TCP/IP เพื่อการส่งข้อมูลด้วยการส่งแพคเก็ตข้อมูลผ่านเครือข่ายอินเทอร์เน็ต และใช้ IP เพื่อที่จะส่งข้อมูลไปยังเครื่องปลายทาง

AWS Q Developer image

Your AI Code Assistant

Implement features, document your code, or refactor your projects.
Built to handle large projects, Amazon Q Developer works alongside you from idea to production code.

Get started free in your IDE

Top comments (0)

Qodo Takeover

Introducing Qodo Gen 1.0: Transform Your Workflow with Agentic AI

Rather than just generating snippets, our agents understand your entire project context, can make decisions, use tools, and carry out tasks autonomously.

Read full post