คำถามติดแท็ก frameworks

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

7
Spring Framework ทำอะไรได้บ้าง ฉันควรใช้หรือไม่ ทำไมหรือทำไมไม่?
ดังนั้นฉันเริ่มโครงการใหม่ใน Java และกำลังพิจารณาใช้ Spring ทำไมฉันถึงต้องพิจารณาสปริง เพราะมีคนมากมายบอกฉันว่าฉันควรใช้ Spring! อย่างจริงจังทุกครั้งที่ฉันพยายามให้ผู้คนอธิบายว่าสปริงคืออะไรหรือทำอะไรพวกเขาไม่สามารถให้คำตอบแบบตรงกับฉันได้ ฉันได้ตรวจสอบอินโทรในเว็บไซต์ SpringSource และพวกมันซับซ้อนหรือเน้นการสอนจริง ๆ และพวกมันก็ไม่มีความคิดที่ดีว่าทำไมฉันถึงควรใช้มันหรือจะทำให้ชีวิตของฉันง่ายขึ้นได้อย่างไร บางครั้งผู้คนขว้างคำว่า "การพึ่งพา" ซึ่งทำให้ฉันสับสนมากยิ่งขึ้นเพราะฉันคิดว่าฉันมีความเข้าใจที่แตกต่างกันเกี่ยวกับความหมายของคำนั้น อย่างไรก็ตามนี่เป็นเพียงเล็กน้อยเกี่ยวกับพื้นหลังและแอพของฉัน: รับการพัฒนาใน Java ในขณะที่ทำการพัฒนาเว็บ back-end ใช่ฉันทำการทดสอบหน่วยเป็นตัน เพื่ออำนวยความสะดวกในเรื่องนี้ฉันมักจะสร้างวิธีการอย่างน้อยสองรุ่น: รุ่นที่ใช้ตัวแปรอินสแตนซ์และรุ่นที่ใช้ตัวแปรที่ส่งผ่านไปยังเมธอดเท่านั้น หนึ่งที่ใช้ตัวแปรอินสแตนซ์เรียกอีกคนหนึ่งที่จัดหาตัวแปรอินสแตนซ์ เมื่อถึงเวลาที่ต้องทดสอบหน่วยฉันใช้ Mockito เพื่อจำลองวัตถุแล้วโทรไปยังวิธีการที่ไม่ใช้ตัวแปรอินสแตนซ์ นี่คือสิ่งที่ฉันเข้าใจเสมอว่า "การฉีดพึ่งพา" แอพของฉันค่อนข้างเรียบง่ายจากมุมมอง CS โครงการขนาดเล็ก 1-2 นักพัฒนาที่จะเริ่มต้นด้วย การดำเนินการประเภท CRUD ส่วนใหญ่ที่มีการค้นหามากมายถูกโยนเข้ามาโดยทั่วไปแล้วเว็บเซอร์วิส RESTful รวมทั้งเว็บฟรอนต์เอนด์และในที่สุดก็มีลูกค้ามือถือบางส่วน ฉันกำลังคิดที่จะทำ front-end ด้วย HTML / CSS / JS / JQuery …

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

