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

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

17
ทำไมรัฐโลกถึงชั่วร้าย?
ก่อนที่เราจะเริ่มสิ่งนี้ให้ฉันบอกว่าฉันตระหนักดีถึงแนวคิดของ Abstraction และ Dependency Injection ฉันไม่ต้องการตาที่เปิดอยู่ที่นี่ พวกเราส่วนใหญ่พูดกันหลายครั้งโดยไม่เข้าใจว่า "อย่าใช้ตัวแปรทั่วโลก" หรือ "ซิงเกิลตันนั้นชั่วร้ายเพราะเป็นโลก" แต่จริงๆสิ่งที่เป็นเลวร้ายเกี่ยวกับสถานะทั่วโลกเป็นลางไม่ดี? สมมติว่าฉันต้องการการกำหนดค่าทั่วโลกสำหรับแอปพลิเคชันของฉันเช่นเส้นทางของโฟลเดอร์ระบบหรือหนังสือรับรองฐานข้อมูลทั่วทั้งแอปพลิเคชัน ในกรณีนี้ฉันไม่เห็นวิธีแก้ปัญหาที่ดีนอกจากการจัดเตรียมการตั้งค่าเหล่านี้ในพื้นที่ส่วนกลางบางประเภทซึ่งโดยทั่วไปจะพร้อมใช้งานสำหรับแอปพลิเคชันทั้งหมด ฉันรู้ว่ามันไม่ดีที่จะละเมิดมัน แต่เป็นพื้นที่ทั่วโลกจริงๆที่ชั่ว? และถ้าเป็นเช่นนั้นมีทางเลือกอะไรที่ดีบ้าง?

30
เหตุใดนักวิเคราะห์ธุรกิจและผู้จัดการโครงการจึงได้เงินเดือนสูงกว่าโปรแกรมเมอร์ [ปิด]
เราต้องยอมรับว่าการเขียนโปรแกรมนั้นยากกว่าการสร้างเอกสารหรือแม้แต่การสร้างแผนภูมิแกนต์และขอความคืบหน้ากับโปรแกรมเมอร์ ดังนั้นสำหรับพวกเราที่ไร้เดียงสารู้ว่าการเขียนโปรแกรมโดยทั่วไปยากกว่าทำไมนักวิเคราะห์ธุรกิจและผู้จัดการโครงการจึงได้เงินเดือนสูงกว่าโปรแกรมเมอร์ อะไรคือสิ่งที่ทำให้งานของพวกเขาเป็นงานที่มีรายได้สูงแม้ในบางครั้งโปรแกรมเมอร์ก็กลับบ้านช้า UPDATE ขอโทษด้วยความไม่รู้ของฉันจากการตอบสนองบางอย่างดูเหมือนว่าเหตุผลที่ BAs และ PMs ได้รับเงินเดือนที่สูงขึ้นเพราะพวกเขาเป็นคนที่มักจะรับผิดชอบโปรแกรมเมอร์ทำ แต่ในตอนท้ายของวันมันเป็นโปรแกรมเมอร์ที่ทำให้มือสกปรกเพื่อแก้ไขความยุ่งเหยิงและทำงานหนักขึ้น ดังนั้นมันจึงไม่สมเหตุสมผล

