กรอบความอุดมสมบูรณ์ของการทำงานของโปรแกรมเมอร์ลดลงหรือไม่? [ปิด]


22

ที่มีทั้งหมดของกรอบที่มีอยู่วันนี้ORMs , พึ่งพาการฉีด (DI) ผกผันของการควบคุม (IOC) ฯลฯ ผมพบว่าโปรแกรมเมอร์จำนวนมากมีการสูญเสียหรือไม่ต้องมีการแก้ปัญหาทักษะที่จำเป็นในการแก้ปัญหาที่ยาก หลายครั้งที่ฉันเห็นพฤติกรรมที่ไม่คาดคิดคลานเข้าไปในแอปพลิเคชันและนักพัฒนาไม่สามารถขุดและค้นหาปัญหาได้ สำหรับฉันแล้วความเข้าใจที่ลึกซึ้งเกี่ยวกับสิ่งที่เกิดขึ้นภายใต้ประทุนกำลังจะสูญหายไป

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


นี่เป็นบทความที่ดีที่ฉันจำได้เมื่อไม่กี่ปีก่อนที่เกี่ยวข้องกับคำถามของคุณ โดยเฉพาะอย่างยิ่งผู้เขียนอ้างถึงการขาดสิ่งที่คล้ายกับ BASIC เป็นแพลตฟอร์มการเรียนรู้เป็นปัญหา salon.com/technology/feature/2006/09/14/basic
GrandmasterB

เราฝึกอบรมทักษะการแก้ปัญหาที่จำเป็นในการเลือกกรอบการทำงานที่เหมาะสมจากกรอบการทำงาน "ที่เหลืออีก"
systempuntoout


1
การทำให้คนกลุ่มหนึ่งโง่ลงหมายความว่าอย่างไร?
Randall Schulz

คำตอบ:


18

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


ใช่ฉันรู้ว่าการเห็น SQL ดิบในหน้าJSPนั้นเป็น "ไม่ต้อง" แต่ถ้าคุณเป็นที่ปรึกษาภาคสนามนี่จะเหมาะกับการแก้ปัญหาเฉพาะหรือไม่? และไม่นั่นไม่ได้หมายความว่ากรอบงานไม่ถูกต้องไม่ใช่ลูกค้าทุกคนที่มีเงิน $ 20k นั่งอยู่ทุกรอบเพื่อให้แน่ใจว่ามีการฉายจุดข้อมูลเล็ก ๆ น้อย ๆ บนหน้าเว็บ


4
+1...just solving MVC, it has gone too far.
Talvi Watia

2
ฉันคิดว่ามันตลกที่ Gratzy ยอมรับคำตอบนี้มากกว่าที่ชุมชนโหวตให้คำตอบที่ดีที่สุดสำหรับคำถามอัตนัยของเขา (ซึ่งบอกว่าตรงกันข้าม) ดูเหมือนว่าเขากำลังหาคำตอบมากกว่าที่จะถามคำถาม
Craige

1
@ Craige - คุณหมายความว่าคำตอบที่ถูกต้องเป็นคำตอบที่ได้รับความนิยมมากที่สุดเสมอหรือไม่?
Jé Queue

1
@Xepoch - ไม่เลย ในฐานะคำถามส่วนตัวฉันรู้สึกว่าคำถามนี้ไม่มีคำตอบที่แท้จริงในการเริ่มต้น ฉันเพิ่งพบว่ามันน่าสนใจที่เขาเลือกคำตอบที่บอกว่าตรงข้ามกับคำตอบอื่น ๆ ส่วนใหญ่ในหน้านี้ ฉันคิดว่าเขาพบคำตอบเดียวที่สะท้อนสิ่งที่เขาแนะนำในคำถามของเขาและตัดสินใจว่ามันถูกต้องเพราะมันสอดคล้องกับความเชื่อของเขา
Craige

31

นี่คือข้อโต้แย้งที่ปรากฏขึ้นเป็นประจำในหลายสาขาและในหลายรูปแบบ

รูปแบบทั่วไปของการโต้แย้งนี้คือ:

การมี [x: เครื่องมือ / เทคโนโลยี] ทำให้คนแย่ลงที่ [y: ฟังก์ชั่นที่ได้รับผลกระทบจาก x] หรือไม่?

