ฉันต้องการตัวอย่าง ฉันสับสนอยู่เสมอดังนั้นด้วยตัวอย่างบางอย่างฉันอาจจะเข้าใจได้ดีขึ้น
นอกจากนี้: Eclipse เป็น API หรือ IDE หรือไม่
ฉันต้องการตัวอย่าง ฉันสับสนอยู่เสมอดังนั้นด้วยตัวอย่างบางอย่างฉันอาจจะเข้าใจได้ดีขึ้น
นอกจากนี้: Eclipse เป็น API หรือ IDE หรือไม่
คำตอบ:
IDEเป็นสภาพแวดล้อมการพัฒนาแบบบูรณาการ - โปรแกรมแก้ไขข้อความ suped ขึ้นกับการสนับสนุนเพิ่มเติมสำหรับการพัฒนา (เช่นนักออกแบบรูปแบบบรรณาธิการทรัพยากร ฯลฯ ), การรวบรวมและการแก้จุดบกพร่องการใช้งาน เช่น Eclipse, Visual Studio
ห้องสมุดเป็นก้อนของรหัสที่คุณสามารถโทรจากรหัสของคุณเองที่จะช่วยให้คุณทำสิ่งต่างๆมากขึ้นอย่างรวดเร็ว / ได้อย่างง่ายดาย ตัวอย่างเช่นไลบรารีการประมวลผลบิตแมปจะให้บริการสิ่งอำนวยความสะดวกสำหรับการโหลดและจัดการรูปภาพบิตแมปซึ่งช่วยให้คุณไม่ต้องเขียนโค้ดนั้นทั้งหมดด้วยตัวคุณเอง โดยทั่วไปแล้วไลบรารีจะเสนอฟังก์ชันการทำงานหนึ่งด้านเท่านั้น (การประมวลผลภาพหรือการดำเนินการกับไฟล์ zip)
API (อินเตอร์เฟซการเขียนโปรแกรมประยุกต์) เป็นคำที่หมายถึงฟังก์ชั่น / วิธีการในห้องสมุดที่คุณสามารถโทรไปขอให้ทำสิ่งสำหรับคุณ - อินเตอร์เฟซที่ห้องสมุด
SDK (ชุดพัฒนาซอฟต์แวร์) เป็นห้องสมุดหรือกลุ่มของห้องสมุด (มักจะมีการใช้งานเครื่องมือพิเศษไฟล์ข้อมูลและรหัสตัวอย่าง) ที่ช่วยคุณในการพัฒนารหัสที่ใช้ระบบ (เช่นรหัสส่วนขยายสำหรับการใช้คุณสมบัติของระบบปฏิบัติการ ( Windows SDK) การวาดภาพกราฟิก 3D ผ่านระบบเฉพาะ (DirectX SDK) การเขียนโปรแกรมเสริมเพื่อขยายแอปพลิเคชันอื่น (Office SDK) หรือการเขียนรหัสเพื่อให้อุปกรณ์เช่น Arduino หรือโทรศัพท์มือถือทำในสิ่งที่คุณต้องการ) SDK มักจะยังคงมีโฟกัสเดียว
เครื่องมือเป็นเหมือน SDK - มันเป็นกลุ่มของเครื่องมือ (และมักรหัสห้องสมุด) ที่คุณสามารถใช้เพื่อให้ง่ายต่อการเข้าถึงอุปกรณ์หรือระบบ ... แม้ว่าอาจจะมีความสำคัญมากขึ้นในการจัดหาเครื่องมือและการใช้งานมากกว่ารหัสห้องสมุดเพียง .
กรอบเป็นห้องสมุดขนาดใหญ่หรือกลุ่มของห้องสมุดที่ให้บริการจำนวนมาก (มากกว่าอาจจะเป็นความสามารถในการเพ่งความสนใจไปเพียงหนึ่งห้องสมุดมากที่สุด / SDKs ทำ) ตัวอย่างเช่น. NET ได้จัดทำเฟรมเวิร์กแอปพลิเคชัน - ทำให้การใช้บริการที่แตกต่างกันส่วนใหญ่ (ถ้าไม่ทั้งหมด) ที่คุณต้องการ (เช่น Windows, กราฟิก, การพิมพ์, การสื่อสาร, ฯลฯ ) เพื่อเขียนแอปพลิเคชันต่างๆ "ห้องสมุด" ให้การสนับสนุนทุกสิ่งที่คุณต้องทำ บ่อยครั้งที่เฟรมเวิร์กส่งมอบฐานที่สมบูรณ์ซึ่งคุณสร้างรหัสของคุณเองแทนที่จะสร้างแอปพลิเคชันที่ใช้รหัสไลบรารีเพื่อทำงานส่วนต่าง ๆ ของมัน
แน่นอนมีตัวอย่างมากมายในไวด์ ธ ที่ไม่ตรงกับคำอธิบายเหล่านี้อย่างแน่นอน
IDE: MS Office ของการเขียนโปรแกรม เป็นที่ที่คุณพิมพ์รหัสของคุณพร้อมคุณสมบัติเพิ่มเติมบางอย่างที่จะทำให้คุณเป็นโปรแกรมเมอร์ที่มีความสุขขึ้น (เช่นEclipse, Netbeans ) ตัวถังรถยนต์: มันคือสิ่งที่คุณสัมผัสดูและทำงานจริง ๆ
Library:ไลบรารีคือชุดของฟังก์ชั่นซึ่งมักจะจัดกลุ่มเป็นไฟล์โปรแกรมหลายไฟล์ แต่บรรจุลงในไฟล์เก็บถาวรไฟล์เดียว มันมีโปรแกรมที่สร้างโดยคนอื่น ๆ ดังนั้นคุณไม่จำเป็นต้องบูรณาการล้อ (เช่นjunit.jar, log4j.jar ) โดยทั่วไปแล้วไลบรารีมีบทบาทสำคัญ แต่ทำงานทั้งหมดเบื้องหลังมันไม่ได้มี GUI เครื่องยนต์ของรถยนต์
API:เอกสารของผู้เผยแพร่ห้องสมุด นี่คือวิธีที่คุณควรใช้ห้องสมุดของฉัน (เช่นlog4j API , junit API ) คู่มือผู้ใช้ของรถยนต์ - ใช่รถยนต์ก็มีมาด้วยเช่นกัน!
ชุดคืออะไร เป็นการรวบรวมรายการที่เกี่ยวข้องมากมายที่ทำงานร่วมกันเพื่อให้บริการที่เฉพาะเจาะจง เมื่อมีคนบอกว่าชุดยาคุณจะได้รับทุกสิ่งที่คุณต้องการสำหรับกรณีฉุกเฉิน: พลาสเตอร์ยาแอสไพรินผ้ากอซและน้ำยาฆ่าเชื้อ ฯลฯ
SDK : โดนัลด์เสวยสุข คุณมีทุกสิ่งที่คุณต้องการ (และไม่ต้องการ) บรรจุอย่างประณีต: อาหารจานหลักของหวานเครื่องดื่มและของเล่นโบนัส SDK คือส่วนประกอบซอฟต์แวร์ที่แตกต่างกันที่รวมอยู่ในแพ็คเกจเช่นว่า "พร้อมสำหรับการดำเนินการ" ทันที มักจะมีหลายไลบรารีและสามารถแต่อาจไม่จำเป็นต้องรวมถึงปลั๊กอินเอกสารประกอบ API แม้แต่ IDE เอง (เช่นชุดพัฒนา iOS )
ชุดเครื่องมือ : GUI GUI GUI เมื่อคุณได้ยิน 'ชุดเครื่องมือ' ในบริบทการเขียนโปรแกรมมักจะอ้างถึงชุดของไลบรารีที่มีไว้สำหรับการพัฒนา GUI เนื่องจากชุดเครื่องมือเป็น UI เป็นศูนย์กลางพวกเขามักจะมาพร้อมกับปลั๊กอิน (หรือ IDE แบบสแตนด์อโลน) ที่ให้บริการยูทิลิตี้ภาพวาดบนหน้าจอ (เช่นGWT )
Framework : แม้ว่าจะไม่ใช่ความคิดที่แพร่หลาย แต่เฟรมเวิร์กสามารถดูเป็นชุดได้ นอกจากนี้ยังมีห้องสมุด (หรือกลุ่มของห้องสมุดที่ทำงานร่วมกัน) ที่มีโครงสร้างการเข้ารหัสและรูปแบบเฉพาะ (เช่นคำ, กรอบงาน ) (เช่น Spring Framework)
พิจารณาการพัฒนา Android:
IDE: Eclipse และอื่น ๆ
Library: android.app.Activity library (คลาสพร้อมรหัสทั้งหมด)
API: ส่วนต่อประสานฟังก์ชั่นทั้งหมดที่เราเรียก
SDK: Android SDK มอบไลบรารี API และเครื่องมือสำหรับนักพัฒนาที่จำเป็นในการสร้างทดสอบและดีบักแอปสำหรับ Android (---- tools - DDMS, Emulator ---- แพลตฟอร์ม - เวอร์ชั่น Android OS, ---- platform- เครื่องมือ - ADB, ---- เอกสาร API)
ToolKit: อาจเป็น ADT Bundle
Framework: ไลบรารีขนาดใหญ่ แต่เน้นสถาปัตยกรรมมากกว่า
กล่าวอีกนัยหนึ่ง ...
IDE แม้แต่ Notepad ของคุณก็เป็น IDE ซอฟต์แวร์ที่คุณเขียน / คอมไพล์โค้ดด้วย IDE ทุกตัว
ไลบรารี พวงของโค้ดที่ทำให้ฟังก์ชั่น / วิธีการใช้งานง่ายขึ้น
API อินเทอร์เฟซการเขียนโปรแกรมสำหรับฟังก์ชั่น / การกำหนดค่าที่คุณทำงานด้วยการใช้งานมักถูกทำเป็นเอกสาร
SDK พิเศษและ / หรือเพื่อการพัฒนา / ทดสอบ
ToolKit แอพเล็ก ๆ สำหรับการใช้งานอย่างรวดเร็วมักจะเป็น GUI
แอพGUIพร้อมอินเทอร์เฟซแบบกราฟิกไม่จำเป็นต้องมีความรู้ในการเขียนโปรแกรมซึ่งแตกต่างจาก API
Framework Bunch ของ APIs / Library / Snippets ขนาดใหญ่ที่ห่อไว้ในเนมสเปซ / หรือห่อหุ้มจากขอบเขตด้านนอกสำหรับการจัดการขนาดกะทัดรัดโดยไม่ขัดแย้งกับรหัสอื่น
MVC
รูปแบบการออกแบบที่แยกออกมาในรูปแบบมุมมองและตัวควบคุมสำหรับแอปพลิเคชันขนาดใหญ่ พวกเขาไม่ได้ขึ้นอยู่กับแต่ละอื่น ๆ และสามารถเปลี่ยนแปลง / ปรับปรุง / แทนที่โดยไม่ต้องดูแลรหัสอื่น ๆ
ตัวอย่าง:
รถยนต์ (รุ่น)
วัตถุที่นำเสนอ
ตัวอย่างในไอที: รูปแบบ HTML
กล้อง (มุมมอง)
สิ่งที่สามารถมองเห็นวัตถุ (รถยนต์)
ตัวอย่างในไอที: เบราว์เซอร์ที่แสดงผลเว็บไซต์ด้วยแบบฟอร์ม
คนขับ (ผู้ควบคุม)
คนที่ขับรถคันนั้น
ตัวอย่างในไอที: ฟังก์ชั่นที่จัดการกับข้อมูลแบบฟอร์มที่ถูกส่ง
ตัวอย่าง โค้ดขนาดเล็กเพียงไม่กี่บรรทัดอาจไม่สมบูรณ์แม้กระทั่งคุ้มค่าสำหรับการแบ่งปันอย่างรวดเร็ว
ฟังก์ชั่นพิเศษสำหรับปลั๊กอินสำหรับ frameworks / APIs / libraries ที่ระบุเท่านั้น
ส่วนเสริม โมดูลหรือบริการเพิ่มเติมสำหรับ GUI เฉพาะ
SDK แสดงถึงชุดพัฒนาซอฟต์แวร์และ IDE แทนสภาพแวดล้อมการพัฒนาแบบรวม IDE คือซอฟต์แวร์หรือโปรแกรมที่ใช้ในการเขียนรวบรวมเรียกใช้และดีบักเช่น Xcode SDK เป็นเอ็นจิ้นพื้นฐานของ IDE รวมถึงไลบรารีทั้งหมดของแพลตฟอร์มที่แอพจำเป็นต้องเข้าถึง มันเป็นพื้นฐานมากกว่า IDE เพราะปกติแล้วจะไม่มีเครื่องมือกราฟิก