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

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

11
การเป็นนักพัฒนาอาวุโสที่ใช้ภาษาเดียวทำให้คุณเป็นนักพัฒนาอาวุโสที่ใช้ภาษาอื่นหรือไม่? [ปิด]
หากฉันทำงานเป็น Developer ในภาษาหนึ่ง (เช่น Java) และทำงานต่อจนถึง Developer อาวุโสนั่นจะทำให้ฉันเป็นผู้พัฒนาอาวุโสสำหรับตำแหน่งที่ใช้ภาษาอื่น (เช่น Ruby) หรือไม่

7
กลยุทธ์ที่ดีที่สุดในการขายแอพ Android คืออะไร? [ปิด]
ฉันเป็นนักพัฒนาซอฟต์แวร์รุ่นใหม่ที่หวังจะขายแอปของฉันที่ฉันทำเพื่อ Android ในไม่ช้า แอปพลิเคชันของฉันเสร็จสิ้นโดยทั่วไปแล้ว 99% ดังนั้นฉันจึงตรวจสอบว่ากลยุทธ์ทางการตลาดที่ดีที่สุดในการขายแอพของฉันคืออะไร ฉันแน่ใจว่าจิตใจที่ยอดเยี่ยมที่นี่สามารถให้คำแนะนำที่ดีกับฉันได้ ฉันสนใจในความคิดของคุณในประเด็นต่อไปนี้ (โดยเฉพาะจากนักพัฒนา Android ที่มีประสบการณ์) การทำกำไรจากการขายแอปฟรีกับโฆษณาหรือการขายแอปโดยไม่มีโฆษณาในราคามากกว่านี้หรือไม่ อาจเป็นการรวมกันระหว่างเวอร์ชันโฆษณาฟรีและเวอร์ชันโฆษณาฟรี หากคุณให้แอปฟรีกับโฆษณาในแอปมันมีจริยธรรมหรือไม่ที่จะปฏิเสธการสนับสนุนทางด้านหลัง การละเมิดลิขสิทธิ์ส่งผลกระทบต่อยอดขายที่อาจเกิดขึ้นจริงหรือไม่ ควรใช้ความพยายามใด ๆ ในการป้องกันหรือไม่ คุณยังสามารถทำกำไรจากแอปพลิเคชันของคุณได้หรือไม่ถ้าคุณทำมันเป็นโอเพ่นซอร์ส คุณอาจทำกำไรได้มากกว่าจากความสนใจที่คุณจะได้รับจากการทำเช่นนั้น? ตลาด Android ของ Google เป็นสถานที่ที่ดีที่สุดในการปล่อยแอพ Android หรือไม่ มันคุ้มค่าพอที่จะดูแลบล็อกของนักพัฒนาหรือเว็บไซต์เพื่อให้ผู้ใช้อัปเดตความคืบหน้าการพัฒนาและการวางจำหน่ายซอฟต์แวร์ของคุณหรือไม่ ข้อเสนอแนะอื่น ๆ ที่คุณสามารถให้ฉันเพื่อเพิ่มผลกำไรสูงสุดในขณะที่ทำให้ผู้ใช้มีความสุขและกลับมามากขึ้นก็จะได้รับการชื่นชมอย่างมาก ในขณะที่ฉันขอขอบคุณเคล็ดลับและกลเม็ดทั่วไปฉันอยากจะถามว่าถ้าเป็นไปได้คุณโปรดไปที่ขั้นตอนพิเศษและแสดงวิธีที่พวกเขานำไปใช้กับการขายแอพ Android โดยเฉพาะ สถิติการตลาดย้อนหลังของนักพัฒนาและประสบการณ์เพิ่มเติมใด ๆ ที่คุณสามารถแบ่งปันได้จากการขายแอพ Android เป็นสิ่งที่ฉันอยากเห็นมากที่สุด ขอบคุณล่วงหน้าสำหรับเวลาของคุณ ฉันซาบซึ้งกับคำตอบทั้งหมดที่ฉันได้รับ