ตัวอย่างเช่น:

  • ซอฟต์แวร์ CAD ทำเพื่อวิศวกรที่แย่ลงหรือไม่?
  • เครื่องคิดเลขในโรงเรียนมัธยมทำให้นักเรียนแย่ลงในวิชาคณิตศาสตร์หรือไม่?
  • ซอฟท์แวร์ทางสังคมแสดงความสามารถทางสังคมของคนคนนั้นใช่ไหม
  • ซอฟต์แวร์บัญชีสร้างบัญชีที่แย่กว่านี้หรือไม่?

จากความทรงจำคำตอบที่แพร่หลายนั้นแทบจะทุกครั้ง: ไม่ได้จริงๆ คุณมักจะมีคนที่เก่งและไม่ดีทำ [y] แต่ตอนนี้พวกเขาไม่ดีที่มีทักษะที่แตกต่างกัน

ความเข้าใจที่ลึกซึ้งยิ่งขึ้นเกี่ยวกับพื้นฐานของงานใด ๆ จะช่วยได้ไม่ว่าคุณจะทำอะไรแม้แต่งานที่ได้รับการพิจารณาว่าเป็น 'การแก้ไข' ความรู้ช่วยเสมอ


แร็กเก็ตที่ใหญ่กว่าต้องใช้ทักษะน้อยลงจากนักเทนนิสที่แย่ลงหรือไม่?
systemovich

22

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

ฉันจำได้ว่าการพัฒนาเว็บไซต์ไดนามิกครั้งแรกบางส่วนกลับมาในช่วงกลางยุค 90 โดยใช้ C และCGI (ในเวลาที่เว็บไซต์ส่วนใหญ่ยังคงเป็น HTML คงที่) ไม่มีภาษาสคริปต์ฝั่งเซิร์ฟเวอร์ที่ผู้ใหญ่ (เช่น PHP หรือ ASP) และไลบรารีจำนวนน้อยมากดังนั้นคุณต้องเขียนสตรีมการตอบสนอง HTTP ทั้งหมดไปยังเซิร์ฟเวอร์ด้วยทุกหน้า การแยกพารามิเตอร์ GET และ POST จำเป็นต้องเขียนไลบรารีของคุณเอง มันน่าเบื่อช้าทำงานหนักและเกิดข้อผิดพลาดได้ง่าย ฉันไม่ควรพลาดเลย!

อย่างไรก็ตามฉันยังรู้สึกว่าเฟรมเวิร์กเช่น ASP.NET web-forms นามธรรมลักษณะไร้สัญชาติทั้งหมดของเว็บจนถึงจุดที่นักพัฒนาเว็บใหม่จำนวนมากมีเงื่อนงำเล็กน้อยของสิ่งที่เกิดขึ้นจริงภายใต้ประทุน สิ่งนี้นำไปสู่การไม่มีประสิทธิภาพโค้ดป่องที่ทำงานได้ไม่ดีนักเนื่องจากผู้พัฒนาเป็นส่วนประกอบของระบบประปาร่วมกันโดยใช้วิธีการ "drag'n'drop" โดยไม่ทราบว่าเกิดอะไรขึ้นในระดับ HTTP

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


ไม่เห็นด้วยมากขึ้นกับ "ASP.NET แบบฟอร์มทางเว็บนามธรรมลักษณะไร้สัญชาติทั้งหมดของเว็บ" มีหลายครั้งที่ฉันได้พบกับนักพัฒนาที่ไม่เข้าใจว่าเกิดอะไรขึ้นภายใต้และทำให้เกิดปัญหาโง่ ๆ กับIsPostBack
billy.bob

14

การปัดน้ำฝนแบบเกียร์อัตโนมัติหรือที่ปัดน้ำฝนที่ตรวจจับได้ทำให้เรายิ่งแย่ลง?

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

ในที่สุดมันก็ขึ้นอยู่กับนักพัฒนาที่จะเรียนรู้ คนดีทำคนเลวทำไม่ได้

และในหลอดเลือดดำที่คล้ายกันการเลือกกรอบเพียงเพราะว่ามันอยู่ที่นั่นโดยไม่มีการวิเคราะห์ความสามารถและข้อดี / ข้อเสียของมันก็เป็นสัญญาณของการพัฒนาที่ไม่ดี