14
คุณควรเขียน back-end ของคุณเป็น API หรือไม่?
วันนี้ฉันมีการสนทนาที่ร้อนแรงเกี่ยวกับแอปพลิเคชัน MVC ของเรา เรามีเว็บไซต์ที่เขียนใน MVC ( ASP.NET ) และโดยปกติจะเป็นไปตามรูปแบบของการทำอะไรบางอย่างในมุมมอง -> กดคอนโทรลเลอร์ -> คอนโทรลเลอร์สร้างโมเดล (เรียกผู้จัดการที่รับข้อมูลสร้างโมเดลใน วิธีการควบคุมเอง) -> โมเดลไปที่ดู -> ล้างและทำซ้ำ เขาบอกว่ารหัสของเราอยู่คู่กันแน่นเกินไป ตัวอย่างเช่นหากเราต้องการแอพพลิเคชันเดสก์ท็อปเช่นกันเราจะไม่สามารถใช้รหัสที่มีอยู่ของเราได้ วิธีแก้ปัญหาและแนวทางปฏิบัติที่ดีที่สุดที่เขากล่าวคือสร้าง API จากนั้นสร้างเว็บไซต์ของคุณบน API ของคุณจากนั้นสร้างแอปพลิเคชันเดสก์ท็อปแอพมือถือและอื่น ๆ นั้นง่ายมาก ดูเหมือนว่าเป็นความคิดที่ไม่ดีสำหรับฉันด้วยเหตุผลหลายประการ อย่างไรก็ตามฉันไม่สามารถหาสิ่งใดได้โดยใช้ Google ซึ่งอาจพูดถึงการฝึกฝนนี้ ใครบ้างมีข้อมูลเกี่ยวกับข้อดีข้อเสียทำไมคุณควรทำไมคุณไม่ควรหรืออ่านเพิ่มเติม เหตุผลบางอย่างที่ฉันคิดว่ามันเป็นความคิดที่ไม่ดี: มันเป็นนามธรรมเกินไปที่จะเรียกใช้แบ็กเอนด์ของคุณจาก API คุณกำลังพยายามทำให้ยืดหยุ่นเกินไปซึ่งจะทำให้ไม่สามารถจัดการได้ ทุกสิ่งที่สร้างขึ้นใน MVC ดูเหมือนไร้ประโยชน์เช่นบทบาทและการรับรองความถูกต้อง ตัวอย่างเช่น [อนุญาต] คุณสมบัติและความปลอดภัย; คุณจะต้องม้วนตัวเอง การเรียก API ทั้งหมดของคุณจะต้องมีข้อมูลความปลอดภัยแนบมาและคุณจะต้องพัฒนาระบบโทเค็นและอะไรก็ตาม คุณจะต้องเขียนการเรียก API ที่สมบูรณ์สำหรับทุกฟังก์ชั่นเดียวที่โปรแกรมของคุณจะทำ …

8
'เวที' หมายถึงอะไรใน git?
ฉันพบว่ายากที่จะเข้าใจเพราะฉันไม่สามารถหาความหมายของคำที่ใช้สำหรับการกระทำได้ ฉันตรวจสอบพจนานุกรมสำหรับความหมายของ 'ระยะ' และไม่มีความหมายใดที่เกี่ยวข้องกับแนวคิดการควบคุมแหล่งที่มา 'ระยะ' หมายถึงอะไรในบริบทของคอมไพล์?

5
ฉันควรเก็บที่เก็บ GitHub ของฉันแยกจากกันไปเรื่อย ๆ หรือไม่?
ดังนั้นฉันจึงแยกที่เก็บของคนอื่นทำการเปลี่ยนแปลงเล็กน้อยส่งคำขอการดึงและการเปลี่ยนแปลงของฉันทำให้มันเป็นผลิตภัณฑ์ ที่ดี! แต่ ... ฉันควรทำอย่างไรกับที่เก็บแบบแยก มีเหตุผลที่น่าสนใจสำหรับฉันที่จะเก็บที่เก็บของฉันไปรอบ ๆ หรือฉันควรจะไปข้างหน้าและลบมันได้หรือไม่ ฉันไม่ได้วางแผนที่จะมีส่วนร่วมเพิ่มเติม แต่ถ้าฉันเปลี่ยนใจฉันถือว่าฉันสามารถแยกมันได้เสมอ ฉันไม่ได้กังวลเกี่ยวกับการสำรองข้อมูล ฉันกังวลมากขึ้นเกี่ยวกับการแบ่งลิงก์สูญเสียการส่งข้อความ ฯลฯ
314 github 

4
โปรแกรมช่องว่างของสหภาพโซเวียตใช้ภาษาโปรแกรมซอฟต์แวร์อะไร
ฉันสนใจโปรแกรมอวกาศของโซเวียตและสนใจที่จะค้นพบว่าซอฟต์แวร์บนยานอวกาศ Buranประมาณปี 1988 เขียนขึ้นใน Prolog มีใครรู้บ้างไหมว่าภาษาใดบ้างที่อาจถูกนำมาใช้ในภารกิจก่อนหน้านี้โดยเฉพาะอย่างยิ่งภารกิจยานพรวนดิน Mars PrOP-Mในต้นปี 1970 ซึ่งค่อนข้างอิสระและสามารถนำทางอุปสรรคได้ แก้ไข แหล่งที่มาของฉันสำหรับ Buran Prolog เป็นเอกสารที่ไม่เป็นความลับอีกต่อไปจากไซต์ CIAเมื่อเดือนพฤษภาคม 1990 ฉันไม่พบเวอร์ชัน OCR ดังนั้นนี่เป็นคำพูดที่เกี่ยวข้องจาก p 0449: ตามวรรณคดีโอเพนซอร์ซโซเวียตใช้ภาษาเขียนโปรแกรมที่พัฒนาโดยฝรั่งเศสที่รู้จักกันในชื่อ Prolog เพื่อพัฒนาซอฟต์แวร์ระบบออนบอร์ดสำหรับยาน Buran ...