15
นักพัฒนาซอฟต์แวร์ควรปฏิเสธข้อกำหนดที่เป็นไปไม่ได้อย่างไร [ปิด]
นี่คือปัญหาที่ฉันเผชิญ: อ้างจากผู้จัดการโครงการ: สวัสดี Spark ฉันกำลังมอบหมายงานให้คุณพัฒนากรอบงานที่สามารถใช้กับแอปพลิเคชั่น iOS ที่แตกต่าง นี่คือข้อกำหนด: มันควรจะสามารถตรวจสอบความหนาของนิ้วหัวแม่มือหรือนิ้วมือที่ใช้ในการจัดการ UI ด้วยข้อมูลนี้ทุกองค์ประกอบของ UI ที่ควรจะจัดและขนาดโดยอัตโนมัติ สำหรับนิ้วหัวแม่มือที่ใหญ่ขึ้นควรจัดวางองค์ประกอบใกล้กับกึ่งกลางของหน้าจอ สำหรับนิ้วโป้งที่เล็กกว่าควรจัดวางองค์ประกอบใกล้กับมุมของหน้าจอ สำหรับนิ้วโป้งขนาดใหญ่แบบอักษรทั้งหมดควรมีขนาดเล็กลง (เราสมมติว่าเป็นผู้ใหญ่ในกรณีนี้) สำหรับนิ้วโป้งขนาดเล็กอักษรทั้งหมดควรมีขนาดใหญ่กว่า (เราสมมติว่าคนที่อายุน้อยกว่าในกรณีนี้) สรุป: เฟรมเวิร์กนี้จำเป็นสำหรับการสร้างส่วนต่อประสานกับผู้ใช้ที่ใช้งานง่ายโดยทางโปรแกรม กรอบควรได้รับการพัฒนาในลักษณะที่เราสามารถใช้สำหรับโครงการได้มากเท่าที่ต้องการดังนั้นจึงต้องเป็นมิตรกับนักพัฒนามาก ฉันเป็นผู้พัฒนาที่ได้รับภารกิจนี้ดังนั้นคำถามของฉันมีดังนี้: ฉันจะอธิบายได้อย่างไรว่าข้อกำหนดเหล่านี้ไร้สาระเล็กน้อย? ฉันจะอธิบายได้อย่างไรว่าจะเป็นการดีกว่าที่จะให้ความสำคัญกับการพัฒนาโครงการจริง ฉันจะอธิบายได้อย่างไรว่าถ้าเป็นไปได้ฉันก็จะไม่แนะนำให้พัฒนาสิ่งนั้น? ฉันจะบอกว่าไม่มีโครงการนี้อย่างสุภาพอ่อนโยนและด้วยความเคารพได้อย่างไร? ฉันจะอธิบายได้อย่างไรว่าสำหรับนักพัฒนาซอฟต์แวร์ที่มีประสบการณ์ 3 ปีนี่อาจเป็นไปไม่ได้

4
การติดตาม SOLID นำไปสู่การเขียนเฟรมเวิร์กบนสุดของสแต็คเทคโนโลยีหรือไม่
ฉันชอบ SOLID และฉันพยายามอย่างดีที่สุดที่จะใช้และนำไปใช้เมื่อฉันกำลังพัฒนา แต่ฉันอดไม่ได้ที่จะรู้สึกราวกับว่าแนวทางของ SOLID จะเปลี่ยนรหัสของคุณให้เป็นรหัส 'framework' - เช่นรหัสที่คุณต้องการออกแบบหากคุณสร้างเฟรมเวิร์กหรือไลบรารีเพื่อให้นักพัฒนารายอื่นใช้ โดยทั่วไปฉันได้ฝึกการเขียนโปรแกรม 2 โหมด - การสร้างสิ่งที่ถามผ่านข้อกำหนดและ KISS (การเขียนโปรแกรมทั่วไป) มากขึ้นหรือน้อยลงหรือการสร้างตรรกะบริการและอื่น ๆ ที่ใช้ซ้ำทั่วไปและนำกลับมาใช้ใหม่ได้ . หากผู้ใช้ต้องการให้แอปพลิเคชันทำสิ่ง x และ y จริง ๆ มันสมเหตุสมผลหรือไม่ที่จะต้องติดตาม SOLID และเพิ่มจุดเริ่มต้นที่เป็นนามธรรมทั้งหมดเมื่อคุณไม่รู้ด้วยซ้ำว่าเป็นปัญหาที่ถูกต้องหรือไม่ ด้วย? หากคุณเพิ่มจุดเริ่มต้นของสิ่งที่เป็นนามธรรมคุณจะปฏิบัติตามข้อกำหนดของผู้ใช้จริง ๆ หรือคุณสร้างกรอบงานด้านบนของเฟรมเวิร์กที่มีอยู่และสแต็คเทคโนโลยีเพื่อให้การเพิ่มในอนาคตง่ายขึ้นหรือไม่? ในกรณีใดบ้างที่คุณให้บริการเพื่อผลประโยชน์ของลูกค้าหรือของผู้พัฒนา นี่เป็นสิ่งที่ดูเหมือนว่าเป็นเรื่องธรรมดาในโลกของ Java Enterprise ที่ให้ความรู้สึกราวกับว่าคุณกำลังออกแบบเฟรมเวิร์กของคุณเองบน J2EE หรือ Spring ดังนั้นมันจึงเป็น UX ที่ดีกว่าสำหรับนักพัฒนาแทนที่จะมุ่งเน้นที่ UX สำหรับผู้ใช้
70 frameworks  solid 