14
สร้างแรงจูงใจให้ตัวคุณเองในการเขียนโค้ดหลังจากที่คุณออกแบบบางสิ่ง [ปิด]
เกิดขึ้นกับฉันเท่านั้นหรือคุณคุ้นเคยเช่นนี้หรือไม่ มันเป็นอย่างนี้คุณต้องสร้างบางสิ่งบางอย่าง โมดูลคุณสมบัติแอปพลิเคชั่นทั้งหมด ... ไม่ว่าอะไรก็ตาม มันเป็นสิ่งที่น่าสนใจที่คุณไม่เคยทำมาก่อนมันท้าทาย ดังนั้นคุณเริ่มคิดว่าคุณจะทำอย่างไร คุณวาดภาพร่างบางส่วน คุณเขียนต้นแบบเพื่อทดสอบความคิดของคุณ คุณกำลังรวมชิ้นส่วนต่าง ๆ เข้าด้วยกันเพื่อให้ได้มุมมองที่สมบูรณ์ ในที่สุดคุณก็จบลงด้วยการออกแบบที่คุณชอบบางสิ่งที่เรียบง่ายชัดเจนสำหรับทุกคนบำรุงรักษาง่าย ... คุณตั้งชื่อมัน คุณครอบคลุมทุกฐานคุณคิดถึงทุกสิ่ง คุณรู้ว่าคุณจะมีคลาสนี้และไฟล์นั้นและสคีมาฐานข้อมูล กำหนดค่าที่นี่ปรับตัวเข้ากับสิ่งนี้ ฯลฯ แต่ตอนนี้หลังจากที่ทุกอย่างเรียบร้อยแล้วคุณต้องนั่งลงและเขียนรหัสจริง ๆ และไม่ท้าทายอีกต่อไป .... มาถึงแล้วทำอย่างนั้น! การเขียนโค้ดตอนนี้เป็นเพียง "ระเบียบ" และทำให้ดูเหมือนซ้ำสิ่งที่คุณเพิ่งเสร็จสิ้น ที่งานก่อนหน้าของฉันบางครั้งฉันก็ออกไปเพราะบางคนทำรหัสตามข้อกำหนดของฉัน แต่ที่กิ๊กใหม่ของฉันฉันอยู่ในความดูแลของกระบวนการทั้งหมดดังนั้นฉันต้องทำเช่นนี้ด้วย (เพราะฉันได้รับเงินไปทำ มัน). แต่ฉันมีโครงการสัตว์เลี้ยงฉันกำลังทำงานที่บ้านหลังเลิกงานและมีเพียงฉันและไม่มีใครจ่ายเงินให้ฉันทำ ฉันทำงานสร้างสรรค์และเมื่อถึงเวลาเขียนมันฉันก็ไม่รู้สึกเหมือนมัน (ให้ดูเว็บนิดหน่อยดูว่ามีอะไรใหม่ในP.SEหรือSOเป็นต้น) ฉันแค่ต้องการจะย้ายไปยังสิ่งที่ท้าทายต่อไปแล้วต่อไปและต่อไป ... สิ่งนี้เกิดขึ้นกับคุณด้วยหรือไม่ คุณจัดการกับมันอย่างไร คุณจะโน้มน้าวตัวเองให้เข้าไปเขียนโค้ดที่ผิดพลาดได้อย่างไร? ฉันจะตอบทุกคำถาม

5
ฉันต้องการเริ่มใช้ TDD มีเคล็ดลับสำหรับผู้เริ่มต้นไหม? [ปิด]
ฉันไม่เคยใช้กลไกทดสอบอัตโนมัติในโครงการใด ๆ ของฉันและฉันรู้สึกว่าขาดอะไรมากมาย ฉันต้องการปรับปรุงตัวเองดังนั้นฉันจึงต้องเริ่มแก้ไขปัญหาบางอย่างที่ฉันละเลยไปเช่นนี้และลองใช้ Git แทนที่จะติดอยู่ที่ SVN เป็นวิธีที่ดีในการเรียนรู้ TDD อะไร ฉันอาจจะใช้ Eclipse เพื่อเขียนโปรแกรมใน Java ฉันเคยได้ยิน JUnit แล้ว แต่ฉันไม่รู้ว่าควรพิจารณาเรื่องอื่นอีกไหม


17
ภาษาโปรแกรมที่พัฒนาทักษะการเขียนโปรแกรมโดยทั่วไปของคุณ? [ปิด]
ภาษาใดที่คุณจะแนะนำให้โปรแกรมเมอร์เรียนรู้ไม่ใช่เพราะพวกเขาจะมีการใช้ภาษาจำนวนมาก (แต่พวกเขาอาจมี) แต่เพราะมันจะพัฒนาทักษะการเขียนโปรแกรมโดยทั่วไปและให้คนอื่นคิด (และอาจดีกว่า) ) วิธี?