16
ทำไมทางลัดเช่น x + = y จึงถือว่าเป็นแนวปฏิบัติที่ดี
ฉันไม่รู้ว่าสิ่งเหล่านี้เรียกว่าอะไร แต่ฉันเห็นพวกเขาตลอดเวลา การใช้งาน Python นั้นมีลักษณะดังนี้: x += 5x = x + 5เป็นสัญกรณ์ชวเลข แต่ทำไมถึงถือว่าเป็นวิธีปฏิบัติที่ดี? ฉันเจอมันเกือบทุกเล่มหรือแบบฝึกหัดการเขียนโปรแกรมที่ฉันได้อ่านสำหรับ Python, C, Rและอื่น ๆ ฉันเข้าใจว่าสะดวกแล้วประหยัดการกดแป้นสามครั้งรวมถึงช่องว่าง แต่พวกเขาเสมอดูเหมือนจะเดินทางฉันขึ้นเมื่อฉันอ่านรหัสและอย่างน้อยในใจของฉันให้มันน้อยอ่านไม่ ฉันขาดเหตุผลบางอย่างที่ชัดเจนและชัดเจนเหล่านี้ถูกใช้ทั่วสถานที่หรือไม่

19
ฉันควรกลับจากฟังก์ชันก่อนหน้าหรือใช้คำสั่ง if [ปิด]
ฉันมักจะเขียนฟังก์ชันประเภทนี้ทั้งสองรูปแบบและฉันสงสัยว่ารูปแบบใดรูปแบบหนึ่งที่ต้องการมากกว่าอีกรูปแบบหนึ่งและทำไม public void SomeFunction(bool someCondition) { if (someCondition) { // Do Something } } หรือ public void SomeFunction(bool someCondition) { if (!someCondition) return; // Do Something } ฉันมักจะเขียนโค๊ดกับอันแรกเพราะนั่นเป็นวิธีที่สมองของฉันทำงานขณะเขียนโค้ดถึงแม้ว่าฉันคิดว่าฉันชอบอันที่สองเพราะมันจะจัดการกับข้อผิดพลาดในการจัดการทันทีและฉันอ่านง่ายขึ้น

30
ฉันจะรู้ได้อย่างไรว่าฉันเป็นโปรแกรมเมอร์ที่ดีหรือไม่?
เช่นเดียวกับคนส่วนใหญ่ฉันคิดว่าตัวเองเป็นคนที่ค่อนข้างสูงกว่าค่าเฉลี่ยในสาขาของฉัน ฉันได้รับค่าตอบแทนที่ดีฉันได้รับการโปรโมตและฉันไม่เคยมีปัญหาที่แท้จริงในการได้รับการอ้างอิงที่ดีหรือการหางาน แต่ฉันก็ยังพอที่จะสังเกตเห็นว่าโปรแกรมเมอร์ที่แย่ที่สุดหลายคนที่ฉันเคยทำงานด้วยคิดว่าพวกเขาเก่งที่สุด โปรแกรมเมอร์ที่ไม่ดีซึ่งรายล้อมไปด้วยโปรแกรมเมอร์ที่ไม่ดีคนอื่น ๆ ดูเหมือนจะเป็นคนที่ไม่ชอบตัวเองมากที่สุด แน่นอนว่าฉันไม่สมบูรณ์แบบ ฉันทำผิดพลาด ฉันพลาดกำหนดส่ง แต่ฉันคิดว่าฉันทำเรื่องจำนวนคนใจดำขยับเหมือนกันกับ "โปรแกรมเมอร์ที่ดีคนอื่น" ปัญหาคือฉันกำหนด "โปรแกรมเมอร์ที่ดีอื่น ๆ " ให้หมายถึง "คนที่เป็นเหมือนฉัน" ดังนั้นฉันสงสัยว่ามีวิธีใดบ้างที่โปรแกรมเมอร์สามารถทำการประเมินตนเองได้อย่างเหมาะสม? เราจะรู้ได้อย่างไรว่าเราทำงานดีหรือไม่ดี? หรือหากคำเช่นดีและไม่ดีมีคำจำกัดความที่ไม่ดีนักโปรแกรมเมอร์จะระบุจุดแข็งและจุดอ่อนของตนเองอย่างสุจริตได้อย่างไรเพื่อให้พวกเขาสามารถใช้ประโยชน์จากอดีตและการทำงานเพื่อพัฒนาสิ่งหลัง
301 evaluation 

10
ฉันเป็นคนโค่นล้มเพราะเหตุใดฉันจึงควรพิจารณาหรือไม่พิจารณา Mercurial หรือ Git หรือ DVCS อื่น ๆ
ฉันพยายามเข้าใจถึงประโยชน์ของระบบควบคุมรุ่นแจกจ่าย (DVCS) ฉันพบว่าการโค่นล้ม Re-educationและบทความนี้โดยMartin Fowlerมีประโยชน์มาก Mercurial และ DVCS อื่น ๆ โปรโมตวิธีใหม่ในการทำงานกับโค้ดด้วยเซ็ตการแก้ไขและการคอมมิชชันท้องถิ่น มันป้องกันการรวมนรกและปัญหาการทำงานร่วมกันอื่น ๆ เราไม่ได้รับผลกระทบจากสิ่งนี้เนื่องจากฉันฝึกการรวมกลุ่มอย่างต่อเนื่องและทำงานคนเดียวในสาขาเอกชนไม่ใช่ตัวเลือกเว้นแต่ว่าเรากำลังทำการทดลอง เราใช้สาขาสำหรับทุกรุ่นสำคัญซึ่งเราจะแก้ไขข้อบกพร่องที่รวมเข้ากับลำต้น Mercurial อนุญาตให้คุณมีผู้หมวด ฉันเข้าใจว่าสิ่งนี้มีประโยชน์สำหรับโครงการขนาดใหญ่มากเช่น Linux แต่ฉันไม่เห็นคุณค่าในทีมขนาดเล็กและการทำงานร่วมกันสูง (5 ถึง 7 คน) Mercurial เร็วกว่าใช้พื้นที่ดิสก์น้อยลงและการทำสำเนาโลคัลเต็มรูปแบบช่วยให้สามารถบันทึกและดำเนินการได้เร็วขึ้น ฉันไม่ได้กังวลเรื่องนี้เช่นกันเนื่องจากฉันไม่ได้สังเกตเห็นความเร็วหรือปัญหาเกี่ยวกับพื้นที่ของ SVN แม้ว่าจะมีโครงการขนาดใหญ่มากที่ฉันกำลังทำงานอยู่ ฉันกำลังมองหาประสบการณ์ส่วนตัวและ / หรือความคิดเห็นของคุณจากอดีต SVN โดยเฉพาะอย่างยิ่งเกี่ยวกับแนวคิดเซ็ตการแก้ไขและประสิทธิภาพโดยรวมที่คุณวัดได้ UPDATE (วันที่ 12 มกราคม) : ตอนนี้ฉันเชื่อว่ามันคุ้มค่าที่จะลอง UPDATE (12 มิ.ย. ) : ฉันจูบ Mercurial และฉันชอบมัน รสชาติของเชอร์รี่ท้องถิ่นของเขามุ่งมั่น ฉันจูบ …

20
SVN ทำอะไรได้ดีกว่า Git [ปิด]
ไม่มีคำถามว่าส่วนใหญ่ของการอภิปรายมากกว่าเครื่องมือโปรแกรมเมอร์กลั่นทั้งทางเลือกส่วนบุคคล (โดยผู้ใช้) หรือเน้นการออกแบบ , ที่ , การเพิ่มประสิทธิภาพการออกแบบตามโดยเฉพาะอย่างยิ่งการใช้กรณี (โดยสร้างเครื่องมือ) โปรแกรมแก้ไขข้อความอาจเป็นตัวอย่างที่โดดเด่นที่สุด - coder ที่ทำงานบน Windows ในที่ทำงานและรหัสในHaskellบน Mac ที่บ้านค่าข้ามแพลตฟอร์มและการรวมคอมไพเลอร์และเลือกEmacsผ่านTextMateฯลฯ เป็นเรื่องธรรมดาที่เทคโนโลยีที่เพิ่งนำมาใช้ใหม่นั้นมีความเหนือกว่าตัวเลือกที่ยังหลงเหลืออยู่ ในความเป็นจริงแล้วกรณีนี้เกิดขึ้นกับระบบควบคุมเวอร์ชัน (VCS) โดยเฉพาะอย่างยิ่งVCS แบบรวมศูนย์ ( CVSและSVN ) กับVCS ( GitและMercurial ) แบบกระจาย ? ฉันใช้ SVN เป็นเวลาประมาณห้าปีและปัจจุบัน SVN ใช้ในที่ทำงานของฉัน น้อยกว่าสามปีก่อนฉันเปลี่ยนมาใช้ Git (และ GitHub) สำหรับโครงการส่วนตัวทั้งหมดของฉัน ฉันสามารถคิดถึงข้อดีหลายประการของ Git ในการโค่นล้ม (และนามธรรมส่วนใหญ่จะเป็นข้อได้เปรียบของการกระจายไปยัง VCS ส่วนกลาง) แต่ฉันไม่สามารถคิดถึงตัวอย่างที่ตรงกันข้ามได้ - งานบางอย่าง (ที่เกี่ยวข้องและเกิดขึ้นในโปรแกรมเมอร์ตามปกติ …

14
ทำไมทุกคนถึงใช้ Git ในลักษณะรวมศูนย์?
ฉันใช้ Git ในอดีตที่ผ่านมาทั้งสอง บริษัท เพื่อควบคุมเวอร์ชัน ดูเหมือนว่าจากสิ่งที่ฉันได้ยินมาว่าประมาณ 90% ของ บริษัท ใช้ Git มากกว่าระบบควบคุมเวอร์ชันอื่น หนึ่งในจุดขายที่ใหญ่ที่สุดของ Git ก็คือมันมีการกระจายอำนาจเช่นที่เก็บทั้งหมดมีค่าเท่ากัน ไม่มีแหล่งเก็บข้อมูลส่วนกลาง / แหล่งที่มาของความจริง นี่คือฟีเจอร์ของLinus Torvalds ที่ได้รับการปกป้อง แต่ดูเหมือนว่าทุก บริษัท ใช้ Git ในลักษณะรวมศูนย์เหมือนหนึ่งจะใช้ SVN หรือ CVS มักจะมีที่เก็บส่วนกลางบนเซิร์ฟเวอร์ (โดยปกติจะอยู่ที่ GitHub) ที่ผู้คนดึงและดันไป ฉันไม่เคยเห็นหรือได้ยินผู้คนที่ใช้ Git ในลักษณะที่มีการกระจายอำนาจอย่างแท้จริงตามที่ตั้งใจไว้คือการผลักดันและดึงไปยังที่เก็บเพื่อนร่วมงานคนอื่น ๆ ตามที่เห็นสมควร คำถามของฉันคือ: ทำไมคนไม่ใช้เวิร์กโฟลว์แบบกระจายสำหรับ Git ในทางปฏิบัติ ความสามารถในการทำงานในลักษณะกระจายนั้นสำคัญกับการควบคุมเวอร์ชันที่ทันสมัยหรือไม่หรือแค่ฟังดูดี แก้ไข ฉันรู้ว่าฉันไม่ได้รับเสียงที่ถูกต้องในคำถามเดิมของฉัน ดูเหมือนว่าฉันกำลังถามว่าทำไมทุกคนจะทำงานในลักษณะรวมศูนย์เมื่อระบบควบคุมเวอร์ชันกระจาย (DVCS) เหนือกว่าอย่างเห็นได้ชัด ในความเป็นจริงสิ่งที่ฉันหมายถึงคือฉันไม่เห็นประโยชน์ใด ๆ …

16
วัฒนธรรม Grokking Java - ทำไมสิ่งต่าง ๆ ถึงหนักนัก มันเหมาะกับอะไร? [ปิด]
ฉันเคยใช้รหัสใน Python มาก ตอนนี้สำหรับเหตุผลการทำงานฉันรหัสใน Java โครงการที่ฉันทำมีขนาดค่อนข้างเล็กและ Python อาจทำงานได้ดีขึ้น แต่มีเหตุผลที่ไม่เป็นวิศวกรรมที่ถูกต้องในการใช้ Java (ฉันไม่สามารถอธิบายรายละเอียดได้) ไวยากรณ์ของ Java ไม่มีปัญหา มันเป็นเพียงภาษาอื่น แต่นอกเหนือจากไวยากรณ์แล้ว Java ยังมีวัฒนธรรมชุดวิธีการพัฒนาและวิธีปฏิบัติที่ถือว่า "ถูกต้อง" และสำหรับตอนนี้ฉันล้มเหลวอย่างสิ้นเชิงที่จะ "คร่ำครวญ" วัฒนธรรมนั้น ดังนั้นฉันจะขอบคุณคำอธิบายหรือพอยน์เตอร์ในทิศทางที่ถูกต้อง ตัวอย่างที่สมบูรณ์แบบน้อยที่สุดมีอยู่ในคำถาม Stack Overflow ที่ฉันเริ่มต้น: https://stackoverflow.com/questions/43619566/returning-a-result-with-several-values-the-java-way/43620339 ฉันมีงาน - แยก (จากสตริงเดียว) และจัดการชุดสามค่า ใน Python มันเป็นหนึ่งซับ (tuple) ใน Pascal หรือ C-5 ซับเร็กคอร์ด / struct ตามคำตอบที่เทียบเท่าของ struct มีอยู่ในไวยากรณ์ Java และสามมีอยู่ในห้องสมุด Apache …

30
ทำไมทุก บริษัท ไม่ซื้อฮาร์ดแวร์ที่ดีที่สุดสำหรับนักพัฒนา
ฉันต้องคิดถึงบางสิ่ง ค่าใช้จ่ายในการจ้างโปรแกรมเมอร์ในพื้นที่ของฉันคือ $ 50 ถึง $ 100 ต่อชั่วโมง เครื่องระดับบนสุดมีราคาเพียง $ 3,000 ดังนั้นค่าใช้จ่ายในการซื้อคอมพิวเตอร์ที่ยอดเยี่ยมอย่างแท้จริงทุก ๆ สามปีมาถึง $ 0.50 / ชั่วโมง ($ 3000 / (150 wks * 40 ชั่วโมง)) คุณต้องการเครื่องระดับบนสุดหรือไม่? ไม่ $ 3000 ที่นี่เพื่อแสดงให้เห็นถึงสิ่งที่สามารถใช้จ่ายได้ไม่ใช่จำนวนที่ฉันคาดหวัง ราคาโดยประมาณของ iMac หรือ MacBook ระดับบน (ประมาณ 17 นิ้ว) สมมติว่าคุณสามารถประหยัดได้ $ 2,000 ทุก ๆ สามปีโดยการซื้อคอมพิวเตอร์ราคาถูกกว่าและนักพัฒนาซอฟต์แวร์โดยเฉลี่ยของคุณกำลังทำเงิน $ 60 (ตัวเลขเหล่านี้เป็นตัวเลขที่เป็นกุศลมากที่สุดที่ฉันสามารถนำเสนอเคาท์เตอร์ bean ถ้าคุณประหยัดเพียง …

25
เมื่อไหร่ที่จะตอบกลับยิ่งใหญ่คำตอบ?
เพียงอ่านคำถามเกี่ยวกับการเขียนซ้ำครั้งใหญ่และฉันจำคำถามที่ฉันต้องการตอบเอง ฉันมีโปรเจ็กต์ที่แย่มากที่ฉันเขียนลงใน Java เก่าโดยใช้ Struts 1.0, ตารางที่มีความสัมพันธ์ที่ไม่สอดคล้องกันหรือไม่มีความสัมพันธ์เลยแม้แต่กับตารางที่ไม่มีคีย์หลักหรือเขตข้อมูลก็ถือว่าเป็นคีย์หลัก แอพส่วนใหญ่ใช้งานได้ หน้าส่วนใหญ่จะถูกนำมาใช้ซ้ำ (คัดลอกรหัสวาง) และฮาร์ดโค้ด ทุกคนที่เคยทำงานในโครงการได้สาปมันในรูปแบบเดียวหรืออื่น ๆ ตอนนี้ฉันได้พิจารณาที่จะเสนอผู้บริหารระดับสูงให้เขียนใหม่ทั้งหมดของแอปพลิเคชั่นที่น่ากลัวนี้ ฉันพยายามอย่างช้าๆในเวลาส่วนตัว แต่ฉันรู้สึกว่ามันสมควรได้รับทรัพยากรที่ทุ่มเทบางอย่างเพื่อให้มันเกิดขึ้น ต้องอ่านบทความเกี่ยวกับการเขียนครั้งใหญ่ฉันมีความคิดที่สอง และนั่นก็ไม่ดีเมื่อฉันต้องการโน้มน้าวผู้บังคับบัญชาของฉันเพื่อสนับสนุนการเขียนใหม่ของฉัน (ฉันทำงานใน บริษัท ขนาดเล็กพอสมควรดังนั้นข้อเสนอมีความเป็นไปได้ที่จะได้รับการอนุมัติ) TL; DR เมื่อใดคำตอบใหญ่ ๆ จะเขียนอีกครั้งและคุณสามารถใช้อาร์กิวเมนต์ใดในการสนับสนุน

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