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

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

22
Classical BASIC เคยใช้สำหรับการพัฒนาซอฟต์แวร์เชิงพาณิชย์หรือไม่และถ้าเป็นเช่นนั้น
พวกเราหลายคนรวมถึงฉันเริ่มชีวิตการเขียนโปรแกรมด้วยโปรแกรมที่เขียนบนคอมพิวเตอร์ที่บ้านบางอย่างเช่น 10 PRINT "ENTER RADIUS" 20 INPUT R 30 PRINT "CIRCUMFERENCE="; 2 * R * PI 40 PRINT "AGAIN?" 50 INPUT A$ 60 IF A$="Y" THEN GOTO 10 70 END แน่นอนบรรทัดจำนวนตามขั้นพื้นฐานมีแนวโน้มสำหรับการสร้างรหัส Spagetti ยังเพราะส่วนใหญ่ภาษา BASIC พลาดงบโครงสร้างชอบWHILEทำทุกอย่าง แต่FOR-loop ด้วยIF, และGOTO GOSUBฉันกำลังพูดถึงภาษาเบสิกก่อนปี 1991 เมื่อ QBASIC และVisual Basicปรากฏขึ้น ในขณะที่ภาษาเบสิกอาจส่งเสริมรูปแบบที่ไม่ดีในหมู่โปรแกรมเมอร์ที่ต้องการมีโครงการเชิงพาณิชย์ขนาดใหญ่ที่สร้างขึ้นในภาษาเบสิกดังกล่าวหรือไม่? ถ้าเป็นเช่นนั้นพวกเขาจะจัดการกับข้อบกพร่องที่เห็นได้ชัดอย่างไร โดย "ร้ายแรง" ฉันหมายถึง: ไม่ใช่เกม …
46 history  basic 

16
ตรรกะเท่าไหร่ใน Getters
เพื่อนร่วมงานของฉันบอกฉันว่าควรมีตรรกะน้อยที่สุดเท่าที่จะเป็นไปได้ในผู้ได้รับและผู้ตั้งค่า กระนั้นฉันก็มั่นใจว่ามีหลายสิ่งที่สามารถซ่อนอยู่ในตัวเชื่อมต่อและตัวตั้งเพื่อปกป้องผู้ใช้ / โปรแกรมเมอร์จากรายละเอียดการใช้งาน ตัวอย่างของสิ่งที่ฉันทำ: public List<Stuff> getStuff() { if (stuff == null || cacheInvalid()) { stuff = getStuffFromDatabase(); } return stuff; } ตัวอย่างของการทำงานให้ฉันทำสิ่งต่าง ๆ (พวกเขาอ้างว่า 'รหัสสะอาด' จากลุงบ๊อบ): public List<Stuff> getStuff() { return stuff; } public void loadStuff() { stuff = getStuffFromDatabase(); } ตรรกะมีความเหมาะสมใน setter / getter หรือไม่ การใช้ getters …
46 coding 

