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

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

8
อะไรคือความแตกต่างอย่างเป็นทางการใน Scala ระหว่างวงเล็บปีกกาและวงเล็บและควรใช้เมื่อใด?
เป็นความแตกต่างอย่างเป็นทางการระหว่างการขัดแย้งผ่านฟังก์ชั่นในวงเล็บอะไร()และในการจัดฟัน{}? ความรู้สึกที่ฉันได้รับจากการเขียนโปรแกรมในหนังสือสกาล่าคือความยืดหยุ่นของสกาล่าและฉันควรใช้สิ่งที่ฉันชอบที่สุด แต่ฉันพบว่าบางกรณีก็คอมไพล์ในขณะที่คนอื่นไม่ทำ ตัวอย่างเช่น (หมายถึงเพียงตัวอย่างฉันจะขอบคุณคำตอบใด ๆ ที่กล่าวถึงกรณีทั่วไปไม่ใช่เฉพาะตัวอย่างนี้เท่านั้น): val tupleList = List[(String, String)]() val filtered = tupleList.takeWhile( case (s1, s2) => s1 == s2 ) => ข้อผิดพลาด: การเริ่มต้นของการแสดงออกอย่างง่ายที่ผิดกฎหมาย val filtered = tupleList.takeWhile{ case (s1, s2) => s1 == s2 } => สบายดี

13
การแบ่งหน้าในเว็บแอ็พพลิเคชัน REST
นี่คือการปฎิรูปทั่วไปของคำถามนี้ (ด้วยการกำจัดส่วนเฉพาะของ Rails) ฉันไม่แน่ใจว่าจะใช้การแบ่งหน้าในแหล่งข้อมูลในเว็บแอปพลิเคชัน RESTful ได้อย่างไร สมมติว่าฉันมีทรัพยากรที่เรียกว่าproductsสิ่งใดต่อไปนี้ที่คุณคิดว่าเป็นแนวทางที่ดีที่สุดและทำไม: 1. ใช้สตริงข้อความค้นหาเท่านั้น เช่น. http://application/products?page=2&sort_by=date&sort_how=asc ปัญหาที่นี่คือฉันไม่สามารถใช้การแคชแบบเต็มหน้าและ URL ไม่สะอาดและง่ายต่อการจดจำ 2. การใช้หน้าเป็นทรัพยากรและสตริงแบบสอบถามสำหรับการเรียงลำดับ เช่น. http://application/products/page/2?sort_by=date&sort_how=asc ในกรณีนี้ปัญหาที่เห็นคือhttp://application/products/pages/1ไม่ได้เป็นทรัพยากรที่ไม่ซ้ำกันเนื่องจากการใช้sort_by=priceสามารถให้ผลลัพธ์ที่แตกต่างกันโดยสิ้นเชิงและฉันยังไม่สามารถใช้การแคชหน้า 3. การใช้หน้าเป็นทรัพยากรและส่วน URL สำหรับการเรียงลำดับ เช่น. http://application/products/by-date/page/2 ฉันเองเห็นว่าไม่มีปัญหาในการใช้วิธีนี้ แต่มีคนเตือนฉันว่านี่ไม่ใช่วิธีที่ดีที่จะไป (เขาไม่ได้ให้เหตุผลดังนั้นถ้าคุณรู้ว่าทำไมมันถึงไม่แนะนำกรุณาแจ้งให้เราทราบ) ใด ๆข้อเสนอแนะความคิดเห็นวิพากษ์วิจารณ์มากกว่าการต้อนรับ ขอบคุณ
329 rest  sorting  pagination 

16
ตัวเลือก SASS เชิงมุม
ฉันใหม่กับ Angular และฉันมาจากชุมชน Ember กำลังพยายามใช้ Angular-CLI ใหม่ซึ่งอ้างอิงจาก Ember-CLI ฉันจำเป็นต้องรู้วิธีที่ดีที่สุดในการจัดการ SASS ในโครงการ Angular ใหม่ ฉันลองใช้ember-cli-sassrepo เพื่อดูว่ามันจะเล่นได้หรือไม่เนื่องจากส่วนประกอบหลักจำนวนมากของ Angular-CLI นั้นไม่ทำงานในโมดูล Ember-CLI มันใช้งานไม่ได้ แต่ก็ไม่แน่ใจอีกต่อไปหากฉันเพิ่งกำหนดค่าบางอย่างผิดพลาด นอกจากนี้วิธีที่ดีที่สุดในการจัดระเบียบสไตล์ในโครงการแองกูลาร์ใหม่คืออะไร มันจะดีถ้ามีไฟล์ sass ในโฟลเดอร์เดียวกับคอมโพเนนต์

