โดยการใช้ โอเพ่นซอร์สโครงการ คุณสามารถพัฒนาทักษะของคุณโดยแก้ไขข้อผิดพลาดของผู้อื่นและสร้างสิ่งใหม่ คุณสามารถค้นหาโครงการที่จะเป็นประโยชน์สำหรับธุรกิจของคุณเองได้ เช่น ในด้านการแพทย์หรืออีคอมเมิร์ซ ยิ่งไปกว่านั้น ในฐานะผู้ฝึกเขียนโปรแกรมคนหนึ่ง วิธีที่ดีที่สุดการสร้างแรงจูงใจให้ตัวเองในการเขียนโปรแกรมคือการทำงานกับโครงการโอเพ่นซอร์ส โดยเฉพาะอย่างยิ่งสำหรับผู้อ่านบล็อก Geekbrains เราได้รวบรวมรายชื่อโครงการดังกล่าวจาก พื้นที่ที่แตกต่างกันกิจกรรม:
ชุดซอฟต์แวร์สำหรับการทำงานกับภาพทางการแพทย์ 3D Slicer พร้อมใช้งานบนหลายแพลตฟอร์ม รวมถึง Windows, Linux และ OS X
เครื่องมือที่ช่วยให้คุณกระจายการประมวลผลข้อมูลจำนวนมากไปยังคลัสเตอร์ของคอมพิวเตอร์ที่ใช้ โมเดลที่เรียบง่ายการเขียนโปรแกรม
ชุดซอฟต์แวร์ยอดนิยมสำหรับการทำงานกับข้อความการสร้าง สเปรดชีต, การนำเสนอผลงาน , กราฟิก , ฐานข้อมูล ฯลฯ กระบวนการพัฒนาแบบเปิดโดยสมบูรณ์หมายความว่าใครๆ ก็สามารถรายงานจุดบกพร่อง ขอคุณสมบัติใหม่ หรือปรับปรุงได้ ซอฟต์แวร์- เขียนในรูปแบบมาตรฐานเปิดสากล ดังนั้นจึงยอมรับไฟล์จากแพ็คเกจซอฟต์แวร์ Open Office อื่นๆ
แพลตฟอร์มการจัดการเนื้อหาที่ขับเคลื่อนเว็บไซต์และแอพนับล้าน
ตัวจัดการสื่อที่ออกแบบมาเพื่อสร้างไลบรารีสื่อแบบรวมศูนย์ขนาดใหญ่
ฟรี ระบบปฏิบัติการประเภทยูนิกซ์
ชุดโปรแกรม Office สำหรับการพัฒนาการทำงานร่วมกันพร้อมฟังก์ชันการทำงานเช่น ไมโครซอฟต์ ออฟฟิศหรือ OpenOffice.org
ระบบการสร้างรายวิชา เว็บแอปพลิเคชันฟรีที่นักการศึกษาสามารถใช้เพื่อสร้างเว็บไซต์การสอนออนไลน์ที่มีประสิทธิภาพ Moodle ได้รับความนิยมอย่างมากในหมู่นักการศึกษาทั่วโลกในฐานะเครื่องมือสำหรับสร้างเว็บไซต์แบบไดนามิกสำหรับนักเรียน
ซอฟต์แวร์สำหรับการสร้างและจัดการเนื้อหาเสียงและวิดีโอเพื่อการศึกษา
ระบบควบคุมหลายแพลตฟอร์ม เนื้อหาขององค์กรเขียนด้วยภาษาจาวา ทำงานได้กับหลายฐานข้อมูล (รวมถึง MySQL, Oracle, PostgreSQL, SQLLite และอื่นๆ) และยังรองรับวิธีการตรวจสอบสิทธิ์หลายวิธี
ซอฟต์แวร์สำหรับสร้างคลาวด์ส่วนตัวและสาธารณะ
บริการนี้ช่วยให้คุณสร้างแบบสำรวจและแบ่งปันกับผู้ติดต่อบนเว็บไซต์ วิธีที่สะดวกรวบรวมข้อมูลเพื่อการวิเคราะห์ในภายหลัง
เซิร์ฟเวอร์ DICOM สำหรับการวิจัยด้านสุขภาพและการแพทย์ ออกแบบมาเพื่อให้ง่ายต่อการจัดการข้อมูลภาพทางการแพทย์ เครื่องมือที่ดีเพื่อทำให้งานการถ่ายภาพทางการแพทย์เฉพาะสำหรับสถาบันการแพทย์แต่ละแห่งเป็นแบบอัตโนมัติ
โครงการนี้สร้างขึ้นโดยชุมชนโอเพ่นซอร์สและมีวัตถุประสงค์เพื่อให้บริการ โซลูชั่นที่ดีที่สุดสำหรับองค์กรที่ใช้การวิเคราะห์ธุรกิจ
การใช้งานหลัก:
- การสร้างรายงาน
- การวิเคราะห์
- การรวบรวมข้อมูล
- แพลตฟอร์มระบบธุรกิจอัจฉริยะ
นักพัฒนา Java™ สามารถใช้ส่วนประกอบของโปรเจ็กต์เพื่อ การสร้างอย่างรวดเร็ว การตัดสินใจของตัวเองสำหรับการวิเคราะห์ธุรกิจ
ระบบการจัดการข้อมูลดิจิทัลแบบโอเพ่นซอร์สแบบโมดูลาร์
ซอฟต์แวร์ฟรีสำหรับอีคอมเมิร์ซ
ไลบรารีสำหรับการกรองและเรียงลำดับอย่างรวดเร็ว คอลเลกชันขนาดใหญ่- มากถึง 100,000 องค์ประกอบในเบราว์เซอร์
ภาษาโอเพ่นซอร์ส
เปิดภาษาโปรแกรม ซอร์สโค้ดและสภาพแวดล้อมการพัฒนาสำหรับผู้ที่ต้องการสร้างภาพและภาพเคลื่อนไหว
ร- ภาษาเปิดการเขียนโปรแกรมและ สภาพแวดล้อมซอฟต์แวร์สำหรับการคำนวณทางสถิติและกราฟิก ภาษา R ถูกใช้กันอย่างแพร่หลายในหมู่นักสถิติเพื่อการพัฒนาซอฟต์แวร์ทางสถิติและการวิเคราะห์ข้อมูล
ฉันจะหาโครงการโอเพ่นซอร์สเพิ่มเติมได้ที่ไหน
หนึ่งในบริการเว็บที่ใหญ่ที่สุดสำหรับการพัฒนาโครงการด้านไอทีร่วมกัน ฟรีอย่างแน่นอนสำหรับโครงการโอเพ่นซอร์ส คำขวัญของบริการ "Social coding" สามารถแปลได้ว่า "Coding together"
ออกแบบมาเพื่อทำให้โครงการโอเพ่นซอร์สเป็นที่นิยม การใช้เครื่องมือที่มีให้ นักพัฒนาได้สร้างซอฟต์แวร์ที่มีประสิทธิภาพในโครงการมากกว่า 430,000 โครงการ ทรัพยากรมีผู้ใช้ที่ลงทะเบียนมากกว่า 3.7 ล้านคน แคตตาล็อกยอดนิยมรวบรวมลูกค้ามากกว่า 41.8 ล้านรายด้วย โครงการที่เปิดอยู่แหล่งที่มาและให้บริการดาวน์โหลดมากกว่า 4,800,000 ครั้งต่อวัน
เป้าหมายของ Fossdroid คือการโปรโมตแอปพลิเคชันโอเพ่นซอร์สบน Android ผ่านโครงการ F-Droid Fossdroid นำข้อมูลจาก F-Droid และจัดระเบียบแอปตามลำดับที่คล้ายกับ Google Playด้วยความสามารถในการดูตามความนิยม
จะทราบได้อย่างไรว่าซอฟต์แวร์เป็นโอเพ่นซอร์สและมีกฎการใช้งานอย่างไร
จำเป็นต้องเข้าใจว่าไม่ใช่ทุกโครงการโอเพ่นซอร์สที่สามารถใช้เพื่อวัตถุประสงค์ทางการค้าหรือแก้ไขได้อย่างอิสระ หากต้องการทราบว่าซอฟต์แวร์นั้นเป็นโอเพ่นซอร์สหรือไม่และมีกฎการใช้งานอย่างไร คุณต้องดูใบอนุญาตของซอฟต์แวร์นั้น โดยปกติแล้วข้อความเต็มจะอยู่ในโค้ดโดยตรง
การเรียนรู้การเขียนโปรแกรมเริ่มต้นด้วยก้าวเล็กๆ เป็นที่ชัดเจนว่าก่อนอื่นคุณต้องศึกษาไวยากรณ์และแนวคิดของภาษาที่เลือก แต่สิ่งสำคัญไม่น้อยไปกว่าคือการฝึกฝนทักษะของคุณในการสร้างอัลกอริทึมและแก้ไขปัญหาการเขียนโปรแกรม บทความนี้แสดงรายการทรัพยากรที่ประกอบด้วยงานและแนวคิดทุกประเภทสำหรับโครงการของคุณเอง
ที่นี่คุณจะพบรายการแนวคิดโครงการกว่า 100 รายการที่คุณสามารถนำไปปฏิบัติได้ รายการนี้ออกแบบมาสำหรับ Python แต่แนวคิดเหล่านี้สามารถนำไปใช้ในภาษาอื่นได้ ประกอบด้วยทั้งโครงการที่ไม่จริงจังมากและแบบฝึกหัดที่ดีสำหรับการฝึกฝน รายการนี้แนะนำเป็นอย่างยิ่งสำหรับผู้เริ่มต้นในการอ่านและติดตาม
และที่นี่คุณจะพบรายชื่อเกมโคลน 49 เกมที่คุณสามารถเขียนได้ ทางเลือกขึ้นอยู่กับระดับความยาก
ต้องการสร้างสิ่งใหม่ ๆ หรือไม่? ลองเข้าไปดู Idea Machine และ The Internet Wishlist ซึ่งผู้คนจะโพสต์คำแนะนำเกี่ยวกับโปรแกรมที่พวกเขาต้องการดู
หากคุณต้องการแบบฝึกหัดภาคปฏิบัติก็ทำไป รายการนี้ไซต์/แหล่งข้อมูล:
แบบฝึกหัดทั่วไป:
- Project Euler มีมากกว่า 500 รายการ ปัญหาทางคณิตศาสตร์(เกี่ยวกับทฤษฎีจำนวน ระบบจำนวน ฯลฯ) ที่ต้องแก้ไขโดยใช้การเขียนโปรแกรม (ในภาษาใดก็ได้)
- Code Abbey เก็บปัญหาการเขียนโปรแกรมมากกว่า 200 ปัญหา 125 คนในจำนวนนี้ได้รับใบรับรองสำหรับแนวทางการแก้ปัญหา ซึ่งเป็นแรงบันดาลใจให้นักเรียนจำนวนมาก
- Rosalind เป็นอีกไซต์หนึ่งที่คล้ายกับ Project Euler ซึ่งนำเสนอปัญหาทางชีวสารสนเทศมากกว่า 200 รายการให้เลือก
- Codingbat.com มีแบบฝึกหัด Java และ Python สำหรับทั้งผู้เริ่มต้นและโปรแกรมเมอร์ขั้นสูง
- codegolf.stackexchange.com เป็นไซต์ที่มีการเผยแพร่และหารือเกี่ยวกับปริศนาการเขียนโปรแกรม
- Ruby Quiz เป็นชุดปริศนาที่ขอให้คุณเขียน โปรแกรมระยะสั้นที่มีความซับซ้อนต่างกันไป โซลูชันดั้งเดิมอธิบายไว้ใน Ruby แต่สามารถใช้งานได้ในทุกภาษา
- - การเลือกงานลอจิกและการเขียนโปรแกรมแต่ละอย่างด้วย การวิเคราะห์โดยละเอียดโซลูชั่น
ปัญหาจากการเขียนโปรแกรมโอลิมปิก:
- UVa Online Judge คือการรวบรวมปัญหานับร้อยจากการแข่งขันการเขียนโปรแกรม พร้อมระบบออนไลน์สำหรับตรวจสอบวิธีแก้ปัญหา
- TopCoder มีปัญหาอัลกอริธึมที่ซับซ้อนซึ่งรวบรวมมาจากการแข่งขันต่างๆ ในช่วงหลายปีที่ผ่านมา นอกจากนี้ยังมีการแข่งขันเขียนโปรแกรมเดือนละหลายครั้ง
- CodeForces คล้ายกับ TopCoder แต่มี งานเพิ่มเติมในการแข่งขันและคุณสมบัติพิเศษหลายประการ รวมถึง “การแข่งขันเสมือนจริง”
- Timus - เช่นเดียวกับ UVA ประกอบด้วยปัญหาจากการแข่งขันล่าสุด (ระดับโลกและระดับภูมิภาค)
- SPOJ นั้นคล้ายคลึงกับ UVA โดยมีภาษาการเขียนโปรแกรมให้เลือกมากมาย
- USACO มีปัญหาอัลกอริทึมหลายประการพร้อมคำแนะนำในการแก้ไข
สำหรับภาษาเฉพาะ:
- สำหรับ Prolog, Lisp และภาษาที่คล้ายกัน โปรดไปที่ P-99 และ L-99 ชุดปัญหา 99 ข้อเพื่อปรับปรุงประสิทธิภาพของคุณในภาษาเหล่านี้
อัปเดตล่าสุด: 31/10/2558
ขั้นแรก เรามาเชื่อมต่อไลบรารีคลาสที่คอมไพล์ในหัวข้อก่อนหน้ากันก่อน เมื่อต้องการทำเช่นนี้ ในโครงการ BankApplication หลัก ให้คลิกที่รายการอ้างอิง คลิกขวาเมาส์ และในเมนูที่ปรากฏขึ้น ให้เลือก เพิ่มการอ้างอิง...:
จากนั้นในหน้าต่างที่ปรากฏขึ้น ให้ตรวจสอบรายการ BankLibrary ซึ่งจะเป็นตัวแทนของไลบรารีคลาสของเรา และคลิกตกลง
ตอนนี้เรามาเปลี่ยนไฟล์ Program.cs ในโครงการหลักดังนี้:
การใช้ระบบ; ใช้ BankLibrary; เนมสเปซ BankApplication (โปรแกรมคลาส ( โมฆะคงที่หลัก (สตริง args) ( Bank
ไลบรารีถูกรวมไว้ที่จุดเริ่มต้นของไฟล์:
การใช้ BankLibrary;
วิธีการหลักจะสร้างออบเจ็กต์ Bank ซึ่งพิมพ์ตามคลาสบัญชี และเราจะโต้ตอบกับออบเจ็กต์บัญชี
ในขณะที่ลูปแสดงรายการคำสั่งเพื่อให้ผู้ใช้เลือก หลังจากเลือกอันใดอันหนึ่งแล้ว คำสั่งที่เกี่ยวข้องจะถูกดำเนินการในโครงสร้างสวิตช์ แต่ละคำสั่งแสดงถึงการรับอินพุตจากผู้ใช้ แปลงโดยใช้คลาส Convert และส่งอาร์กิวเมนต์ไปยังเมธอดของอ็อบเจ็กต์ Bank
การวนซ้ำแต่ละครั้ง ในขณะที่วนซ้ำสอดคล้องกับหนึ่งวัน ดังนั้นเมื่อสิ้นสุดรอบจึงเรียกใช้เมธอด bank.CalculatePercentage() ซึ่งจะเพิ่มตัวนับวันสำหรับออบเจ็กต์บัญชีและคำนวณดอกเบี้ย
ในที่สุดมันจะได้ผล โปรแกรมถัดไปจำลองการทำงานของธนาคารและการโต้ตอบของผู้ใช้