10
จะเป็นโปรแกรมเมอร์ที่ประสบความสำเร็จได้อย่างไรโดยไม่ต้องจบปริญญา CS [ปิด]
การปฏิเสธความรับผิดชอบ (โปรดอ่านก่อนที่จะกระโดดเพื่อตอบ): ฉันเห็นคำถามจำนวนหนึ่งคล้ายกับคำถามที่ฉันถามดังนั้นนี่คือคำถามที่คล้ายกัน IMHO พวกเขาไม่ใช่สิ่งที่ฉันถามอย่างสมบูรณ์และไม่ละเอียดเท่าที่ฉันหวังไว้ (ฉันไม่ได้ตั้งใจที่จะกำจัดคำตอบของคำถามด้านล่างและฉันจะไม่ทำให้ผู้ถามเสื่อมเสียฉันต้องการเป็น ถี่ถ้วนมากขึ้น): การศึกษาระดับปริญญา CS มีประโยชน์ต่อโปรแกรมเมอร์ที่มีอายุมากกว่าหรือไม่ https://softwareengineering.stackexchange.com/questions/80024/importance-of-certifications-for-java-programmer-without-bs-degree https://softwareengineering.stackexchange.com/questions/81591/in-the-absense-of-a-cs-degree-how-can-i-fill-in-the-gaps-so-to-speak ความสำคัญของการศึกษาระดับปริญญา CS เมื่อสมัครงานพัฒนา? ให้ฉันชัดเจนฉันไม่ได้ถามสิ่งต่อไปนี้: วิธีสอนตัวเองให้รู้จักการเขียนโปรแกรมตั้งแต่เริ่มต้น (ไม่มีปริญญาใน CS) วิธีทำการตลาดให้ตนเองในฐานะนักพัฒนาซอฟต์แวร์ที่ดี (โดยไม่ต้องจบปริญญาตรีใน CS) ทำอย่างไรจึงจะได้งานที่มีค่าตอบแทนสูงในฐานะนักพัฒนาซอฟต์แวร์ (โดยไม่ต้องจบปริญญาตรีใน CS) บริบทเล็กน้อย: ตอนนี้ฉันมีข้อจำกัดความรับผิดชอบออกไปให้ฉันอธิบายคำถามของฉันเริ่มต้นด้วยประวัติโดยย่อของประสบการณ์ของฉันในฐานะนักพัฒนาซอฟต์แวร์ ก่อนอื่นฉันโชคดีอย่างไม่น่าเชื่อ ฉันได้รับโอกาสในการทำงานหลายครั้ง (โครงการแบ็กเอนด์ PHP / MySQL จำนวนมากและแอพ WP7 จำนวนมากใน XAML / C #) ซึ่งฉันได้เรียนรู้ทุกอย่างที่ฉันรู้เกี่ยวกับการพัฒนาซอฟต์แวร์ งานการพัฒนาซอฟต์แวร์เกือบทั้งหมดที่ฉันเคยมีคืองานที่ฉันไม่มีคุณสมบัติที่ถูกต้อง (และฉันได้บอกกับนายจ้างของฉันก่อนที่พวกเขาจะจ้างฉัน) ฉันไม่ต้องการที่จะให้ตัวเองเครดิตที่มันไม่ได้เกิด แต่ฉันจะบอกว่าจะทำยังไงกับความอ่อนน้อมถ่อมตนที่สมบูรณ์แบบเจียมเนื้อเจียมตัว ในเกือบทุกงานการพัฒนาที่ฉันมีฉันได้เกินความคาดหวังของนายจ้างของฉันและพิสูจน์แล้วว่าเป็นสินทรัพย์ที่มีค่า มีแน่นอนข้อยกเว้น 1 แต่ประเด็นของฉันคือฉันค่อนข้างฉลาดและสามารถสอนตัวเองในสิ่งที่ฉันจำเป็นต้องรู้เพื่อที่จะประสบความสำเร็จในงานของฉัน ในแต่ละงานที่ฉันมีฉันยืดตัวมากขึ้นเรื่อย …
46 education 

8
ฉันจะเรียนรู้การเขียนรหัส Pythonic อย่างมีประสิทธิภาพได้อย่างไร
ทำการค้นหาโดย Google สำหรับ "pythonic" เผยให้เห็นการตีความที่หลากหลาย หน้าวิกิพีเดียบอกว่า: neologism ทั่วไปในชุมชน Python คือ pythonic ซึ่งสามารถมีความหมายหลากหลายที่เกี่ยวข้องกับรูปแบบของโปรแกรม การบอกว่ารหัสไพ ธ อนิกนั้นคือการพูดว่ามันใช้สำนวนภาษาไพ ธ อนอย่างดีว่าเป็นเรื่องธรรมดาหรือแสดงความคล่องแคล่วในภาษา ในทำนองเดียวกันการพูดถึงส่วนต่อประสานหรือคุณสมบัติทางภาษาที่มันเป็น pythonic ก็คือว่ามันทำงานได้ดีกับ Python idioms ซึ่งการใช้งานนั้นเข้ากันได้ดีกับภาษาที่เหลือ นอกจากนี้ยังกล่าวถึงคำว่า "unpythonic": ในทางตรงกันข้ามเครื่องหมายของรหัส unpythonic คือมันพยายามที่จะเขียนโค้ด C ++ (หรือ Lisp, Perl หรือ Java) ใน Python— นั่นคือให้การถอดความแบบคร่าวๆมากกว่าการแปลแบบสำนวนจากภาษาอื่น แนวคิดของ pythonicity ถูกผูกไว้กับปรัชญาการอ่านที่เรียบง่ายของ Python และหลีกเลี่ยงวิธีการ "มีมากกว่าหนึ่งวิธีที่จะทำ" รหัสที่อ่านไม่ได้หรือสำนวนที่เข้าใจยากนั้นเป็นเสียงที่ไม่ไพเราะ คำว่า "pythonic" หมายถึงอะไร ฉันจะเรียนรู้วิธีการใช้อย่างมีประสิทธิภาพในทางปฏิบัติได้อย่างไร

