Microsoft MakeCode ขึ้นอยู่กับโปรเจ็กต์โอเพ่นซอร์ส Microsoft Programming Experience Toolkit (PXT) Microsoft MakeCode
เป็นชื่อในตัวแก้ไขที่ผู้ใช้เห็น PXT
ใช้ในแหล่งที่มา GitHub ทั้งหมด
PXT เป็นเฟรมเวิร์กสำหรับการสร้างประสบการณ์การเขียนโปรแกรมเฉพาะสำหรับผู้เริ่มต้น โดยเฉพาะอย่างยิ่งที่มุ่งเน้นการศึกษาด้านวิทยาการคอมพิวเตอร์ ภาษาการเขียนโปรแกรมพื้นฐานของ PXT เป็นส่วนหนึ่งของ TypeScript (ไม่รวมคุณสมบัติไดนามิกของ JavaScript)
คุณสมบัติหลักของ PXT คือ:
ข้อมูลเพิ่มเติม:
ตัวอย่างบรรณาธิการที่สร้างด้วย MakeCode:
master
เป็นสาขาการพัฒนาที่ใช้งานอยู่ ซึ่งปัจจุบันเป็นรุ่น v3.*
v*
เป็นสาขาการให้บริการสำหรับ v*.*
บิลด์ โปรดปฏิบัติตามคำแนะนำที่นี่
หากคุณกำลังแก้ไขอินสแตนซ์ PXT ของคุณเองและต้องการให้เป้าหมาย (เช่น pxt-microbit) ใช้เวอร์ชันในเครื่องของคุณ ให้ไปที่ไดเร็กทอรีของเป้าหมาย (ในตัวอย่างของเรา pxt-microbit ซึ่งควรเป็นไดเร็กทอรีที่อยู่ระดับเดียวกันของ pxt ) และดำเนินการ
pxt link ../pxt
หากคุณมีการชำระเงิน pxt หลายรายการ คุณสามารถทำสิ่งต่อไปนี้:
npm i
ใน pxt และเป้าหมายpxt link ..some-other-pxt
(คุณอาจต้องอัปเดต CLI ของคุณก่อนโดยเรียกใช้ npm install -g pxt
) หากคุณเรียกใช้ npm i
ในภายหลัง (ในเป้าหมายหรือ pxt) คุณอาจต้องทำซ้ำขั้นตอนเหล่านี้
ขั้นแรก ติดตั้ง Node: เวอร์ชันขั้นต่ำ 8
หากต้องการสร้างเครื่องมือบรรทัดคำสั่ง PXT:
npm install
npm run build
จากนั้นติดตั้งเครื่องมือบรรทัดคำสั่ง pxt
(ต้องทำเพียงครั้งเดียว):
npm install -g pxt
จากนั้นติดตั้ง gulp
(ต้องทำเพียงครั้งเดียว):
npm install -g gulp
หลังจากนี้ คุณสามารถเรียกใช้ pxt
ได้จากทุกที่ภายในแผนผังบิลด์
หากต้องการเริ่มเว็บเซิร์ฟเวอร์ในเครื่อง ให้เรียกใช้ pxt serve
จากภายในรูทของเป้าหมายแอป (เช่น pxt-microbit) PXT จะเปิดตัวแก้ไขในเว็บเบราว์เซอร์เริ่มต้นของคุณ
หากคุณกำลังพัฒนาเทียบกับ pxt คุณสามารถเรียกใช้ gulp watch
จากภายในรูทของที่เก็บ pxt เพื่อดูการเปลี่ยนแปลงและสร้างใหม่
gulp watch
หากคุณกำลังทำงานกับ CLI โดยเฉพาะ
gulp watchCli
หากคุณไม่จำเป็นต้องสร้างชุดเว็บแอปที่เกี่ยวข้อง (แผนที่ทักษะ ผู้เล่นหลายคน ฯลฯ) คุณสามารถข้ามมันไปและเพิ่มความเร็วในการสร้างของคุณได้อีกเล็กน้อย:
gulp --no-webapps
มีไอคอนที่กำหนดเองจำนวนหนึ่ง (เพื่อใช้เพิ่มเติมจาก http://semantic-ui.com/elements/icon.html) ในไดเร็กทอรี svgicons/
สิ่งเหล่านี้จะต้องเป็น 1000x1000px
เริ่มต้นด้วยสิ่งที่มีอยู่ดีที่สุด หากต้องการดูไอคอนที่มี ให้ไปที่ http://localhost:3232/icons.html (ไฟล์นี้ พร้อมด้วย icons.css
ที่มีฟอนต์ไอคอน WOFF ที่สร้างขึ้น จะถูกสร้างขึ้นในระหว่างการสร้าง)
หากคุณประสบปัญหาในการแสดงไอคอนที่คุณสร้างขึ้น ให้ลอง:
npm install -g svgo
svgo svgicons/myicon.svg
เมื่อเพิ่มสี CSS หรือองค์ประกอบสไตล์อื่น ๆ ที่จะใช้ร่วมกันระหว่างเป้าหมายของตัวแก้ไข (เช่น micro:bit, Arcade) และแอปพลิเคชันย่อย (หรือที่เรียกว่า "CRAs" เช่น แผนที่ทักษะ เครื่องมือครู ฯลฯ) ประกาศตัวแปร CSS ใน theme/themepacks.less
:
:root
pseudo-class เลือกค่าเริ่มต้นที่เหมาะสมตามแนวทางในไฟล์theme-highcontrast
เท่านั้น เลือกค่าที่เหมาะกับธีมที่กำหนดtheme/themepacks.less
ของ repo เป้าหมาย (เช่น pxt-microbit, pxt-arcade)ตัวแปรที่ประกาศในลักษณะนี้จะพร้อมใช้งานสำหรับ CRA ณ รันไทม์ และจะเริ่มต้นด้วยค่าแทนที่ที่กำหนดโดยเป้าหมายที่ตัวแปรนั้นกำลังทำงานอยู่
ในเอกสารประกอบ การเน้นข้อมูลโค้ดจะใช้ highlight.js (hljs) ปัจจุบันมีภาษาดังต่อไปนี้:
หากคุณต้องการเพิ่มภาษาอื่นหรืออัปเดตภาษาที่มีอยู่ คุณสามารถค้นหาการเผยแพร่ได้ที่ https://highlightjs.org/download/; เลือกภาษาทั้งหมดที่คุณต้องการรวม (รวมถึงภาษาด้านบนด้วย!) ดาวน์โหลดและแตกไฟล์ และสุดท้ายคัดลอกไปที่ highlight.pack.js
ลงใน webapp/public/highlight.js/
การทดสอบจะอยู่ในไดเรกทอรี tests/
ย่อยและเป็นการผสมผสานระหว่างการทดสอบโหนดและเบราว์เซอร์ หากต้องการดำเนินการ ให้รัน npm run test:all
ในไดเร็กทอรีราก
ใบอนุญาตเอ็มไอที
โครงการนี้ได้นำหลักจรรยาบรรณของ Microsoft Open Source มาใช้ สำหรับข้อมูลเพิ่มเติม โปรดดูคำถามที่พบบ่อยเกี่ยวกับจรรยาบรรณหรือติดต่อ [email protected] หากมีคำถามหรือความคิดเห็นเพิ่มเติม
สนใจติดต่อ
MICROSOFT, โลโก้ Microsoft และ MAKECODE เป็นเครื่องหมายการค้าจดทะเบียนของ Microsoft Corporation สามารถใช้เพื่อวัตถุประสงค์ที่อธิบายไว้ในและสอดคล้องกับแนวทางเครื่องหมายการค้าและแบรนด์ของ Microsoft ที่เผยแพร่ที่ https://www.microsoft.com/en-us/legal/intellectualproperty/trademarks/usage/general.aspx เท่านั้น หากการใช้งานไม่ครอบคลุมอยู่ในแนวทางที่เผยแพร่ของ Microsoft หรือคุณไม่แน่ใจ โปรดปรึกษาที่ปรึกษากฎหมายของคุณหรือทีม MakeCode ([email protected])