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

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


13
ฉันควรใช้การสมัครไขว้กับการเข้าร่วมวงใน
วัตถุประสงค์หลักในการใช้CROSS APPLYคืออะไร ฉันได้อ่าน (ผ่านทางโพสต์บนอินเทอร์เน็ต) ที่cross applyมีประสิทธิภาพมากขึ้นเมื่อเลือกผ่านชุดข้อมูลขนาดใหญ่หากคุณแบ่งพาร์ติชัน (เพจมาถึงใจ) ฉันก็รู้ว่าCROSS APPLYไม่จำเป็นต้องมี UDF เป็นตารางขวา ในINNER JOINข้อความค้นหาส่วนใหญ่(ความสัมพันธ์แบบหนึ่งต่อหลายคน) ฉันสามารถเขียนใหม่เพื่อใช้งานCROSS APPLYได้ แต่จะให้แผนการดำเนินการเทียบเท่าเสมอ ทุกคนสามารถให้ฉันเป็นตัวอย่างที่ดีของเมื่อCROSS APPLYสร้างความแตกต่างในกรณีที่INNER JOINจะทำงานได้ดี? แก้ไข: นี่เป็นตัวอย่างเล็กน้อยที่แผนการดำเนินการเหมือนกันทุกประการ (แสดงให้ฉันดูว่าพวกเขาแตกต่างกันที่ไหนและcross applyเร็วกว่า / มีประสิทธิภาพมากขึ้น) create table Company ( companyId int identity(1,1) , companyName varchar(100) , zipcode varchar(10) , constraint PK_Company primary key (companyId) ) GO create table Person ( …

11
ความแตกต่างระหว่าง del, remove และ pop on list
>>> a=[1,2,3] >>> a.remove(2) >>> a [1, 3] >>> a=[1,2,3] >>> del a[1] >>> a [1, 3] >>> a= [1,2,3] >>> a.pop(1) 2 >>> a [1, 3] >>> มีความแตกต่างระหว่างสามวิธีข้างต้นในการลบองค์ประกอบออกจากรายการหรือไม่?
925 python  list 

5
ใช้ HTML5 / Canvas / JavaScript เพื่อถ่ายภาพหน้าจอในเบราว์เซอร์
"รายงานข้อบกพร่อง" ของ Google หรือ "เครื่องมือคำติชม" ของ Google ช่วยให้คุณสามารถเลือกพื้นที่ของหน้าต่างเบราว์เซอร์ของคุณเพื่อสร้างภาพหน้าจอที่ส่งมาพร้อมกับข้อเสนอแนะของคุณเกี่ยวกับข้อบกพร่อง ภาพหน้าจอโดยเจสันขนาดเล็กที่โพสต์ในคำถามที่ซ้ำกัน พวกเขาทำสิ่งนี้ได้อย่างไร API ข้อเสนอแนะ JavaScript ของ Google ถูกโหลดจากที่นี่และภาพรวมของโมดูลความคิดเห็นจะแสดงให้เห็นถึงความสามารถในการจับภาพหน้าจอ

23
อะไรคือความแตกต่างระหว่างอิมเมจ Docker และคอนเทนเนอร์?
เมื่อใช้นักเทียบท่าเราเริ่มต้นด้วยภาพฐาน เราบูตมันขึ้นสร้างการเปลี่ยนแปลงและการเปลี่ยนแปลงเหล่านั้นจะถูกบันทึกไว้ในเลเยอร์สร้างภาพอื่น ในที่สุดฉันก็มีภาพสำหรับอินสแตนซ์ PostgreSQL ของฉันและรูปภาพสำหรับเว็บแอปพลิเคชันของฉันการเปลี่ยนแปลงที่ยังคงมีอยู่ คอนเทนเนอร์คืออะไร

28
การเปลี่ยนขนาดภาพใน Markdown
ฉันเพิ่งเริ่มต้นกับ Markdown ฉันชอบมัน แต่มีสิ่งหนึ่งที่ทำให้ฉันรำคาญ: ฉันจะเปลี่ยนขนาดของภาพโดยใช้ Markdown ได้อย่างไร เอกสารประกอบให้คำแนะนำต่อไปนี้สำหรับรูปภาพเท่านั้น: ![drawing](drawing.jpg) หากเป็นไปได้ฉันต้องการให้ภาพอยู่กึ่งกลาง ฉันขอ Markdown ทั่วไปไม่ใช่แค่วิธีที่ GitHub ทำเท่านั้น
920 image  markdown 

30
วิธีตรวจสอบหมายเลขโทรศัพท์โดยใช้ regex
ฉันพยายามรวบรวม regex ที่ครอบคลุมเพื่อตรวจสอบหมายเลขโทรศัพท์ เป็นการดีที่มันจะจัดการรูปแบบต่างประเทศ แต่จะต้องจัดการกับรูปแบบของสหรัฐอเมริการวมถึงต่อไปนี้: 1-234-567-8901 1-234-567-8901 x1234 1-234-567-8901 ext1234 1 (234) 567-8901 1.234.567.8901 1/234/567/8901 12345678901 ฉันจะตอบด้วยความพยายามในปัจจุบันของฉัน แต่ฉันหวังว่าจะมีใครบางคนมีสิ่งที่ดีกว่าและ / หรือสวยงามกว่า

30
วิธีการตัดช่องว่างจากตัวแปร Bash?
ฉันมีเชลล์สคริปต์ด้วยรหัสนี้: var=`hg st -R "$path"` if [ -n "$var" ]; then echo $var fi แต่รหัสเงื่อนไขจะดำเนินการhg stเสมอเพราะพิมพ์อักขระบรรทัดใหม่อย่างน้อยหนึ่งตัว มีวิธีง่ายๆในการตัดช่องว่างจาก$var(เช่นtrim()ในPHP )? หรือ มีวิธีมาตรฐานในการจัดการกับปัญหานี้หรือไม่? ฉันสามารถใช้sedหรือAWKได้ แต่ฉันคิดว่ามันมีทางออกที่ดีกว่าสำหรับปัญหานี้
920 string  bash  variables  trim 

19
การทำให้ Git ทำงานกับพร็อกซีเซิร์ฟเวอร์ - ล้มเหลวด้วย“ คำขอหมดเวลา”
ฉันจะทำให้ Git ใช้พร็อกซีเซิร์ฟเวอร์ได้อย่างไร ฉันต้องตรวจสอบรหัสจากเซิร์ฟเวอร์ Git แต่มันแสดง "คำขอหมดเวลา" ทุกครั้ง ฉันจะรับสิ่งนี้ได้อย่างไร ฉันจะตั้งค่าพร็อกซีเซิร์ฟเวอร์ได้อย่างไร

11
Git push ถูกปฏิเสธหลังจากการรีบูทของฟีเจอร์
ตกลงฉันคิดว่านี่เป็นสถานการณ์คอมไพล์อย่างง่ายฉันจะพลาดอะไรไป ฉันมีmasterสาขาและfeatureสาขา ฉันทำงานบางอย่างทำงานmasterบ้างfeatureแล้วก็ทำงานต่อmasterไป ฉันท้ายด้วยบางสิ่งเช่นนี้ (คำสั่งทำพจนานุกรมหมายถึงคำสั่งของการกระทำ): A--B--C------F--G (master) \ D--E (feature) ฉันไม่มีปัญหาในgit push origin masterการmasterอัปเดตรีโมตและไม่มีgit push origin feature(เมื่อเปิดfeature) เพื่อรักษาการสำรองข้อมูลระยะไกลสำหรับfeatureงานของฉัน จนถึงตอนนี้เราก็ยังดี แต่ตอนนี้ผมอยากจะ rebase featureที่ด้านบนของF--Gกระทำบนต้นแบบดังนั้นฉันและgit checkout feature git rebase masterยังคงดีอยู่. ตอนนี้เรามี: A--B--C------F--G (master) \ D'--E' (feature) ปัญหา:ทันทีที่ฉันต้องการสำรองfeatureกิ่งที่ถูกรีบาวด์ใหม่git push origin feature, การกดจะถูกปฏิเสธเนื่องจากต้นไม้มีการเปลี่ยนแปลงเนื่องจากการรีบูท git push --force origin featureนี้สามารถแก้ไขได้เฉพาะกับ ฉันเกลียดการใช้--forceโดยไม่แน่ใจว่าฉันต้องการมัน ดังนั้นฉันต้องการมันหรือไม่? การรีบูตจำเป็นต้องบอกเป็นนัยว่าสิ่งต่อไปpushควรเป็นจริง--forceหรือไม่? สาขาคุณลักษณะนี้ไม่ได้ใช้ร่วมกันกับ devs อื่น ๆ …
918 git 


17
วิธีป้องกันปุ่มจากการส่งแบบฟอร์ม
ในหน้าต่อไปด้วย Firefox ปุ่มลบจะส่งแบบฟอร์ม แต่ปุ่มเพิ่มจะไม่ส่ง ฉันจะป้องกันปุ่มลบจากการส่งแบบฟอร์มได้อย่างไร <html> <head> <script type="text/javascript" src="jquery-1.3.2.min.js"></script> <script type="text/javascript"> function addItem() { var v = $('form :hidden:last').attr('name'); var n = /(.*)input/.exec(v); var newPrefix; if (n[1].length == 0) { newPrefix = '1'; } else { newPrefix = parseInt(n[1]) + 1; } var oldElem = $('form tr:last'); var newElem …

16
คัดลอกรายการอาร์เรย์ไปยังอาร์เรย์อื่น
ฉันมีอาร์เรย์ JavaScript ที่ฉันต้องการที่จะผลักดันให้เป็นแถวใหม่dataArray newArrayยกเว้นฉันไม่ต้องการที่จะเป็นnewArray[0] dataArrayฉันต้องการผลักดันไอเท็มทั้งหมดลงในอาร์เรย์ใหม่: var newArray = []; newArray.pushValues(dataArray1); newArray.pushValues(dataArray2); // ... หรือดีกว่า: var newArray = new Array ( dataArray1.values(), dataArray2.values(), // ... where values() (or something equivalent) would push the individual values into the array, rather than the array itself ); ดังนั้นตอนนี้อาร์เรย์ใหม่จะมีค่าทั้งหมดของอาร์เรย์ข้อมูลแต่ละรายการ มีชวเลขเหมือนpushValuesมีอยู่หรือไม่ดังนั้นฉันไม่ต้องทำซ้ำในแต่ละรายการdataArrayเพิ่มรายการทีละรายการ?
916 javascript  arrays 


10
จะติดตั้งแพคเกจ NPM รุ่นก่อนหน้าได้อย่างไร
ฉันใช้ nvm เพื่อดาวน์โหลดโหนด v0.4.10 และติดตั้ง npm เพื่อทำงานกับโหนดเวอร์ชันนั้น ฉันพยายามติดตั้งแบบด่วนโดยใช้ npm install express -g และฉันได้รับข้อผิดพลาดที่ชัดเจนต้องใช้โหนดรุ่น> = 0.5.0 นี่เป็นเรื่องแปลกเนื่องจากฉันกำลังทำตามคำแนะนำสำหรับโหนด + express + mongodb การสอนที่นี่ที่ใช้โหนด v0.4.10 ดังนั้นฉันสมมติว่า express เป็น / พร้อมใช้งานกับโหนด v0.4.10 หากสมมติฐานของฉันถูกต้องฉันจะบอก npm ให้ดึงข้อมูลเวอร์ชันที่จะทำงานกับการตั้งค่าของฉันได้อย่างไร
915 node.js  npm 

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