11
ฉันควรเลือก C # บน Java และ C ++ ด้วยเหตุผลใดบ้าง [ปิด]
C # ดูเหมือนว่าจะเป็นที่นิยมในวันนี้ ฉันได้ยินมาว่าวากยสัมพันธ์มันเกือบจะเหมือนกับจาวา Java และ C ++ มีอยู่เป็นเวลานาน ฉันควรเลือก C # บน Java และ C ++ ด้วยเหตุผลใดบ้าง

15
เป็นไปได้หรือไม่ที่มือสมัครเล่นจะกลายเป็นโปรแกรมเมอร์ที่ดี? [ปิด]
โปรแกรมเมอร์มืออาชีพเต็มเวลาสามารถทำงานที่ยอดเยี่ยมด้วยการเรียนรู้จากการทำงานอย่างต่อเนื่อง โปรแกรมเมอร์มือสมัครเล่นสามารถฝึกฝนให้เป็นโปรแกรมเมอร์ที่ดีได้อย่างไร ** ถ้าคุณชอบเล่นดนตรีหรือร้องเพลงคุณสามารถทำได้เพราะมันเป็นงานอดิเรกและคุณสนใจและคุณสามารถเป็นนักร้องหรือเครื่องเล่นเพลงที่ดีได้ แต่คุณไม่จำเป็นต้องเป็นนักร้องมืออาชีพหรือร้องเพลงเพื่อหาเลี้ยงชีพ สิ่งนี้เป็นจริงสำหรับโปรแกรมเมอร์หรือไม่ โปรแกรมเมอร์มือสมัครเล่นคนใดที่มีชื่อเสียง?
46 training 

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

