วิศวกรรมซอฟต์แวร์

ถาม - ตอบสำหรับมืออาชีพนักวิชาการและนักเรียนที่ทำงานในวงจรการพัฒนาระบบ

2
หากต้องการรวม ID ทรัพยากรในส่วนของข้อมูลหรือมาจาก URI
การออกแบบ API เราได้พบกับคำถามว่า PUT payload ควรมี ID ของทรัพยากรที่กำลังอัปเดตหรือไม่ นี่คือสิ่งที่เรามีอยู่ในปัจจุบัน: PUT /users/123 Payload: {name: "Adrian"} รหัสเส้นทางของเราจะดึง ID จาก URI และดำเนินการต่อด้วยการอัปเดต ผู้ใช้คนแรกของ API ของเราตั้งคำถามว่าทำไมเราไม่อนุญาต ID ในส่วนของข้อมูล: PUT /users/123 Payload: {id: 123, name: "Adrian"} เหตุผลที่เราไม่อนุญาตเพราะเป็นรหัสซ้ำใน payload และ URI เมื่อคิดถึงสิ่งนี้อีกแล้วเรากำลังเชื่อมโยงทรัพยากรเข้ากับ URI หาก URI ไม่มี ID จะต้องแก้ไขส่วนของข้อมูล: PUT /no/id/here Payload: {name: "Adrian"} < What user??? …
13 rest  resources 

2
วิธีคำนวณการหมุนรูปได้อย่างมีประสิทธิภาพ
ฉันมีรูปที่แสดงผ่านเมทริกซ์ของไบต์ (เมทริกซ์บิตแมปเหมือน) ตัวอย่างรูปที่Picture 1ถูกแสดงบน เป้าหมายคือการหามุมการหมุนที่ดีที่สุดของให้บางรูป เมื่อรูปถูกหมุนด้วยมุมที่ดีที่สุดสี่เหลี่ยมที่ขนานกับแกน X และ Y และจารึกรูปที่มีพื้นที่ที่เล็กที่สุด รูปสี่เหลี่ยมที่จารึกรูปจะแสดงเป็นสีเทาอ่อนบนรูปภาพ ในการPicture 2, คุณจะเห็นว่าการหมุนในอุดมคติของรูปเป็นประมาณ 30 องศาตามเข็มนาฬิกา ทีนี้ฉันรู้ว่าอัลกอริธึมจะหามุมนี้อย่างไร แต่สำหรับฉันมันไม่มีประสิทธิภาพมาก มันจะเป็นเช่นนี้: วนมุมจาก 0 ถึง 45 สำหรับมุมปัจจุบันสำหรับทุกจุดตัวเลขให้คำนวณตำแหน่งใหม่หมุนได้ ค้นหาขอบเขตของสี่เหลี่ยมผืนผ้าที่มีรูป (ต่ำสุดและสูงสุด x, y) และลงทะเบียนถ้ามันเป็นการจับคู่ที่ดีที่สุด มุมถัดไป นี่เป็นวิธีการบังคับแบบเดรัจฉานและทำงานได้ดีและรวดเร็วสำหรับคนร่างเล็ก อย่างไรก็ตามฉันต้องทำงานกับตัวเลขที่มีมากถึง 10 ล้านคะแนนและอัลกอริทึมของฉันช้า อัลกอริทึมที่ดีสำหรับปัญหานี้คืออะไร