16
โปรแกรมเมอร์ควรมีเสรีภาพเท่าไรในการเลือกภาษาและกรอบงาน?
ฉันเริ่มทำงานกับ บริษัท ที่เน้นภาษา C # เป็นหลัก เรามีบางคนที่ชอบ Java และ JRuby แต่โปรแกรมเมอร์ส่วนใหญ่ที่นี่เช่น C # ฉันถูกจ้างเพราะฉันมีประสบการณ์มากมายในการสร้างเว็บแอปพลิเคชันและเพราะฉันพึ่งพาเทคโนโลยีใหม่ ๆ เช่น JRuby บน Rails หรือ nodejs ฉันเพิ่งเริ่มต้นในโครงการสร้างเว็บแอปพลิเคชันโดยมุ่งเน้นที่การทำสิ่งต่าง ๆ มากมายในระยะเวลาอันสั้น ซอฟต์แวร์ที่เป็นผู้นำได้บอกว่าฉันใช้ mvc4 แทนราง อาจเป็นสิ่งที่ดียกเว้นฉันไม่รู้ mvc4 ฉันไม่รู้ C # และฉันเป็นคนเดียวที่รับผิดชอบในการสร้างเว็บแอปพลิเคชันเซิร์ฟเวอร์และ UI ส่วนหน้า มันจะไม่สมเหตุสมผลที่จะใช้เฟรมเวิร์กที่ฉันรู้จักดีมาก (Rails) แทนที่จะใช้ mvc4 หรือไม่? เหตุผลเบื้องหลังการตัดสินใจคือหัวหน้าฝ่ายเทคโนโลยีไม่ทราบว่า Jruby / ทางรถไฟและจะไม่มีทางนำรหัสนี้กลับมาใช้ใหม่ได้ อาร์กิวเมนต์ตัวนับ: เขาจะไม่ให้รหัสและตรงไปตรงมาไม่จำเป็นใน โครงการนี้ ดังนั้นมันไม่สำคัญว่าเขาจะรู้จัก JRuby / …

