🌈 การพัฒนาเว็บไซต์ในปัจจุบันก็มี Framework ให้เราได้เลือกใช้อย่างหลากหลาย เพื่อช่วยให้เราทำงานได้ง่ายและรวดเร็วมากขึ้น ซึ่งใน Python ก็มี Framework ที่สุดฮิตและมาแรงมาก ๆ ในยุคนี้ นั่นคือ Flask และ Django มาให้ชาวเว็บเดฟแบบเรา ๆ ได้เลือกใช้กัน
.
แล้วทั้งสองมันดียังไง ต่างกันยังไง แล้วเราจะเลือก Framework ตัวไหนให้มันเหมาะกับงานของเราดี ? เก็บคำถามเหล่านี้ไว้ แล้วมาคำตอบไปพร้อมกันกับแอดในโพสต์นี้เลยจ้า !!
.
👉 รู้จัก Flask
.
Flask เป็นไมโครเฟรมเวิร์กที่มีคอร์ขนาดเล็ก น้ำหนักเบา ใช้งานง่าย โครงสร้างไม่ซับซ้อน สำหรับการพัฒนาเว็บแอปพลิชัน ทำให้เราสามารถเริ่มต้นสร้างเว็บได้อย่างรวดเร็ว มี Library หลากหลายสำหรับช่วยในการพัฒนา และยังสามารถใช้พัฒนาไมโครเซอร์วิสและ API ได้อีกด้วย
.
✨ จุดเด่นของ Flask
.
🔸 ใช้งานง่าย
สามารถเริ่มต้นสร้างเว็บได้อย่างรวดเร็ว ไม่ต้องตั้งค่าอะไรให้ยุ่งยาก Coding ได้ง่ายและสั้นกว่า Django และสามารถเชื่อมต่อกับฐานข้อมูลได้อย่างง่ายดาย
🔸 ยืดหยุ่น
กำหนดค่าได้ง่ายและยืดหยุ่น ไม่ขึ้นกับ Framework ใด ๆ สามารถใช้ได้กับส่วยขยายหรือ Framework ภายนอกเพื่อช่วยในการพัฒนาเว็บได้อย่างอิสระ เช่น เลือกใช้ SQLAlchemy เพื่อเชื่อมต่อกับฐานข้อมูล
.
🔸 มีแหล่งเรียนรู้เพียบ
เป็น Framework มาแรงและฮิตมาก จึงมีแหล่งเรียนรู้ให้เราได้ศึกษามากมายทั้งใน GitHub และที่อื่น ๆ
.
🔸 ปรับขยายได้ง่าย
Flask สามารถเปลี่ยนได้ในภายหลังเพื่อเพิ่มฟังก์ชันการทำงานและทำให้มันซับซ้อนยิ่งขึ้น จึงทำให้มีความยืดหยุ่นในการขยายแอปพลิเคชันได้อย่างรวดเร็ว
.
👥 Flask เหมาะกับใคร ?
เหมาะสำหรับนักพัฒนาที่ต้องการ Framework ในการพัฒนาเว็บได้อย่างอิสระ ไม่เน้นโครงสร้างเยอะ สามารถติดตั้งส่วนเสริมหรือปลั๊กอินต่าง ๆ เพื่อช่วยในการพัฒนาเว็บได้ตามที่เราต้องการ และหากอนาคตมีการปรับขยายสเกลของเว็บไซต์ก็สามารถทำได้ง่าย
.
บริษัทที่มีชื่อเสียงที่ใช้ Flask ได้แก่ Netflix, Reddit, Lyft, MIT
.
.
รู้จัก Django
.
Django เป็น Framework สำหรับพัฒาเว็บแอปพลิเคชันมีมาตรฐานสำหรับสร้างเว็บที่ปลอดภัยและบำรุงรักษาได้ง่าย แถมยังเป็น Open-source ใช้งานได้ฟรี มีนักพัฒนาใช้งานกันอย่างหลากหลาย ทำให้มี Community ขนาดใหญ่ และ Document ให้เราได้เรียนรู้เพียบ !! ทำให้สามารถสร้างเว็บไซต์ที่สมบูรณ์แบบได้อย่างรวดเร็ว
.
✨ จุดเด่นของ Django
.
🔸 ใช้งานได้หลากหลาย
เป็นเฟรมเวิร์กที่ใช้งานได้หลากหลาย สามารถสร้างเว็บที่มีเนื้อหาในรูปแบบใดก็ได้ เช่น HTML, XML, JSON และอื่น ๆ ทำงานควบคู่กับ Client-side Framework ได้อย่างดี
.
🔸 ปลอดภัย
มีมาตรฐานการรักษาความปลอดภัยจากช่องโหว่ต่าง ๆ เช่น การจัดการบัญชีผู้ใช้, จัดการธุรกรรม, Cross-site Request Forgery, Clickjacking และอื่น ๆ
.
🔸 ปรับขนาดและบำรุงรักษาได้
อินเทอร์เฟซที่สร้างขึ้นส่วนใหญ่จะมีคุณสมบัติที่จำเป็นสำหรับการดำเนินการ CRUD และสามารถปรับแต่งได้อย่างอิสระ เป็นเฟรมเวิร์กแบบคอมโพเนนต์ แต่ละเลเยอร์จึงเป็นอิสระจากกันทำให้แอปพลิเคชันสามารถปรับขนาดได้
.
🔸 ใช้งานง่ายและรวดเร็ว
ใช้หลักการออกแบบและทำซ้ำสามารถปรับแต่งโค้ดในโปรเจกต์ของเราได้อย่างรวดเร็ว และมี Interface ที่ใช้งานง่าย มีผู้ใช้งานอย่างหลากหลายทำให้เมื่อติดปัญหาใด ๆ ก็สามารถหาวิธีแก้ได้อย่างรวดเร็ว
.
👥 Django เหมาะกับใคร ?
.
เหมาะสำหรับการสร้างเว็บไซต์ที่ปลอดภัยโดยที่ไม่ต้องใช้เวลาไม่นาน และเหมาะกับโปรเจกต์ใหญ่ ๆ มี Library มากมายที่ช่วยในการพัฒนาเว็บ
.
บริษัทใหญ่ ๆ อย่าง Instagram, Coursera, และ Udemy ต่างก็เลือกใช้ Django ในการพัฒนาเว็บ
.
.
และนี่คือความแตกต่างของเจ้า Flask และ Django หวังว่าจะเลือกใช้กันถูกแล้วเนอะ หากเพื่อน ๆ คนไหนมีอะไรเพิ่มเติม หรืออยากจะแชร์เกี่ยวกับเจ้าสองตัวนี้ สามารถมาคอมเมนต์พูดคุยกันได้เลยน้า ❤️
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
#flask #django #framework #BorntoDev
同時也有1部Youtube影片,追蹤數超過7萬的網紅在地上滾的工程師 Nic,也在其Youtube影片中提到,這也是我第一次參加論壇形式的演講分享,感謝 MOPCON 邀約這次的主題「從開源專案的社會參與到建立第一筆產品收入」並且很榮幸能夠和「好想工作室 Howard」 及 「六角學院 乾太」同台分享 參加工程師技術會議就像是出遠門去充電,認識不同的人,也可以藉由議題分享學習到很多東西,甚至只要能獲得一個...
open source github 在 BorntoDev Facebook 的最讚貼文
เคยไหม ? อยากเริ่มเขียน Python นะ อยากทำ Machine Learning จัง อยากลองสร้าง AI หรือว่าเห็น Data Science กำลังมา ก็อยากลองทำเหมือนกัน 🤔
.
💭 โห มีโปรเจกต์ที่อยากทำในหัวเยอะมาก แบบว่าอันนั้นก็น่าทำ อันนี้ก็น่าลอง อันนี้ก็เรียนรู้ไว้ก็ดีอะ ...แต่ขี้เกียจลงโปรแกรม ก็เลยไม่ได้เริ่มกับเขาสักที
.
👉 ถ้าคุณกำลังประสบปัญหานี้ล่ะก็ วันนี้เราขอนำเสนอตัวช่วยดี ๆ ที่จะทำให้การเริ่มเขียน Python ไม่ใช่เรื่องยากและวุ่นวายอีกต่อไป ! ตัวช่วยของเราในวันนี้ก็คือออ…
.
“Google Colab” นั่นเองจ้า เอาล่ะ ถ้าพร้อมไปต่อก็ลุยกันเลยยย !
.
📍 Google Colab คืออะไร ?
.
Google Colaboratory หรือที่มักเรียกกันสั้น ๆ ว่า Google Colab เป็นบริการจาก Google ที่ให้ผู้ใช้งานเขียนโค้ดภาษา Python บน Browser แบบไม่ต้องติดตั้งโปรแกรมอะไรเลย แล้วจะ Save โค้ดเราไว้อยู่บน Drive ทำให้เราสามารถแชร์โค้ดให้คนอื่นดูได้
.
นอกจากนี้ Google Colab ยังมีบริการ GPU มาให้เราเลือกอีกด้วย และถ้าเราจะทำสาย Data, Machine Learning หรือ AI เราก็สามารถ import library ต่าง ๆ ไม่ว่าจะเป็น numpy, matplotlib หรืออื่น ๆ ได้ตามต้องการ
.
และที่สำคัญ ทุกอย่างที่บอกมานั้น ฟรี ! แค่เรามีบัญชีของ Google เท่านั้นจ้า
.
📍 Google Colab ทำอะไรได้บ้าง ?
.
ไปดูฟีเจอร์ที่ Google Colab ทำได้กันดีกว่า ฟิ้ววว
.
🔸 เขียนและรันโค้ด Python
.
อันนี้ของมันแน่อะเนอะ เอาไว้เขียนโค้ด ก็ต้องเขียนโค้ดได้ ซึ่งการเริ่มต้นใช้งาน Google Colab เราจะต้องสร้าง Notebook ขึ้นมาก่อน ซึ่งเจ้า Notebook เปรียบเสมือนสมุดเล่มนึง ที่เราสามารถเขียนและเรียกใช้โค้ดบนนั้นได้ โดยใน Notebook นั้น เราจะเขียนโค้ดบนสิ่งที่เรียกว่า Code Cell
.
อ่านข้อมูลเพิ่มเติมได้ที่
https://colab.research.google.com/notebooks/basic_features_overview.ipynb
.
🔸 รองรับการเขียนสมการคณิตศาสตร์
.
แน่นอนว่า ในศาสตร์ของ Machine Learning, AI หรือแม้แต่งานสาย Data ยิ่งศึกษาลึกขึ้น ก็จะพบกับทั้งสูตรและสมการมากมายเต็มไปหมด และมันก็ต้องมีสักครั้งแหละ ที่เราอยากจะ Comment สมการเหล่านั้นซะเหลือเกิน ซึ่ง Google Colab ทำได้ ! โดยเราสามารถใช้ Text Cell เพื่อเขียนสมการคณิตศาสตร์ได้ด้วย Markdown Language นั่นเอง
.
อ่านข้อมูลเพิ่มเติมได้ที่
https://colab.research.google.com/notebooks/markdown_guide.ipynb
.
🔸 แชร์ Notebook ผ่าน Google Link
.
อย่างที่เกริ่นไปก่อนหน้านี้ เนื่องจาก Notebook ของเราถูกเก็บไว้บน Drive เพราะงั้นเราจึงสามารถแชร์ลิงก์ให้คนอื่นเข้ามาดู Notebook ของเราได้ง่าย ๆ เหมือนตอนเราใช้บริการ Google Docs หรือ Slides แล้วแชร์ลิงก์ให้เพื่อเข้ามาดูจ้า
.
🔸 Import ข้อมูลจาก Google Drive
.
ต่อจากข้อเมื่อกี้ ในเมื่อเป็นบริการจาก Google เหมือนกัน เจ้า Google Colab จึงรองรับการเชื่อมต่อกับ ดังนั้น Google Drive ไม่ว่าจะ Import หรือ Export ตัว Notebook ก็สะดวก แถมถ้าจะ Import ข้อมูลก็ทำได้เช่นกัน นอกจากนี้ ยัง Import ข้อมูลจาก External Data แหล่งอื่น ๆ ได้อีกนะ
.
อ่านข้อมูลเพิ่มเติมเกี่ยวกับ Drive และ External Data อื่น ๆ ได้ที่
https://colab.research.google.com/notebooks/io.ipynb
.
🔸 รองรับ TensorFlow
.
TensorFlow เป็น Library ประเภท Open-source จาก Google ที่ใช้ภาษา Python สำหรับคำนวณสูตรคณิตศาสตร์ต่าง ๆ รวมถึงอัลกอริทึมเพื่อพัฒนา Machine Learning ซึ่ง Google Colab เองก็สามารถ Import TensorFlow เข้ามาใช้ได้เช่นกัน
.
อ่านข้อมูลเพิ่มเติมได้ที่
https://colab.research.google.com/notebooks/tensorflow_version.ipynb
.
🔸 ใช้งาน Google Colab ร่วมกับ GitHub
.
สาย Dev อย่างเราคงคุ้นชินกับ GitHub กันพอสมควร (หรือถ้าเพื่อน ๆ มือใหม่ก็คงเคยได้ยินคำว่า Git กับ GitHub กันมาบ้าง) ซึ่งที่นี่ เราสามารถ Import Notebook จาก GitHub เข้ามายัง Google Colab ได้ รวมถึง Publish Notebook ของเราบน GitHub ได้เช่นกันจ้า
.
อ่านข้อมูลเพิ่มเติมได้ที่ https://colab.research.google.com/github/googlecolab/colabtools/blob/master/notebooks/colab-github-demo.ipynb
.
📍 อธิบายเพิ่มเติม
.
แอดขอเสริมสำหรับเพื่อน ๆ ที่มือใหม่ ภาษา Python เป็นภาษาประเภท Interpreted Language ซึ่งจะอ่านโค้ดทีละคำสั่ง แล้วจะมี Interpreter แปลงเป็นภาษาเครื่องเพื่อดำเนินการเลยคำสั่งนั้น ๆ เลย 💻
.
ต่างจากภาษาที่ใช้ Compiler เช่น C, C++, C#, Java ฯลฯ ที่จะต้องเขียนโค้ดให้เสร็จก่อน แล้วค่อยแปลงไฟล์เป็นไฟล์ Execution (ที่เราจะคุ้นหน้าคุ้นตาในรูปแบบของไฟล์ .exe) เพราะ Compiler จะแปลงทีเดียวทั้งไฟล์
.
กลับมาที่ Python พอเป็นแบบนั้นแล้ว ตัว Google Colab ที่มีหน้าตาเป็น Code Cell นั้น เมื่อเราพิมพ์โค้ดลงไป จึงกด Run เพื่อดูผลลัพธ์ได้เลยนั่นเอง ✨
.
👉 ถ้าใครสนใจ Google Colab ก็สามารถลองใช้งานได้ที่
https://colab.research.google.com/
.
👉 อ่านข้อมูลเพิ่มเติมและส่องฟีเจอร์ต่าง ๆ ได้ที่
https://colab.research.google.com/notebooks/welcome.ipynb
.
เป็นยังไงกันบ้าง เรียกได้ว่า “ครบจบที่บน Browser” จริง ๆ สำหรับ Google Colab ที่เราเอามาฝากวันนี้ 😂 ส่วนเพื่อน ๆ คนไหนกำลัง (อยาก) เริ่มเขียน Python หรือลองสร้างโปรเจกต์อยู่ แอดก็ขอเป็นกำลังใจให้ทุกคนเลยนะคะ ✊📦❤️
.
ถ้าชอบกดไลก์ ใช่กดแชร์ ให้กับแอดและทีม BorntoDev ด้วยน้า 🥺
แล้วเจอกันใหม่ สวัสดีจ้า~
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
open source github 在 BorntoDev Facebook 的最讚貼文
เพื่อน ๆ รู้หรือไม่ 💡 ว่าการเก็บข้อมูลที่แสนจะมากมายมหาศาลของ Facebook นั้นเขามีวิธีการเก็บอย่างไร และใช้ฐานข้อมูลแบบไหน ?? วันนี้เรามาหาคำตอบกันเลยจ้า !! ❤️
.
🔹 Facebook นั้นมีผู้ใช้ประมาณ 1.2 พันล้านคน ซึ่งถือว่าเยอะมากกกก -0- และทุกคนนั้นจะเห็นหน้าเพจเป็นแบบไดนามิก ซึ่งทาง Facebook ต้องใช้ Tools ต่าง ๆ ในการจัดเก็บข้อมูลเพื่อให้รองรับกิจกรรมต่าง ๆ เช่น การกดไลก์ แสดงความคิดเห็น และการแชร์ เป็นต้น
.
👉 ซึ่งในปัจจุบันทาง Facebook มีการใช้ฐานข้อมูลแบบ SQL ไม่ว่าจะเป็น MySQL และ InnoDB ด้วยประสิทธิภาพและความน่าเชื่อถือของทั้งสอง รองรับข้อมูลที่มหาศาลได้ แต่ก็จะมีข้อจำกัดบางอย่าง จึงได้พัฒนาฐานข้อมูลที่ชื่อว่า RocksDB เพื่อมาใช้ร่วมกันนั่นเอง
.
ซึ่งเจ้า RocksDB เป็นฐานข้อมูลแบบ Embeddable Key-value จัดเก็บข้อมูลได้อย่างรวดเร็ว แถมยังเป็น Open-Source สร้างและใช้งานบน Facebook เขียนด้วยภาษา C++
.
✨ คุณสมบัติ
🔸 1) สามารถปรับขนาดให้ทำงานบนเซิร์ฟเวอร์ที่มี Core CPU จำนวนมาก
RocksDB มีข้อดีที่ช่วยให้สามารถจัดการกับเซิร์ฟเวอร์แบบ Muti Core ได้อย่างมีประสิทธิภาพ แถมยังสามารถแบ่งพาร์ติชันให้เป็นฐานข้อมูลแบบ Read-only และ Read-write
.
🔸 2) ใช้พื้นที่เก็บข้อมูลได้อย่างมีประสิทธิภาพ
สามารถบีบอัดข้อมูลซึ่งสามารถลดพื้นที่เก็บข้อมูลลงได้ และทำงานได้อย่างรวดเร็ว ลดปัญหาคอขวดของข้อมูล
.
🔸 3) มีความยืดหยุ่น
RocksDB สามารถจัดการและขยายได้ง่าย มีหน่วยเก็บข้อมูลที่มีประสิทธิภาพในการอ่านและเขียนนั่นเอง รองรับข้อมูลได้หลากหลาย
.
🌈 RocksDB ใช้สถาปัตยกรรมแบบ Pluggable คือสามารถปรับเปลี่ยนได้ง่ายโดยไม่ส่งผลต่อสถาปัตยกรรมของระบบ ซึ่งสามารถปรับใช้กับ Workloads และ Hardware ที่แตกต่างกันได้นั่นเอง
.
⚙️ วิธีใช้งานเบื้องต้น
RocksDB จะใช้ Methods Put, Delete, และ Get เพื่อแก้ไข ลบ และ Query ข้อมูลนั่นเอง
.
👨💻 โค้ดตัวอย่าง
เป็นการย้ายค่าไปเก็บไว้ภายใต้ Key1 และ Key2
.
std::string value;
rocksdb::Status s = db->Get(rocksdb::ReadOptions(), key1, &value);
if (s.ok()) s = db->Put(rocksdb::WriteOptions(), key2, value);
if (s.ok()) s = db->Delete(rocksdb::WriteOptions(), key1);
.
⚡ RocksDB เหมาะกับงานแบบใด ?
- ใช้จัดเก็บประวัติการเข้าชม และสถานะของผู้ใช้
- ตรวจจับสแปม
- ใช้กับ Graph-search ที่ต้องสแกนข้อมูลแบบเรียลไทม์
- ใช้กับ Hadoop
- ใช้ในงานที่รองรับ Message Queue
.
ซึ่งเขาเปิดให้เหล่า Dev ได้ลองเล่นกันสักพักล่ะใน GitHub หากใครสนใจสามารถคลิกลิงค์ไปลองใช้งานกันได้เลย
💥 GitHub : https://github.com/facebook/rocksdb
.
📑 และสามารถอ่านข้อมูลเพิ่มเติมเกี่ยวกับ RocksDB ได้ที่ >> https://rocksdb.org/ , https://engineering.fb.com/2013/11/21/core-data/under-the-hood-building-and-open-sourcing-rocksdb/
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
open source github 在 在地上滾的工程師 Nic Youtube 的最讚貼文
這也是我第一次參加論壇形式的演講分享,感謝 MOPCON 邀約這次的主題「從開源專案的社會參與到建立第一筆產品收入」並且很榮幸能夠和「好想工作室 Howard」 及 「六角學院 乾太」同台分享
參加工程師技術會議就像是出遠門去充電,認識不同的人,也可以藉由議題分享學習到很多東西,甚至只要能獲得一個靈感,絕對都是成長上的養分
拍攝這支影片的目的,除了記錄自己的回憶,也希望和每一位工程師分享,希望大家未來都可以踴躍參加技術會議!!
在這個過程,透過交流可以增進自己的人脈和知識,甚至好的工作有時候就會這樣互相介紹掉了 XD
SITCON 學生計算機年會: https://www.facebook.com/SITCONtw
章節:
00:00 直奔濁水溪以南
01:29 Day1 攤位交流
03:13 直接報名起來
03:57 Day2 吃喝交流
04:17 SITCON 學生計算機年會
04:49 論壇精華片段
08:54 全集中風之呼吸
09:34 Lightning Talk
12:18 散場的擁抱
喜歡影片的話!可以幫忙點個喜歡以及分享、訂閱唷!😘
━━━━━━━━━━━━━━━━
⭐ 蝦皮賣場: https://shopee.tw/bboyceo
⭐ instagram (生活日常): https://www.instagram.com/niclin_tw/
⭐ Facebook (資訊分享): https://www.facebook.com/niclin.dev
⭐ Blog (技術筆記): https://blog.niclin.tw
⭐ Linkedin (個人履歷): https://www.linkedin.com/in/nic-lin
⭐ Github: https://github.com/niclin
⭐ Podcast: https://anchor.fm/niclin
━━━━━━━━━━━━━━━━
🌟 任何問題或合作邀約信箱: niclin0226@gmail.com
#mopcon #前端 #後端 #lightningtalk #conference
open source github 在 Getting Started With Open Source & GitHub - YouTube 的美食出口停車場
In this video, we will talk about open source and using Github Check out Eddie's YouTube Channel: … Show more. Show more ... ... <看更多>