15
คุณควรใช้ความพยายามมากแค่ไหนในการเป็นผู้พัฒนารุ่นน้อง? [ปิด]
เราควรยอมแพ้ ณ จุดใด ฉันพยายามช่วยเหลือพวกเขาโดยให้พวกเขาเป็นเงาฉัน เราตกลงที่จะพักสักครู่แล้วพวกเขาก็หายตัวไปในขณะที่ ... แล้วก็กลับไปที่โต๊ะ แม้ว่าฉันจะรู้ว่าพวกเขาได้ทำสิ่งนี้แล้วบางส่วนของฉันก็รู้สึกว่าฉันไม่ควรต้องไปหาพวกเขา แต่พวกเขาควรจะสนใจในการเรียนรู้ ตรงไปตรงมามันเป็นเวลาที่ฉันไม่ได้อธิบายสิ่งต่าง ๆ ที่ฉันไปเมื่อฉันสามารถทำได้ ฉันคาดหวังมากเกินไปหรือไม่หากพวกเขาต้องการเรียนรู้พวกเขาจะทำให้แน่ใจว่าฉันรู้ว่าพวกเขาพร้อมและเต็มใจหรือไม่ พวกเขาไปประชุมที่พวกเขาไม่ได้บอกว่าต้องเข้าร่วม ... ดี แต่จากนั้นนั่งที่มุมห้องและนอนหลับ ... แย่มาก ฉันไม่รู้ด้วยซ้ำว่าจะทำอย่างไรกับสิ่งนั้น บางครั้งฉันให้อะไรเล็ก ๆ น้อย ๆ แก่พวกเขาและพวกเขาก็ทำมันได้ดีดังนั้นฉันจึงให้บางสิ่งบางอย่างแก่พวกเขาเพียงแค่สัมผัสยากขึ้น พวกเขาเช็คอินโดยไม่ทดสอบ ส่วนหนึ่งของฉันคิดว่าบางทีฉันควรจะใช้เวลากับพวกเขามากกว่านี้ แต่ในเวลาเดียวกันฉันไม่เห็นความสนใจมากนักและจริงๆแล้วฉันไม่มีเวลาสอนสิ่งเดียวกันซ้ำแล้วซ้ำอีก บางครั้งฉันได้รับคำถามที่ถามจริง ๆ แล้วตอบคำถามง่าย ๆ ถ้าคุณทำงานของตัวเองเล็กน้อยเพื่อหาคำตอบ บางครั้งฉันไม่ได้ถามอะไรเลย ฉันแน่ใจว่าฉันสามารถทำได้ดีขึ้น แต่อย่างสุจริต ... ฉันไม่ต้องการอีกต่อไป
27 internship 


