CodeFrame เป็นวิธีที่เร็วที่สุดและง่ายที่สุดในการสร้างและปรับใช้หน้าเว็บแบบคงที่อย่างรวดเร็วและได้รับการออกแบบให้เป็นสถานที่ที่ดีที่สุดในการเรียนรู้วิธีสร้างสิ่งต่าง ๆ สำหรับเว็บบนเว็บ คุณสามารถค้นหาว่าทำงานสดที่ codeframe.co

ใช้งานง่าย CodeFrame ถูกสร้างขึ้นเป็นอันดับแรกและสำคัญที่สุดสำหรับการทดลองอย่างรวดเร็วและสำหรับผู้ที่เรียนรู้ที่จะเขียนโค้ดเป็นครั้งแรกดังนั้นจึงหลีกเลี่ยงความซับซ้อนและคุณสมบัติเพิ่มเติมเพื่อความเรียบง่ายและใช้งานง่าย
มันเร็ว สภาพแวดล้อมการพัฒนาของคุณควรเคลื่อนที่ด้วยความเร็วของความคิดของคุณและไม่มีเครื่องมือสร้างไม่มีเหตุผลที่ CodeFrame ไม่สามารถเกิดขึ้นได้ทันที ฉันสร้าง CodeFrame เพื่อลดเวลาจากแนวคิดไปจนถึงต้นแบบที่แบ่งปันได้มากที่สุดเท่าที่จะเป็นไปได้ทางร่างกาย เพียงเปิดตัวแก้ไขรหัสเขียนและแชร์ในคลิกเดียว
- มันเป็นโอเพ่นซอร์สและตรวจสอบได้อย่างเต็มที่ ทุกสิ่งที่เรียกใช้ CodeFrame จากสแต็กแบ็กเอนด์ไปจนถึงรหัส JavaScript ที่อยู่ด้านหลัง CodeFrame Editor เป็นโอเพนซอร์สและตรวจสอบได้ในเบราว์เซอร์ ฉันคิดว่าการมีซอร์สโค้ดที่อ่านได้ในผลิตภัณฑ์ที่ส่งมอบสร้างความแตกต่างสำหรับผู้ที่เรียนรู้ที่จะเขียนโค้ดและ CodeFrame จัดลำดับความสำคัญนี้มากกว่าความซับซ้อนเพิ่มเติมและประสิทธิภาพที่เพิ่มขึ้นเล็กน้อยด้วยการรวมกลุ่มและแหล่งที่เป็นกรรมสิทธิ์
หากคุณไม่ต้องการสิ่งที่ออกแบบมาเพื่อความเร็วหรือสำหรับนักเรียนใหม่ในการเข้ารหัสมีเครื่องมืออื่น ๆ ที่อาจทำงานได้ดีขึ้นสำหรับคุณด้วยคุณสมบัติเพิ่มเติม CodePen เป็นเว็บในเบราว์เซอร์คลาสสิกที่มีคุณสมบัติที่ทรงพลังและตัวเลือกการปรับแต่ง CodesandBox นั้นยอดเยี่ยมสำหรับการทดลองกับโครงการที่มีขั้นตอนการสร้าง / การรวมกลุ่มและ Repl.it มีชุดเครื่องมือพัฒนาที่น่าทึ่งสำหรับสภาพแวดล้อม HTML ของพวกเขารวมถึงความสามารถในการสร้างไฟล์ / โฟลเดอร์เพิ่มเติมและผู้เล่นหลายคนซึ่งช่วยให้การทำงานร่วมกันแบบเรียลไทม์ราบรื่น
ทุกสิ่งที่คุณต้องการเรียกใช้ CodeFrame เวอร์ชันของคุณเองอยู่ในที่เก็บโอเพนซอร์ซนี้ นี่คือวิธีที่คุณสามารถเรียกใช้เวอร์ชันของคุณเองบน CodeFrame บนคอมพิวเตอร์หรือเซิร์ฟเวอร์ของคุณ
คุณจะต้องใช้เครื่องมือเหล่านี้:
git สำหรับการคัดลอกที่เก็บจาก GitHub ไปยังคอมพิวเตอร์ของคุณ รับ Git ที่นี่npm (หรือ yarn ทางเลือก) เพื่อติดตั้งการพึ่งพาเช่น Express โดยทั่วไปแล้ว NPM จะมาพร้อมกับ Node.jsls , cd ฯลฯเมื่อคุณมีเครื่องมือเหล่านี้ติดตั้งและพร้อมขั้นตอนแรกคือโคลนที่เก็บ GIT นี้ไปยังคอมพิวเตอร์ของคุณ ไปที่ไดเรกทอรีที่คุณต้องการตั้งค่า CodeFrame และเรียกใช้
$ git clone https://github.com/thesephist/codeframe.git (หากคุณมีการตั้งค่า SSH สำหรับ GIT และรู้วิธีใช้งานคุณสามารถใช้ git:// url แทนถ้าคุณไม่ต้องกังวลกับมัน)
ตอนนี้ cd ลงในไดเรกทอรี codeframe ใหม่ที่เพิ่งสร้างขึ้นและคุณควรเห็นไฟล์ทั้งหมดในที่เก็บ CodeFrame
$ cd codeframe/
$ ls
src/ static/ docs/ README.md LICENSE ... ที่นี่ลองเริ่มต้น CodeFrame ด้วย node.js โดยใช้คำสั่ง npm start
$ npm start
...
Error: Cannot find module ' express '
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:603:15)
... ซึ่งหมายความว่า node.js ไม่พบ express ซึ่งเป็นไลบรารี JavaScript เพื่อสร้างเว็บเซิร์ฟเวอร์ที่ CodeFrame ขึ้นอยู่กับ มาติดตั้งการพึ่งพาเช่น Express โดยใช้ npm install จากนั้นลองอีกครั้ง
$ npm install
...
$ npm start
Codeframe running on localhost:4556 คุณอาจสังเกตเห็นว่า NPM สร้างไดเรกทอรีใหม่ที่เรียกว่า node_modules/ ซึ่งจะติดตั้งการพึ่งพาของ CodeFrame
หากคุณเห็นข้อความ Codeframe running on localhost:4556 นั่นหมายความว่าคุณมี CodeFrame และทำงานบนคอมพิวเตอร์ของคุณ ไปที่เบราว์เซอร์ของคุณและเปิดที่อยู่ http://localhost:4556 สิ่งนี้ควรบอกให้เบราว์เซอร์ของคุณค้นหาหน้าเว็บที่ทำงานบนพอร์ต 4556 (พอร์ตเริ่มต้นของ CodeFrame) บนคอมพิวเตอร์ของคุณและโหลดหน้าหลักของ CodeFrame
หลังจากที่คุณเปลี่ยนไฟล์บริการแบ็กเอนด์ใด ๆ (ภายใต้ src/ ) คุณสามารถรีสตาร์ทเซิร์ฟเวอร์ด้วย npm start (Ctrl + C เพื่อสิ้นสุดเซิร์ฟเวอร์ที่กำลังทำงานอยู่) เพื่อดูการเปลี่ยนแปลงที่เกิดขึ้น หากคุณกำลังแก้ไขรหัสส่วนหน้าไม่จำเป็นต้องรีสตาร์ท - เพียงแค่โหลดหน้าใหม่ในเบราว์เซอร์!
หากคุณอยากรู้เกี่ยวกับการทำงานภายในของ CodeFrame ฉันกำลังสร้าง codebase เวอร์ชันที่มีคำอธิบายประกอบอย่างสมบูรณ์ที่นี่ในหน้า GitHub โดยใช้เครื่องมือที่เรียกว่า litterate ในขณะที่นั่นเป็นสถานที่ที่ดีในการดูว่าทุกอย่างถูกนำไปใช้อย่างไรส่วนนี้ให้ภาพรวมระดับสูงเกี่ยวกับวิธีการออกแบบระบบ
CodeFrames ทั้งหมดคือ (สำหรับตอนนี้) ไฟล์คู่ไฟล์ HTML และไฟล์ JavaScript ซึ่งเราสามารถถือว่าเป็นข้อความของข้อความ CodeFrame เก็บไฟล์ทั้งหมดทั้ง HTML และ JavaScript ในสถานที่เดียวกันในลักษณะเดียวกันในลักษณะที่ไม่สามารถแก้ไขได้เมื่อบันทึก นี่คือฐานข้อมูลแฮชที่ไม่เปลี่ยนรูปของ CodeFrame
เมื่อผู้ใช้สร้างไฟล์ใหม่หรือไฟล์เวอร์ชันใหม่ตัวแก้ไขจะส่งไฟล์ไปยังแบ็กเอนด์ แบ็กเอนด์ได้รับไฟล์และแฮช (ปัจจุบันใช้ SHA256) และใช้แฮชเพื่อสร้างชื่อไฟล์สั้นและไม่ซ้ำกันสำหรับไฟล์ ไฟล์จะถูกบันทึกลงในตำแหน่งในแบ็กเอนด์ ( db/ โดยค่าเริ่มต้น) ด้วยชื่อไฟล์แฮช สิ่งนี้ทำให้แน่ใจว่าถ้าเราพยายามบันทึกไฟล์เดียวกันหลายครั้งเราจะบันทึกไฟล์หนึ่งไฟล์ในแบ็กเอนด์ได้อย่างมีประสิทธิภาพ เนื่องจากสิ่งนี้เกิดขึ้นได้มากในทางปฏิบัติโดยใช้ CodeFrame จึงมีประสิทธิภาพ
แต่ละไฟล์จะถูกระบุโดยแฮชด้วยวิธีนี้ดังนั้นการใช้แฮชสองตัว (แต่ละไฟล์สำหรับไฟล์ HTML และ JavaScript ของ CodeFrame) เราสามารถกำหนดรหัสที่ไม่ซ้ำกันได้ นี่คือวิธีการทำงานของ CodeFrame URL ของ CodeFrame แต่ละตัวมีแฮชสองตัวแต่ละอันสำหรับ HTML และ JavaScript เมื่อคุณขอ CodeFrame แบ็กเอนด์จะค้นหาไฟล์ที่บันทึกไว้ก่อนใช้แฮชเหล่านั้นเป็นชื่อไฟล์และส่งคืนไฟล์ไปยังตัวแก้ไขหรือไปยังเบราว์เซอร์สำหรับการดูของคุณ
ฐานข้อมูลไฟล์ที่ใช้แฮชนี้มีข้อได้เปรียบเล็กน้อย ความจริงที่ว่าแต่ละไฟล์จะถูกบันทึกเพียงครั้งเดียวและไม่เคยเขียนทับหมายความว่า codeframe ใด ๆ ณ เวลาใดก็ตามจะมีลักษณะอย่างสมบูรณ์โดย URL ของมัน การเปลี่ยนแปลงของคุณเป็นประวัติเบราว์เซอร์ของคุณอย่างมีประสิทธิภาพและรหัสใด ๆ ที่คุณแชร์จะยังคงอยู่ในเวอร์ชันนั้นตลอดไป นอกจากนี้ยังหมายถึงบริการแบ็กเอนด์ยังคงง่ายมาก-เป็นการออกแบบที่ใช้งานได้อย่างสมบูรณ์โดยไม่มีผลข้างเคียงนอกฐานข้อมูลซึ่งเป็นร้านค้าคีย์-ค่าที่ไม่เปลี่ยนรูป
การใช้งานในปัจจุบันซึ่งขึ้นอยู่กับระบบไฟล์นั้นยังสั้นในบางพื้นที่ ส่วนใหญ่ใช้ FS เป็นชั้นจัดเก็บของฐานข้อมูล เนื่องจากระบบไฟล์ไม่ได้ถูกออกแบบมาให้ใช้ด้วยวิธีนี้ในจำนวนมากเราอาจตีคอขวดที่ปรับขนาดได้ซึ่งเราจะต้องเปลี่ยนเป็นร้านค้าคีย์-ค่าอื่นเช่น S3 ของ Amazon ขณะนี้เรายังเก็บการเปลี่ยนแปลงที่เพิ่มขึ้นของแต่ละไฟล์ในไฟล์แยกต่างหากในฐานข้อมูล นี่เป็นวิธีที่ Git จัดการกับการเปลี่ยนแปลง แต่ด้วยการใช้งานของ CodeFrame สิ่งนี้อาจกลายเป็นประสิทธิภาพอย่างมาก สิ่งเหล่านี้ไม่ได้เป็นปัญหาในขณะนี้ แต่อาจกลายเป็นสิ่งสำคัญในการก้าวไปข้างหน้า ณ จุดนี้เราจะกล่าวถึงพวกเขา
อินเทอร์เฟซผู้ใช้ส่วนหน้าของ CodeFrame ถูกสร้างขึ้นเป็นส่วนประกอบ Torus เดียวซึ่งเป็นตัวแก้ไข CodeFrame ตัวแก้ไขนี้สามารถเรียกใช้แบบสแตนด์อโลนเช่นเดียวกับในมุมมองตัวแก้ไขเต็มหน้าจอของ CodeFrame ใด ๆ หรือสามารถฝังเป็น <iframe> ลงในเว็บไซต์ที่อนุญาตบางอย่างเช่นในหน้าหลัก ทุกอย่างที่คุณเห็นในส่วนหน้ารวมถึงส่วนที่เหลือของหน้าแรกนั้นง่าย HTML ที่เขียนด้วยลายมือ CSS และ JavaScript
ฉันเลือก Torus เพื่อสร้างส่วนหน้าเพราะ (1) ฉันเขียนห้องสมุดดังนั้นฉันจึงรู้ว่ามันอยู่ข้างในและมันถูกออกแบบมาเพื่อให้เหมาะกับรสนิยมของฉัน (2) มันเร็วและเบาเช่น CodeFrame ถูกออกแบบมาให้เป็นและ (3) มันทำให้ต้นแบบเร็วมาก V1.0 ของ CodeFrame ถูกสร้างขึ้นใน 20 ชั่วโมงในช่วง 2 วันดังนั้นการสร้างต้นแบบที่รวดเร็วจึงเป็นสิ่งสำคัญในขณะที่สิ่งต่าง ๆ เช่นการสนับสนุนสำหรับเบราว์เซอร์เก่าไม่ใช่เป้าหมายหลัก นอกจากนี้ยังเป็นโอกาสที่ดีที่จะปล่อยให้ Torus ยืดขาและทดสอบในการผลิต
ตัวแก้ไขทั้งหมดถูกนำไปใช้ในไฟล์ JavaScript เดียวใน static/js/main.js ซึ่งคุณสามารถอ่านได้ที่นี่
สำหรับตัวแก้ไขข้อความภายใน CodeFrame บนเบราว์เซอร์เดสก์ท็อปฉันใช้โมนาโกตัวแก้ไขข้อความที่สร้างขึ้นสำหรับเบราว์เซอร์จากตัวแก้ไขรหัส Visual Studio ของ Microsoft มันเร็วเงางามและทำงานได้ดีมากบนเบราว์เซอร์เดสก์ท็อป การสนับสนุนมือถือของโมนาโกยังขาดอยู่ดังนั้นบนเบราว์เซอร์มือถือเราจัดส่ง Codemirror บรรณาธิการที่แตกต่างกัน Codemirror ใช้กันอย่างแพร่หลายใน Chrome Devtools และ Glitch ท่ามกลางเครื่องมืออื่น ๆ มีน้ำหนักเบาและรวดเร็วในการโหลดและใช้งานได้มากกว่าบนเบราว์เซอร์มือถือมากกว่าโมนาโก ประสบการณ์ของการใช้บรรณาธิการทั้งสองอยู่ใกล้กับประสบการณ์พื้นฐานในขณะที่ตัวแก้ไขแต่ละตัวนำการปรับปรุงคุณสมบัติเล็ก ๆ น้อยลง คุณสามารถอ่านเกี่ยวกับวิธีที่เราบรรลุสถาปัตยกรรมที่สามารถทำได้ในส่วน "Backend Editor ที่สามารถทำได้" ด้านล่าง
บานหน้าต่างตัวอย่างในตัวแก้ไขเป็น <iframe> ง่าย ๆ ที่เปิดมุมมองของหน้า HTML + JS ที่สร้างขึ้นสำหรับ CodeFrame เพื่อให้คุณสามารถดูได้เมื่ออัปเดตสด วันนี้มันทำงานอย่างอิสระอย่างสมบูรณ์จากบรรณาธิการ แต่ในอนาคตเราอาจเพิ่มการสื่อสารระหว่างทั้งสองเพื่อให้คุณสมบัติที่เป็นไปได้เช่นการอัปเดตสด
Editor ของ CodeFrame มีการพึ่งพาแกนเดียวเท่านั้น: Torus ซึ่งเป็นกรอบ UI ที่มีน้ำหนักเบา สำหรับความเร็วในการพัฒนาปัจจุบัน CodeFrame จัดส่งการพึ่งพาเป็นแท็ก <script> อย่างง่ายในตัวแก้ไข HTML ซึ่งชี้ให้เห็นถึงแพ็คเกจ NPM เวอร์ชันล่าสุดบน UNPKG ในอนาคตเราอาจรวม Torus ด้วยสคริปต์ Editor เวอร์ชันที่รวบรวมไว้ แต่จนถึงตอนนี้ UNPKG ได้พิสูจน์แล้วว่าเชื่อถือได้เพียงพอ
ส่วนตัวแก้ไขรหัสของ CodeFrame ไม่ได้อยู่ใน codebase นี้ แม้ว่าจะมี การใช้งานอ้างอิง ของตัวแก้ไขกระดูกเปลือยมากที่นี่นำมาใช้เป็น <textarea> ในการผลิตตามที่อธิบายไว้ข้างต้น CodeFrame ใช้โมนาโกหรือ Codemirror เป็นตัวแก้ไขรหัสของตัวเลือกขึ้นอยู่กับไคลเอนต์ เราสามารถเลื่อนได้อย่างง่ายดายและน่าเชื่อถือระหว่างบรรณาธิการทั้งสามนี้และคนอื่น ๆ ที่มีศักยภาพในอนาคตเนื่องจากอินเทอร์เฟซ Frontend CodeFrame กับตัวแก้ไขผ่านชุด API ขนาดเล็กที่สามารถนำไปใช้กับตัวแก้ไขรหัสที่สมเหตุสมผล เราเรียกชุดนี้ของ APIs The EditorCore Interface
CodeFrame Ships พร้อม wrappers EditorCore สำหรับทั้งโมนาโกและ codemirror และเลือกที่จะโหลดหนึ่งหรืออื่น ๆ ในรันไทม์ขึ้นอยู่กับไคลเอนต์ (ถ้าเราไม่ได้ใช้ตัวแก้ไขไม่มีส่วนหนึ่งของรหัสของตัวแก้ไขนั้นโหลดในเบราว์เซอร์) หากเราเปลี่ยนไปใช้แบ็กเอนด์ตัวแก้ไขที่แตกต่างกันหรือสลับตัวแก้ไขกับอีกคนหนึ่งในอนาคตสถาปัตยกรรม wrapper นี้ที่มีพื้นผิว API ขนาดเล็กทำให้เรื่องนี้ง่ายมาก - ไม่กี่ชั่วโมงมากที่สุดในการพันอินเทอร์เฟซรอบตัวแก้ไขใหม่ ตราบใดที่ตัวแก้ไขห่อหุ้มใช้อินเทอร์เฟซอย่างถูกต้องตัวแก้ไขจะทำงานกับส่วนที่เหลือของ CodeFrame
CodeFrame เป็นโอเพ่นซอร์สด้วยเหตุผลสองประการ
จนถึงจุดที่สองมีมุมของรหัสที่หยาบและสามารถใช้ขัดเงาได้ หากคุณเป็นนักพัฒนา JavaScript ที่มีประสบการณ์และต้องการดู CodeFrame ดีขึ้น DM และ PR ของฉันเปิดอยู่
แต่ที่สำคัญกว่านั้นฉันได้ทำ CodeFrame Open-Source ด้วยความตั้งใจที่ผู้มาใหม่ในการเขียนโปรแกรมเว็บจะสามารถเรียนรู้จากการอ่านแหล่งที่มาของ CodeFrame หากคุณเจอรหัสเล็กน้อยในที่เก็บข้อมูลที่ทำให้คุณสับสนอย่าลังเลที่จะยื่นปัญหาหรือเพิ่มคำขอดึงสำหรับคำอธิบายการชี้แจงหรือรหัสที่ดีกว่า
ส่วนสำคัญของ CodeFrame คือห้องสมุดของแม่แบบเริ่มต้นที่เป็นมิตร ตอนนี้เป็นชุดเล็ก ๆ แต่ฉันต้องการที่จะเติบโตเป็นที่เก็บรหัสตัวอย่างคุณภาพสูงที่อนุญาตให้ผู้คนกระโดดเข้ามาและเรียนรู้เกี่ยวกับเทคโนโลยีเว็บใหม่ได้อย่างง่ายดาย
หากคุณมี CodeFrames หรือตัวอย่างที่คุณต้องการรวมไว้ในหน้าแรกของ CodeFrame เป็นเทมเพลตสตาร์ทเตอร์อื่นให้เพิ่มไฟล์ภายใต้ starter_fixtures/ และภายใน const STARTER_FIXTURES ใน src/models.js และไฟล์คำขอดึง! เทมเพลตเริ่มต้นที่ตั้งค่าด้วยวิธีนี้จะถูกตั้งค่าในฐานข้อมูล ณ เวลาการปรับใช้เพื่อให้มั่นใจว่า CodeFrame ทุกรุ่นที่ทำงานอยู่มีการตั้งค่า
หนึ่งในคุณสมบัติสำคัญของโปรแกรมแก้ไข CodeFrame คือคุณสมบัติ "โหลดซ้ำตามที่คุณพิมพ์" นั่นคือในโหมดเริ่มต้น (เมื่อเปิดใช้งานคุณสมบัติ) ตัวแก้ไขจะโหลดบานหน้าต่างตัวอย่างซ้ำเป็นระยะด้วยรหัสจากตัวแก้ไขบางครั้งอยู่ตรงกลางของการพิมพ์ โดยทั่วไปทำให้ประสบการณ์การแก้ไขที่เหนือกว่า - โดยไม่ต้องเปลี่ยนสิ่งที่เรากำลังทำเราจะได้เห็นผลลัพธ์ของรหัสของเราทันทีที่เราแก้ไขและลูปข้อเสนอแนะที่แน่นหนานั้นยอดเยี่ยมสำหรับการพัฒนา
อย่างไรก็ตามในบางกรณีโดยเฉพาะอย่างยิ่งเมื่อเขียน JavaScript ซึ่งหมายความว่าการแสดงตัวอย่างซ้ำ ๆ ในช่วงกลางของการพิมพ์เมื่อเราเขียน JavaScript ที่ไม่ถูกต้องหรือมีบั๊ก หนึ่งในพฤติกรรมบั๊กกี้ที่เราอาจโหลดลงในบานหน้าต่างตัวอย่างโดยไม่ได้ตั้งใจคือลูปที่ไม่มีที่สิ้นสุด ในบริบทบางอย่างตัวอย่างเช่นเมื่อเราเขียน for(){} และ while(){} ลูปเราอาจสร้างลูปที่ไม่มีที่สิ้นสุดในช่วงกลางของการพิมพ์โปรแกรมของเราที่โหลดเข้าไปในหน้าต่างตัวอย่างของเรา
CodeFrame ไม่ใช่ตัวแก้ไขคนแรกที่พบเจอและ codepen.io มีวิธีการที่น่าสนใจในการใช้เครื่องมือ JavaScript ในการตั้งค่าการโหลดสดเพื่อป้องกันพฤติกรรมนี้ ปัญหาคือความท้าทายเนื่องจากการป้องกันลูปที่ไม่มีที่สิ้นสุดในกรณีทั่วไปเป็นไปไม่ได้ - มันเป็นตัวแปรคลาสสิกของปัญหาการหยุดพัก ในกรณีของ Codepen พวกเขาใช้รหัส JavaScript ที่สร้างขึ้นเช่นเมื่อลูปเดียวกันทำงานอย่างต่อเนื่องเป็นระยะเวลานานกว่าระยะเวลาหรือการวนซ้ำมันจะหยุดลูป มันเป็นวิธีปฏิบัติที่เป็นประโยชน์ ในทางตรงกันข้ามความผิดพลาดไม่ได้ทำอะไรเพื่อป้องกันไม่ให้ลูปไม่มีที่สิ้นสุดในการตั้งค่าการโหลดสด
ฉันพบว่าในทางปฏิบัติมันค่อนข้างหายากที่จะเขียนรหัสจาวาสคริปต์ไวยากรณ์โดยไม่ตั้งใจซึ่งส่งผลให้ลูปไม่มีที่สิ้นสุด และสำหรับกรณีที่หายากเหล่านั้น CodeFrame มีตัวเลือกในการปิดการโหลดแบบ as-type ในโปรแกรมแก้ไข แต่โดยค่าเริ่มต้น CodeFrame เป็นไปตามลำดับความสำคัญของ GLITCH ในการไม่แก้ไขหรือใช้เครื่องมือ JavaScript เพื่อป้องกันการดำเนินการที่ไม่มีที่สิ้นสุด หากเราพบกับกรณีการใช้งานมากขึ้นซึ่งสิ่งนี้กลายเป็นปัญหาเราอาจกลับไปทบทวนปัญหานี้อีกครั้ง
ผลข้างเคียงที่เรียบร้อยของความเรียบง่ายของรหัสที่คุณสามารถเขียนบน CodeFrame (ไม่มีขั้นตอนการรวบรวมไม่มีการรวมกัน) คือผลลัพธ์ที่คุณได้รับในหน้าตัวอย่าง HTML คือคำต่อคำเป็นคำต่อคำที่คุณพิมพ์ลงในตัวแก้ไขรวมถึงรหัส HTML Wrapper ดังนั้นแทนที่จะเพิ่มปุ่ม "ส่งออก" หรือรายการเมนูอย่างชัดเจนผู้ใช้สามารถเปิดตัวอย่างและบันทึกเอกสาร HTML เองเพื่อ "ส่งออก" รหัสใด ๆ ที่พวกเขาสร้างขึ้น
หากคุณสนุกกับการใช้ CodeFrame และต้องการสนับสนุนสิ่งที่ฉันทำไปข้างหน้าโปรดพิจารณาบริจาคให้กับ CodeFrame ผ่าน PayPal หรือ Venmo
อีกทางเลือกหนึ่งโปรดพิจารณาบริจาคให้กับองค์กรที่ไม่แสวงหากำไรที่ดีที่สุดบางแห่งที่ทำงานได้อย่างยอดเยี่ยมในพื้นที่การศึกษา CS, Khanacademy, Hack Club และ Stutech