6
เมื่อใดที่จะไม่ใช้เฟรมเวิร์ก [ปิด]
วันนี้เราสามารถหากรอบสำหรับภาษาใดก็ได้เพื่อให้เหมาะกับโครงงาน กรอบการทำงานที่ทันสมัยส่วนใหญ่มีความแข็งแกร่งพอสมควร (โดยทั่วไปจะพูด) พร้อมการทดสอบชั่วโมงต่อชั่วโมงรหัสตรวจทานแบบเพียร์และการขยายที่ยอดเยี่ยม อย่างไรก็ตามฉันคิดว่ามีข้อเสียของกรอบการทำงานใด ๆ ในโปรแกรมเมอร์นั้นในฐานะชุมชนอาจพึ่งพาเฟรมเวิร์กที่เลือกไว้มากจนไม่เข้าใจการทำงานพื้นฐานหรือในกรณีของโปรแกรมเมอร์ใหม่ไม่เคยเรียนรู้การทำงานพื้นฐานเพื่อ เริ่มด้วย. มันง่ายที่จะกลายเป็นผู้เชี่ยวชาญในระดับที่คุณไม่ได้เป็น 'โปรแกรมเมอร์ PHP' (ตัวอย่าง) อีกต่อไป แต่เป็น "โปรแกรมเมอร์ Drupal" เพื่อยกเว้นสิ่งอื่นใด ใครสนใจล่ะ เรามีกรอบ! เราไม่จำเป็นต้องรู้วิธีการ "ทำด้วยมือ"! ขวา? ผลลัพธ์ของการสูญเสียทักษะพื้นฐาน (บางครั้งในกรณีที่โปรแกรมเมอร์ที่ไม่ได้ใช้เฟรมเวิร์กถูกมองว่าเป็น "ล้าสมัย") คือมันกลายเป็นเรื่องธรรมดาที่จะใช้เฟรมเวิร์กในกรณีที่ไม่จำเป็นหรือเหมาะสม ให้บริการอำนวยความสะดวกในกรอบลมสับสนกับสิ่งที่ภาษาพื้นฐานคือความสามารถในการ นักพัฒนาเริ่มใช้เฟรมเวิร์กเพื่อให้บรรลุแม้กระทั่งงานพื้นฐานที่สุดดังนั้นสิ่งที่ครั้งหนึ่งเคยถูกพิจารณาว่าเป็นกระบวนการพื้นฐานเกี่ยวข้องกับห้องสมุดขนาดใหญ่ที่มีนิสัยใจคอข้อบกพร่องและการพึ่งพาของตนเอง สิ่งที่สำเร็จครั้งเดียวใน 20 บรรทัดสามารถทำได้โดยการรวมเฟรมเวิร์ก 20,000 บรรทัดและการเขียน 20 บรรทัดเพื่อใช้เฟรมเวิร์ก ในทางกลับกันเราไม่ต้องการที่จะบูรณาการล้อ ถ้าฉันกำลังเขียนโค้ดเพื่อให้งานพื้นฐานขั้นพื้นฐานทั่วไปฉันอาจรู้สึกว่าฉันกำลังเสียเวลาเมื่อฉันรู้ว่ากรอบงาน XYZ นำเสนอคุณลักษณะทั้งหมดที่ฉันตามมาและอีกมากมาย ส่วน "ทั้งมากขึ้น" ยังคงมีฉันกังวล แต่ดูเหมือนว่าหลายคนไม่ได้พิจารณาอีกต่อไป จะต้องมีตัวชี้วัดที่ดีเพื่อพิจารณาว่าเมื่อใดที่เหมาะสมที่จะใช้กรอบงาน คุณพิจารณาถึงขีด จำกัด ที่จะเป็นอย่างไรคุณจะตัดสินใจได้อย่างไรว่าจะใช้เฟรมเวิร์กหรือเมื่อใด
38 frameworks 

8
ควรใช้ DAG (Directed Acyclic Graph) ในการเขียนโปรแกรมเมื่อใด
ฉันเพิ่งพบกรอบชื่อecto ในเฟรมเวิร์กนี้ส่วนประกอบพื้นฐานที่ชื่อว่า"พลาสม่า"ซึ่งเป็นกราฟเชิงเส้นกำกับของ ecto ใน ecto พลาสซึมสามารถดำเนินการได้โดยตัวจัดตารางเวลาของ ecto ฉันสงสัยว่ากลไกนี้มีประโยชน์อย่างไรและในสถานการณ์อื่นใดที่เราสามารถใช้ประโยชน์จากแนวคิดของ DAG ได้?

3
Entity Framework Code เป็นอันดับแรกที่ไร้ความหมาย / ไร้ประโยชน์ในการผลิตและกลยุทธ์ EF ที่ดีสำหรับการผลิตคืออะไร?
ฉันเพิ่งเขียนโปรแกรมด้วย Entity Framework 4.1 Code แรกและฉันชอบการพัฒนา แต่มีเพียงแผนสุดท้ายและรายการคุณลักษณะที่เปลี่ยนแปลงอย่างรวดเร็วฉันกำลังปรับเปลี่ยน Class / Database อย่างต่อเนื่องเพื่อตอบสนองความต้องการของแอปพลิเคชัน ในการพัฒนาไม่มีข้อมูลอยู่และฉันสามารถลบฐานข้อมูลทั้งหมดได้อย่างง่ายดายดังนั้นมันจึงถูกสร้างขึ้นใหม่ด้วยสคีมาใหม่ แต่เห็นได้ชัดเมื่อมีชีวิต - นี่แย่มาก! วิธีแก้ปัญหาเดียวที่ฉันเห็นคือการวางตารางเมทาดาทาและทำให้ฐานข้อมูลซิงค์ด้วยตนเองหรือโดยทั่วไปแล้วปล่อยและทำใหม่ ฉันชอบวิธีแรกเป็นการส่วนตัวเพราะฉันคิดว่าการเพิ่มคอลัมน์ / ตารางจะง่ายกว่าการสร้างและย้ายข้อมูล แต่ถ้าฉันไม่ได้พลาดสิ่งนี้จะย้ายออกไปจาก Code First อย่างสมบูรณ์ ดังนั้นคำถามคือ Code First เป็นเพียงการพัฒนาครั้งแรกและกลยุทธ์ที่ดีในการจัดการ EF สำหรับสภาพแวดล้อมการผลิตคืออะไร