11
เกียร์อัตโนมัติจะทำให้คนขับที่เลวร้ายยิ่ง :)
Jéคิว

3
ฉันไม่เห็นด้วยที่จะถามว่ากรอบงานทำให้นักพัฒนาซอฟต์แวร์เสียมากกว่าหรือไม่?
Gratzy

2
@Gratzy: ฉันไม่คิดอย่างนั้น ฉันคิดว่านักพัฒนาที่ไม่ดีคนเดียวกันจะยังคงเติบโตได้โดยไม่มีกรอบในรูปแบบที่แตกต่างกัน
อดัมเลียร์

3
ฉันไม่เห็นด้วยกับแอนนา หากไม่มีโครงร่างแม้แต่โปรแกรมเมอร์ที่ขี้เกียจก็ต้องเพิ่มพูนความรู้ เฟรมเวิร์กมีจำนวนเพิ่มขึ้น (อาจจะเพียงเล็กน้อย) จำนวนโปรแกรมเมอร์ที่ไม่ดี
ตัวช่วยสร้าง

1
เพื่อโต้แย้งอาร์กิวเมนต์ tranny อัตโนมัติ: ไดรเวอร์มืออาชีพจำนวนมากไม่ขับรถยนต์ด้วยตนเองและอื่น ๆ อีกมากมายกำลังจะพายเรือขยับเครื่องปัดซึ่งโดยทั่วไปจะควบคุมด้วยคอมพิวเตอร์
Steven Evers

10

ฉันคิดว่าปัญหาคือโปรแกรมเมอร์ใหม่เริ่มต้นในระดับที่สูงขึ้นและสูงกว่าของนามธรรมและดังนั้นจึงไม่ได้สัมผัสกับบิตและไบต์ของสิ่งต่าง ๆ ภายใต้ประทุน ดังนั้นพวกเขาจึงไม่ได้เรียนรู้พื้นฐานการเข้ารหัสขั้นพื้นฐานที่จะเป็นสิ่งแรกที่เรียนรู้ในปีที่ผ่านมา

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


4
ความคิด "ที่คุณต้องทำด้วยตัวเอง" จะหยุดอยู่ที่ใด โปรแกรมเมอร์ทุกคนจำเป็นต้องเขียนคอมไพเลอร์ของตัวเองก่อนใช้หรือไม่?
mipadi

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

6
ภายใต้ตรรกะของการไม่ใช้เครื่องมือ ORM จนกว่าคุณจะ "ทำเอง" ก่อนอื่นฉันอาจไม่ควรใช้เลเยอร์นามธรรมของฐานข้อมูลจนกว่าฉันจะเขียนการโทรไปยังฐานข้อมูลโดยตรงหรือไม่ หรือที่จริงแล้วฉันไม่ควรใช้ฐานข้อมูลจนกว่าฉันจะเขียนระบบจัดเก็บข้อมูลโดยใช้ระบบไฟล์? ระบบไฟล์ก็เป็นนามธรรมด้วย ... ฉันจะเริ่มที่ไหนดี สำหรับแต่ละรุ่นพวกเขาจะเริ่มต้นในระดับที่สูงขึ้นของสิ่งที่เป็นนามธรรมหรือเพื่อให้ได้สิ่งที่น่าสนใจมากขึ้นในเวลาที่น้อยลง
RationalGeek

2
ฉันคิดว่าถ้าโปรแกรมเมอร์อยู่ในระดับที่สูงกว่าของนามธรรมพวกเขาสามารถเป็นโปรแกรมเมอร์ที่มีความสามารถอย่างสมบูรณ์และสร้างแอปทางธุรกิจที่ใช้งานได้อย่างสมบูรณ์แบบจากกุฏิที่ใช้งานได้อย่างสมบูรณ์ แต่ฉันสงสัยว่าพวกเขาจะเป็นคนที่จะสร้างภาษาโปรแกรมต่อไปที่ต้องใช้ต่อไปหรือคนที่จะสร้างนวัตกรรมต่อไปในฐานข้อมูลหรือเขียนเกมนวัตกรรมถัดไปที่ผลักดันเทคโนโลยีกราฟิกให้ก้าวล้ำ
GrandmasterB

