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

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

2
การผสม Angular และ ASP.NET MVC / Web api?
ฉันมาจากการใช้ ASP.NET MVC / Web API และตอนนี้ฉันเริ่มใช้ Angular แต่ฉันไม่ชัดเจนเกี่ยวกับวิธีการผสมที่เหมาะสม เมื่อฉันใช้ Angular แนวคิดด้านเซิร์ฟเวอร์ MVC ยังคงให้ค่าใด ๆ หรือฉันควรใช้ Web API อย่างเคร่งครัดเพื่อรับข้อมูลสำหรับการโทร HTTP เชิงมุม มีจุดเริ่มต้นที่น่าผิดหวังมากกว่าที่ฉันควรใช้หรือไม่ถ้าเทมเพลต VS กำลังเพิ่มสิ่งต่าง ๆ มากมายที่ฉันไม่ต้องการ ฉันชอบความคิดของการแบ่งฝั่งเซิร์ฟเวอร์อย่างเข้มงวด = ข้อมูลบริสุทธิ์และฝั่งไคลเอ็นต์ = การประมวลผล HTML ล้วนๆ

3
ข้อดีของการใช้ LISP และ Haskell คืออะไร พวกเขาจะทำให้ฉันเป็นโปรแกรมเมอร์ที่ดีขึ้นหรือไม่ [ปิด]
ฉันรู้ว่า Lisp และ Haskell เป็นภาษาตรรกะและการเขียนโปรแกรมตามหน้าที่ แต่สิ่งนี้หมายความว่าอย่างไร พวกเขาแตกต่างจากภาษาอื่น ๆ อย่างไร? ฉันได้ยินมาว่าการเรียนรู้สิ่งเหล่านี้จะทำให้คุณเป็นโปรแกรมเมอร์ที่ดีขึ้นและพัฒนาตรรกะของคุณ นี่คือความจริงและถ้าฉันไปเรียนรู้ Lisp หรือ Haskell ในระดับที่มีความสามารถการเขียนโปรแกรมของฉันจะปรับปรุงและฉันจะดีกว่าที่จะจัดการกับปัญหาใด ๆ ในภาษาใด ๆ ? ฉันแค่อยากรู้ว่าพวกเขาคุ้มค่ากับความพยายามในการเรียนรู้หรือไม่ ภาษาเหล่านี้มีประโยชน์ในด้านต่าง ๆ เช่น GUI และกราฟิกหรือเป็นเพียงแค่มีประโยชน์สำหรับแอปพลิเคชันคอนโซลหรือไม่
40 haskell  lisp 

16
เป็นความคิดที่ดีที่จะใส่หมายเลขข้อผิดพลาดในการแสดงความคิดเห็นในจุดเริ่มต้นของไฟล์ต้นฉบับ? [ปิด]
มันเป็นการดีหรือไม่ที่จะใส่หมายเลขบั๊กในไฟล์ลงในความคิดเห็นส่วนหัว? ความคิดเห็นจะมีลักษณะเช่นนี้: MODIFIED (MM/DD/YY) abc 01/21/14 - Bug 17452317 - npe in drill across in dashboard edit mode cde 01/17/14 - Bug 2314558 - some other error description ดูเหมือนว่ามีประโยชน์ แต่ก็ถือว่าเป็นการปฏิบัติที่ไม่ดี?

