การเขียนโปรแกรม

คำถาม & คำตอบสำหรับโปรแกรมเมอร์มืออาชีพและกระตือรือร้น


6
ไวยากรณ์สำหรับฟังก์ชั่นลูกศร async
ฉันสามารถทำเครื่องหมายฟังก์ชันจาวาสคริปต์เป็น "async" (เช่นคืนสัญญา) ด้วยasyncคำหลัก แบบนี้: async function foo() { // do something } ไวยากรณ์เทียบเท่าสำหรับฟังก์ชั่นลูกศรคืออะไร

2
จะหาคำตอบว่า "แหล่งเก็บข้อมูลยอดนิยม" บน Github ได้อย่างไร [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน3 ปีที่ผ่านมา กาลครั้งหนึ่งเราสามารถรับชมแหล่งเก็บข้อมูลที่ได้รับความนิยมสูงสุด (ส่วนใหญ่แยกหรือดูมากที่สุด) ได้ที่หน้านี้ ( https://github.com/popular/watched ) ของ Github แบบนี้: แต่ตอนนี้เมื่อคุณพยายามสำรวจ repos คุณจะเห็นที่เก็บได้รับความนิยมสูงสุด 25 อันดับเท่านั้น ดังนี้: https://github.com/trending ทำไม Github ถึงเปลี่ยนแปลงสิ่งนี้และมีวิธีใดบ้างในการค้นหารายชื่อ repos ยอดนิยม?
496 github 

18
ผลของข้อยกเว้นต่อประสิทธิภาพใน Java คืออะไร
คำถาม: การจัดการข้อยกเว้นใน Java ช้าจริงหรือไม่ ภูมิปัญญาดั้งเดิมรวมถึงผลการค้นหาของ Google จำนวนมากกล่าวว่าไม่ควรใช้ตรรกะพิเศษสำหรับการไหลเวียนของโปรแกรมปกติใน Java โดยปกติจะมีสองเหตุผล มันช้ามาก - แม้ลำดับความสำคัญจะช้ากว่ารหัสปกติ (เหตุผลที่ให้แตกต่างกันไป) และ มันยุ่งเพราะคนคาดหวังว่าข้อผิดพลาดเท่านั้นที่จะจัดการในรหัสพิเศษ คำถามนี้เกี่ยวกับ # 1 ตัวอย่างเช่นหน้านี้อธิบายการจัดการข้อยกเว้น Java ว่า "ช้ามาก" และเกี่ยวข้องกับความช้าในการสร้างสตริงข้อความข้อยกเว้น - "สตริงนี้จะใช้ในการสร้างวัตถุยกเว้นที่ถูกโยนนี่ไม่เร็ว" บทความการจัดการข้อยกเว้นที่มีประสิทธิภาพใน Javaกล่าวว่า "เหตุผลนี้เกิดจากการสร้างวัตถุของการจัดการข้อยกเว้นซึ่งทำให้การโยนข้อยกเว้นช้าโดยเนื้อแท้" อีกเหตุผลหนึ่งคือการสร้างการติดตามสแต็กคือสิ่งที่ทำให้ช้าลง การทดสอบของฉัน (โดยใช้ Java 1.6.0_07, Java HotSpot 10.0, บน 32 บิต Linux) ระบุว่าการจัดการข้อยกเว้นไม่ช้ากว่าโค้ดปกติ ฉันลองใช้วิธีการในวงที่รันรหัสบางอย่าง ในตอนท้ายของวิธีการที่ผมใช้บูลที่จะบ่งชี้ว่าจะกลับมาหรือโยน วิธีนี้การประมวลผลจริงจะเหมือนกัน ฉันลองใช้วิธีการตามคำสั่งต่าง ๆ และหาค่าเฉลี่ยเวลาทดสอบของฉันโดยคิดว่า JVM อาจร้อนขึ้น ในการทดสอบทั้งหมดของฉันการขว้างอย่างน้อยเท่ากับการส่งคืนถ้าไม่เร็วขึ้น …

24
วิธีการใช้โครงสร้างข้อมูลทรีใน Java [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา มีคลาสไลบรารี Java มาตรฐานใด ๆ ที่แสดงถึงต้นไม้ใน Java หรือไม่? โดยเฉพาะฉันต้องแสดงต่อไปนี้: ต้นไม้ย่อยที่โหนดใด ๆ สามารถมีจำนวนลูกโดยพลการ แต่ละโหนด (หลังจากรูท) และลูกนั้นจะมีค่าสตริง ฉันต้องการรับ children ทั้งหมด (เรียงลำดับรายการหรือ array of Strings บางส่วน) ของโหนดที่กำหนดและเป็นค่าสตริง (เช่นวิธีที่จะใช้โหนดเป็นอินพุตและส่งกลับค่าสตริงทั้งหมดของโหนดชายด์เป็นเอาต์พุต) มีโครงสร้างที่พร้อมใช้งานสำหรับสิ่งนี้หรือฉันต้องการสร้างของฉันเอง (ถ้าเป็นเช่นนั้น

23
วิธีการซ่อนแถบใต้ใน EditText
ฉันจะซ่อนแถบใต้ EditText ได้อย่างไร (บรรทัดที่พรอมต์ที่มี serif เล็ก ๆ ที่ท้าย)? อาจมีวิธีที่ดีกว่าในการทำสิ่งที่ฉันต้องการ: ฉันมีเลย์เอาต์ที่มี EditText โดยปกติจะแสดงผลดีที่ผู้ใช้สามารถแตะที่มันและเริ่มเข้าหรือแก้ไขข้อความ อย่างไรก็ตามบางครั้งฉันต้องการใช้เค้าโครงเดียวกัน (ลดความซับซ้อนของตรรกะอื่น ๆ ) เพื่อแสดงข้อมูลเดียวกันในลักษณะอ่านอย่างเดียว ฉันต้องการให้งานนำเสนอใกล้เคียงกัน - ควรมีความสูงและแบบอักษรเดียวกัน แต่ไม่มีแถบใต้ ในฐานะที่เป็นมาตรการหยุดช่องว่างฉันจะใช้สิ่งนี้โดยการลบ EditText และแทนที่ TextView ฉันคิดว่ามันจะให้ผลลัพธ์ที่ต้องการ แต่ดูเหมือนว่าวงเวียนจะเป็นวิธีที่มีราคาแพงในการทำสิ่งที่ควรจะทำได้ง่ายโดยการเปลี่ยนคุณลักษณะ


13
Hashset กับ Treeset
ฉันชอบต้นไม้ที่ดีO(n*log(n))และเป็นระเบียบเรียบร้อยของพวกเขา TreeSetอย่างไรก็ตามซอฟต์แวร์วิศวกรทุกคนที่ฉันเคยรู้จักได้ถามฉันอย่างชัดเจนว่าทำไมฉันจะใช้ จากแบ็คกราวน์ CS ฉันไม่คิดว่ามันจะสำคัญกับทุกอย่างที่คุณใช้และฉันก็ไม่สนใจที่จะยุ่งกับฟังก์ชั่นแฮชและที่เก็บข้อมูล (ในกรณีของJava) ในกรณีใดบ้างที่ฉันควรใช้HashSeta TreeSet?
496 java  hashset  treeset 



26
วิธีการจัดรูปแบบตัวเลขทศนิยมให้เป็นสตริงโดยไม่มีทศนิยม 0 ที่ไม่จำเป็น
64 บิตคู่สามารถเป็นตัวแทนของจำนวนเต็ม +/- 2 53ตรง จากข้อเท็จจริงนี้ฉันเลือกที่จะใช้ double type เป็น single type สำหรับทุกประเภทของฉันเนื่องจากเลขจำนวนเต็มที่ใหญ่ที่สุดของฉันคือแบบ 32 บิต แต่ตอนนี้ฉันต้องพิมพ์จำนวนเต็มหลอกเหล่านี้ แต่ปัญหาคือพวกเขายังผสมกับคู่จริง ดังนั้นฉันจะพิมพ์คู่เหล่านี้อย่างดีใน Java ได้อย่างไร ฉันได้ลองString.format("%f", value)แล้วซึ่งอยู่ใกล้ยกเว้นฉันได้รับจำนวนมากต่อท้ายศูนย์สำหรับค่าขนาดเล็ก นี่คือตัวอย่างผลลัพธ์ของ %f 232.00000000 0.18000000000 1237875192.0 4.5800000000 0.00000000 1.23450000 สิ่งที่ฉันต้องการคือ: 232 0.18 1237875192 4.58 0 1.2345 แน่นอนว่าฉันสามารถเขียนฟังก์ชันเพื่อตัดค่าศูนย์เหล่านั้น แต่นั่นเป็นการสูญเสียประสิทธิภาพเนื่องจากการจัดการสตริง ฉันสามารถทำได้ดีกว่าด้วยรหัสรูปแบบอื่นได้หรือไม่ แก้ไข คำตอบของ Tom E. และ Jeremy S. นั้นไม่สามารถยอมรับได้เนื่องจากพวกเขาทั้งคู่ปัดทศนิยมเป็นทศนิยม 2 ตำแหน่งโดยพลการ โปรดเข้าใจปัญหาก่อนที่จะตอบ …

20
ไดเรกทอรี drawable Android สามารถมีไดเรกทอรีย่อยได้หรือไม่?
ในเอกสารประกอบ Android SDK ตัวอย่างทั้งหมดที่ใช้กับไวยากรณ์ @ drawable / my_image xml ระบุที่อยู่ของรูปภาพโดยตรงที่เก็บไว้ในไดเรกทอรี res / drawable ในโครงการของฉัน ฉันสงสัยว่าถ้าไม่ชัดเจนที่จะสร้างไดเรกทอรีย่อยภายในไดเรกทอรีที่สามารถดึงข้อมูลได้ ตัวอย่างเช่นถ้าฉันมีรูปแบบไดเรกทอรีต่อไปนี้: res/drawable -- sandwiches -- tunaOnRye.png -- hamAndSwiss.png -- drinks -- coldOne.png -- hotTea.png ฉันขออ้างอิงภาพแซนวิชทูน่าสลัดเป็น @ drawable / sandwiches / tunaOnRye หรือฉันจะต้องรักษาลำดับชั้นให้คงอยู่ในไดเรกทอรีที่วาดได้



9
Visual Studio“ CPU ใด ๆ ” เป้าหมายหมายถึงอะไร
ฉันมีความสับสนเกี่ยวกับตัวเลือกการสร้างแพลตฟอร์ม. NET ใน Visual Studio 2008 เป้าหมายการคอมไพล์ "Any CPU" คืออะไรและไฟล์ประเภทใดที่สร้างขึ้น ฉันตรวจสอบเอาต์พุตที่สามารถเรียกใช้งานได้ของ build "CPU ใด ๆ " นี้และพบว่ามันเป็นไฟล์ปฏิบัติการ x86 (ซึ่งไม่เห็นว่าจะมา!) ดังนั้นมีความแตกต่างระหว่างการกำหนดเป้าหมายที่ปฏิบัติการได้เพื่อ x86 กับ "CPU ใด ๆ " อีกสิ่งที่ฉันสังเกตเห็นคือโครงการ C ++ ที่จัดการไม่มีแพลตฟอร์มนี้เป็นตัวเลือก ทำไมถึงเป็นอย่างนั้น? นั่นหมายความว่าฉันสงสัยเกี่ยวกับโปรแกรมปฏิบัติการ "ใด ๆ CPU" เป็นธรรมดา 32- บิตใช่ไหม?

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