4
การพิจารณาว่าอะไรคือการทดสอบหน่วยที่มีประโยชน์
ฉันได้อ่านเอกสารของ phpunit และพบกับคำพูดต่อไปนี้: คุณสามารถเขียนการทดสอบเพิ่มเติมได้ตลอดเวลา อย่างไรก็ตามคุณจะพบว่าการทดสอบเพียงเล็กน้อยที่คุณคิดว่ามีประโยชน์จริง ๆ สิ่งที่คุณต้องการคือการเขียนการทดสอบที่ล้มเหลวแม้ว่าคุณคิดว่าพวกเขาควรจะทำงานหรือการทดสอบที่ประสบความสำเร็จแม้ว่าคุณคิดว่าพวกเขาควรจะล้มเหลว วิธีคิดอีกอย่างคือมันอยู่ในเงื่อนไขค่าใช้จ่าย / ผลประโยชน์ คุณต้องการที่จะเขียนการทดสอบที่จะตอบแทนคุณด้วยข้อมูล - ริชแกมม่า มันทำให้ฉันสงสัย คุณจะกำหนดสิ่งที่ทำให้การทดสอบหน่วยมีประโยชน์มากกว่าแบบอื่นได้อย่างไรนอกจากสิ่งที่ระบุไว้ในใบเสนอราคาเกี่ยวกับค่าใช้จ่าย / ผลประโยชน์ คุณจะตัดสินใจเกี่ยวกับชิ้นส่วนของรหัสที่คุณสร้างการทดสอบหน่วยสำหรับได้อย่างไร ฉันถามอย่างนั้นเพราะคำพูดเหล่านั้นก็พูดว่า: ดังนั้นถ้ามันไม่เกี่ยวกับการทดสอบมันเกี่ยวกับอะไร มันเกี่ยวกับการหาสิ่งที่คุณกำลังพยายามทำก่อนที่คุณจะคลุ้มคลั่งเพื่อพยายามทำ คุณเขียนข้อกำหนดที่ตอกย้ำพฤติกรรมเล็ก ๆ น้อย ๆ ในรูปแบบที่กระชับไม่คลุมเครือและสามารถใช้งานได้ มันง่ายมาก นั่นหมายความว่าคุณเขียนการทดสอบหรือไม่? ไม่ได้หมายความว่าคุณเขียนข้อกำหนดของรหัสที่คุณต้องทำ หมายความว่าคุณระบุการทำงานของรหัสล่วงหน้า แต่ไม่ไกลเกินเวลา ที่จริงแล้วก่อนที่คุณจะเขียนโค้ดนั้นดีที่สุดเพราะนั่นคือเมื่อคุณมีข้อมูลมากพอ ๆ กับที่คุณจะทำจนถึงจุดนั้น เช่นเดียวกับ TDD ที่ทำได้ดีคุณทำงานทีละน้อย ... ระบุลักษณะเล็ก ๆ ของพฤติกรรมในแต่ละครั้งจากนั้นนำไปใช้ เมื่อคุณตระหนักว่ามันคือทั้งหมดที่เกี่ยวกับการระบุพฤติกรรมและไม่เขียนแบบทดสอบ มุมมองของคุณเปลี่ยนไป ทันใดนั้นความคิดของการมีคลาสทดสอบสำหรับแต่ละคลาสผลิตของคุณนั้น จำกัด อย่างน่าขัน และความคิดในการทดสอบแต่ละวิธีของคุณด้วยวิธีการทดสอบของตัวเอง (ในความสัมพันธ์ 1-1) จะน่าหัวเราะ …

12
ทำไมฐานข้อมูลเชิงสัมพันธ์ไม่สนับสนุนข้อมูลที่ส่งคืนในรูปแบบที่ซ้อนกัน?
สมมติว่าฉันกำลังสร้างบล็อกที่ฉันต้องการโพสต์และแสดงความคิดเห็น ดังนั้นฉันจึงสร้างสองตารางตาราง 'โพสต์' ที่มีคอลัมน์ 'id' จำนวนเต็มโดยอัตโนมัติและตาราง 'ความคิดเห็น' ที่มีคีย์ต่างประเทศ 'post_id' จากนั้นฉันต้องการเรียกใช้สิ่งที่อาจเป็นคิวรีที่พบบ่อยที่สุดของฉันซึ่งก็คือเรียกโพสต์และความคิดเห็นทั้งหมด ค่อนข้างใหม่สำหรับฐานข้อมูลเชิงสัมพันธ์วิธีที่ปรากฏชัดเจนที่สุดสำหรับฉันคือการเขียนแบบสอบถามที่มีลักษณะดังนี้: SELECT id, content, (SELECT * FROM comments WHERE post_id = 7) AS comments FROM posts WHERE id = 7 ซึ่งจะให้ ID และเนื้อหาของโพสต์ที่ฉันต้องการพร้อมกับแถวความคิดเห็นที่เกี่ยวข้องทั้งหมดที่บรรจุอย่างเป็นระเบียบในอาร์เรย์ (การแสดงแบบซ้อนที่คุณต้องการใช้ใน JSON) แน่นอนว่า SQL และฐานข้อมูลเชิงสัมพันธ์ไม่ทำงานเช่นนี้และสิ่งที่ใกล้เคียงที่สุดที่พวกเขาจะได้รับก็คือการเข้าร่วมระหว่าง 'โพสต์' และ 'ความคิดเห็น' ซึ่งจะส่งคืนข้อมูลซ้ำซ้อนที่ไม่จำเป็นจำนวนมาก ในทุก ๆ แถว) ซึ่งหมายความว่าเวลาในการประมวลผลจะถูกใช้ทั้งในฐานข้อมูลเพื่อรวมเข้าด้วยกันและบน ORM ของฉันเพื่อแยกวิเคราะห์และเลิกทำทั้งหมด แม้ว่าฉันจะสั่งให้ ORM …
46 database  sql  rdbms  query 