11
เคยตกลงใช้รหัสไม่ทำงานหรือไม่?
เป็นความคิดที่ดีหรือไม่ที่ต้องส่งรหัสการทำงานเท่านั้น? การมอบหมายนี้ไม่จำเป็นต้องออกจากที่เก็บในสถานะใช้งานเป็น: ... เราอยู่ในช่วงเริ่มต้นของการออกแบบรหัสยังไม่เสถียร ... คุณเป็นผู้พัฒนาเพียงผู้เดียวในโครงการ คุณรู้ว่าทำไมสิ่งต่าง ๆ ไม่ทำงาน นอกจากนี้คุณไม่ได้หยุดการทำงานของใครก็ตามโดยการส่งรหัสที่ผิดพลาด ... รหัสในปัจจุบันใช้งานไม่ได้ เราจะทำการเปลี่ยนแปลงครั้งใหญ่ ลองทำเพื่อที่จะมีประเด็นที่จะย้อนกลับไปสู่สิ่งที่น่าเกลียด ... สายโซ่ยาวไม่มีปัญหาหากมีรหัสที่ใช้ไม่ได้ในสาขาท้องถิ่น กล่าวคือ ไฟล์ท้องถิ่น การจัดเตรียมพื้นที่ มุ่งมั่นในสาขาท้องถิ่น กระทำในสาขาคุณสมบัติส่วนบุคคลระยะไกล ผสานกับdevelopสาขาระยะไกล ผสานกับmasterสาขาระยะไกล ผสานกับreleaseสาขาระยะไกล ... กระทำก่อนกำหนดกระทำบ่อย ๆ ดังนั้นในคำถามที่เชื่อมโยงข้างต้นคำตอบส่วนใหญ่บอกว่าการคอมไพล์โค้ดที่ไม่สามารถคอมไพล์ได้นั้นไม่มีปัญหาในสาขาท้องถิ่นและฟีเจอร์ ทำไม? มูลค่าของการกระทำที่เสียหายคืออะไร? ที่เพิ่มเข้ามา: มีความคิดเห็นที่ได้รับการโหวตสูงสองสามรายการโดยบอกว่าในสาขาท้องถิ่นสามารถทำได้ทุกอย่างที่ต้องการ อย่างไรก็ตามฉันไม่สนใจด้านเทคนิคของคำถาม แต่ฉันต้องการเรียนรู้แนวปฏิบัติที่ดีที่สุด - นิสัยที่คนที่ทำงานมาหลายปีในอุตสาหกรรมมีผลงานมากที่สุด ฉันประหลาดใจกับคำตอบที่ยอดเยี่ยมมากมาย! พวกเขานำฉันไปสู่ข้อสรุปว่าฉันไม่ชำนาญในการใช้สาขาเพื่อจัดระเบียบโค้ดของฉัน

4
บรรลุการปรับใช้เป็นศูนย์การหยุดทำงาน
ฉันกำลังพยายามทำให้การปรับใช้ไม่ทำงานเป็นศูนย์เพื่อให้ฉันสามารถปรับใช้น้อยลงในช่วงนอกเวลาทำงานและอื่น ๆ ในช่วงเวลาที่ "ช้าลง" - หรือทุกเวลาตามทฤษฎี การตั้งค่าปัจจุบันของฉันค่อนข้างง่าย: เว็บเซิร์ฟเวอร์ A (. NET App) เว็บเซิร์ฟเวอร์ B (แอพ. NET) เซิร์ฟเวอร์ฐานข้อมูล (SQL Server) กระบวนการปรับใช้ปัจจุบันของฉัน: "หยุด" ไซต์บนทั้งเว็บเซิร์ฟเวอร์ A และ B อัพเกรดสกีมาฐานข้อมูลสำหรับเวอร์ชันของแอปที่กำลังปรับใช้ อัปเดตเว็บเซิร์ฟเวอร์ A อัปเดตเว็บเซิร์ฟเวอร์ B นำทุกอย่างกลับมาออนไลน์ ปัญหาปัจจุบัน สิ่งนี้นำไปสู่การหยุดทำงานเล็กน้อยในแต่ละเดือน - ประมาณ 30 นาที ฉันทำสิ่งนี้ในช่วงนอกเวลางานดังนั้นมันจึงไม่ใช่ปัญหาใหญ่ แต่เป็นสิ่งที่ฉันอยากหลีกหนี นอกจากนี้ - ไม่มีทางที่จะ 'กลับ' จริงๆ โดยทั่วไปฉันไม่ได้สร้างสคริปต์ฐานข้อมูลย้อนกลับ - อัปเกรดสคริปต์เท่านั้น การใช้ประโยชน์จาก Load Balancer …

