เซิร์ฟเวอร์ภาษา PHP ที่ขับเคลื่อนด้วย Rust สำหรับการตอบสนองของโปรแกรมแก้ไขทันที
สัมผัสการจัดทำดัชนีในเวลาน้อยกว่าหนึ่งวินาทีและความฉลาดด้านโค้ดในระดับบรรณาธิการในโปรแกรมแก้ไขที่รองรับ LSP: PHPantom นำบริการ PHP Language Server Protocol ที่รวดเร็วมาสู่ Windows, Linux และ macOS สร้างโดย Anders Jenbo เครื่องมือนี้ให้การวิเคราะห์ประเภทเชิงลึก การแก้ไขที่รับรู้ Laravel และการวินิจฉัยพื้นที่ทำงานในพื้นหลัง มันมุ่งเป้าไปที่นักพัฒนา PHP ที่ต้องการการใช้หน่วยความจำน้อยและการเริ่มต้นที่รวดเร็วในโปรแกรมแก้ไขที่มีน้ำหนักเบาแทนที่จะเป็น IDE เต็มรูปแบบ.
สิ่งที่เซิร์ฟเวอร์ภาษาให้บริการจริงๆ
PHPantom ใช้โปรโตคอลเซิร์ฟเวอร์ภาษาเพื่อให้บริการการเติมโค้ด, ความช่วยเหลือในการเซ็นชื่อ, การเปลี่ยนชื่อ, และการค้นหาสัญลักษณ์ทั่วทั้งพื้นที่ทำงานโดยตรงในโปรแกรมแก้ไขที่พูด LSP เซิร์ฟเวอร์ทำงานเป็นไบนารีแบบสแตนด์อโลนบน Windows และไม่ต้องการการรันไทม์ PHP ในเครื่อง ดังนั้นโปรแกรมแก้ไขเช่น Visual Studio Code, Neovim, และอื่นๆ สามารถเชื่อมต่อได้โดยไม่ต้องมีการพึ่งพาเพิ่มเติม นอกจากนี้ยังอ่านการอนุญาต PHPStan และ Psalm สำหรับการวิเคราะห์สถิติขั้นสูง
มันมีผลต่อทรัพยากรระบบและความตอบสนองอย่างไร
เซิร์ฟเวอร์เขียนด้วย Rust และมุ่งเป้าไปที่การใช้หน่วยความจำต่ำ: การทำงานทั่วไปมักจะอยู่ภายใต้ 60 MB และการจัดทำดัชนีเสร็จสิ้นในเวลาน้อยกว่าหนึ่งวินาทีสำหรับฐานโค้ดขนาดใหญ่ การวินิจฉัยเบื้องหลังและการค้นหาสัญลักษณ์ทำงานในขณะที่คุณแก้ไข ทำให้การเริ่มต้นและเวลาที่พร้อมใช้งานสั้นลง คุณสมบัติเหล่านี้ทำให้เครื่องมือทำงานร่วมกับกระบวนการเดสก์ท็อปอื่นๆ ด้วยการใช้ CPU และ RAM ที่น้อยในระหว่างการพัฒนาปกติ
มันปลอดภัยที่จะรันบนเครื่องพัฒนาหรือไม่?
การแจกจ่ายเป็นไฟล์ปฏิบัติการแบบสแตนด์อโลนสำหรับ Windows ซึ่งลบความจำเป็นในการติดตั้งรันไทม์ภายนอก เซิร์ฟเวอร์ทำการวิเคราะห์แบบอ่านอย่างเดียวของไฟล์ในพื้นที่ทำงานและเสนอการวินิจฉัยโดยไม่เขียนไฟล์โปรเจกต์ และการแก้ไขที่รับรู้กรอบงานจัดการ Laravel Eloquent และ Blade templates ภายใน นักพัฒนาสร้างไบนารีเพื่อหลีกเลี่ยงการพึ่งพารันไทม์เพิ่มเติม ซึ่งลดพื้นที่ผิวสำหรับปัญหาการติดตั้ง
ใครควรใช้เครื่องมือนี้และมีการแลกเปลี่ยนอะไรบ้าง
เครื่องมือนี้เหมาะสำหรับนักพัฒนา PHP ที่ให้ความสำคัญกับการรวมโปรแกรมแก้ไขอย่างรวดเร็วและฟีเจอร์ภาษาสมัยใหม่เช่น generics และ intersection types มันมุ่งเน้นไปที่การวิเคราะห์สถิติและบริการโปรแกรมแก้ไขมากกว่าการให้ประสบการณ์ IDE ที่รวมเข้าด้วยกัน; ทีมที่ต้องการฟีเจอร์เฉพาะ IDE นอกเหนือจากขอบเขต LSP อาจพบว่าความสามารถเหล่านั้นขาดหายไป นักพัฒนาปรับปรุงเครื่องมือรอบๆ การอนุญาตขั้นสูงและการสนับสนุน Laravel สำหรับการทำงาน PHP สมัยใหม่
คำแนะนำที่เป็นประโยชน์และข้อจำกัดหลัก
สำหรับนักพัฒนาที่ต้องการบริการภาษาที่มีค่าใช้จ่ายต่ำ PHPantom มอบการเริ่มต้นที่รวดเร็ว การใช้หน่วยความจำที่น้อย และการวิเคราะห์ประเภทขั้นสูงในโปรแกรมแก้ไขที่รองรับ LSP ข้อจำกัดหลักคือขอบเขต: มันให้ฟังก์ชันการทำงานของเซิร์ฟเวอร์ภาษาแทนที่จะเป็นฟังก์ชันเสริม IDE เต็มรูปแบบที่อยู่นอก LSP นักพัฒนาที่ต้องการการตอบสนองของโปรแกรมแก้ไขอย่างรวดเร็วและคำแนะนำแบบสถิตที่แข็งแกร่งจะพบว่ามันเป็นตัวเลือกที่มุ่งเน้นและมีประสิทธิภาพ; ผู้ที่ต้องการการรวมเฉพาะ IDE ควรประเมินว่า LSP ครอบคลุมการทำงานของพวกเขาหรือไม่.