10
วิธีการใช้รูปแบบวิธีการจากโรงงานใน C ++ อย่างถูกต้อง
มีสิ่งหนึ่งใน C ++ ที่ทำให้ฉันรู้สึกไม่สบายตัวเป็นเวลานานเพราะฉันไม่รู้วิธีการทำอย่างสุจริตแม้ว่ามันจะฟังดูง่าย: ฉันจะใช้วิธีการโรงงานใน C ++ ได้อย่างถูกต้องได้อย่างไร เป้าหมาย: เพื่อให้ลูกค้าสามารถสร้างอินสแตนซ์ของวัตถุโดยใช้วิธีการจากโรงงานแทนตัวสร้างของวัตถุโดยไม่มีผลกระทบที่ยอมรับไม่ได้และประสิทธิภาพในการทำงาน โดย "รูปแบบวิธีการของโรงงาน" ฉันหมายถึงทั้งวิธีคงที่จากโรงงานภายในวัตถุหรือวิธีที่กำหนดไว้ในคลาสอื่นหรือฟังก์ชั่นระดับโลก เพียงแค่โดยทั่วไป "แนวคิดของการเปลี่ยนเส้นทางวิธีปกติของการสร้างอินสแตนซ์ของคลาส X ไปที่อื่นนอกเหนือจากตัวสร้าง" ให้ฉันอ่านคำตอบที่เป็นไปได้ที่ฉันคิด 0) อย่าสร้างโรงงานสร้างสิ่งก่อสร้าง สิ่งนี้ฟังดูดี (และมักจะเป็นทางออกที่ดีที่สุด) แต่ไม่ใช่วิธีการรักษาทั่วไป ประการแรกมีกรณีที่การก่อสร้างวัตถุเป็นงานที่ซับซ้อนพอที่จะพิสูจน์การแยกไปยังชั้นอื่น แต่ถึงกระนั้นก็ยังมีการวางความจริงนั้นไว้แม้กระทั่งสำหรับวัตถุอย่างง่ายที่ใช้เพียงแค่ตัวสร้างมักจะไม่ทำ ตัวอย่างที่ง่ายที่สุดที่ฉันรู้คือคลาสเวกเตอร์ 2 มิติ เรียบง่าย แต่ซับซ้อน ฉันต้องการสร้างมันทั้งจากพิกัดคาร์ทีเซียนและขั้ว เห็นได้ชัดว่าฉันไม่สามารถทำ: struct Vec2 { Vec2(float x, float y); Vec2(float angle, float magnitude); // not a valid overload! // ... …


8
รายชื่อรหัส LaTeX เหมือนในหนังสือมืออาชีพ
รายการซอร์สโค้ดของลาเท็กซ์ควรมีลักษณะอย่างไรในการสร้างผลลัพธ์เช่นเดียวกับในหนังสือที่รู้จักตัวอย่างเช่นสำหรับ Spring Framework ฉันได้ลองใช้แพคเกจรายชื่อลาเท็กซ์ แต่ไม่สามารถผลิตสิ่งที่ดูดีเหมือนด้านล่าง ดังนั้นฉันจึงสนใจที่จะจัดรูปแบบคำแนะนำเพื่อผลิตบางอย่างเช่นตัวอย่างด้านล่าง (จากบทตัวอย่างของ Manning สำหรับSpring in Action ): แก้ไข ด้วยความช่วยเหลือโดยเฉพาะอย่างยิ่งของTormod Fjeldskårนี่เป็นตัวอย่างที่สมบูรณ์ในการสร้างรูปลักษณ์ที่ต้องการ: \usepackage{listings} \usepackage{courier} \lstset{ basicstyle=\footnotesize\ttfamily, % Default font % numbers=left, % Location of line numbers numberstyle=\tiny, % Style of line numbers % stepnumber=2, % Margin between line numbers numbersep=5pt, % Margin between line numbers and text …
329 latex 

6
ฉันจะคืนค่า IEnumerable ที่ว่างเปล่าได้อย่างไร
รับรหัสต่อไปนี้และคำแนะนำที่ให้ไว้ในคำถามนี้ฉันตัดสินใจที่จะแก้ไขวิธีการดั้งเดิมนี้และถามว่ามีค่าใด ๆ ใน IEnumarable ส่งคืนหรือไม่ถ้าไม่คืน IEnumerable ที่ไม่มีค่า นี่คือวิธีการ: public IEnumerable<Friend> FindFriends() { //Many thanks to Rex-M for his help with this one. //https://stackoverflow.com/users/67/rex-m return doc.Descendants("user").Select(user => new Friend { ID = user.Element("id").Value, Name = user.Element("name").Value, URL = user.Element("url").Value, Photo = user.Element("photo").Value }); } เนื่องจากทุกอย่างอยู่ในแถลงการณ์ส่งคืนฉันจึงไม่รู้ว่าจะทำอย่างไร อยากได้สิ่งนี้ไหม public IEnumerable<Friend> FindFriends() { //Many …
329 c#  ienumerable 

20
วิธีตั้งค่าเวอร์ชันเริ่มต้นของ Python เป็น 3.x บน OS X
ฉันใช้ Mountain Lion และรุ่น Python เริ่มต้นพื้นฐานคือ 2.7 ฉันดาวน์โหลด Python 3.3 และต้องการตั้งเป็นค่าเริ่มต้น ขณะนี้: $ python version 2.7.5 $ python3.3 version 3.3 ฉันจะตั้งค่าอย่างไรเพื่อให้ทุกครั้งที่$ pythonเปิดใช้งาน 3.3

22
ตัวแปรโลคัลแบบไม่กำหนดค่าเริ่มต้นเป็นตัวสร้างตัวเลขสุ่มที่เร็วที่สุดหรือไม่
ฉันรู้ว่าตัวแปรท้องถิ่นที่ไม่ได้กำหนดค่าเริ่มต้นคือพฤติกรรมที่ไม่ได้กำหนด ( UB ) และค่าอาจมีการแทนแทร็บซึ่งอาจส่งผลต่อการดำเนินการต่อไป แต่บางครั้งฉันต้องการใช้ตัวเลขสุ่มเท่านั้นสำหรับการแสดงด้วยภาพ โปรแกรมตัวอย่างเช่นตั้งค่าบางสิ่งที่มีสีแบบสุ่มในเอฟเฟ็กต์ภาพเช่น: void updateEffect(){ for(int i=0;i<1000;i++){ int r; int g; int b; star[i].setColor(r%255,g%255,b%255); bool isVisible; star[i].setVisible(isVisible); } } มันเร็วกว่าไหม void updateEffect(){ for(int i=0;i<1000;i++){ star[i].setColor(rand()%255,rand()%255,rand()%255); star[i].setVisible(rand()%2==0?true:false); } } และยังเร็วกว่าตัวสร้างตัวเลขสุ่มอื่น ๆ

7
ความกว้างของของไหลที่มี DIV เว้นระยะเท่ากัน
ฉันมีภาชนะบรรจุความกว้างของของเหลว DIV ภายในนี้ฉันมี 4 DIVs ทั้งหมด 300px x 250px ... <div id="container"> <div class="box1"> </div> <div class="box2"> </div> <div class="box3"> </div> <div class="box4"> </div> </div> สิ่งที่ฉันต้องการจะเกิดขึ้นก็คือกล่องที่ 1 ที่จะลอยไปทางซ้ายกล่องที่ 4 จะลอยไปทางขวาและช่องที่ 2 และ 3 ที่จะเว้นระยะระหว่างพวกเขาอย่างเท่าเทียมกัน ฉันต้องการให้การเว้นวรรคนั้นราบรื่นเช่นกันดังนั้นเบราว์เซอร์ก็ยิ่งเล็กลงพื้นที่ก็เล็กลงเช่นกัน
329 html  css  fluid-layout 

30
อุปกรณ์ Android ADB ออฟไลน์ไม่สามารถออกคำสั่งได้
ฉันไม่สามารถเชื่อมต่อกับอุปกรณ์ของฉันอีกต่อไปโดยใช้ADBผ่านบรรทัดคำสั่งหรือในEclipse Eclipse กำลังรันคำสั่ง adb devices ส่งคืนชื่ออุปกรณ์ แต่แจ้งว่าออฟไลน์ สิ่งที่ฉันได้ลอง โหมดการแก้ไขข้อบกพร่องของ Android ที่ใช้งานได้ ติดตั้งไดรเวอร์ USB ของ Google อีกครั้ง กู้คืนระบบปฏิบัติการเป็นการสำรองข้อมูลที่ทำงานก่อนหน้า ( CyanogenMod ) สลับสาย USB รีบูตโทรศัพท์ / คอมพิวเตอร์หลายครั้ง อัปเดต Android SDK ฉันไม่รู้ว่าเกิดอะไรขึ้น อะไรก็ได้ที่คุณคิดว่าฉันสามารถลองได้ เพื่อความชัดเจนหากคุณมีปัญหาเดียวกันนี้ปัญหาน่าจะเป็น SDK ที่ล้าสมัย ตั้งแต่ 4.2.2 มีคุณสมบัติความปลอดภัยที่คุณต้องยืนยันลายนิ้วมือ RSA ของอุปกรณ์เชื่อมต่อ เปิดตัวจัดการ SDK และอัปเดตเครื่องมือ! จากนั้นรีบูท

12
ฉันจะตรวจสอบว่ามีไดเรกทอรีอยู่ได้อย่างไร? “ is_dir”,“ file_exists” หรือทั้งสองอย่าง?
ฉันต้องการสร้างไดเรกทอรีถ้ามันไม่มีอยู่แล้ว มีการใช้งานis_dirเพียงพอสำหรับวัตถุประสงค์ดังกล่าวหรือไม่ if ( !is_dir( $dir ) ) { mkdir( $dir ); } หรือฉันควรรวมis_dirกับfile_exists? if ( !file_exists( $dir ) && !is_dir( $dir ) ) { mkdir( $dir ); }
329 php 

14
จะติดตั้งโมดูล NPM ส่วนตัวโดยไม่ต้องลงทะเบียนเองได้อย่างไร
ฉันได้รับรหัสที่ใช้ร่วมกันและวางไว้ในโมดูล NPM หนึ่งที่ฉันไม่ต้องการอัปโหลดไปยังรีจิสทรีกลาง คำถามคือฉันจะติดตั้งจากโครงการอื่นได้อย่างไร วิธีที่ชัดเจนน่าจะตั้งค่ารีจิสทรี NPM ของฉันเอง แต่ตามเอกสารประกอบที่เกี่ยวข้องกับความยุ่งยากมากมาย ฉันสามารถติดตั้งโมดูล NPM ที่อยู่ในระบบไฟล์ในเครื่องหรือแม้แต่จาก git ได้หรือไม่ npm install --from-git git@server:project

22
Git:“ วัตถุหลวมเสียหาย”
เมื่อใดก็ตามที่ฉันดึงจากระยะไกลฉันได้รับข้อผิดพลาดต่อไปนี้เกี่ยวกับการบีบอัด เมื่อฉันเรียกใช้การบีบอัดด้วยตนเองฉันจะได้รับเหมือนกัน: $ git gc error: Could not read 3813783126d41a3200b35b6681357c213352ab31 fatal: bad tree object 3813783126d41a3200b35b6681357c213352ab31 error: failed to run repack ไม่มีใครรู้ว่าจะทำอย่างไรเกี่ยวกับที่? จากไฟล์ cat ฉันได้รับสิ่งนี้: $ git cat-file -t 3813783126d41a3200b35b6681357c213352ab31 error: unable to find 3813783126d41a3200b35b6681357c213352ab31 fatal: git cat-file 3813783126d41a3200b35b6681357c213352ab31: bad file และจาก git fsck ฉันได้รับสิ่งนี้ (ไม่ทราบว่าเกี่ยวข้องกันจริงหรือไม่): $ git fsck error: inflate: …

11
ปฏิเสธการอนุญาตสำหรับความสัมพันธ์
ฉันพยายามรันคำสั่ง sql แบบง่าย: select * from site_adzone; และฉันได้รับข้อผิดพลาดนี้ ERROR: permission denied for relation site_adzone สิ่งที่อาจเป็นปัญหาที่นี่? ฉันยังพยายามที่จะเลือกสำหรับตารางอื่นและมีปัญหาเดียวกัน ฉันก็พยายามทำสิ่งนี้: GRANT ALL PRIVILEGES ON DATABASE jerry to tom; แต่ฉันได้รับการตอบสนองนี้จากคอนโซล WARNING: no privileges were granted for "jerry" คุณมีความคิดว่าจะเกิดอะไรขึ้น?

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