5
แลมบ์ดาแสดงออกถึงสิ่งที่มากกว่าคลาสภายในที่ไม่ระบุชื่อด้วยวิธีการเดียวหรือไม่?
มี hype ใหม่พร้อมกับการแสดงออกแลมบ์ดาที่รอคอยมานานใน Java 8; ทุกๆ 3 วันบทความอื่นจะปรากฏพร้อมกับพวกเขาเกี่ยวกับวิธีเจ๋ง ๆ เท่าที่ฉันเข้าใจแลมบ์ดานิพจน์แล้วมันไม่มีอะไรมากไปกว่าคลาสภายในที่ไม่ระบุชื่อด้วยวิธีการเดียว (อย่างน้อยก็ในระดับรหัสไบต์) นอกจากนี้มันยังมาพร้อมกับฟีเจอร์ที่ดีอีกอย่าง - การอนุมานแบบ แต่ฉันเชื่อว่าสิ่งนี้เทียบเท่าได้กับยาชื่อสามัญในบางระดับ เมื่อรู้อย่างนี้แล้วการแสดงออกของแลมบ์ดาจะนำสิ่งที่มากกว่าแค่การสร้างประโยคในภาษาจาวา ฉันสามารถสร้างคลาสที่ทรงพลังและยืดหยุ่นมากขึ้นหรือโครงสร้างเชิงวัตถุอื่น ๆ ด้วยการแสดงออกแลมบ์ดาที่ไม่สามารถสร้างขึ้นด้วยคุณสมบัติภาษาปัจจุบันได้หรือไม่

9
กำลังมองหาอาร์กิวเมนต์ที่มีความหมายและแข็งแกร่งในความโปรดปรานของซอฟต์แวร์ป้องกันไวรัสในเครื่องพัฒนา [ปิด]
เมื่อสร้างความคิดเห็นเป็นวิธีปฏิบัติที่ดีในการทำตามประเพณีของนักวิชาการ - คิดให้หนักที่สุดเท่าที่จะทำได้เพื่อต่อต้านความคิดเห็นที่คุณมีและพยายามหาข้อโต้แย้ง อย่างไรก็ตามไม่ว่าฉันจะพยายามอย่างหนักเพียงใดฉันก็ไม่สามารถหาข้อโต้แย้งที่สมเหตุสมผลในแง่ของการป้องกันไวรัส (และมาตรการรักษาความปลอดภัยที่เกี่ยวข้อง) ในเครื่องพัฒนา ข้อโต้แย้งต่อ Antivirus (AV) ในการพัฒนามีมากมาย: ไม่ใช่เรื่องผิดปกติสำหรับการสร้าง 1 นาทีเพื่อให้ใช้งานได้นานขึ้น 10 เท่าเมื่อเปิด AV ในการพูดคุยในการประชุมนักพัฒนา IntelliJ อ้างว่าซอฟต์แวร์ AV เป็นที่ต้องสงสัยอันดับ 1 เมื่อ IDE ของพวกเขาซบเซา การคลายซิปมาพร้อมกับความเร็วประมาณ 100 kb / s ด้วย AV on AV แสดงผล Cygwin ไม่สามารถใช้งานได้อย่างสมบูรณ์ (vim ใช้เวลา 1 นาทีในการเปิดไฟล์ง่าย ๆ ) AV บล็อกฉันจากการดาวน์โหลดไฟล์ที่มีประโยชน์ (JARs, DLLs) จากอีเมลของเพื่อนร่วมงาน ฉันไม่สามารถใช้คอมพิวเตอร์หลายเครื่องเพื่อการพัฒนาได้เนื่องจาก AV …