4
จะเลือกไม่ใช้เฟรมเวิร์ก (Caliburn.Micro ฯลฯ ) ในแอปพลิเคชัน MVVM ที่กำหนดได้อย่างไร
ฉันเคยเริ่มโครงการ MVVM / WPF ซึ่งสร้างและปรับใช้ในที่สุดและเพื่อที่ฉันศึกษา Caliburn.Micro MVVM Framework จำนวนมาก ความจริงก็คือ: ฉันลงเอยด้วยการไม่ใช้ Caliburn.Micro สำหรับสิ่งนั้นและลงเอยด้วยการนำแนวคิด MVVM มาใช้ด้วยตัวเอง (โดยเฉพาะแค่ViewModelBaseและRoutedCommandคลาส) ตอนนี้ฉันได้รับมอบหมายให้ทำโครงการขนาดใหญ่กว่าในบรรทัดเดียวกัน: "แอปพลิเคชันเดสก์ท็อปออฟไลน์ไคลเอนต์สำหรับผู้ใช้ที่มีผู้ใช้หลายคน" ดังนั้นจะพูดและฉันตัดสินใจใช้ Caliburn.Micro และนั่นคือสิ่งที่ "ปัญหา" ของฉันเริ่มต้นขึ้น ฉันได้อ่านในโพสต์บล็อกที่มีชื่อเสียงชื่อเรื่องว่า "ถ้าคุณใช้ MVVM คุณต้องมีกรอบ" นั่น: "พยายามที่จะทำสิ่งที่ต้องการโดยไม่ต้อง MVVM กรอบเป็นจำนวนมากของการทำงาน. ตันของรหัสที่ซ้ำกัน reinventing ล้อและฝึกอบรมคนที่จะคิดแตกต่างกัน อย่างน้อยด้วยเฟรมเวิร์กที่คุณหลีกเลี่ยงรหัสที่ซ้ำกันและหวังว่าจะไม่ต้องบูรณาการล้อ - ช่วยให้คุณสามารถมุ่งเน้นไปที่การฝึกอบรมผู้คน ส่วนการอบรมขึ้นใหม่นั้นไม่สามารถหลีกเลี่ยงได้โดยทั่วไป แต่เฟรมเวิร์กจัดเตรียมรหัสการประปาและโครงสร้างทำให้กระบวนการง่ายขึ้น " ฉันจะเห็นด้วยกับการอ่านครั้งแรก แต่ประสบการณ์จริงของฉันกับ Caliburn.Micro (CM) ในแอปพลิเคชันจริงของฉันคือการ cluelessness และ disorientation นั่นคือกรอบงานไม่ได้ทำให้กระบวนการง่ายขึ้นเลยตรงกันข้าม อ่านตัวอย่างที่เคยทำซ้ำให้โดยร็อบไอเซนเบิร์กในเอกสารค่อนข้าง …
28 frameworks  wpf  mvvm 

