อ่าน 3 นาที
Snap (เฟรมเวิร์กสำหรับเว็บ)
Snap เป็น เฟรมเวิร์กเว็บ สำหรับการพัฒนา เว็บแอปพลิ เค ชัน ที่เขียนด้วย ภาษาการเขียนโปรแกรม เชิงฟังก์ชัน Haskell [ 3 ] [ 4 ]
Snap (เฟรมเวิร์กสำหรับเว็บ)
| สแนป | |
|---|---|
| ผู้เขียนต้นฉบับ | เกรกอรี คอลลินส์, ดั๊ก เบียร์ดสลีย์[ 1 ] |
| นักพัฒนา | ทีมสแนป |
| ปล่อย | พฤษภาคม 2553 |
| เวอร์ชันเสถียร | 1.1.3.2 [ 2 ] / 19 กรกฎาคม 2023 |
| เขียนเป็น | ฮัสเคลล์ |
| ระบบปฏิบัติการ | รองรับหลายแพลตฟอร์ม : Unix , Unix-like , macOS ; Windows NT |
| แพลตฟอร์ม | IA-32 , x86-64 |
| มีจำหน่ายใน | ภาษาอังกฤษ |
| พิมพ์ | เฟรมเวิร์กเว็บ |
| ใบอนุญาต | บีเอสดี |
| เว็บไซต์ | snapframework.com |
| ที่เก็บข้อมูล | github.com/snapframework |
Snapเป็นเฟรมเวิร์กเว็บสำหรับการพัฒนาเว็บแอปพลิเค ชัน ที่เขียนด้วยภาษาการเขียนโปรแกรมเชิงฟังก์ชันHaskell [ 3 ] [ 4 ]
ภาพรวม
โครงสร้างพื้นฐานของ Snap ประกอบด้วยส่วนประกอบดังต่อไปนี้:
- snap-core [ 5 ] API เว็บเซิร์ฟเวอร์ Haskell ทั่วไป
- snap-server [ 6 ] เซิร์ฟเวอร์ HTTP ที่รวดเร็ว[ 7 ]ซึ่งใช้งานอินเทอร์เฟซ snap-core
- Heist [ 8 ]เป็นระบบเทมเพลตแบบ HTML สำหรับสร้างหน้าเว็บที่อนุญาตให้คุณผูกฟังก์ชัน Haskell เข้ากับแท็ก HTML เพื่อการแยกโค้ดส่วนแสดงผลและส่วนแบ็กเอนด์อย่างชัดเจน คล้ายกับ สนิปเป็ตของ Lift Heist เป็นระบบที่ทำงานได้ด้วยตัวเองและสามารถใช้งานได้โดยอิสระ
- Snaplets [ 9 ]ระบบระดับสูงสำหรับการสร้างแอปพลิเคชันเว็บแบบโมดูลาร์
- มี snaplets ในตัวสำหรับการสร้างเทมเพลต การจัดการเซสชัน และการตรวจสอบสิทธิ์
- แอปพลิเคชันเสริมจากผู้พัฒนาภายนอกสำหรับฟีเจอร์ต่างๆ เช่น การอัปโหลดไฟล์ การเชื่อมต่อฐานข้อมูล ( PostgreSQL , MongoDBเป็นต้น) การสร้างJavaScriptจากโค้ด Haskell และอื่นๆ
- โมนาด Snap สำหรับการเข้าถึงสถานะคำขอและการตอบสนอง HTTP [ 10 ]
Snap ทำงานบนทั้ง แพลตฟอร์ม Windows NTและUnix-like Snap ใช้ โมเดล อินพุต/เอาต์พุต (I/O) ของ Iteratee [ 11 ]ตั้งแต่เวอร์ชัน 1.0 เป็นต้นไป I/O ของมันถูกใช้งานด้วย สตรี ม io
การใช้งาน
Snap ถูกใช้โดย Silk, [ 12 ] JanRain, [ 13 ] [ 14 ] Racemetric, [ 15 ]บล็อกการเงินของ Lee Paste, [ 16 ] [ 17 ] SooStone Inc และ Group Commerce นอกจากนี้ Snap ยังถูกใช้เป็นเซิร์ฟเวอร์ Haskell แบบสแตนด์อโลนที่มีน้ำหนักเบา Hakyll ซึ่งเป็นเครื่องมือสร้างเว็บไซต์แบบคงที่ใช้ Snap สำหรับโหมดแสดงตัวอย่าง[ 18 ]
เฟรมเวิร์กเว็บ Haskell อื่นๆ
- Yesod (เฟรมเวิร์กสำหรับเว็บ)
- Servant (เฟรมเวิร์กสำหรับเว็บ)
- สกอตตี้[ 19 ]
- สป็อค[ 20 ]
- MFlow [ 21 ]
- มิโซะ[ 22 ]
ลิงก์ภายนอก
- เว็บไซต์อย่างเป็นทางการ
- Snap FrameworkบนGitHub
สรุปเนื้อหา
ข้อมูลสำคัญจากบทความ
ข้อมูลสำคัญเกี่ยวกับ Snap (เฟรมเวิร์กสำหรับเว็บ)
Snap เป็น เฟรมเวิร์กเว็บ สำหรับการพัฒนา เว็บแอปพลิ เค ชัน ที่เขียนด้วย ภาษาการเขียนโปรแกรม เชิงฟังก์ชัน Haskell [ 3 ] [ 4 ]
ภาพรวม
โครงสร้างพื้นฐานของ Snap ประกอบด้วยส่วนประกอบดังต่อไปนี้:
การใช้งาน
Snap ถูกใช้โดย Silk, [ 12 ] JanRain, [ 13 ] [ 14 ] Racemetric, [ 15 ] บล็อกการเงินของ Lee Paste, [ 16 ] [ 17 ] SooStone Inc และ Group Commerce นอกจากนี้ Snap ยังถูกใช้เป็นเซิร์ฟเวอร์ Haskell แบบสแตนด์อโลนที่มีน้ำหนักเบา Hakyll...
เฟรมเวิร์กเว็บ Haskell อื่นๆ
Yesod (เฟรมเวิร์กสำหรับเว็บ) Servant (เฟรมเวิร์กสำหรับเว็บ) สกอตตี้ [ 19 ] สป็อค [ 20 ] MFlow [ 21 ] มิโซะ [ 22 ]