11
มีเหตุผลใดที่จะไม่ยอมรับซอฟต์แวร์ที่ส่งมอบเป็นเครื่องเสมือนจริงหรือไม่?
นี่เป็นคำถามเกี่ยวกับโลจิสติกส์ไม่ใช่คำถามทางเทคนิค บริษัท ของฉันจ้างงานซอฟต์แวร์ฝังตัวบางงาน โดยเฉพาะเราได้จ่ายผู้รับเหมาเพื่อพัฒนาระบบฝังตัวสำหรับเราเนื่องจากเราไม่มีความรู้ภายในเพียงพอที่จะทำเอง (เรามีนักพัฒนาแอปพลิเคชันบนเดสก์ท็อปเท่านั้น) ดังนั้นผู้รับเหมาได้เสร็จสิ้นซอฟต์แวร์และพวกเขาได้ถามว่าพวกเขาอาจส่งมอบมันให้กับเราในเครื่องเสมือนจริงหรือไม่ VM เป็นเครื่อง Windows 8 ที่ประกอบด้วย CodeWarrior IDE ที่กำหนดค่าไว้ล่วงหน้าพร้อมด้วยซอร์สโค้ดเป็นโครงการ CodeWarrior แนวคิดคือสิ่งนี้จะช่วยให้เราสามารถทำการเปลี่ยนแปลงรหัสภายใน VM ที่กำหนดค่าไว้แล้วเพื่อการพัฒนาโครงการนี้ต่อไป มีข้อเสียใด ๆ ในการทำเช่นนี้แทนที่จะให้พวกเขาแนะนำเราเกี่ยวกับวิธีการกำหนดค่าเครื่องพัฒนาของเราเองเพื่อทำการเปลี่ยนแปลงรหัสในโครงการหรือไม่? ปัญหาเดียวที่ฉันสามารถคาดการณ์ได้คือ VM ทำงานช้าและใช้เวลานานในการสร้างโครงการใหม่เมื่อเราทำการเปลี่ยนแปลงรหัส แต่ในทางกลับกันฉันชอบความคิดที่จะได้รับสภาพแวดล้อมการพัฒนาระบบฝังตัวที่กำหนดค่าไว้ล่วงหน้าดังนั้นฉันจึงไม่จำเป็นต้องเพิ่ม IDE อีกตัวในเดสก์ท็อปแอปพลิเคชันเดสก์ท็อปของฉัน ฉันไม่สามารถนึกถึงเหตุผลที่ดีว่าทำไมไม่ยอมรับ VM ที่ส่งมอบได้ แต่ฉันแค่ต้องการเรียกใช้โดยชุมชนนี้ในกรณีที่มีบางสิ่งที่ฉันขาดหายไป

3
มีอะไรที่ยอดเยี่ยมเกี่ยวกับ Clojure [ปิด]
ฉันได้ดู Clojure เมื่อเร็ว ๆ นี้และฉันสะดุดโพสต์ใน Stackoverflowที่ระบุว่าโครงการบางอย่างปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดและรหัส Clojure ที่ดีโดยรวม ฉันต้องการเรียนภาษาอังกฤษหลังจากอ่านบทเรียนพื้นฐานบางอย่างดังนั้นฉันจึงดูโครงการ "โลกแห่งความจริง" บางอย่าง หลังจากดูClojureScriptและCompojure (สองโครงการ "ดี" ดังกล่าวข้างต้น) ฉันแค่รู้สึกว่า Clojure เป็นเรื่องตลก ผมไม่เข้าใจว่าทำไมคนที่จะเลือก Clojure มากกว่าพูด, ทับทิมหรืองูหลามสองภาษาที่ฉันรักและมีเช่นไวยากรณ์ที่สะอาดและมีความง่ายต่อการรับขณะ Clojure ใช้มากวงเล็บและสัญลักษณ์ทุกที่ว่ามันซากปรักหักพังอ่านง่ายสำหรับ ฉัน. ฉันคิดว่า Ruby และ Python นั้นสวยงามอ่านง่ายและสง่างาม อ่านง่ายแม้กับคนที่ไม่เข้าใจภาษา อย่างไรก็ตาม Clojure นั้นทึบสำหรับฉันและฉันรู้สึกว่าฉันต้องรู้รายละเอียดเล็ก ๆ น้อย ๆ เกี่ยวกับการใช้ภาษาเพื่อให้สามารถเข้าใจรหัสใด ๆ ดังนั้นโปรดช่วยสอนฉันด้วย! อะไรดีเกี่ยวกับ Clojure ขั้นต่ำสุดที่ฉันควรรู้เกี่ยวกับภาษาคืออะไรเพื่อขอบคุณมัน
40 clojure 