4
กรอบการทดสอบหน่วยที่ดีที่สุดสำหรับ. NET คืออะไรและเพราะเหตุใด [ปิด]
ตามที่เป็นอยู่ในปัจจุบันคำถามนี้ไม่เหมาะสำหรับรูปแบบคำถาม & คำตอบของเรา เราคาดหวังคำตอบที่จะได้รับการสนับสนุนจากข้อเท็จจริงการอ้างอิงหรือความเชี่ยวชาญ แต่คำถามนี้จะเรียกร้องให้มีการอภิปรายโต้แย้งโต้แย้งหรือการอภิปรายเพิ่มเติม หากคุณรู้สึกว่าคำถามนี้สามารถปรับปรุงและเปิดใหม่ได้โปรดไปที่ศูนย์ช่วยเหลือเพื่อขอคำแนะนำ ปิดให้บริการใน8 ปีที่ผ่านมา สำหรับฉันดูเหมือนว่าทุกคนใช้NUnitโดยไม่คำนึงถึงตัวเลือกอื่น ๆ ฉันคิดว่าเป็นเพราะ: ทุกคนคุ้นเคยกับมันอยู่แล้วดังนั้นพวกเขาจึงไม่ต้องเรียนรู้ API ใหม่ ถูกตั้งค่าไว้แล้วด้วยเซิร์ฟเวอร์การรวมต่อเนื่องเพื่อทำงานกับ NUnit ฉันผิดเกี่ยวกับเรื่องนี้หรือไม่? ฉันตัดสินใจใช้xUnitกับหนึ่งในโปรเจคของฉันเมื่อเร็ว ๆ นี้และฉันก็ชอบ มันทำให้ฉันมีความรู้สึกมากขึ้นและแนวคิดดูเหมือนจะเป็นก้าวที่ชัดเจนจาก NUnit ฉันต้องการรับฟังความคิดเห็นเกี่ยวกับกรอบงานที่ดีที่สุดจริง ๆ โดยไม่คำนึงถึงการเรียนรู้หรือกำหนดค่าการทดสอบอัตโนมัติของคุณใหม่

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