2
@jkohlhepp: ในทุกโครงการที่สำคัญที่ฉันเคยลองมาสิ่งที่เป็นนามธรรมได้รั่วไหลออกมาเสมอ หากฉันไม่ได้มีแรงกระตุ้นให้เข้าใจสิ่งที่ลึกล้ำของสิ่งที่เกิดขึ้นฉันก็หลงทางและไม่เกิดผล หากคุณต้องการทำสิ่งที่น่าสนใจคุณต้องรู้ทุกอย่าง
พอลนาธาน

4

บางทีการกระจายของ "ความโง่เขลา" ก็ไม่ได้เปลี่ยนไปจริง ๆ และเราเพียงแค่แจกวิธีที่ใหญ่กว่าและซับซ้อนกว่าสำหรับนักพัฒนาในการถ่ายภาพตัวเองด้วยการเดินเท้า?


4

ไม่ใช่กรอบที่ทำให้โปรแกรมเมอร์ไม่ทำงาน โปรแกรมเมอร์โง่จะเป็นใบ้ไม่ว่าจะใช้เฟรมเวิร์กหรือไม่

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

ตัวอย่างเช่นฉันเข้าเรียนในการออกแบบคอมไพเลอร์ที่วิทยาลัยซึ่งเราเขียนรหัสตัวแยกวิเคราะห์ LR ตั้งแต่เริ่มต้นใน C ก่อนที่จะเรียนรู้ที่จะใช้เครื่องกำเนิดไฟฟ้าแยกวิเคราะห์เช่น lex และ yacc มันเป็นการศึกษาที่ดีมากและตั้งแต่นั้นมาฉันก็มีความเข้าใจและชื่นชมภาษาการเขียนโปรแกรมทั้งหมดที่ฉันใช้ดีขึ้น

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

งานทางปัญญานั่นคือความฉลาดและความโง่เป็นสิ่งสำคัญยิ่งกว่า


4

อ้างจาก James Larus ยอดเยี่ยม"การจ่ายเงินปันผลของ Moore" (เน้นการเพิ่ม):

สามสิบปีที่ผ่านมา Bill Gates เปลี่ยนพรอมต์ใน Altair Basic จาก“ READY” เป็น“ OK” เพื่อบันทึกหน่วยความจำ 5 ไบต์ วันนี้มันเป็นไปไม่ได้ที่นักพัฒนาจะตระหนักถึงรายละเอียดในระดับนี้ของโปรแกรมของพวกเขาปล่อยให้อยู่คนเดียวกังวลเกี่ยวกับมันและถูกต้องดังนั้นเนื่องจากการเปลี่ยนแปลงของขนาดนี้ในวันนี้ไม่มีใครสังเกตเห็น ... ไม่มีทางเราสามารถผลิตระบบของวันนี้ การใช้งานฝีมือแบบฉบับที่เป็นไปได้ (จำเป็น) บนเครื่องที่มีหน่วยความจำ 4K

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


2

กรอบงานที่ยอดเยี่ยม แต่คุณต้องรู้ว่าอะไรอยู่ภายใต้ประทุน ดังนั้นปัญหาคือโปรแกรมเมอร์ต้องพึ่งพาเฟรมเวิร์กมากเกินไปโดยไม่มีความรู้เพียงพอเกี่ยวกับระบบพื้นฐาน

ตัวอย่างที่ค่อนข้างล้าสมัยคือMFC : โปรแกรมเมอร์สามารถประหยัดเวลาได้มากโดยใช้ MFC แทน Windows API แต่ไม่มีความรู้เกี่ยวกับ API (ซึ่งหมายถึงการมีพื้นหลังของการทำงานจริงกับ API ดิบ) พวกเขามักจะติดอยู่ . แทบไม่เคยมีความสุขเพราะโปรแกรมเมอร์ MFC ทั่วไปมีความรู้ Windows API

อย่างไรก็ตามด้วยWindows Formsบน. NETด้วยการห่อหุ้มที่ดีขึ้นและรูปแบบวัตถุที่ดีขึ้นโปรแกรมเมอร์เกือบจะเพิกเฉยได้ว่าเขากำลังใช้ wrapper Windows API ตัวอื่น ดังนั้นจึงมีโอกาสน้อยที่จะติดอยู่ แต่เมื่อมันเกิดขึ้นมันอาจเจ็บ

