สิ่งตีพิมพ์ในหัวข้อ 'elixir'
ระบบส่วนประกอบเอนทิตีใน Elixir
Entity-Component-System (ECS) เป็นรูปแบบการออกแบบสถาปัตยกรรมแบบกระจายและจัดองค์ประกอบซึ่งส่วนใหญ่ใช้ในการพัฒนาเกม ช่วยให้สามารถแยกพฤติกรรมเฉพาะโดเมนได้อย่างยืดหยุ่น ซึ่งเอาชนะข้อเสียหลายประการของการสืบทอดเชิงวัตถุแบบดั้งเดิม
Elixir คือภาษาแบบไดนามิกและใช้งานได้จริงซึ่งสร้างขึ้นจาก Erlang VM ซึ่งออกแบบมาเพื่อสร้างแอปพลิเคชันที่ปรับขนาดได้และบำรุงรักษาได้
ในบทความนี้ ค้นพบว่าเราสามารถใช้ทั้ง ECS และ Elixir..
การเขียน Lispex ล่าม Lisp ใน Elixir
แรงจูงใจ
ฉันเริ่มทำงานกับ Elixir เมื่อสองสามเดือนก่อน แต่ไม่เคยเจาะลึกถึงความซับซ้อนของภาษาเลย Elixir เป็นภาษาที่ค่อนข้างใหม่ซึ่งทำงานบน BEAM ซึ่งเป็น VM เดียวกันกับที่รัน Erlang ดังนั้นจึงสืบทอดคุณสมบัติทั้งหมดที่ทำให้ Erlang ดีเยี่ยม เช่น ความทนทานต่อข้อผิดพลาด ความพร้อมใช้งานสูง และการประมวลผลแบบกระจาย อุปสรรคเดียวในการเข้าสู่ Erlang สำหรับนักพัฒนาส่วนใหญ่คือระบบนิเวศและไวยากรณ์ของภาษา Elixir..
คำถามในหัวข้อ 'elixir'
จะถ่ายทอดข้อความจาก Phoenix Controller ไปยัง Channel ได้อย่างไร?
มีวิธีถ่ายทอดข้อความไปยังช่องจากภายนอกช่องนั้นหรือไม่?
อาจมีบางอย่างเช่น Channel.broadcast topic, event, data ?
ฉันเห็นบางอย่างเช่นนี้ ที่นี่ แต่เวอร์ชันสุดท้ายของ Phoenix.Channel.broadcast/3 (ณ วันนี้) ใช้ซ็อกเก็ตที่แสดงถึงช่อง และหัวข้อ
10072 มุมมอง
schedule
23.11.2023
Elixir - ไม่สามารถเรียกใช้ฟังก์ชันระยะไกลภายในการแข่งขันได้
ฉันกำลังฝึกปฏิบัติเกี่ยวกับการออกกำลังกาย และไม่เข้าใจว่าทำไมฉันจึงได้รับข้อผิดพลาดต่อไปนี้:
(CompileError) anagram.exs:19: cannot invoke remote function String.codepoints/1 inside match
(stdlib) lists.erl:1353: :lists.mapfoldl/3
(stdlib)...
3163 มุมมอง
schedule
16.11.2023
คุณจะกำหนดค่าไฟล์บันทึกที่เขียนลงใน rel/myproject/log ได้อย่างไร
ฉันได้สร้างโปรเจ็กต์ Elixir และเผยแพร่ด้วย EXRM เมื่อฉันคัดลอกไปยังเซิร์ฟเวอร์เป้าหมายและเริ่มต้นระบบ ฉันดีใจที่พบว่าระบบจับเอาต์พุตคอนโซลในไฟล์ เช่น "erlang.log.1" ในไดเร็กทอรีบันทึกอยู่แล้ว ดูเหมือนว่าจะปล่อยให้ไฟล์ขยายได้ถึง 10k...
157 มุมมอง
schedule
26.11.2023
จะส่งผลลัพธ์ของ Enum.join ไปยัง Regex.scan ใน Elixir ได้อย่างไร
จากเอกสารบนตัวดำเนินการไปป์ ฉันเห็นสัญลักษณ์ " |> ที่ใช้ในตัวอย่างด้านบนคือตัวดำเนินการไปป์: มันเพียงรับเอาต์พุตจากนิพจน์ทางด้านซ้ายและส่งผ่านเป็นอาร์กิวเมนต์แรกไปยังการเรียกใช้ฟังก์ชันทางด้านขวา ด้านข้าง."....
1177 มุมมอง
schedule
21.11.2023
จะรับมือกับการเตือนแบบรวมกลุ่มได้อย่างไร?
มีกลุ่ม def สองสามกลุ่ม และเมื่อฉันเขียน @spec จะมีคำเตือนด้วย warning: clauses for the same def should be grouped together, def foo/2 was previously defined มีวิธีแก้ไขปัญหาใด ๆ หรือไม่?
แม้ว่าคำเตือนจะมีประโยชน์ แต่ฉันอยากให้มันเพิกเฉย @spec...
411 มุมมอง
schedule
06.11.2023
วิธีใช้แฟรกเมนต์เพื่อส่งคืนค่าเมื่ออัปเดตใน Ecto
ฉันต้องทำการอัปเดตในฐานข้อมูลและส่งกลับค่า ซึ่งสามารถทำได้โดยใช้คีย์เวิร์ด RETURNING ใน PostgreSQL
เนื่องจากสิ่งนี้ไม่รองรับโดย ecto ฉันเดาว่าฉันต้องใช้ แฟรกเมนต์ แต่ฉันไม่แน่ใจว่าต้องทำอย่างไร นี่คือสิ่งที่ฉันมี:
query = from(v in...
1399 มุมมอง
schedule
09.12.2023
บันทึกที่อยู่ IP จริงเกี่ยวกับการใช้ฟีนิกซ์ใน nginx อัปสตรีม
ฉันมีแอปฟีนิกซ์ที่อัปสตรีมเช่นนั้น:
upstream my_app {
server localhost:3001;
}
server {
root /var/www/my_app/priv/static;
listen 80;
location / {
proxy_pass http://my_app;
}
}
ฉันต้องการติดตามที่อยู่ IP จริง...
533 มุมมอง
schedule
03.11.2023
วิธีสร้างไฟล์ exe จากโปรเจ็กต์น้ำอมฤต
ฉันเพิ่งเคยใช้ Elixir และกำลังพยายามสร้างแอปบรรทัดคำสั่งสำหรับ Windows ฉันต้องการปรับใช้แอปเป็นไฟล์ exe ที่สามารถเรียกใช้จากพรอมต์คำสั่ง ฉันต้องการให้ผู้ใช้ไม่จำเป็นต้องติดตั้ง erlang เพื่อเรียกใช้แอปหากเป็นไปได้
ฉันค้นหาทุกที่ใน Google...
2404 มุมมอง
schedule
29.11.2023
ไม่มีฟังก์ชันประโยค แต่ดูเหมือนว่าจะมีแน่นอน?
ฉันขอขอบคุณความช่วยเหลือในเรื่องนี้ นี่เป็นสิ่งแรกที่ฉันพยายามทำกับ Elixir และมันทำให้ฉันผิดหวัง
ดังนั้นความตั้งใจของฉันคือการจับภาพจาก STDIN ซ้ำแล้วซ้ำเล่า โดยแยกวิเคราะห์อินพุตของผู้ใช้เป็นตัวเลข เมื่อผู้ใช้กด Enter โดยไม่ต้องป้อนตัวเลข ในที่สุด...
47 มุมมอง
schedule
30.12.2023
การจับคู่รูปแบบไบนารี Elixir ของจำนวนเต็มหรือแปลงจำนวนเต็มเป็นไบนารี
วันนี้ฉันเพิ่งเริ่มเรียน Elixir และติดอยู่กับการจับคู่รูปแบบของ Integer
ฉันรู้ดีว่าจะจับคู่ ไบนารี่ อย่างไร แต่ไม่พบวิธีจับคู่ จำนวนเต็ม เช่น แยกไบต์สูงออกจากจำนวนเต็มธรรมดา ฉันต้องแปลงจำนวนเต็มเป็นไบนารี่หรือเขียนฟังก์ชันที่รับไบต์สูงจาก...
4239 มุมมอง
schedule
30.12.2023
ตั้งค่าการประทับเวลาเป็นไมโครวินาทีใน Phoenix ด้วย MySQL
ฉันประสบปัญหาในการใช้ Phoenix 1.2, ecto 2.1.4, mariaex 0.8.2, mysql 5.6.33 — ฉันต้องการจัดเก็บการประทับเวลาเป็นไมโครวินาที แต่คอลัมน์ที่สร้างโดยฟังก์ชัน timestamps/1 นั้นเป็น datetime มาตรฐาน ซึ่งจะปัดเศษ ถึงวินาที ใน เอกสาร...
202 มุมมอง
schedule
02.12.2023
(Protocol.UndefineError) โปรโตคอลนับไม่ได้นำมาใช้สำหรับ 3
ฉันกำลังพยายามคืนจำนวนเงินรวมหลังจากทำความเข้าใจแล้ว นี่คือสิ่งที่ฉันพยายาม:
range = 1..999
multiple_of_3_or_5? = fn(n) -> (rem(n, 3) == 0 || rem(n, 5) == 0) end
for n <- range, multiple_of_3_or_5?.(n),
do: Enum.reduce(n, 0, fn(x, y)...
698 มุมมอง
schedule
02.01.2024
ผลลัพธ์ที่น่าแปลกใจจากอัลกอริธึม Elixir แบบเรียกซ้ำ [ซ้ำกัน]
ฉันกำลังเริ่มร่างโครงสร้างของอัลกอริธึมแบบเรียกซ้ำที่จะสร้างรายการที่อยู่ติดกันของจุดตัดเลขฐานสิบหกในบอร์ดเกมสไตล์ Settlers of Catan อย่างไรก็ตาม นั่นไม่ใช่ปัญหาเร่งด่วนที่ฉันต้องแก้ไข
ปัญหาที่ฉันพบสามารถพบได้ในผลลัพธ์ที่ฉันวางไว้ใต้ตัวอย่างโค้ด...
46 มุมมอง
schedule
05.11.2023
โครงสร้าง Elixir ไม่สามารถเปลี่ยนรูปได้จริงหรือ? [ทำซ้ำ]
ขณะนี้ฉันกำลังศึกษา Elixir และกำลังอ่าน " การพัฒนาเว็บเชิงฟังก์ชันด้วย Elixir, OTP และ Phoenix " ซึ่ง imo เป็นหนังสือที่ยอดเยี่ยม เมื่อทำงานที่บท state machine ฉันได้รหัสต่อไปนี้:
defmodule IslandsEngine.Rules do
alias __MODULE__
defstruct...
300 มุมมอง
schedule
10.11.2023
ฉันสามารถเพิ่มการมอบหมายให้กับ "ซ็อกเก็ตหลัก" หลังจากสร้างการเชื่อมต่อแล้วได้หรือไม่?
ตามที่อธิบายโดย โพสต์นี้ เมื่อไคลเอ็นต์เชื่อมต่อกับเซิร์ฟเวอร์เป็นครั้งแรก “ซ็อกเก็ต/กระบวนการหลัก” จะถูกสร้างขึ้นและเก็บการกำหนดไว้ ต่อมา เมื่อลูกค้าเข้าร่วมช่อง/หัวข้อเฉพาะ...
31 มุมมอง
schedule
10.12.2023
รูปแบบที่ตรงกับแผนที่ภายในแผนที่ในส่วนหัวของฟังก์ชัน
ขณะนี้ฉันมีอินสแตนซ์ของพารามิเตอร์ที่มีลักษณะดังนี้:
params: %{
"continent" => %{
"deleted_date" => nil,
"name" => "Asia",
"to_be_deleted" => true
},
"id" => "16"
},...
86 มุมมอง
schedule
31.10.2023
เอ็กโต้ | วิธีรับโมดูลสคีมาทั้งหมดในแอปพลิเคชัน
ฉันกำลังพยายามสร้างงานมิกซ์สำหรับระบบอัตโนมัติบางนั่งร้าน และฉันต้องการรับรายการชื่อโมดูลทั้งหมดในแอปพลิเคชันซึ่งมีการใช้งานสคีมาและสคีมาแบบฝัง ในที่สุดฉันต้องการรายการสคีมาทั้งหมดที่มีคำจำกัดความของฟิลด์ ไม่ใช่แค่ชื่อโมดูล เราจะได้มันมาหรือไม่...
415 มุมมอง
schedule
19.12.2023
โรงกลั่นล้มเหลวพร้อมข้อความคูณโมดูลที่กำหนด: 'Elixir.Telemetry'
เมื่อฉันพยายามอัปเกรดแอปพลิเคชัน Phoenix ที่ทำงานอยู่โดยใช้ Distillery บิลด์ล้มเหลวโดยมีข้อความเหล่านี้:
Generated teamgenik app
==> Assembling release..
==> Building release my_app:0.10.7 using environment prod
==> Generated .appup for...
143 มุมมอง
schedule
22.12.2023
เส้นทางไลบรารีสำหรับกระบวนการคอมไพล์แบบมิกซ์
หลังจากย้ายจากเครื่องมือควบคุมเวอร์ชัน brew ไปเป็น asdf สำหรับ Elixir และ Erlang ฉันยังคงไม่สามารถรวบรวมโปรเจ็กต์เก่าของฉันได้: ในกระบวนการคอมไพล์มันพยายามอ้างถึงไฟล์ Cellar lib ของ Brew ที่ไม่มีอยู่จริง:
MacBook-Pro% mix test
==> gettext...
295 มุมมอง
schedule
13.12.2023
จะทดสอบธุรกรรมฐานข้อมูล async ที่ Elixir.Task ใช้งานได้อย่างไร
ฉันกำลังพยายามแทรกบันทึกในฐานข้อมูลแบบอะซิงโครนัสโดยใช้ Elixir.Task ในตัวควบคุม Phoenix การทดสอบที่ครอบคลุมวิธีการควบคุมนั้น บันทึกข้อยกเว้นว่ามีข้อผิดพลาดในการเชื่อมต่อ DB ( DBConnection.OwnershipError )...
786 มุมมอง
schedule
28.12.2023