6
คุณจะทำอย่างไรถ้าคุณมีนายจ้างที่ไม่ดีมากมาย [ปิด]
ดังนั้นฉันจึงมีประสบการณ์ที่แย่มากและสงสัยว่าฉันกำลังทำอะไรผิด ฉันเริ่มจากการเป็นโปรแกรมเมอร์นอกเวลาที่มหาวิทยาลัยใหญ่ ๆ ฉันพัฒนาปัญหาเกี่ยวกับข้อมือของฉันและขอความช่วยเหลือเกี่ยวกับที่พักตามหลักสรีรศาสตร์ของฉัน (อย่างดี) เจ้านายของฉันเริ่มกรีดร้องที่ฉันหลังจากนั้นก็อ้างว่าฉันกรีดร้องที่เธอ เมื่อถูกถามเกี่ยวกับเรื่องนี้เธอเริ่มสะอื้น โชคดีที่มีคนอื่น ๆ ที่ได้ยินเสียงกรีดร้องและรู้ว่าฉันกำลังพูดความจริง ในที่สุดเธอก็ปล่อยให้ไป สัญญาของฉันเพิ่มขึ้นและฉันเปลี่ยนงานคราวนี้เป็นการเริ่มต้น เราไปหลายเดือนโดยที่ฉันไม่ได้รับเครื่องพัฒนา เมื่อเศรษฐกิจเริ่มคลี่คลายพวกเขาก็เริ่มขอค่าล่วงเวลาจำนวนบ้า ฉันปฏิบัติตามเพราะกลัวว่าจะหางานทำ ฟางเส้นสุดท้ายคือพวกเขาติดต่อฉันทันทีก่อนที่งานศพของพ่อฉันจะแก้ไขปัญหา ฉันถูกปลดออกจากงานไม่ได้รับการตรวจสอบขั้นสุดท้ายตามกำหนดเวลาและ บริษัท ทำให้ COBRA ของฉันถึงจุดที่ฉันไม่สามารถสั่งยาได้เป็นเวลาหลายเดือน เมื่อเร็ว ๆ นี้พวกเขาถูกปรับโดย State of X สำหรับสิ่งที่พวกเขาทำ ตอนนี้แม้ว่าฉันจะทำใจให้กับพวกเขาและพวกเขาก็เต็มใจก่อนที่จะถูกปรับพวกเขาปฏิเสธที่จะให้การอ้างอิง ฉันทำงานใหม่อย่างรวดเร็วส่วนใหญ่เป็นเพราะฉันต้องการตั้งค่าประกันสุขภาพของฉัน พวกเขาต้องการให้ฉันทำงานหลายเดือนในสองสามสัปดาห์ พวกเขาไม่มีแผนโครงการ ลูกค้าของพวกเขาทำงานได้ไม่ดีนักเนื่องจากส่วนทั้งหมดของแอปพลิเคชันจะหยุดทำงานหากมีคนตรวจสอบการสะกดคำ แม้ว่าพวกเขาจะคาดหวังเกี่ยวกับงานของฉันโดยไม่ได้ตั้งใจ แต่พวกเขาก็มีความสุขที่จะพูดว่ามันต้องใช้เวลาหลายเดือนในการซ่อมบั๊กตรวจสอบการสะกด แทบไม่มีการฝึกอบรมเลย พวกเขาให้สัมภาษณ์ผู้สมัครและฉันเลือก เห็นได้ชัดว่าบุคคลนั้นเป็นตัวแทนของฉันเพราะฉันถูกปล่อยหลังจากสองสามเดือน เมื่อเร็ว ๆ นี้อดีตเจ้านายของฉันโทรหานายจ้างคนปัจจุบันของฉันและทำข้อกล่าวหาว่าฉันท้อใจไม่ให้คนอื่นสมัครงานตำแหน่งที่ บริษัท ของเขาซึ่งเป็นคนวิกลจริตเพราะฉันไม่รู้ด้วยซ้ำว่าพวกเขากำลังจ้างงานอยู่ ฉันรู้สึกว่าฉันมีเสื้อยืดที่บอกว่า "ถ้าคุณบ้าหรืออยากให้ใครสักคนไปรอบ ๆ และปฏิบัติอย่างเลวร้ายจ้างฉัน!" จากนั้นอีกครั้งเมื่อฉันดูประวัติย่อของโปรแกรมเมอร์บางคนฉันก็เห็นเรื่องราวสยองขวัญเช่นกัน ดังนั้นสิ่งที่ฉันสามารถทำได้แตกต่างกันเพื่อหลีกเลี่ยงปัญหาเหล่านี้หรือไม่ เป็นส่วนหนึ่งของอาชีพของเราที่คนไม่มีมาตรฐานหรือไม่? …

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

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

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

9
การให้อภัยง่ายกว่าการขออนุญาตเมื่อใด / ทำไม [ปิด]
คำพูดที่ว่า "ง่ายกว่าที่จะให้อภัยมากกว่าขออนุญาต" ดูเหมือนจะเป็นที่นิยมในหมู่โปรแกรมเมอร์และ IIRC นั้นมาจาก Grace Hopper โดยทั่วไปแล้วสถานการณ์นี้เป็นจริงในสถานการณ์ใดและทำไมคุณถึงเชื่อว่าข้อเสนอที่ขัดแย้งเช่นนี้จะเกิดขึ้น?
27 management 

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

12
ผู้คนสามารถเขียนและบำรุงรักษาโค้ดที่ซับซ้อนและอ่านยากได้อย่างไร [ปิด]
การอ่านซอร์สโค้ดของSQLiteนั้นเป็นไปไม่ได้สำหรับภารกิจ IMO แต่เป็นซอฟต์แวร์ที่มีความซับซ้อนซึ่งสามารถใช้งานได้ (เป็นฐานข้อมูลแบบฝังตัวเต็มรูปแบบ) ซึ่งสามารถดาวน์โหลดรวบรวมและใช้งานจากรหัสอื่น ๆ และมีการปรับปรุงอยู่ตลอดเวลา ผู้คนสามารถเขียนและบำรุงรักษาโค้ดที่ซับซ้อนและอ่านยากได้อย่างไร

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