9
โปรแกรมเมอร์ทำอะไรก่อนขอบเขตตัวแปรซึ่งทุกอย่างอยู่ในระดับโลก?
ดังนั้นฉันต้องจัดการกับภาษา archiac ที่ดูเหมือน (เรียกว่า PowerOn) ที่ฉันมีวิธีการหลักประเภทข้อมูลไม่กี่เพื่อกำหนดตัวแปรด้วยและมีความสามารถในการมีขั้นตอนย่อย (วิธีการโมฆะเป็นหลัก) ที่ไม่กลับประเภท และไม่ยอมรับการโต้แย้งใด ๆ ปัญหาที่นี่คือทุกสิ่งที่เป็นระดับโลก ฉันได้อ่านภาษาเหล่านี้แล้ว แต่หนังสือส่วนใหญ่ใช้คำว่า "โอเคเราใช้ม้าและ cariage แต่ตอนนี้ที่นี่เป็นรถดังนั้นเรามาเรียนรู้วิธีการทำงานกับสิ่งนั้น!" เราไม่เคยจะมีชีวิตอีกวันนั้น" . ฉันต้องยอมรับความคิดจะดิ้นรนที่จะคิดนอกขอบเขตและขอบเขต ที่นี่ฉัน ฉันพยายามหาวิธีที่จะจัดการอะไรได้ดีที่สุดนอกจากตัวแปรทั่วโลกในวิธีการเปิดที่หลากหลาย ใช่แม้แต่ตัววนซ้ำสำหรับforลูปต้องถูกกำหนดให้เป็นโกลบาลีซึ่งฉันพบว่าตัวเองกำลังรีไซเคิลในส่วนต่าง ๆ ของรหัสของฉัน คำถามของฉัน: สำหรับผู้ที่มีประสบการณ์ประเภทนี้โปรแกรมเมอร์เขียนวิธีจัดการกับตัวแปรจำนวนมากในสนามเด็กเล่นทั่วโลกได้อย่างไร ฉันรู้สึกว่ามันเป็นเพียงกลลวงทางจิต แต่ฉันสนใจที่จะรู้ว่ามีปัญหาใด ๆ ที่เป็นที่รู้จักหรือไม่
40 scope 

7
คุณเปลี่ยนหมายเลขรุ่นหลัก / รอง / โปรแกรมปรับปรุงเมื่อใด
ซ้ำได้: คุณใช้“ แบบแผนการตั้งชื่อเวอร์ชัน” อะไร คุณเปลี่ยนหมายเลขรุ่นหลัก / รอง / แพตช์ของคุณทันทีก่อนที่คุณจะวางจำหน่ายหรือหลังจากนั้น ตัวอย่าง: คุณเพิ่งปล่อย 1.0.0 สู่โลก (huzzah!) แต่เดี๋ยวก่อนอย่าฉลองมากเกินไป 1.1.0 ออกมาในอีกหกสัปดาห์! ดังนั้นคุณจึงแก้ไขข้อผิดพลาดและสร้างงานใหม่ งานสร้างนั้นเรียกว่าอะไร? 1.1.0.0 หรือ 1.0.0.xxxy (โดยที่ xxxy คือหมายเลขบิลด์ที่เพิ่มขึ้น 1.0.0)? โปรดทราบว่าคุณอาจมีคุณสมบัติและข้อบกพร่อง 100 ข้อที่จะเข้าสู่ 1.1.0 ดังนั้นอาจเป็นการดีที่จะเรียกมันว่า 1.0.0.xxxy เพราะคุณอยู่ใกล้กับ 1.1.0 แล้ว แต่ในทางกลับกัน dev อื่นอาจทำงานบน 2.0.0 ซึ่งในกรณีนี้งานสร้างของคุณอาจชื่อ 1.1.0.0 และ 2.0.0.0 ดีกว่าแทนที่จะเป็น 1.0.0.xxxy และ 1.0.0.xxxz ตามลำดับ
40 versioning 