2
การทำงานพร้อมกันในแง่ดีต่อวัตถุหมายถึงความเป็นอนุกรมหรือไม่หากธุรกรรมนั้นจะไม่ขยายวัตถุหลายรายการ
รับระบบซึ่งให้: การควบคุมพร้อมกันในแง่ดีที่สุด / การกำหนดเวอร์ชันต่อวัตถุ (ใช้ CAS - ตรวจสอบและตั้งค่า) ธุรกรรมที่ไม่จำเป็นต้องมีการขยายเพิ่มเติมจากวัตถุเดียว การแยก Snapshot ระบบนี้ถือว่าเป็นอนุกรมหรือไม่ จากการแยก Snapshot ในการเขียนที่ผิดปกติธุรกรรมสองรายการ (T1 และ T2) พร้อมกันอ่านชุดข้อมูลที่ทับซ้อนกัน (เช่นค่า V1 และ V2) ทำการอัปเดตร่วมกัน (เช่นอัปเดต T1 V1, อัปเดต V2 V2) และในที่สุดก็กระทำพร้อมกัน การอัปเดตดำเนินการโดยผู้อื่น เป็นระบบที่ต่อเนื่องกันได้ความผิดปกติดังกล่าวจะเป็นไปไม่ได้เนื่องจาก T1 หรือ T2 จะต้องเกิดขึ้น "เป็นครั้งแรก" และจะเห็นได้จากอีกคนหนึ่ง ในทางตรงกันข้ามการแยกสแน๊ปช็อตอนุญาตให้เขียนความผิดปกติได้ เป็นตัวอย่างที่เป็นรูปธรรมลองนึกภาพ V1 และ V2 เป็นสองยอดดุลที่จัดขึ้นโดยบุคคลคนเดียว Phil ธนาคารจะอนุญาตให้ V1 หรือ V2 …

