เครื่องมือของนักออกแบบจะลดประสบการณ์การเขียนโปรแกรมหรือไม่? [ปิด]


10

ฉันได้ดูรอบ ๆ เมื่อเร็ว ๆ นี้โดยเฉพาะอย่างยิ่งในเครื่องมือ MS บางตัวที่มีให้ใช้งานและฉันสังเกตเห็นความสำคัญอย่างยิ่งต่อเครื่องมือออกแบบและตัวช่วยสร้าง ไม่เพียง แต่สำหรับการพัฒนา UI แต่สำหรับทุกสิ่ง

  • Entity Framework มีตัวแก้ไข
  • RIA Services มีวิซาร์ด DomainService
  • เวิร์กโฟลว์มีทั้งตัวออกแบบเวิร์กโฟลว์ที่เป็นสิ่งต่าง ๆ ... (ไม่รู้สิไม่ได้ใช้จริงๆ)

มีมากกว่านั้น แต่ฉันคิดว่าคุณเข้าใจ มีเครื่องมือนักออกแบบมากมาย ใช้บางสิ่งเหล่านี้ฉันพบว่า:

พวกเขามีความซับซ้อนเกินกว่าที่กำหนดไว้ในกรณีการใช้งาน

(เช่นวิดีโอสาธิตเทคโนโลยีทั้งหมด)

ฉันได้ทำการประเมินเทคโนโลยีเหล่านี้เมื่อไม่นานมานี้และพยายามที่จะทำงานกับพวกเขาฉันต้องแยกแยะสิ่งที่นักออกแบบ modellers และพ่อมดกำลังทำเพื่อฉัน ... มิฉะนั้นฉันก็หลงทางเมื่อต้องพยายามทำ บางสิ่งบางอย่างกับสิ่งที่ถูกสร้างขึ้น

ปลายนี้ขึ้นเป็นกรณีที่ผมต้องต่อสู้กับเครื่องมือหรือต่อสู้เอาท์พุทพอดังกล่าวว่าฉันจะได้ทำเพียงแค่สิ่งที่ทั้งตัวเองโดยไม่ได้ - และมีมากความเข้าใจที่แข็งแกร่งของสิ่งที่เกิดขึ้น ฉันพบสิ่งนี้โดยเฉพาะอย่างยิ่งกับนักออกแบบโดเมน Silverlight และบริการตัวช่วยสร้างบริการ RIA

ฉันพบว่าตัวเองถามว่า "เครื่องมือนี้อะไรที่ดีถ้าฉันต้องคิดออกผลงานภายในของมันหรือเขียนเอาท์พุทอีกครึ่งหนึ่งเพื่อใช้มัน?"

พวกเขาไม่เร็ว

จุดขายของเครื่องมือเหล่านี้คือการเพิ่มผลผลิตและจุดนี้อาจเปลี่ยนแปลงตลอดเวลาโดยใช้เครื่องมือและไม่จำเป็นต้องใช้กับผู้ออกแบบ UI (แม้ว่าในบางกรณีก็ยังคงเป็นเช่นนั้น -> ฉันกำลังมองหาคุณนักออกแบบ Silverlight) . ฉันพบว่าฉันสามารถแฮ็คโค้ดได้เร็วกว่าที่ฉันสามารถลากและวาง, ปรับขนาด, ย้าย, หรืออะไรก็ตามในนักออกแบบ

UI ได้รับในทางของรูปแบบ

บางทีนี่อาจเป็นเพียงฉัน แต่เมื่อฉันใช้อะไรที่ระลึกถึงเครื่องมือการออกแบบ UML ฉันใช้เวลามากขึ้นในการวางทุกอย่างออกมาเพื่อไม่ให้เส้นของฉันไขว้กันและฉันเห็นทุกอย่างบนหน้าจอมากกว่าการสร้างแบบจำลองสิ่งที่ฉัน พยายามบรรลุ

พวกเขาไม่สนุก

ครึ่งหนึ่งของเหตุผลที่ฉันใช้รหัสในการดำรงชีวิตคือฉันสนุกกับมัน การคลิกช่องทำเครื่องหมายและเลือก comboboxes จากนั้นแก้ไขทุกสิ่งที่ออกมาไม่สนุก

ฉันไม่ได้อยู่คนเดียว

ชุมชนดูเหมือนจะไม่ต้องการเครื่องมือเหล่านี้เช่นกัน ตัวอย่างที่ดีที่สุดที่ฉันสามารถนึกได้ในขณะนี้คือ Entity Framework Code-First

ดังนั้นฉันถาม:

  1. เครื่องมือของนักออกแบบปรับปรุงการผลิตจริงหรือไม่
  2. พวกเขาเป็นนักฆ่าหรือไม่?
  3. 'ชุมชน' จริง ๆ แล้วขอเครื่องมือออกแบบเพิ่มเติมหรือผู้ขายเพียงแค่คิดว่าเราเป็น

คำตอบ:


7