10
อนาคตของ Qt ในแง่ของความร่วมมือกับ Nokia-Microsoft [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการ4 ปีที่แล้ว ในกรณีที่คุณพลาดมันเกิดขึ้นมากมายในช่วงสองวันที่ผ่านมาซึ่งอาจส่งผลกระทบต่อกรอบการทำงานของ Qt ในกรณีที่แย่กว่านั้น :-( มันจะส่งผลกระทบต่อภาคมือถือในหลาย ๆ และอาจไม่ได้รับการยอมรับในปัจจุบันแน่นอน เริ่มเมื่อวานนี้ด้วยจดหมายภายในของ CEO Stephen Elop ของ Nokia ที่แสดงให้เห็นว่า Nokia กำลังนั่งอยู่บนแพลตฟอร์มที่กำลังลุกไหม้ วันต่อมาที่ประชุม Nokia โลกโนเกียประกาศความร่วมมือกับไมโครซอฟท์ซึ่งในขณะนี้การดำเนินการต่อไปโนเกียการนำ Phone 7 แพลตฟอร์มและการพัฒนาสภาพแวดล้อมของ Windows ทุ่มตลาด Symbian ไปตามถนนและติดแท็ก Meego เป็นR & D (คำหลักที่อันตรายสวยถ้า คุณถามฉัน) สำหรับซีรีย์ Maemo / N900 ฉันคิดว่ามันลาก่อนดี ฉันรู้ว่าคุณกำลังคิดอะไรอยู่ แต่ไม่ Qt จะไม่ถูกส่งไปที่แพลตฟอร์ม Window Phone …

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

8
กรอบทำให้สิ่งที่เป็นนามธรรมมากเกินไป? [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันเขียนโปรแกรมมาไม่ถึงปีแล้วและมีประสบการณ์ในการเขียนแอปพลิเคชันระบบเว็บแอพและสคริปต์สำหรับธุรกิจ / องค์กร อย่างไรก็ตามสิ่งหนึ่งที่ฉันไม่เคยทำมาก่อนคือทำงานกับกรอบอย่าง Django, Rails หรือ Zend เมื่อมองไปที่กรอบของ Django ฉันรู้สึกผิดหวังเล็กน้อยกับกรอบในใจ ฉันเข้าใจถึงเป้าหมายหลักของ DRY และโค้ดน้อยที่สุด แต่บางส่วนของการพึ่งพาโมดูลที่แตกต่างกันและสิ่งที่เป็นนามธรรมที่สำคัญของฟังก์ชั่นหลักรู้สึกว่ามัน: ทำให้โปรแกรมลงวันที่เร็วมากเนื่องจากลักษณะที่เปลี่ยนแปลงตลอดเวลาของโมดูล / กรอบงาน ทำให้โค้ดยากที่จะเข้าใจเนื่องจากมีกรอบและโมดูลที่พร้อมใช้งานและไอเดียของพวกเขาทั้งหมด ทำให้โค้ดน้อยลงยกเว้นว่าคุณอ่านเอกสารทั้งหมด; นั่นคือฉันสามารถอ่านรายการความเข้าใจและตรรกะตามเงื่อนไขและหาว่าโปรแกรมกำลังทำอะไร แต่เมื่อคุณเห็นฟังก์ชั่นที่ต้องการส่งผ่านสตริงและพจนานุกรมตามอำเภอใจ โมดูลที่กำหนด; และ: ทำให้การสลับระหว่างเฟรมเวิร์กเป็นเรื่องยากและน่าเบื่อ การสลับไปมาระหว่างภาษาเป็นเรื่องที่ท้าทายอยู่แล้ว แต่สามารถจัดการได้หากคุณมีความเข้าใจที่เพียงพอเกี่ยวกับฟังก์ชั่นหลัก / ปรัชญา การสลับระหว่างเฟรมเวิร์กดูเหมือนจะเป็นเรื่องของการท่องจำมากกว่าซึ่งในบางวิธีดูเหมือนจะส่งเสริมความไร้ประสิทธิภาพอย่างมากเฟรมเวิร์กเหล่านี้ถูกออกแบบมาเพื่อกำจัด เราจำเป็นต้องใส่สิ่งที่เป็นนามธรรมมากกว่า 50 เลเยอร์ไว้บนสิ่งที่เรียบง่ายเหมือนกับการสืบค้น MySQL หรือไม่? ทำไมไม่ใช้บางอย่างเช่นอินเทอร์เฟซ PDO ของ PHP ที่จัดการคำสั่ง / การทดสอบอินพุตที่เตรียมไว้ แต่เคียวรี …

2
เว็บไซต์ที่ใช้งานภายใน: มีกรณีที่น่าสนใจสำหรับ SQLite หรือไม่?
เฟรมเวิร์กเว็บจำนวนมากเช่นFlaskหรือDjangoใช้SQLiteเป็นฐานข้อมูลเริ่มต้น SQLiteนั้นน่าสนใจเพราะมันรวมอยู่ในไพ ธ อนและค่าใช้จ่ายในการจัดการค่อนข้างต่ำ อย่างไรก็ตามไซต์การผลิตสาธารณะที่มีปริมาณการใช้งานสูงส่วนใหญ่ใช้ฐานข้อมูลที่หนักกว่า: mySQL, Oracle หรือ postgresql คำถาม : สมมติ: ปริมาณการใช้ของไซต์อยู่ในระดับปานกลางและการเข้าถึงแบบอ่าน / เขียนในฐานข้อมูลจะเกิดขึ้นพร้อมกัน เราจะใช้SQLAlchemyกับล็อคการเขียน SQLite (แม้ว่าความคิดเห็นนี้ทำให้ฉันกังวลเล็กน้อย) ฐานข้อมูลอาจมีบันทึก 60,000 รายการ โครงสร้างข้อมูลไม่ต้องการคุณสมบัติขั้นสูงที่พบในฐานข้อมูลที่หนักกว่า มีกรณีที่น่าสนใจต่อการเกิดพร้อมกันของSQLiteสำหรับเว็บไซต์ที่ทำหน้าที่เป็นเครื่องมือภายในองค์กรที่มีปริมาณการใช้งานปานกลางหรือไม่? ถ้าเป็นเช่นนั้นเงื่อนไขใดที่ทำให้SQLiteมีปัญหาการทำงานพร้อมกัน? ฉันกำลังมองหาสาเหตุที่เฉพาะเจาะจงที่เป็นที่รู้จักแทนการกลัวนิ้วชี้โดยทั่วไป / ไม่พร้อมเพรียง

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