แอปพลิเคชัน Where To Work เป็นเครื่องมือสนับสนุนการตัดสินใจเพื่อช่วยจัดลำดับความสำคัญของความพยายามในการอนุรักษ์สำหรับองค์กรอนุรักษ์ธรรมชาติแห่งแคนาดา โดยมีอินเทอร์เฟซแบบโต้ตอบสำหรับดำเนินการฝึกวางแผนการอนุรักษ์อย่างเป็นระบบ และใช้อัลกอริธึมการหาค่าเหมาะที่สุดทางคณิตศาสตร์เพื่อสร้างวิธีแก้ปัญหา
ใบสมัครสามารถใช้ได้ออนไลน์ โปรดทราบว่าคุณต้องใช้ Google Chrome เพื่อให้มันทำงานได้
แอปพลิเคชันนี้มีให้บริการในรูปแบบบริการออนไลน์ที่จัดทำโดย Nature Conservancy of Canada หากคุณต้องการรันแอพพลิเคชั่นบนคอมพิวเตอร์ของคุณเอง คุณสามารถรันแอพพลิเคชั่นได้โดยใช้สภาพแวดล้อมการประมวลผลเชิงสถิติ R, Docker หรือ Docker Compose
หากต้องการใช้วิธีนี้ คุณจะต้องติดตั้งสภาพแวดล้อมการประมวลผลทางสถิติ R หลังจากเสร็จสิ้นการติดตั้ง คุณสามารถติดตั้งแอปพลิเคชันได้โดยใช้รหัส R ต่อไปนี้:
if ( ! require( remotes )) install.packages( " remotes " )
remotes :: install_github( " NCC-CNC/ wheretowork " )
จากนั้นคุณสามารถใช้รหัส R ต่อไปนี้เพื่อเริ่มแอปพลิเคชันและเปิดในเว็บเบราว์เซอร์ของคุณ:
wheretowork :: run_app()
หากต้องการใช้วิธีนี้ คุณจะต้องติดตั้ง Docker Engine (ดูคำแนะนำที่นี่) หลังจากทำตามขั้นตอนนี้เสร็จแล้ว คุณสามารถติดตั้งแอปพลิเคชันจากที่เก็บ DockerHub โดยเฉพาะ โปรดใช้คำสั่งระบบต่อไปนี้:
docker run -dp 3838:3838 --name wheretowork -it naturecons/ wheretowork :latest
จากนั้นคุณสามารถดูแอปพลิเคชันได้โดยเปิดลิงก์ต่อไปนี้ใน Google Chrome: http://localhost:3838 หลังจากคุณใช้งานแอพพลิเคชั่นเสร็จแล้ว คุณสามารถยุติมันได้โดยใช้คำสั่งระบบต่อไปนี้ โปรดทราบว่าหากคุณไม่ยุติแอปพลิเคชันเมื่อคุณใช้งานเสร็จแล้ว แอปพลิเคชันจะทำงานต่อไปในเบื้องหลัง
docker rm -f wheretowork
หากต้องการใช้วิธีนี้ คุณจะต้องติดตั้ง Docker Engine (ดูคำแนะนำที่นี่) และ Docker Compose (ดูคำแนะนำที่นี่) หลังจากติดตั้งทั้งสองโปรแกรมแล้ว คุณสามารถติดตั้งแอปพลิเคชันได้โดยการโคลนพื้นที่เก็บข้อมูลนี้ จากนั้นใช้คำสั่งระบบต่อไปนี้:
docker-compose pull
docker-compose up -d
จากนั้นคุณสามารถดูแอปพลิเคชันได้โดยเปิดลิงก์ต่อไปนี้ใน Google Chrome: http://localhost:3838 หลังจากคุณใช้งานแอพพลิเคชั่นเสร็จแล้ว คุณสามารถยุติมันได้โดยใช้คำสั่งระบบต่อไปนี้ โปรดทราบว่าหากคุณไม่ยุติแอปพลิเคชันเมื่อคุณใช้งานเสร็จแล้ว แอปพลิเคชันจะทำงานต่อไปในเบื้องหลัง
docker-compose down
แอปพลิเคชันนี้เป็นเว็บแอปพลิเคชัน Shiny ที่พัฒนาโดยใช้สภาพแวดล้อมการคำนวณเชิงสถิติ R โดยเฉพาะอย่างยิ่งมันใช้กรอบงาน golem
ซึ่งหมายความว่าแอปพลิเคชันนั้นเป็นแพ็คเกจ R ที่มีโค้ดสำหรับกำหนดและเปิดใช้แอปพลิเคชันอย่างมีประสิทธิภาพ (ดูรายละเอียดเพิ่มเติมที่นี่) ไฟล์โค้ด R (อยู่ในไดเร็กทอรี ./R
) ได้รับการจัดระเบียบโดยใช้หลักการตั้งชื่อต่อไปนี้:
app_*
: กำหนดเว็บแอปพลิเคชัน:app_config.R
: นำเข้าการตั้งค่าการกำหนดค่าapp_global.R
: เริ่มต้นแอปพลิเคชัน มันทำงานคล้ายกับไฟล์ global.R
ในแอปพลิเคชั่น Shiny ทั่วไปapp_server.R
: กำหนดตรรกะฝั่งเซิร์ฟเวอร์ (แบ็คเอนด์) สำหรับแอปพลิเคชัน มันมีบทบาทคล้ายกับไฟล์ server.R
ในแอปพลิเคชัน Shiny ทั่วไปapp_ui.R
: กำหนดอินเทอร์เฟซผู้ใช้ (ปลายแบบอักษร) สำหรับแอปพลิเคชัน มันมีบทบาทคล้ายกับไฟล์ ui.R
ในแอปพลิเคชัน Shiny ทั่วไปserver_*
: กำหนดส่วนประกอบที่ใช้ในการประกอบตรรกะฝั่งเซิร์ฟเวอร์สำหรับแอปพลิเคชันui_
*: กำหนดฟังก์ชันที่ใช้ในการสร้างองค์ประกอบ HTML โดยทางโปรแกรมสำหรับส่วนหน้าของแอปพลิเคชันclass_*
: กำหนดคลาสการเขียนโปรแกรมเชิงวัตถุที่ใช้ในส่วนหลังของแอปพลิเคชัน คลาสเหล่านี้ถูกนำไปใช้งานโดยใช้ระบบคลาส R6fct_*
: กำหนดฟังก์ชัน R ที่ใช้ในส่วนหลังของแอปพลิเคชัน ไฟล์เหล่านี้มีโค้ดที่ใช้ในการวิเคราะห์และจัดการคลาสwidget_*
: กำหนดวิดเจ็ตแบบกำหนดเองที่ใช้โดยแอปพลิเคชัน วิดเจ็ตเหล่านี้ถูกนำไปใช้งานโดยใช้กรอบงาน htmlwidgets
utils_*
: กำหนดฟังก์ชัน R ของยูทิลิตี้ที่ใช้ในส่วนหลังของแอปพลิเคชัน ขอบคุณสำหรับการตรวจสอบแอปพลิเคชันนี้ หากคุณพบข้อบกพร่องของซอฟต์แวร์ใดๆ (เช่น แอปพลิเคชันหยุดทำงาน พฤติกรรมที่ไม่คาดคิด หรือการสะกดผิด) โปรดโพสต์ไว้ในเครื่องมือติดตามปัญหา หากคุณมีคำถามใด ๆ เกี่ยวกับการใช้แอปพลิเคชันนี้ โปรดติดต่อ Dr. Richard Schuster ([email protected]) หรือ Prof. Joe Bennett ([email protected])