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

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

4
วิธีจำกัดความลึกสำหรับรายการไฟล์วนซ้ำ?
มีวิธีจำกัดความลึกของรายการไฟล์วนซ้ำใน linux หรือไม่? คำสั่งที่ฉันใช้ในขณะนี้คือ: ls -laR > dirlist.txt แต่ฉันมีประมาณ 200 ไดเรกทอรีและแต่ละอันมี 10 ไดเรกทอรี ดังนั้นมันจะใช้เวลานานเกินไปและทำให้ทรัพยากรระบบมากเกินไป สิ่งที่ฉันสนใจจริงๆคือข้อมูลความเป็นเจ้าของและการอนุญาตสำหรับไดเรกทอรีย่อยระดับแรก: drwxr-xr-x 14 root root 1234 Dec 22 13:19 /var/www/vhosts/domain1.co.uk drwxr--r-- 14 jon root 1234 Dec 22 13:19 /var/www/vhosts/domain1.co.uk/htdocs drwxr--r-- 14 jon root 1234 Dec 22 13:19 /var/www/vhosts/domain1.co.uk/cgi-bin drwxr-xr-x 14 root root 1234 Dec 22 13:19 …
346 linux  bash 

30
อะไรคือแนวปฏิบัติที่ดีที่สุดที่คุณใช้เมื่อเขียน Objective-C และ Cocoa [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้มีแนวโน้มที่จะเรียกร้องการอภิปรายการโต้แย้งการหยั่งเสียงหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา ล็อคแล้ว คำถามและคำตอบนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันรู้เกี่ยวกับHIG (ซึ่งค่อนข้างมีประโยชน์!) แต่คุณใช้วิธีการเขียนโปรแกรมแบบใดเมื่อเขียน Objective-C และเฉพาะเจาะจงมากขึ้นเมื่อใช้ Cocoa (หรือ CocoaTouch)

3
ใช้การทำธุรกรรมหรือ SaveChanges (false) และ AcceptAllChanges ()?
ฉันตรวจสอบธุรกรรมและดูเหมือนว่าพวกเขาดูแลตัวเองใน EF ตราบใดที่ฉันผ่านfalseไปSaveChanges()แล้วโทรติดต่อAcceptAllChanges()หากไม่มีข้อผิดพลาด: SaveChanges(false); // ... AcceptAllChanges(); เกิดอะไรขึ้นถ้ามีบางอย่างไม่ดี? ฉันไม่ต้องย้อนกลับหรือทันทีที่วิธีการของฉันไม่อยู่ในขอบเขตการทำธุรกรรมสิ้นสุดลงหรือไม่ เกิดอะไรขึ้นกับคอลัมน์ indentiy ใด ๆ ที่ได้รับมอบหมายผ่านทางธุรกรรมครึ่งทาง ฉันคิดว่าถ้ามีคนเพิ่มบันทึกหลังจากฉันก่อนที่ฉันจะเสียก็หมายความว่าจะมีค่าประจำตัวที่ขาดหายไป มีเหตุผลใดที่จะใช้TransactionScopeคลาสมาตรฐานในรหัสของฉัน?

12
วิธีปรับใช้ไฟล์สงครามใน Tomcat 7
ฉันได้คัดลอกsample.warไฟล์ไปยังwebappsไดเรกทอรีของ Tomcat แล้วและฉันสามารถเข้าถึงlocalhost:8080ได้ ตอนนี้ Tomcat จะปรับใช้อย่างไรฉันหมายถึงฉันต้องเปิดมันในเบราว์เซอร์หรือไม่? ฉันจะเข้าถึงแอปพลิเคชันได้อย่างไร
346 java  tomcat  war 

9
ทำไมฉันถึงต้องใส่ใจกับแท็กที่มีน้ำหนักเบาและมีคำอธิบายประกอบ
ฉันเปลี่ยนจากการโค่นล้มเป็น Git เป็น VCS ประจำวันของฉันเมื่อปีที่แล้วและฉันยังคงพยายามที่จะเข้าใจจุดที่ดีกว่าของ "Git-think" สิ่งหนึ่งที่ทำให้ฉันรำคาญเมื่อเร็ว ๆ นี้คือแท็ก "จริงจัง" และคำอธิบายประกอบที่ลงนามแล้ว ดูเหมือนว่าสวยได้รับการยอมรับในระดับสากลว่าแท็กข้อเขียนจะดีกว่าแท็กที่มีน้ำหนักเบาสำหรับการใช้งานจริงทั้งหมด แต่คำอธิบายที่ฉันได้พบว่าทำไมเป็นกรณีที่เสมอดูเหมือนจะต้มลงไปอย่างใดอย่างหนึ่ง"เพราะปฏิบัติที่ดีที่สุด"หรือ"เพราะพวกเขากำลังที่แตกต่างกัน" . น่าเสียดายที่ข้อโต้แย้งเหล่านี้ไม่เป็นที่พอใจอย่างมากโดยไม่ทราบว่าเพราะเหตุใดจึงเป็นแนวทางปฏิบัติที่ดีที่สุดหรือความแตกต่างเหล่านั้นเกี่ยวข้องกับการใช้ Git ของฉันอย่างไร เมื่อฉันเปลี่ยนมาใช้ Git เป็นครั้งแรกแท็กที่มีน้ำหนักเบาดูเหมือนจะเป็นสิ่งที่ดีที่สุดตั้งแต่หั่นขนมปัง ฉันสามารถชี้ไปที่คำสั่งแล้วพูดว่า "นั่นคือ 1.0" ฉันมีปัญหาในการเข้าใจว่าแท็กจะต้องเป็นมากกว่านั้นได้อย่างไร แต่ฉันไม่อยากจะเชื่อเลยว่าผู้เชี่ยวชาญของ Git ในโลกนี้ชอบแท็กที่มีคำอธิบายประกอบโดยพลการ! แล้วเสียงขรมทั้งหมดเกี่ยวกับอะไร (คะแนนโบนัส: เพราะเหตุใดฉันจึงต้องลงชื่อแท็ก) แก้ไข ฉันเชื่อมั่นว่าแท็กที่มีคำอธิบายประกอบเป็นสิ่งที่ดี - รู้ว่าใครแท็กและเมื่อใดที่สำคัญ! ในการติดตามคำแนะนำใด ๆ เกี่ยวกับคำอธิบายประกอบแท็กที่ดี? ทั้งสองgit tag -am "tagging 1.0" 1.0และพยายามสรุปบันทึกการกระทำเนื่องจากแท็กก่อนหน้านี้รู้สึกเหมือนสูญเสียกลยุทธ์
346 git  git-tag 

11
ฉันจะแทนที่กล่องโต้ตอบ OnBeforeUnload และแทนที่ด้วยตัวเองได้อย่างไร
ฉันต้องเตือนผู้ใช้เกี่ยวกับการเปลี่ยนแปลงที่ไม่ได้บันทึกก่อนที่พวกเขาจะออกจากหน้าเว็บ (เป็นปัญหาที่พบบ่อยมาก) window.onbeforeunload=handler ใช้งานได้ แต่จะเพิ่มการโต้ตอบเริ่มต้นด้วยข้อความมาตรฐานที่น่ารำคาญที่ล้อมข้อความของฉันเอง ฉันต้องการแทนที่ข้อความมาตรฐานอย่างสมบูรณ์ดังนั้นข้อความของฉันจึงชัดเจนหรือ (ดียิ่งขึ้น) แทนไดอะล็อกทั้งหมดด้วยไดอะล็อก modal โดยใช้ jQuery จนถึงตอนนี้ฉันล้มเหลวและไม่พบใครที่ดูเหมือนจะมีคำตอบ เป็นไปได้ไหม Javascript ในหน้าของฉัน: <script type="text/javascript"> window.onbeforeunload=closeIt; </script> ฟังก์ชั่น closeIt (): function closeIt() { if (changes == "true" || files == "true") { return "Here you can append a custom message to the default dialog."; } } การใช้ jQuery …

13
ทำไมเราต้องกำหนดทั้งสอง == และ! = ใน C #
คอมไพเลอร์ C # ต้องการว่าเมื่อใดก็ตามที่ประเภทที่กำหนดเองจะกำหนดผู้ประกอบการ==มันจะต้องกำหนดด้วย!=(ดูที่นี่ ) ทำไม? ฉันอยากรู้ว่าทำไมนักออกแบบจึงคิดว่าจำเป็นและเหตุใดจึงไม่สามารถเริ่มต้นคอมไพเลอร์เพื่อให้เกิดการใช้งานที่สมเหตุสมผลสำหรับผู้ประกอบการรายใดรายหนึ่ง ตัวอย่างเช่น Lua ช่วยให้คุณกำหนดตัวดำเนินการความเสมอภาคเท่านั้นและคุณจะได้รับตัวดำเนินการอื่นฟรี C # จะทำเช่นเดียวกันโดยขอให้คุณสามารถกำหนดอย่างใดอย่างหนึ่งหรือทั้งสอง == == และ! = แล้วโดยอัตโนมัติรวบรวมหายไป! = !(left == right)ผู้ประกอบการเป็น ฉันเข้าใจว่ามีบางกรณีที่มุมแปลก ๆ ที่บางหน่วยงานอาจไม่เท่ากันหรือไม่เท่ากัน (เช่น IEEE-754 NaN) แต่สิ่งเหล่านั้นดูเหมือนเป็นข้อยกเว้นไม่ใช่กฎ ดังนั้นนี่ไม่ได้อธิบายว่าทำไมนักออกแบบคอมไพเลอร์ C # จึงได้ยกเว้นกฎ ฉันเคยเห็นกรณีของฝีมือไม่ดีที่กำหนดตัวดำเนินการความเท่าเทียมกันจากนั้นผู้ดำเนินการความไม่เท่าเทียมกันจะเป็นสำเนาคัดลอกที่มีการเปรียบเทียบแต่ละรายการที่ย้อนกลับและทุก && เปลี่ยนเป็น | | (คุณได้รับจุด ... โดยทั่วไป! (a == b) ขยายผ่านกฎของ De Morgan) นั่นเป็นวิธีปฏิบัติที่ไม่ดีที่ผู้รวบรวมสามารถกำจัดได้โดยการออกแบบเช่นเดียวกับ Lua หมายเหตุ: …

18
ความแตกต่างระหว่างการเขียนโปรแกรมพร้อมกันและการเขียนโปรแกรมแบบขนานคืออะไร?
ความแตกต่างระหว่างการเขียนโปรแกรมพร้อมกันและการวางโปรแกรมแบบขนานคืออะไร? ฉันถาม google แต่ไม่พบสิ่งใดที่ช่วยให้ฉันเข้าใจความแตกต่างนั้น คุณช่วยยกตัวอย่างให้ฉันได้ไหม ตอนนี้ฉันพบคำอธิบายนี้แล้ว: http://www.linux-mag.com/id/7411 - แต่ "ภาวะพร้อมกันเป็นคุณสมบัติของโปรแกรม" vs "การทำงานแบบขนานเป็นคุณสมบัติของเครื่อง" ไม่เพียงพอสำหรับฉัน - ถึงกระนั้นฉันก็พูดอะไรไม่ออกไม่ได้

24
ฉันจะซ่อนรายการเมนูในแถบการกระทำได้อย่างไร
ฉันมีแถบแอ็คชั่นพร้อมชุดสูท ฉันจะซ่อน / แสดงรายการเมนูได้อย่างไร นี่คือสิ่งที่ฉันพยายามทำ: MenuItem item = (MenuItem) findViewById(R.id.addAction); item.setVisible(false); this.invalidateOptionsMenu();


30
พอร์ต 80 กำลังถูกใช้โดย SYSTEM (PID 4) นั่นคืออะไร
ฉันกำลังพยายามใช้พอร์ต 80 สำหรับเซิร์ฟเวอร์แอปพลิเคชันของฉัน แต่เมื่อฉันทำnetstat -aonฉันจะได้รับ: TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4 เมื่อฉันมองไปถึงกระบวนการในการจัดการงานก็แสดงให้เห็นPID 4เป็นSYSTEMที่มัน ไม่มีส่วนขยาย ... ไม่มีอะไร เพียงแค่ " SYSTEM" เกิดอะไรขึ้นที่นี่? ฉันกลัวที่จะยุติกระบวนการนี้ฉันควรทำอย่างไร อัปเดต : ฉันแก้ปัญหานี้ด้วยคำถาม Stack Overflowอื่นซึ่งมีวิธีแก้ปัญหาให้ IIS หยุดฟังพอร์ต 80 สำหรับที่อยู่ IP ที่ระบุ
346 iis  port  pid  netstat 

17
มีวิธีในการรับ XPath ใน Google Chrome หรือไม่?
ฉันมีหน้าเว็บที่ฉันต้องการใช้กับ YQL แต่ฉันต้องการ XPath ของรายการเฉพาะ ฉันสามารถดูได้ในพื้นที่เครื่องมือแก้ปัญหาสำหรับ Google Chrome แต่ฉันไม่เห็นวิธีคัดลอก XPath นั้น มีวิธีการคัดลอก XPath แบบเต็มหรือไม่?

9
คำอธิบายของ JSONB นำเสนอโดย PostgreSQL
PostgreSQL แนะนำเพียงJSONBและมันมีอยู่แล้วได้รับความนิยมในข่าวแฮ็กเกอร์ มันจะดีถ้ามีใครสามารถอธิบายได้ว่ามันแตกต่างจาก Hstore และ JSON ก่อนหน้านี้ใน PostgreSQL อะไรคือข้อดีและข้อ จำกัด ของมันและเมื่อมีคนควรพิจารณาใช้มัน?

11
แยกด้วยเครื่องหมายจุลภาคและตัดช่องว่างใน Python
ฉันมีรหัสหลามที่แยกบนเครื่องหมายจุลภาค แต่ไม่ได้ตัดช่องว่าง: >>> string = "blah, lots , of , spaces, here " >>> mylist = string.split(',') >>> print mylist ['blah', ' lots ', ' of ', ' spaces', ' here '] ฉันต้องการที่จะลบช่องว่างออกเช่นนี้: ['blah', 'lots', 'of', 'spaces', 'here'] ฉันรู้ว่าฉันสามารถวนรอบรายการและสตริป () แต่ละรายการ แต่เนื่องจากนี่คือ Python ฉันเดาว่ามีวิธีที่เร็วกว่าง่ายกว่าและสง่างามกว่าในการทำมัน
346 python  whitespace  strip 

4
รายการฟังก์ชั่น Big-O สำหรับ PHP
หลังจากใช้ PHP มาระยะหนึ่งผมสังเกตว่าฟังก์ชั่น PHP ในตัวบางตัวนั้นไม่เร็วเท่าที่ควร พิจารณาการประยุกต์ใช้ที่เป็นไปได้ทั้งสองอย่างของฟังก์ชั่นที่ค้นหาว่าตัวเลขนั้นสำคัญเพียงใดโดยใช้อาเรย์แคชของช่วงเวลา //very slow for large $prime_array $prime_array = array( 2, 3, 5, 7, 11, 13, .... 104729, ... ); $result_array = array(); foreach( $prime_array => $number ) { $result_array[$number] = in_array( $number, $large_prime_array ); } //speed is much less dependent on size of $prime_array, and …

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