13
เหตุใด C ++ จึงยังคงต้องการสร้างแอพ GUI หนัก ๆ เหนือภาษาไดนามิกล่าสุด [ปิด]
ฉันเห็นว่าแอพส่วนใหญ่ที่รวมเนื้อหา GUI หนัก ๆ มักจะพัฒนาใน C ++ เกม / เบราว์เซอร์ส่วนใหญ่ใช้รหัสใน C ++ เราไม่สามารถพัฒนาแอพ GUI ที่ดีขึ้นด้วยภาษาแบบไดนามิกล่าสุดได้หรือไม่ ฉันรู้ว่าจาวาจะไม่เป็นตัวเลือกที่ดี แต่สิ่งที่เกี่ยวกับภาษาเช่นหลามซึ่งถูกสร้างขึ้นบน C? ภาษาล่าสุดไม่ควรจะดีไปกว่าบรรพบุรุษของพวกเขา? ทำไมเรายังต้องเลือกภาษา C ++ ที่มีอายุมากกว่าภาษาล่าสุด? และฉันอยากจะรู้ว่ามันคืออะไรที่รับผิดชอบใน C ++ สำหรับความเร็วในการประมวลผล GUI ที่ดีขึ้น? ในทางตรงกันข้ามภาษาล่าสุดอื่น ๆ ขาดอะไร?

5
ควรใช้ PHP หรือ ASP.NET เมื่อใด [ปิด]
ฉันได้ทำงานอย่างกว้างขวางในการพัฒนาเว็บแอปพลิเคชันโดยใช้ PHP และ ASP.NET แต่หนึ่งในคำถามที่ฉันถามลูกค้าอย่างต่อเนื่องคือการก้าวไปข้างหน้ากับเว็บไซต์ php หรือเว็บไซต์ asp.net ดังนั้นสิ่งแรกที่นึกถึงคือการตอบคำถามเช่นนี้: PHP เป็นโอเพ่นซอร์สและ ASP.NET มาจาก Microsoft โดยปกติหลังจากสิ่งที่กล่าวว่าลูกค้ามีหน้าตาเปล่า ๆ เห็นได้ชัดว่าความจริงที่ว่าหนึ่งเป็นโอเพนซอร์สและอื่น ๆ ที่ไม่ได้ทำให้พวกเขากลัว และด้วยเหตุผลที่ดีเพราะเมื่อฉันได้ยินครั้งแรกมันไม่ได้บอกอะไรมากมาย ฉันรู้จากการทำงานกับทั้งคู่ว่าแต่ละคนมีความแตกต่างกันเมื่อมาถึงการพัฒนาเว็บไซต์ คำถามของฉันคือความแตกต่างระหว่าง ASP.NET และ PHP เท่าที่ คุณสมบัติ ความปลอดภัย Extendability กรอบ เวลาในการพัฒนาโดยเฉลี่ย ฉันกำลังพยายามรวบรวมรายการของข้อเท็จจริงเพื่อให้สามารถเปรียบเทียบกับลูกค้าเพื่อให้ตัวเลือกที่มีข้อมูลบนแพลตฟอร์มการพัฒนาที่เหมาะสมสามารถทำได้

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