โชคไม่ดีที่เวลาเข้าสู่ตลาดนั้นสั้นลงและโครงการมีความซับซ้อนเพิ่มขึ้นดังนั้นโปรแกรมเมอร์จึงไม่มีเวลาที่จะลงลึก นั่นเป็นสภาวะที่น่าเศร้าของอุตสาหกรรมซอฟต์แวร์ ...


1

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

ผู้ที่ต้องการหรือต้องการรู้ "สิ่ง" ที่อยู่เบื้องหลังกรอบการศึกษาและการตรวจสอบโดยเบ็ดหรือข้อพับ


1

ไม่ไม่อย่างแน่นอน เฟรมเวิร์กเป็นส่วนสำคัญของการรวมกันของไลบรารีรูทีนย่อยและเทมเพลตเครื่องมือโปรแกรมเมอร์สองตัวที่พยายามและจริง ช่างฝีมือที่น่าสงสารตำหนิเครื่องมือของเขา ...

... และมีคนงานที่ยากจนจำนวนมากที่ใช้และตำหนิกรอบงาน


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

3
@Gratzy: ดีแน่นอน ยิ่งมีคนใช้เครื่องมือมากเท่าไหร่ เมื่อคอมพิวเตอร์มีขนาดใหญ่แพงและหายากมีเพียงไม่กี่คนในโลกเท่านั้นที่สามารถบ่นได้ว่ามันยากแค่ไหนในการใช้งาน - ตอนนี้ทุกคนทำได้ ในทำนองเดียวกันกรอบไม่จำเป็นต้องทำให้โปรแกรมเมอร์โง่ ๆ - พวกเขาเพิ่งเกิดขึ้นเพื่อดึงดูดโปรแกรมเมอร์โง่จำนวนมาก
Shog9

1

เมื่อสร้างซอฟต์แวร์เฟรมเวิร์กจะประหยัดเวลา เมื่อเรียนรู้ที่จะสร้างซอฟต์แวร์กรอบการทำงานจะเข้าสู่ความเข้าใจ

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

บางทีโรงเรียนควรมีหัวข้อ "การออกแบบที่เหมาะสมที่สุด" ซึ่งคุณต้องสร้างโปรแกรมภายใต้ข้อ จำกัด ด้านเวลาและเวลา?


-1

ไม่การเรียนรู้กรอบการทำงานช่วยพัฒนาทักษะของโปรแกรมเมอร์ Framework เป็นส่วนเสริมของภาษาโปรแกรม บางภาษาใช้เฟรมเวิร์กอยู่แล้ว ฉันทำงานกับทั้ง PHP และ Java PHP ต้องการเฟรมเวิร์กเหมือนกับเครื่องมือสร้างเท็มเพลต (บางครั้ง) Java ไม่ต้องการเฟรมเวิร์ก (ส่วนใหญ่) มันมีเมธอดและไลบรารีอยู่แล้ว

Frameworks ส่วนใหญ่จะมีฟังก์ชั่นที่โปรแกรมเมอร์ใช้ซ้ำแล้วซ้ำอีก


1
อืมคุณไม่ผิดเลยกับคำตอบของคุณ
NB

-1

ในการที่จะเล่นเป็นทนายของปีศาจที่นี่ฉันคิดว่ากรอบ ("ดี" อยู่ดี) จริง ๆ แล้วสามารถไปไกลเพื่อส่งเสริมการศึกษาของโปรแกรมเมอร์ เฟรมเวิร์กที่ได้รับการออกแบบมาอย่างดีจะช่วยแก้ปัญหาจำนวนมากและด้วยการใช้เฟรมเวิร์กโปรแกรมเมอร์สามารถเข้าใจถึงปัญหาที่กำลังแก้ไขและวิธีการ ในใจของฉันกรอบคือ (/ ควร) ตกผลึกของการเขียนโปรแกรมปฏิบัติที่ดีที่สุดและสามารถสอนโปรแกรมเมอร์โดยตัวอย่าง


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