13
เราจะทำให้การทดสอบหน่วยทำงานอย่างรวดเร็วได้อย่างไร
เรามาถึงจุดที่โครงการของเราซึ่งเรามีการทดสอบเกือบหนึ่งพันครั้งและผู้คนหยุดทำงานก่อนที่จะทำการเช็คอินเพราะมันใช้เวลานานมาก อย่างดีที่สุดพวกเขาเรียกใช้การทดสอบที่เกี่ยวข้องกับชิ้นส่วนของรหัสที่พวกเขาเปลี่ยนแปลงและที่เลวร้ายที่สุดพวกเขาเพียงตรวจสอบโดยไม่ต้องทดสอบ ฉันเชื่อว่าปัญหานี้เกิดจากความจริงที่ว่าโซลูชันเพิ่มขึ้นถึง 120 โครงการ (เรามักจะทำโครงการขนาดเล็กมากและนี่เป็นเพียงครั้งที่สองที่เราทำ TDD อย่างถูกต้อง) และเวลาสร้าง + ทดสอบเพิ่มขึ้นประมาณสองถึงสามนาที บนเครื่องที่น้อยกว่า เราจะลดระยะเวลาในการทดสอบได้อย่างไร มีเทคนิคไหม? แกล้งทำมากขึ้น? แกล้งทำน้อยลงหรือไม่ บางทีการทดสอบการรวมที่ใหญ่กว่านั้นไม่ควรทำงานโดยอัตโนมัติเมื่อทำการทดสอบทั้งหมดใช่ไหม แก้ไข:เพื่อเป็นการตอบสนองต่อคำตอบหลาย ๆ คำเราใช้ CI และ build server อยู่แล้วนี่คือวิธีที่ฉันรู้ว่าการทดสอบล้มเหลว ปัญหา (จริง ๆ แล้วเป็นอาการ) คือเราได้รับข้อความเกี่ยวกับงานสร้างที่ล้มเหลว ใช้การทดสอบบางส่วนเป็นสิ่งที่คนส่วนใหญ่ทำ แต่ไม่ใช่ทั้งหมด และเกี่ยวกับการทดสอบพวกเขาทำได้ค่อนข้างดีพวกเขาใช้ของปลอมสำหรับทุกสิ่งและไม่มี IO เลย
40 c#  unit-testing  tdd  nunit 

3
ประสบการณ์การทำงานของ Python“ PEP-302 ใหม่นำเข้า hooks” [ปิด]
ฉันเป็นหนึ่งในนักพัฒนาของ Ruby (CRuby) เรากำลังทำงานกับการเปิดตัว Ruby 2.0 (วางแผนที่จะเปิดตัว 2012 / กุมภาพันธ์) Python มี"PEP302: hooks นำเข้าใหม่" (2003): PEP นี้เสนอให้เพิ่มชุดนำเข้า hooks ใหม่ที่เสนอการปรับแต่งที่ดีขึ้นของกลไกการนำเข้า Python ตรงกันข้ามกับตะขอนำเข้าปัจจุบันตะขอรูปแบบใหม่สามารถถูกแทรกลงในโครงร่างที่มีอยู่ได้เพื่อให้สามารถควบคุมได้ละเอียดยิ่งขึ้นว่าโมดูลถูกค้นพบได้อย่างไรและโหลดอย่างไร เรากำลังพิจารณาที่จะเปิดตัวฟีเจอร์ที่คล้ายกับ PEP302 ไปสู่ ​​Ruby 2.0 (CRuby 2.0) ฉันต้องการยื่นข้อเสนอที่สามารถชักชวน Matz ปัจจุบัน CRuby สามารถโหลดสคริปต์จากระบบไฟล์ในแบบมาตรฐานเท่านั้น หากคุณมีประสบการณ์หรือข้อพิจารณาเกี่ยวกับ PEP 302 โปรดแบ่งปัน ตัวอย่าง: มันเป็นสเป็คที่ยอดเยี่ยม ไม่จำเป็นต้องเปลี่ยน เกือบดี แต่มีปัญหานี้ ... ถ้าฉันสามารถย้อนกลับไปปี 2003 ได้ฉันจะเปลี่ยนสเป็คเป็น ...