5
ในฐานะนักพัฒนา C # คุณจะเรียนรู้ Java เพื่อพัฒนาสำหรับ Android หรือใช้ MonoDroid แทนหรือไม่? [ปิด]
ฉันคิดว่าตัวเองค่อนข้างเชี่ยวชาญใน C # เป็นภาษาที่ฉันเลือกในขณะนี้และเป็นที่ซึ่งประสบการณ์การทำงานทั้งหมดของฉันตั้งอยู่ ถึงกระนั้นฉันก็ยังงงกับการมีอยู่ของโครงการMonoDroid ความเข้าใจของฉันได้เสมอว่า C # และ Java เป็นมากใกล้ เช่นถ้าคุณรู้จักคุณสามารถเรียนรู้ได้อย่างรวดเร็ว ดังนั้นเมื่อฉันพิจารณาการพัฒนาแอพ Android ครั้งแรกของฉันฉันแค่คิดว่าฉันจะทำความคุ้นเคยกับ Java มากพอที่จะเริ่มต้นแล้วเรียนรู้เมื่อฉันไป สิ่งนี้จะไม่สมเหตุสมผลกว่าการใช้ MonoDroid ซึ่งน่าจะมีคุณสมบัติน้อยกว่า Java Android SDK และต้องเรียนรู้ API ของตัวเอง (แม้ว่าจะเป็น. NET API) อยู่ดี ฉันแค่รู้สึกว่ามันจะเป็นการดีกว่าที่จะเรียนรู้ภาษาใหม่ (และเป็นที่นิยมอย่างมากในตอนนั้น) และได้รับประสบการณ์ในมัน - เมื่อใกล้กับสิ่งที่คุณรู้อยู่แล้ว - แทนที่จะยึดติดกับเทคโนโลยีที่คุณเคยสัมผัส ด้วยโดยไม่ได้รับทักษะที่มีค่าใด ๆ เพิ่มเติม บางทีฉันอาจบิดเบือนผู้ใช้ MonoDroid โดยเฉลี่ย อาจจะมากกว่าสำหรับผู้ที่มีประสบการณ์ใน Java และ. NET และเพียงต้องการ. NET หรืออาจ …
46 java  c#  .net  android  monodroid 

5
วัตถุประสงค์ของการ "คืนตัวเอง" จากวิธีการเรียน?
ฉันเจอสิ่งนี้ในโครงการโอเพ่นซอร์ส เมธอดที่แก้ไขแอ็ตทริบิวต์อินสแตนซ์ส่งคืนการอ้างอิงไปยังอินสแตนซ์ จุดประสงค์ของการสร้างนี้คืออะไร? class Foo(object): def __init__(self): self.myattr = 0 def bar(self): self.myattr += 1 return self

14
ทำไมทุกคนถึงเกลียดชัง SharePoint [ปิด]
การอ่านหัวข้อนี้เกี่ยวกับเทคโนโลยี hyped ที่มากที่สุดฉันสังเกตเห็นว่า SharePoint เกือบจะเป็นที่ประจักษ์ในระดับสากล ประสบการณ์ของฉันกับ SharePoint (โดยเฉพาะรุ่นล่าสุด) คือการบรรลุความสามารถหลักอย่างชาญฉลาด กล่าวคือ: ที่เก็บเอกสารส่วนกลาง - นำเอกสารออฟฟิศทั้งหมดออกจากอีเมล (พร้อมเวอร์ชั่น) การสร้างเนื้อหาที่ผู้ใช้แก้ไขได้สำหรับการเผยแพร่ข้อมูลภายใน - ดูไซต์ HR ที่มีหมายเลขโทรศัพท์ปัจจุบันและนโยบายวันหยุด การทำงานร่วมกันของโครงการ - การคลิกสองครั้งจะสร้างเว็บไซต์ที่มีเอกสารของโครงการรายการงานกำหนดเวลาอย่างง่ายการอภิปรายร่วมกันและรายการอีเมลที่เกี่ยวข้องกับโครงการทั้งหมด ระบบอัตโนมัติทางธุรกิจขั้นพื้นฐานมาก - เมื่อคุณกรอกแบบฟอร์มวันหยุดพักผ่อนอีเมลจะถูกส่งไปยังฝ่ายทรัพยากรบุคคล ประสบการณ์ของฉันคือ SharePoint จะน่าเกลียดเมื่อองค์กรพยายามผลักดันในทิศทางที่ไม่ได้ออกแบบมา SharePoint ไม่ใช่ CRM, ERP, ฐานข้อมูลบั๊กหรือเว็บไซต์ภายนอก SharePoint มีความยืดหยุ่นเพียงพอที่จะให้บริการได้ในไม่ช้า แต่ไม่สามารถทดแทนสำหรับเครื่องมือเฉพาะได้ (Microsoft เป็นเพียงความผิดในการผลัก SharePoint ลงในโดเมนที่ไม่ได้อยู่) หากคุณใช้ SharePoint สำหรับสิ่งที่ออกแบบมามันใช้งานได้จริง คิด?
46 sharepoint 

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