ฉันเดาว่าเครื่องมือการออกแบบที่ดีจะปรับปรุงประสิทธิภาพการผลิตและไม่นำออกจาก "ความสนุก" อย่างไรก็ตามมันเป็นเพียงการคาดเดาเพราะฉันยังไม่เจอเครื่องมือออกแบบที่ดี

ส่วนตัวแล้วฉันยังไม่ได้ขอเครื่องมือออกแบบ


2
+1 ฉันชอบ "ยังต้องเจอเครื่องมือออกแบบที่ดี" แม้ว่าฉันอาจเพิ่ม "ดีกว่าเรื่องสีเทาระหว่างดวงตาของฉัน"
เคนเฮนเดอร์สัน

2
+1 พ่อมดมีประโยชน์เฉพาะเมื่อคุณทำสิ่งที่เหมาะสมกับแบบจำลองที่พวกเขารวบรวม เพราะฉันส่วนใหญ่ได้รับเงินเพื่อทำสิ่งแปลก ๆ พวกเขามักจะได้รับในทาง เครื่องมือการออกแบบเพียงอย่างเดียวที่ฉันเคยชอบจริงๆคือ (เตรียมพร้อมสำหรับความตกใจจาก Microsoft ที่ไม่ใช่แฟน) ฐานข้อมูลกราฟิกและตัวสร้างคิวรีใน MS Access มันทำงานได้ดีเพราะฐานข้อมูลเชิงสัมพันธ์และ SQL นั้นทั้งแนวคิดค่อนข้างเรียบง่ายและถูกกำหนดไว้อย่างดีดังนั้นเครื่องมือออกแบบสามารถจัดการเกือบทุกอย่างที่คุณต้องการ
Bob Murphy

สิ่งใดก็ตามที่คุณสร้างขึ้นเพื่อช่วยให้คุณมีงานเป็น "เครื่องมือออกแบบที่ดี" ซึ่งรวมถึงโปรแกรมแก้ไขคอมไพเลอร์ของคุณดีบักเกอร์ห้องสมุดส่วนตัว ฯลฯ ปัญหาที่เกิดจาก "เครื่องชำระ" ส่วนใหญ่คือมันต้องมีความกว้างพอสำหรับทุกคนดังนั้นจึงมักจะไม่เหมาะกับปัญหา และพวกเขาไม่เคยรำคาญที่จะทำให้มันเล่นดี! โปรดทำตามปรัชญาของ Unix ฉันไม่ต้องการอยู่ในชุดเครื่องมือทำสวนที่มีกำแพงล้อมรอบของ MS
Spencer Rathbun