1
ดึงการเปลี่ยนแปลงจาก repo ที่มีการแยกโดยไม่มีการร้องขอบน GitHub หรือไม่?
ฉันใหม่สำหรับชุมชนการเข้ารหัสทางสังคมและไม่ทราบวิธีดำเนินการอย่างถูกต้องในสถานการณ์นี้: ฉันสร้างGitHub Repositoryเมื่อสองสามสัปดาห์ก่อน มีคนแยกโครงการและทำการเปลี่ยนแปลงเล็กน้อยที่ต้องทำ ฉันตื่นเต้นที่มีคนติดตามโครงการของฉันและใช้เวลาในการเพิ่มเข้าไป ฉันต้องการดึงการเปลี่ยนแปลงเป็นรหัสของฉันเอง แต่มีข้อกังวลสองสามข้อ 1) ฉันไม่รู้วิธีดึงการเปลี่ยนแปลงผ่าน git จาก repo ที่มีการแยก ความเข้าใจของฉันคือว่ามีวิธีที่ง่ายในการรวมการเปลี่ยนแปลงผ่านคำขอดึง แต่ดูเหมือนว่าหัวหน้าจะต้องออกคำขอนั้นหรือไม่ 2) เป็นที่ยอมรับหรือไม่ที่จะดึงการเปลี่ยนแปลงโดยไม่มีการร้องขอการดึง เรื่องนี้เกี่ยวข้องกับคนแรก ฉันจะวางรหัสไว้สองสามสัปดาห์แล้วกลับมาพบว่าสิ่งที่ฉันกำลังจะทำต่อไปคือทำโดยคนอื่นและไม่ต้องการคัดลอกรหัสโดยไม่ให้เครดิตในทางใดทางหนึ่ง ไม่ควรจะมีการดึงการเปลี่ยนแปลงแม้ว่าพวกเขาจะไม่ขอให้คุณอย่างชัดเจน? มารยาทที่นี่คืออะไร ฉันอาจจะคิดถึงสิ่งนี้ แต่ขอขอบคุณสำหรับข้อมูลของคุณล่วงหน้า ฉันค่อนข้างใหม่สำหรับชุมชนแฮ็กเกอร์ แต่ฉันต้องการทำสิ่งที่ฉันสามารถมีส่วนร่วม!
40 git  github  etiquette 

12
กฎที่ไม่ได้เขียนของการเขียนรหัสของสมาชิกทีมคนอื่น [ปิด]
เรากำลังฝึกการเป็นเจ้าของรหัสโดยรวม เพื่อความเข้าใจของฉันนี่หมายความว่านักพัฒนาซอฟต์แวร์สามารถเปลี่ยนบรรทัดของรหัสใด ๆ เพื่อเพิ่มฟังก์ชันการทำงานเพื่อ refactor แก้ไขข้อบกพร่องหรือปรับปรุงการออกแบบ แต่สิ่งที่เกี่ยวกับการเขียนใหม่ของรหัสจากนักพัฒนาที่ยังอยู่ในทีม? ฉันควรถามเขาก่อน การปฏิบัติที่ดีที่สุดคืออะไร?

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