2
แคลคูลัสแลมบ์ดากับภาษาการเขียนโปรแกรมมีความสัมพันธ์กันอย่างไร? [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันเริ่มปีแรกของฉัน (ในวิทยาลัย) ในวิทยาการคอมพิวเตอร์ในปีหน้าและฉันเขียนส่วนใหญ่ใน C (ถ้าเป็นเรื่อง) ฉันได้ลองค้นหาแล้ว แต่สิ่งที่ฉันพบส่วนใหญ่ถือว่ามีความรู้เกี่ยวกับแลมบ์ดาแคลคูลัส ทำไมแคลคูลัสแลมบ์ดาจึงถูกพิจารณาว่ามีประโยชน์มากกว่าแคลคูลัสแบบแปรผันเพียงตัวเดียวในการเริ่มโปรแกรม มีความสัมพันธ์ระหว่างการแสดงออกแลมบ์ดากับโปรแกรมการทำงานหรือไม่? มันเป็นงานของ Alonzo Church ในแลมบ์ดาแคลคูลัสที่มีอิทธิพลต่อการพัฒนาภาษาการเขียนโปรแกรมหรือไม่? ทุกคนที่อยู่นอกโรงเรียนยังคงคึกคักเกี่ยวกับเรื่องนี้และฉันก็ไม่รู้เลยว่าพวกเขาจะพูดถึงอะไรถึงแม้ว่าฉันกระตือรือร้นที่จะเรียนรู้และดูว่ามันเกี่ยวข้องโดยตรงกับการเขียนโปรแกรมและความเข้าใจภาษาโปรแกรมของฉันอย่างไร

2
"ตรรกะการนำเสนอ" คืออะไรและยอมรับได้ในมุมมองเท่าใด
ในเว็บแอปพลิเคชันของฉันฉันต้องจัดเตรียมแบบฟอร์มสำหรับการสร้างและแก้ไข แบบฟอร์มสำหรับการสร้างและการแก้ไขมีความแตกต่างเล็กน้อยดังนั้นฉันจึงคิดที่จะทำสิ่งนี้ในมุมมองของฉัน: <form> // a lot of htnl goes here @if (editing) { // some more fields shown in edit mode } @if(!editing) { // some stuff shown in create mode } ฉันพยายามไม่ใส่ifข้อความใด ๆในมุมมองของฉัน แต่ครั้งนี้ฉันไม่เห็นตัวเลือกอื่นนอกจากคัดลอกส่วนใหญ่ของ HTML ในสองแห่งซึ่งฉันไม่ต้องการทำ นี่เป็น "ตรรกะการนำเสนอ" ที่เหมาะสมหรือไม่และมีตัวเลือกอื่น ๆ อีกหรือไม่

1
กลยุทธ์การทดสอบเกม
ฉันได้รับเกมการศึกษาทางเว็บ ปีที่ผ่านมาฉันได้ทำงานเพื่อรักษาเสถียรภาพโค้ดและเพิ่มคุณสมบัติใหม่ ตรรกะส่วนใหญ่อยู่ใน Front-end ดังนั้นการทดสอบยูนิตส่วนหลังจึงมีประโยชน์ครอบคลุมรหัสเล็กน้อย เกมดังกล่าวได้มาถึงจุดที่มันเริ่มซับซ้อน มีสองโหมดที่แตกต่างกันสำหรับแต่ละเกมและเกมจะทำงานแตกต่างกันไปตามโหมด นอกจากนี้ยังมีธงต่าง ๆ ที่ส่งผลต่อการเล่นเกม ฉันเป็นนักพัฒนาแอพพลิเคชั่นมานานกว่า 10 ปีและนี่ทำให้ฉันงุนงง ในโลกธุรกิจอัลกอริทึมจะทำหน้าที่ในลักษณะเดียวกันเสมอ ฉันจะเขียนการทดสอบหน่วยสำหรับอัลกอริทึมฉันจะคาดหวังค่า 42 และมันจะผิดพลาดถ้าฉันไม่ได้รับค่านั้น เมื่อพูดถึงเกมฉันหลงทาง ฉันจะทดสอบพวกเขาได้อย่างไร ฉันมีผู้ทดสอบให้ฉัน ฉันสามารถใช้เวลาเขียนแบบทดสอบหน่วย ผู้ทดสอบ ... ไม่น่าเชื่อถือ พวกเขาไม่ได้ดีที่สุดในการขจัดปัญหาและฉันไม่ได้ให้ทิศทางที่ดีที่สุดแก่พวกเขา ใช้เวลาไม่นานในการทดสอบการปล่อยและการรวมกันของเกมทุกครั้งฉันจะใช้มันเป็นทรัพยากรได้อย่างไร การทดสอบหน่วยดู จำกัด เนื่องจากตรรกะส่วนใหญ่เป็นจาวาสคริปต์ (และฉันรับรหัสสปาเก็ตตี้) ฉันสามารถใช้ชุดส่วนหน้าเช่น Cucumber หรือซีลีเนียมเพื่อให้แน่ใจว่าคุณสมบัติบางอย่างทำงานได้ นั่นเป็นกลยุทธ์ที่ดีที่สุดเหรอ? บริษัท เกมทำการทดสอบเกมอย่างไร ฉันได้อ่านคำถาม " ทดสอบการพัฒนาเพื่อรองรับเกมที่ซับซ้อน " (ท่ามกลางเกมอื่น ๆ ในไซต์) แต่ไม่ได้กล่าวถึงสิ่งที่ฉันกำลังมองหา ฉันขอกลยุทธ์ไม่ใช่ตัวอย่างเฉพาะของวิธีทดสอบ

2
ความพยายามในการลบ Python GIL ก่อนหน้านี้ส่งผลให้ประสิทธิภาพไม่ดี: เพราะอะไร
โพสต์นี้จากผู้สร้าง Python Guido Van Rossum กล่าวถึงความพยายามในการลบ GIL ออกจาก Python: สิ่งนี้เคยลองมาแล้วด้วยผลลัพธ์ที่น่าผิดหวังซึ่งเป็นเหตุผลว่าทำไมฉันถึงลังเลที่จะใช้ความพยายามอย่างมากกับตัวเอง ในปี 1999 Greg Stein (กับ Mark Hammond?) ผลิต Python หนึ่งตัว (1.5 ฉันเชื่อ) ที่เอา GIL ออกมาแทนที่ด้วยการล็อกอย่างละเอียดในโครงสร้างข้อมูลที่ไม่แน่นอนทั้งหมด เขายังส่งแพตช์ที่ลบการเชื่อมโยงจำนวนมากกับโครงสร้างข้อมูลที่ไม่แน่นอนในระดับโลกซึ่งฉันยอมรับ อย่างไรก็ตามหลังจากการเปรียบเทียบมันแสดงให้เห็นว่าแม้บนแพลตฟอร์มที่มีการล็อกแบบเร็วที่สุด (Windows ในเวลานั้น) มันทำให้การประมวลผลแบบเธรดเดี่ยวช้าลงเกือบสองเท่าซึ่งหมายความว่าบน CPU สองตัวคุณสามารถทำงานได้มากขึ้น เสร็จสิ้นโดยไม่มี GIL มากกว่าใน CPU ตัวเดียวที่มี GIL นี่ยังไม่เพียงพอและแพทช์ของเกร็กก็หายไป (ดูการเขียนของ Greg เกี่ยวกับประสิทธิภาพ) ฉันแทบจะไม่สามารถโต้แย้งกับผลลัพธ์ที่แท้จริงได้ แต่ฉันสงสัยว่าทำไมสิ่งนี้ถึงเกิดขึ้น เหตุผลหลักที่การลบ GIL ออกจาก CPython นั้นยากมากก็คือเนื่องจากระบบการจัดการหน่วยความจำการอ้างอิงที่อ้างอิง โปรแกรม …
13 python 

6
ทำไมอาร์เรย์ C ถึงมีความยาวไม่ถึง 0
มาตรฐาน C11 บอกว่าอาร์เรย์ทั้งขนาดและความยาวของตัวแปร "จะมีค่ามากกว่าศูนย์" อะไรคือเหตุผลที่ไม่อนุญาตให้มีความยาว 0 โดยเฉพาะอย่างยิ่งสำหรับอาร์เรย์ที่มีความยาวผันแปรมันเหมาะสมที่จะมีขนาดเป็นศูนย์ทุก ๆ ครั้ง นอกจากนี้ยังมีประโยชน์สำหรับอาร์เรย์แบบสแตติกเมื่อขนาดมาจากแมโครหรือตัวเลือกการกำหนดค่าการสร้าง GCC ที่น่าสนใจ (และเสียงดังกราว) ให้ส่วนขยายที่อนุญาตให้มีอาร์เรย์ความยาวเป็นศูนย์ Java ยังอนุญาตให้มีอาร์เรย์ของความยาวเป็นศูนย์
13 c  array 

6
การตั้งคำถามหนึ่งในข้อโต้แย้งสำหรับกรอบการฉีดพึ่งพา: ทำไมการสร้างกราฟวัตถุอย่างหนัก
กรอบการฉีดที่พึ่งพาเช่น Google Guice ให้แรงจูงใจต่อการใช้งาน (ที่มา ): ในการสร้างวัตถุคุณต้องสร้างการขึ้นต่อกันก่อน แต่ในการสร้างการพึ่งพาแต่ละครั้งคุณจำเป็นต้องมีการพึ่งพาและอื่น ๆ ดังนั้นเมื่อคุณสร้างวัตถุคุณจำเป็นต้องสร้างกราฟวัตถุ การสร้างกราฟวัตถุด้วยมือนั้นเป็นเรื่องยากสำหรับแรงงาน (... ) และทำให้การทดสอบเป็นเรื่องยาก แต่ฉันไม่ได้ซื้ออาร์กิวเมนต์นี้: แม้จะไม่มีกรอบการฉีดพึ่งพาฉันสามารถเขียนชั้นเรียนซึ่งทั้งง่ายต่อการ instantiate และสะดวกในการทดสอบ เช่นตัวอย่างจากหน้าแรงจูงใจของ Guiceสามารถเขียนใหม่ด้วยวิธีต่อไปนี้: class BillingService { private final CreditCardProcessor processor; private final TransactionLog transactionLog; // constructor for tests, taking all collaborators as parameters BillingService(CreditCardProcessor processor, TransactionLog transactionLog) { this.processor = processor; this.transactionLog = …

3
กรอบการฉีดของการพึ่งพามีความเสี่ยงต่อการพึ่งพาหรือไม่
ฉันทำการปรับโครงสร้างระบบที่มีอยู่เพื่อใช้การฉีดแบบพึ่งพาและงานนั้นดำเนินไปอย่างราบรื่น หลังจากนั้นไม่นานฉันก็สังเกตเห็นว่าห้องสมุดในบ้านจำนวนมากขึ้นอยู่กับกรอบ DI ที่ฉันใช้ ดังนั้นโครงการทั้งหมดในขณะนี้ขึ้นอยู่กับกรอบงานของบุคคลที่สาม ฉันเห็นประชดในการแยกการอ้างอิงทั้งหมดโดยทำให้พวกเขาขึ้นอยู่กับห้องสมุดสาธารณะ ปฏิกิริยาแรกของฉันคือการสร้างห้องสมุด wrapper รอบกรอบการพึ่งพา ดังนั้นฉันสามารถแทนที่เฟรมเวิร์กนี้ได้ถ้าจำเป็น หลังจากประเมินงานที่เกี่ยวข้องแล้วฉันก็ตระหนักว่า API ที่ได้นั้นจะคล้ายกับเฟรมเวิร์กที่มีอยู่และทำให้การแทนที่ยากขึ้น ดังนั้นฉันจึงละทิ้งความคิด ความกังวลของฉันคือกรอบ DI ที่ฉันใช้ล้าสมัยหรือจำเป็นต้องเปลี่ยน มีรูปแบบการพัฒนาเมื่อทำงานกับ DI ที่ลดการเชื่อมต่อระหว่างโครงการและกรอบ DI หรือไม่?

2
ความสัมพันธ์ระหว่างโครงสร้างข้อมูลและอัลกอริทึมคืออะไร? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันค้นหาหลักสูตรออนไลน์ที่ดีในโครงสร้างข้อมูล แต่พบว่า Google ยังให้ผลลัพธ์สำหรับหลักสูตรอัลกอริทึมซึ่งพูดเช่น: ในหลักสูตรนี้คุณจะได้เรียนรู้หลักการพื้นฐานหลายประการของการออกแบบอัลกอริทึม: วิธีการแบ่งและพิชิตอัลกอริธึมกราฟ โครงสร้างข้อมูลที่ใช้งานได้ (ฮีปตารางแฮชแผนภูมิการค้นหา)อัลกอริธึมแบบสุ่มและอื่น ๆ [แหล่ง] และ ในตอนท้ายของคลาสนี้คุณจะเข้าใจถึงแนวคิดหลักที่จำเป็นในการคิดอัลกอริธึมใหม่สำหรับกราฟและโครงสร้างข้อมูลที่สำคัญอื่น ๆ และเพื่อประเมินประสิทธิภาพของอัลกอริทึมเหล่านี้ [แหล่ง] และ วิชานี้นำเสนอการสร้างแบบจำลองทางคณิตศาสตร์ของปัญหาการคำนวณ มันครอบคลุมขั้นตอนวิธีการทั่วไปกระบวนทัศน์อัลกอริทึมและโครงสร้างข้อมูลที่ใช้ในการแก้ปัญหาเหล่านี้ [แหล่ง] คำถามของฉันคือ: อัลกอริทึมและโครงสร้างข้อมูลมีการเชื่อมโยงอย่างใกล้ชิดซึ่งหมายความว่าพวกเขาจะต้องเข้าใจร่วมกันหรือเป็นหนึ่งในหัวข้อพื้นฐานมากกว่าอื่น ๆ ? แก้ไข: สำหรับผู้ที่ลงคะแนนเพื่อปิดคำถามนี้คุณช่วยบอกฉันทีว่าทำไมและอาจปรับปรุงได้อย่างไร การเรียนรู้ที่จะถามคำถามที่ถูกต้องเป็นส่วนหนึ่งของกระบวนการศึกษา

6
การจัดการโดยไม่ทราบชื่อพารามิเตอร์ของฟังก์ชันเมื่อคุณเรียกใช้
นี่คือปัญหาการเขียนโปรแกรม / ภาษาที่ฉันต้องการจะได้ยินความคิดของคุณ เราได้พัฒนาข้อตกลงที่โปรแกรมเมอร์ส่วนใหญ่ (ควร) ปฏิบัติตามซึ่งไม่ได้เป็นส่วนหนึ่งของไวยากรณ์ภาษา แต่ให้บริการเพื่อทำให้โค้ดอ่านง่ายขึ้น แน่นอนว่าสิ่งเหล่านี้เป็นเรื่องของการถกเถียงอยู่เสมอ แต่อย่างน้อยก็มีแนวคิดหลักบางประการที่โปรแกรมเมอร์ส่วนใหญ่เห็นด้วย การตั้งชื่อตัวแปรของคุณอย่างเหมาะสมตั้งชื่อโดยทั่วไปทำให้บรรทัดของคุณไม่ยาวเกินเหตุหลีกเลี่ยงการใช้งานที่ยาวนานห่อหุ้มสิ่งต่าง ๆ อย่างไรก็ตามมีปัญหาที่ฉันยังไม่พบใครแสดงความคิดเห็นและอาจเป็นหนึ่งในกลุ่มที่ใหญ่ที่สุด มันเป็นปัญหาของการโต้แย้งที่ไม่ระบุตัวตนเมื่อคุณเรียกใช้ฟังก์ชัน ฟังก์ชันมาจากคณิตศาสตร์โดยที่ f (x) มีความหมายชัดเจนเพราะฟังก์ชั่นมีคำจำกัดความที่เข้มงวดมากขึ้นซึ่งมักจะใช้ในการเขียนโปรแกรม ฟังก์ชั่นที่บริสุทธิ์ในคณิตศาสตร์สามารถทำอะไรได้น้อยกว่ามากในการเขียนโปรแกรมและพวกเขาเป็นเครื่องมือที่สง่างามกว่ามากพวกเขามักจะโต้แย้งเพียงครั้งเดียว หากฟังก์ชั่นนั้นมีหลายอาร์กิวเมนต์มันมักจะเป็นเพียงมิติเพิ่มเติมของโดเมนของฟังก์ชัน กล่าวอีกนัยหนึ่งอาร์กิวเมนต์ไม่สำคัญกว่าอีกอาร์กิวเมนต์ พวกเขาได้รับคำสั่งอย่างชัดเจนแน่นอน แต่นอกจากนั้นพวกเขาไม่มีการจัดลำดับความหมาย ในการเขียนโปรแกรมเรามีอิสระในการกำหนดฟังก์ชั่นและในกรณีนี้ฉันจะเถียงว่ามันไม่ได้เป็นสิ่งที่ดี สถานการณ์ทั่วไปคุณมีฟังก์ชั่นที่กำหนดเช่นนี้ func DrawRectangleClipped (rectToDraw, fillColor, clippingRect) {} ดูคำจำกัดความถ้าฟังก์ชั่นเขียนอย่างถูกต้องมันชัดเจนว่ามันคืออะไร เมื่อเรียกใช้ฟังก์ชั่นนี้คุณอาจมีเวทย์มนตร์ intellisense / code ที่เกิดขึ้นใน IDE / โปรแกรมแก้ไขที่จะบอกคุณว่าอาร์กิวเมนต์ต่อไปควรเป็นอย่างไร แต่เดี๋ยวก่อน. หากฉันต้องการสิ่งนั้นเมื่อฉันกำลังเขียนการโทรจริงๆไม่มีสิ่งที่เราขาดหายไปที่นี่หรือไม่ คนที่อ่านรหัสไม่ได้รับประโยชน์จาก IDE และถ้าพวกเขาข้ามไปที่คำจำกัดความพวกเขาไม่มีความคิดที่สี่เหลี่ยมสองอันที่ผ่านมาเป็นอาร์กิวเมนต์ใช้สำหรับอะไร ปัญหายิ่งไปกว่านั้น หากข้อโต้แย้งของเรามาจากตัวแปรท้องถิ่นบางอย่างอาจมีสถานการณ์ที่เราไม่รู้ด้วยซ้ำว่าข้อโต้แย้งที่สองคืออะไรเพราะเราเห็นชื่อตัวแปรเท่านั้น ยกตัวอย่างบรรทัดโค้ดนี้ DrawRectangleClipped(deserializedArray[0], deserializedArray[1], deserializedArray[2]) …

8
ทำไมเราต้องใช้ div
เช้านี้ในขณะที่ฉันกำลังเขียน html และ haml บางอย่างเกิดขึ้นกับฉันว่าวิธีที่ divs ถูกใช้นั้นไร้สาระ ทำไม divs ไม่ได้บอกเป็นนัย ๆ ? ลองคิดดูถ้านี่: <div class="hero-img"> <img src="http://whatever.com/this.jpg"> </div> นี่คือ: <hero-img> <img src="http://whatever.com/this.jpg"> </hero-img> หากสันนิษฐานว่าเป็นส่วนของ "div class" องค์ประกอบ HTML จะมีความหมายมากขึ้นและสามารถอ่านได้มากขึ้นด้วยแท็กปิดการจับคู่! สิ่งนี้คล้ายกับ HAML ที่เรามี: .content Hello, World! ซึ่งกลายเป็น: <div class='content'>Hello, World!</div> มันดูเหมือนว่าฉันเป็นเพียงสิ่งเดียวที่จะต้องเกิดขึ้นสำหรับการทำงานในเบราว์เซอร์ที่เป็นเบราว์เซอร์สามารถเริ่มต้นการตีความทุกองค์ประกอบโดยไม่ต้องนิยามองค์ประกอบ HTML <div class="<element name>">ที่มีอยู่เป็นนัยว่า สิ่งนี้อาจเข้ากันได้อย่างสมบูรณ์แบบย้อนหลัง สำหรับตัวเลือก CSS และ jQuery เป็นต้น …
13 html  html5 

3
การใช้ตารางแฮชในการรวบรวมขยะจะช่วยแก้ปัญหาเครื่องหมายและการกวาดโลกหรือไม่
ในอัลกอริธึมการรวบรวมขยะที่มีขนาดกะทัดรัดคุณต้องหยุดโลกเมื่อต้องย้ายวัตถุเนื่องจากกราฟอ้างอิงไม่สอดคล้องกันและคุณต้องแทนที่ค่าของการอ้างอิงทั้งหมดที่ชี้ไปยังวัตถุ แต่จะเกิดอะไรขึ้นถ้าคุณมีตารางแฮชที่มี ID วัตถุเป็นคีย์และตัวชี้เป็นค่าและการอ้างอิงจะชี้ไปที่ ID ดังกล่าวแทนที่จะเป็นที่อยู่ของวัตถุ ... ดังนั้นการแก้ไขการอ้างอิงจะต้องเปลี่ยนค่าเดียวเท่านั้น พยายามเขียนลงในระหว่างการคัดลอก ... ความคิดของฉันมีข้อผิดพลาดหรือไม่?

9
ทักษะที่ใช้ในคำถามสัมภาษณ์ทั่วไปถูกนำไปใช้ในงานจริงอย่างไร [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา สำหรับงาน SQL และ C # แอป dev, ผู้สัมภาษณ์มักถามคำถามเกี่ยวกับการสำรวจต้นไม้กราฟและการเชื่อมโยงรายการโดยใช้ C และพอยน์เตอร์ล้วนๆ ในช่วง 3 ปีที่ผ่านมาฉันเคยทำงานไม่เคยทำ ค้นหาเส้นทางไปยังโหนดที่ 1 ทางด้านขวาของโหนดที่กำหนดซึ่งเป็นจำนวนมากของโหนดที่กำหนด ตัวอย่างเช่น ฉันเห็นว่าทักษะเหล่านี้อาจถูกใช้ในงานที่คุณต้องเขียนคอมไพเลอร์ไดรเวอร์และทำงานบนเคอร์เนลระบบปฏิบัติการ นอกเหนือจากนั้นทักษะเหล่านี้จะใช้ที่ไหน?
13 interview 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.