4
  1. ฉันคิดว่ามันอาจขึ้นอยู่กับ หากคุณเป็นนักพัฒนาที่ไม่มีประสบการณ์พอสมควรแล้วการใช้เครื่องมือออกแบบน่าจะมีประสิทธิภาพมากกว่าการพิมพ์ออกมา ฉันค่อนข้างมั่นใจว่าฉันทำงานได้อย่างมีประสิทธิภาพมากขึ้นในช่วง VB6 วันแรก ๆ ของฉันโดยใช้นักออกแบบมากกว่าที่ฉันจะทำมันออกมาด้วยมือ สิ่งที่ต้องพิจารณาอีกประการหนึ่งคือเทคโนโลยี (อย่างน้อยวิธีที่ IDE นำเสนอ) จะให้ตัวเองแก้ไขด้วยมือได้อย่างไร WinForms VB6 และ. NET ไม่แน่นอน (หรือคุณอาจไม่ต้องการแก้ไขไฟล์รหัส "สร้าง" (หรือบางส่วน) ด้วย WPF และ ASP.NET ฉันคิดว่านักพัฒนาที่ไม่มีประสบการณ์ค่อนข้างจะเริ่มต้นด้วย แต่จบการศึกษาอย่างรวดเร็วเพื่อแก้ไข XAML / ASP โดยตรงเมื่อคุณรู้ว่าคุณกำลังทำอะไรมันเร็วกว่าที่จะแก้ไข markup โดยตรงอย่างแน่นอนคิดย้อนกลับไปที่ EF v1.0

  2. ขึ้นอยู่กับว่ามาร์กอัปสนุกกับการทำงานหรือไม่ WPF และ ASP (.NET) เป็นเรื่องสนุก VB6 / WinForms - ไม่ต้องการแก้ไขส่วนของรหัสที่สร้างเกินความจำเป็น

  3. ฉันไม่คิดว่าชุมชนทำอย่างชัดเจน แม้ว่าเมื่อเรียนรู้สิ่งใหม่ ๆ ผู้ออกแบบสามารถทำให้กลืนในการเรียนรู้ได้ง่ายขึ้น


2

ตามปกติมันขึ้นอยู่กับ

เมื่อฉันตรวจสอบครั้งแรกโดยใช้บริการเว็บ Java มีบทช่วยสอน 50 หน้าและ. NET มีตัวช่วยสร้าง เดาสิว่าใช้อันไหนดี?


1

เหมือนกันที่นี่ไม่มีเครื่องมือออกแบบ

ฉันออกแบบฐานข้อมูล ERD บนกระดาษและเขียนโปรแกรมติดตั้งที่ออกคำสั่ง "สร้างตาราง" วิธีที่ฉันสามารถล้างและสร้างใหม่ได้ตามต้องการ ยังช่วยในการกำหนดเวอร์ชันฐานข้อมูล

ฉันพบว่ากระดาษ 11x17 (A3) สามารถเป็นสถานที่ที่ยอดเยี่ยมในการออกแบบระบบ compelex รับยางลบและดินสอดี (ฉันชอบStaedtler )


1

จากมุมมองของผู้ขายเครื่องมือออกแบบแฟนซีเหล่านั้นทั้งหมดมีจุดประสงค์คล้ายกับส่วนลด / สิทธิ์ใช้งานของนักเรียนฟรี ความคิดคือการอนุญาตให้คุณสร้างบางสิ่งบางอย่างด้วยความพยายามและค่าใช้จ่ายน้อยที่สุด เมื่อคุณลงทุนพวกเขากำลังพนันว่าคุณจะได้เรียนรู้ที่จะขยายทักษะของคุณด้วยเครื่องมือของพวกเขาแทนที่จะไปเรียนรู้คนอื่น

ไม่ได้หมายความว่าเครื่องมือจะไม่มีประโยชน์ในการใช้งานอย่างถูกกฎหมาย มันควรจะมีประโยชน์ในการตรวจสอบรหัสที่สร้างขึ้นและเรียนรู้จากมัน น่าเสียดายที่เคนเฮนเดอร์สันตั้งข้อสังเกตรหัสมักอ่านไม่ได้และไม่ใช่สิ่งที่คุณต้องการใช้เป็นแม่แบบสำหรับการทำงานในอนาคต ฉันนึกถึงหลายส่วนในการเขียนโปรแกรม WCF บริการที่ผู้เขียนอธิบายวิธีการเขียนรหัสด้วยตนเองหรือสร้างขึ้นโดย Visual Studio ตัวเลือกที่สร้างขึ้นจำเป็นต้องมีส่วนการติดตามเพื่อลบรหัสภายนอก


0

เครื่องมือของนักออกแบบปรับปรุงการผลิตจริงหรือไม่

พวกเขาอาจตราบใดที่โครงการของคุณเรียบง่ายและไม่ซับซ้อนเกินไปสำหรับพวกเขา ประสบการณ์ของฉันที่คุณตีกำแพงทันทีที่คุณพยายามที่จะใช้ / แก้ปัญหาโลกแห่งความจริง

พวกเขาเป็นนักฆ่าหรือไม่?

WF (Workflow) & WPF ที่สนุก แต่ก็น่าสนใจเมื่อ VS 2008 ชนกันทุก 30 นาที

'ชุมชน' จริง ๆ แล้วขอเครื่องมือออกแบบเพิ่มเติมหรือผู้ขายเพียงแค่คิดว่าเราเป็น

เครื่องมือจำนวนมากที่ออกโดย MS เมื่อเร็ว ๆ นี้ดูเหมือนจะหมดความพยายามในการรักษานักพัฒนาซอฟต์แวร์ การต่อสู้กำลังเกิดขึ้นในตลาดสมาร์ทโฟน ใครจะเป็นผู้ชนะในกลุ่มนักพัฒนา, MS, Google หรือ Apple?


0

มันเป็นวิธีการอยู่เสมอแม้กระทั่งในวันที่เราเคยแยกแยะความแตกต่างระหว่างนักพัฒนาที่รู้วิธีคลิกตัวช่วยสร้างและนักพัฒนาที่รู้รหัสตัวช่วยสร้างที่สร้างขึ้นและสามารถแก้ไขได้ในกรณีขอบ

การที่คุณมีเครื่องมือตัวช่วยสร้างและนักออกแบบที่ทำสิ่งต่าง ๆ ภายใต้ฝาครอบมากขึ้นเพื่อป้องกันไม่ให้ตัวเองอยู่ในความคมนั้นเป็นประโยชน์ต่อนักพัฒนาที่ไม่อยากรู้หรือไม่มีความกว้าง ประสบการณ์หรือทักษะในการทำความเข้าใจรหัสที่สร้างขึ้น ฉันคิดว่ามีจุดที่น่าสนใจระหว่างสิ่งที่คุณต้องการให้คอมพิวเตอร์ทำเพื่อคุณและสิ่งที่คุณต้องทำด้วยตัวเองในฐานะที่เป็นทางเลือกคือภาษาการเขียนโปรแกรมทั้งหมดขึ้นอยู่กับการลากและวางบล็อกลงบนแบบฟอร์ม (ฉันเคยทำงานในสภาพแวดล้อมแบบโดเมนเฉพาะฉันไม่ต้องการใช้มัน!)

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