หมวดหมู่: การเขียนโปรแกรม

API คืออะไร? อธิบายอินเตอร์เฟสการเขียนโปรแกรมแอปพลิเคชัน

API ย่อมาจากอินเทอร์เฟซการเขียนโปรแกรมแอปพลิเคชันซึ่งเป็นแนวคิดที่ใช้ได้ทุกที่ตั้งแต่เครื่องมือบรรทัดคำสั่งไปจนถึงโค้ด Java ระดับองค์กรไปจนถึงแอปบนเว็บ Ruby on Rails API เป็นวิธีการโต้ตอบทางโปรแกรมกับส่วนประกอบซอฟต์แวร์หรือทรัพยากรที่แยกจากกัน เว้นแต่คุณจะเขียนโค้ดทุกบรรทัดตั้งแต่ต้นคุณจะต้องโต้ตอบกับส่วนประกอบซอฟต์แวร์ภายนอกซึ่งแต่ละส่วนจะมี API ของตัวเอง แม้ว่าคุณจะเขียนบางอย่างตั้งแต่ต้น แต่แอปพลิเคชันซอฟต์แวร์ที่ออกแบบมาอย่างดีจะมี API ภายในเพื่อช่วยจัดระเบียบโค้ดและทำให้ส่วนประกอบต่างๆสามารถนำกลับมาใช้ใหม่ได้มากขึ้น และมี API สาธารณะมากมายที่ช่วยให้คุณสามารถใช้งานฟังก์ชันที่พัฒนาขึ้นจากที่

อ่านเพิ่มเติม

เมื่อใดควรใช้คลาสนามธรรมเทียบกับอินเทอร์เฟซใน C #

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

อ่านเพิ่มเติม

CI / CD คืออะไร? อธิบายการผสานรวมอย่างต่อเนื่องและการส่งมอบอย่างต่อเนื่อง

การผสานรวมอย่างต่อเนื่อง (CI) และการจัดส่งแบบต่อเนื่อง (CD) รวบรวมวัฒนธรรมชุดหลักการปฏิบัติงานและการรวบรวมแนวทางปฏิบัติที่ช่วยให้ทีมพัฒนาแอปพลิเคชันสามารถส่งมอบการเปลี่ยนแปลงโค้ดได้บ่อยขึ้นและเชื่อถือได้ การนำไปใช้เรียกอีกอย่างว่าไปป์ไลน์  CI / CD CI / CD เป็นหนึ่งในแนวทางปฏิบัติที่ดีที่สุดสำหรับทีม devops ในการนำไปใช้ นอกจากนี้ยังเป็นแนวทางปฏิบัติที่ดีที่สุดของ Agile Methodology เนื่องจากช่วยให้ทีมพัฒนาซอฟต์แวร์สามารถมุ่งเน้นไปที่การตอบสนองความต้องการทางธุรกิจคุณภาพโค้ดและความปลอดภัยเนื่องจากขั้นตอนการปรับใช้เป็นแบบอัตโนมัติ กำหนด CI / CD การผสานรวมอย่างต่อเนื่อง  เป็นปรัชญาการเข้า

อ่านเพิ่มเติม

Agile Methodology คืออะไร? อธิบายการพัฒนาซอฟต์แวร์สมัยใหม่

องค์กรเทคโนโลยีทุกแห่งในปัจจุบันดูเหมือนจะใช้วิธีการแบบว่องไวสำหรับการพัฒนาซอฟต์แวร์หรือเป็นเวอร์ชันหนึ่ง หรืออย่างน้อยพวกเขาเชื่อว่าพวกเขาทำ ไม่ว่าคุณจะยังใหม่กับการพัฒนาแอปพลิเคชันแบบ Agile หรือเรียนรู้การพัฒนาซอฟต์แวร์เมื่อหลายสิบปีก่อนโดยใช้วิธีการพัฒนาซอฟต์แวร์แบบ Waterfall วันนี้งานของคุณได้รับอิทธิพลอย่างน้อยจากวิธีการแบบ Agile แต่วิธีการแบบว่องไวคืออะไรและควรปฏิบัติอย่างไรในการพัฒนาซอฟต์แวร์ การพัฒนาแบบว่องไวแตกต่างจากน้ำตกในทางปฏิบัติอย่างไร? วงจรชีวิตการพัฒนาซอฟต์แวร์แบบ Agile หรือ Agile SDLC คืออะไร แล้ว scrum agile เทียบกับ Kanban และรุ่น Agile อื่น ๆ คืออะไร?  Agile เปิดตัวอย

อ่านเพิ่มเติม

Adobe Flash หมดอายุการใช้งานแล้ว

Flash Player ที่เคยแพร่หลายของ Adobe ซึ่งเป็นรันไทม์บนเบราว์เซอร์สำหรับการแสดงเนื้อหาสื่อสมบูรณ์บนอินเทอร์เน็ตได้สิ้นสุดลงแล้วโดย บริษัท ได้เปิดตัวเทคโนโลยีตามกำหนดเวลาขั้นสุดท้ายสำหรับทุกภูมิภาคนอกจีนแผ่นดินใหญ่ การเปิดตัวครั้งสุดท้ายมีขึ้นในวันที่ 8 ธันวาคม Adobe จะไม่รองรับ Flash Player อีกต่อไปหลังจากเดือนนี้ เนื้อหา Flash จะถูกบล็อกไม่ให้ทำงานใน Flash Player ตั้งแต่วันที่ 12 มกราคม 2021  Adobe แนะนำให้ผู้ใช้ทุกคนถอนการติดตั้ง Flash Player ทันทีเพื่อปกป้องระบบของตน ในบันทึกประจำรุ่น Adobe ขอบคุณลูกค้าและนักพัฒนาที่ใช้เทคโนโลยีนี้และสร้างเนื้อหาที่ใช้ประโยชน์จากมันในช่วงสองทศวรรษที่ผ่า

อ่านเพิ่มเติม

PaaS คืออะไร? อธิบาย Platform-as-a-service

Platform-as-a-service (PaaS) คือการนำเสนอระบบคลาวด์คอมพิวติ้งประเภทหนึ่งที่ผู้ให้บริการมอบแพลตฟอร์มให้กับลูกค้าทำให้พวกเขาสามารถพัฒนารันและจัดการแอปพลิเคชันทางธุรกิจได้โดยไม่จำเป็นต้องสร้างและบำรุงรักษาโครงสร้างพื้นฐานซอฟต์แวร์ดังกล่าว กระบวนการพัฒนามักต้องการ เนื่องจากสถาปัตยกรรม PaaS ไม่ให้นักพัฒนาและผู้ใช้รายอื่นมองเห็นโครงสร้างพื้นฐานโมเดลนี้จึงคล้ายกับแนวคิดของการประมวลผลแบบไร้เซิร์ฟเวอร์และฟังก์ชัน as-a-service (FaaS) ซึ่งผู้ให้บริการระบบคลาวด์จัดหาและเรียกใช้เซิร์ฟเวอร์และ จัดการการจัดสรรทรัพยากร  FaaS เป็นข้อเสนอแบบไร้เซิร์ฟเวอร์ประเภทหนึ่งที่ช่วยให้ บริษัท ต่างๆสามารถพัฒนาและเรีย

อ่านเพิ่มเติม

คลาวด์คอมพิวติ้งคืออะไร? ทุกสิ่งที่คุณต้องรู้ตอนนี้

Cloud computing มีสองความหมาย ที่พบบ่อยที่สุดหมายถึงการเรียกใช้ปริมาณงานจากระยะไกลผ่านอินเทอร์เน็ตในศูนย์ข้อมูลของผู้ให้บริการเชิงพาณิชย์หรือที่เรียกว่าโมเดล "คลาวด์สาธารณะ" ข้อเสนอคลาวด์สาธารณะที่เป็นที่นิยมเช่น Amazon Web Services (AWS) ระบบ CRM ของ Salesforce และ Microsoft Azure ล้วนเป็นตัวอย่างแนวคิดที่คุ้นเคยเกี่ยวกับการประมวลผลแบบคลาวด์ ปัจจุบันธุรกิจส่วนใหญ่ใช้วิธีการหลายคลาวด์ซึ่งหมายความว่าพวกเขาใช้บริการคลาวด์สาธารณะมากกว่าหนึ่งบริการ ความหมายที่สองของการประมวลผลแบบคลาวด์อธิบายถึงวิธีการทำงาน: กลุ่มทรัพยากรเสมือนจริงตั้งแต่พลังประมวลผลดิบไปจนถึงฟังก์ชันการทำงานของแอปพลิเคชันที่มีให้ตา

อ่านเพิ่มเติม

SaaS คืออะไร? กำหนดซอฟต์แวร์เป็นบริการ

รูปแบบการประมวลผลบนคลาวด์ที่ได้รับความนิยมมากที่สุดรูปแบบหนึ่งคือ software-as-a-service (SaaS) นี่คือคำจำกัดความง่ายๆของ SaaS: รูปแบบการเผยแพร่ซอฟต์แวร์ที่ผู้ให้บริการโฮสต์แอปพลิเคชันสำหรับลูกค้าและทำให้สามารถใช้งานได้กับลูกค้าเหล่านี้ผ่านทางอินเทอร์เน็ต SaaS เป็นหนึ่งในสามประเภทหลักของบริการคลาวด์พร้อมด้วยโครงสร้างพื้นฐาน as-a-service (IaaS) และ platform-as-a-service (PaaS) ตัวอย่าง SaaS ด้วยความสะดวกในการเข้าถึงรูปแบบการจัดส่งซอฟต์แวร์ SaaS จึงเป็นเรื่องปกติสำหรับแอปพลิเคชันทางธุรกิจหลายประเภทและได้รวมเข้ากับกลยุทธ์การส่งมอบของผู้จำหน่ายซอฟต์แวร์ระดับองค์กร บริษัท SaaS มีข้อเสนอสำหรับแอปพล

อ่านเพิ่มเติม

SQL คืออะไร? ภาษากลางของการวิเคราะห์ข้อมูล

ปัจจุบัน Structured Query Language เป็นวิธีมาตรฐานในการจัดการและสืบค้นข้อมูลในฐานข้อมูลเชิงสัมพันธ์แม้ว่าจะมีส่วนขยายที่เป็นกรรมสิทธิ์ของผลิตภัณฑ์ก็ตาม ความง่ายและความแพร่หลายของ SQL ทำให้ผู้สร้าง "NoSQL" หรือที่เก็บข้อมูลที่ไม่เกี่ยวข้องเช่น Hadoop นำชุดย่อยของ SQL มาใช้หรือสร้างภาษาแบบสอบถามที่เหมือน SQL ของตนเอง แต่ SQL ไม่ใช่ภาษา "สากล" สำหรับฐานข้อมูลเชิงสัมพันธ์เสมอไป ตั้งแต่เริ่มต้น (ประมาณปี 1980) SQL มีการโจมตีบางอย่าง นักวิจัยและนักพัฒนาหลายคนในเวลานั้นรวมทั้งฉันคิดว่าค่าใช้จ่ายของ SQL จะทำให้ SQL ไม่สามารถใช้งานได้จริงในฐานข้อมูลการผลิต เห็นได้ชัดว่าเราคิดผิด แต่หลายคนยังคงเชื่อว่าเ

อ่านเพิ่มเติม

การเลือก Java IDE ของคุณ

Updated: ธันวาคม 2018 นักพัฒนา Java ทุกคนต้องการโปรแกรมแก้ไขการเขียนโปรแกรมหรือ IDE ที่สามารถช่วยในส่วนที่ยากกว่าในการเขียน Java และการใช้ไลบรารีคลาสและเฟรมเวิร์ก การตัดสินใจว่าบรรณาธิการหรือ IDE ใดจะเหมาะกับคุณมากที่สุดนั้นขึ้นอยู่กับหลายสิ่งรวมถึงลักษณะของโครงการที่อยู่ระหว่างการพัฒนาบทบาทของคุณในองค์กรกระบวนการที่ทีมพัฒนาใช้และระดับและทักษะของคุณในฐานะโปรแกรมเมอร์ สิ่งที่ต้องพิจารณาเพิ่มเติมคือทีมงานมีมาตรฐานเกี่ยวกับเครื่องมือหรือไม่และความชอบส่วนตัวของคุณหรือไม่ IDE สามตัวที่เลือกใช้บ่อยที่สุดสำหรับการพัฒนา Java ฝั่งเซิร์ฟเวอร์ ได้แก่ IntelliJ IDEA, Eclipse และ NetBeans อย่างไรก็ตามนี่ไม่

อ่านเพิ่มเติม

JSON คืออะไร? รูปแบบที่ดีกว่าสำหรับการแลกเปลี่ยนข้อมูล

JavaScript Object Notation เป็นการนำเสนอข้อมูลที่มีโครงสร้างแบบไม่ใช้สคีมาซึ่งอิงตามคู่ของคีย์ - ค่าและรายการที่เรียงลำดับ แม้ว่า JSON จะมาจาก JavaScript แต่ก็ได้รับการสนับสนุนโดยกำเนิดหรือผ่านไลบรารีในภาษาโปรแกรมหลักส่วนใหญ่ JSON มักใช้เพื่อแลกเปลี่ยนข้อมูลระหว่างเว็บไคลเอนต์และเว็บเซิร์ฟเวอร์  ในช่วง 15 ปีที่ผ่านมา JSON ได้แพร่หลายบนเว็บ ปัจจุบันเป็นรูปแบบตัวเลือกสำหรับบริการเว็บที่เปิดเผยต่อสาธารณะเกือบทุกแห่งและมักใช้กับบริการเว็บส่วนตัวด้วยเช่นกัน ความนิยมของ JSON ยังส่งผลให้มีการสนับสนุน JSON ดั้งเดิมโดยฐานข้อมูลจำนวนมาก ฐานข้อมูลเชิงสัมพันธ์เช่น PostgreSQL และ MySQL มาพร้อมกับการสน

อ่านเพิ่มเติม

รีวิว: 6 JavaScript IDE ที่ดีที่สุด

JavaScript ถูกใช้สำหรับแอปพลิเคชันประเภทต่างๆในปัจจุบัน ส่วนใหญ่ JavaScript ทำงานร่วมกับ HTML5 และ CSS เพื่อสร้างส่วนหน้าของเว็บ แต่ JavaScript ยังช่วยสร้างแอปพลิเคชันมือถือและพบว่ามีส่วนสำคัญที่ส่วนหลังในรูปแบบของเซิร์ฟเวอร์ Node.js โชคดีที่เครื่องมือพัฒนา JavaScript ทั้งบรรณาธิการและ IDE กำลังเพิ่มขึ้นเพื่อตอบสนองความท้าทายใหม่ ๆ เหตุใดจึงต้องใช้ IDE แทนตัวแก้ไข สาเหตุหลักคือ IDE สามารถดีบักและบางครั้งก็สร้างโปรไฟล์ให้กับรหัสของคุณ IDE ยังรองรับระบบ ALM ซึ่งรวมเข้ากับ Git, GitHub, Mercurial, Subversion และ Perforce สำหรับการควบคุมเวอร์ชัน แต่เมื่อบรรณาธิการเพิ่ม hooks ให้กั

อ่านเพิ่มเติม

รีวิว: ตัวแก้ไข JavaScript ที่ดีที่สุด 10 อันดับ

โปรแกรมเมอร์ JavaScript มีเครื่องมือดีๆมากมายให้เลือก - เกือบจะมากเกินไปที่จะติดตาม ในบทความนี้ฉันจะพูดถึงโปรแกรมแก้ไขข้อความ 10 รายการพร้อมการสนับสนุนที่ดีสำหรับการพัฒนาด้วย JavaScript, HTML5 และ CSS และสำหรับการจัดทำเอกสารด้วย Markdown เหตุใดจึงต้องใช้โปรแกรมแก้ไขสำหรับการเขียนโปรแกรม JavaScript แทน IDE ในคำ: ความเร็ว ความแตกต่างที่สำคัญระหว่างบรรณาธิการและ IDE คือ IDE สามารถดีบักและบางครั้งก็สร้างโปรไฟล์โค้ดของคุณและ IDE มีการสนับสนุนระบบการจัดการวงจรการใช้งานแอปพลิเคชัน (ALM) บรรณาธิการหลายคนที่เราพูดถึงในที่นี้สนับสนุนระบบควบคุมเวอร์ชันอย่างน้อยหนึ่งเวอร์ชันซึ่งมักจะเป็น Git ดังนั้นเกณฑ์จึ

อ่านเพิ่มเติม

วิธีผสานข้อมูลใน R โดยใช้ R merge, dplyr หรือ data.table

R มีวิธีที่รวดเร็วและสวยงามหลายวิธีในการเชื่อมต่อเฟรมข้อมูลด้วยคอลัมน์ทั่วไป ฉันต้องการแสดงให้คุณเห็นสามคน: merge()ฟังก์ชันฐาน R dplyr เข้าร่วมตระกูลฟังก์ชันและ ไวยากรณ์วงเล็บของ data.table รับและนำเข้าข้อมูล สำหรับตัวอย่างนี้ฉันจะใช้ชุดข้อมูลสาธิตที่ชื่นชอบ - เวลาล่าช้าของเที่ยวบินจาก US Bureau of Transportation Statistics ถ้าคุณต้องการที่จะทำตามหัวเพื่อ //bit.ly/USFlightDelays และดาวน์โหลดข้อมูลสำหรับกรอบเวลาที่คุณเลือกด้วยคอลัมน์เที่ยวบินวัน , Reporting_Airline , แหล่งกำเนิด , ปลายทาง

อ่านเพิ่มเติม

Java ผ่านการอ้างอิงหรือส่งผ่านค่า?

การเขียนโปรแกรมภาษาจำนวนมากให้ผ่านพารามิเตอร์โดยการอ้างอิงหรือตามมูลค่า ใน Java เราสามารถส่งผ่านพารามิเตอร์ด้วยค่าเท่านั้น สิ่งนี้กำหนดข้อ จำกัด บางประการและก่อให้เกิดคำถาม ตัวอย่างเช่นหากค่าพารามิเตอร์มีการเปลี่ยนแปลงในเมธอดจะเกิดอะไรขึ้นกับค่าหลังจากการเรียกใช้เมธอด คุณอาจสงสัยว่า Java จัดการค่าอ็อบเจ็กต์ในฮีปหน่วยความจำอย่างไร นี้Java ชาเลนเจอร์จะช่วยให้คุณแก้ไขคำถามที่พบบ่อยเหล่านี้และอื่นเกี่ยวกับการอ้างอิงวัตถุในชวา รับซอร์สโค้ด รับรหัสสำหรับ Java Challenger นี้ คุณสามารถเรียกใช้การทดสอบของคุณเองในขณะที่ทำตามตัวอย่าง การอ้างอิงอ็อบเจ็กต์จะถูกส่งผ่านค่า การอ้างอิงอ็อบเจ็กต์ทั้งหมดใน Jav

อ่านเพิ่มเติม

JPA คืออะไร? บทนำสู่ Java Persistence API

ตามข้อกำหนด Java Persistence API เกี่ยวข้องกับการคงอยู่ซึ่งหมายถึงกลไกแบบหลวม ๆ ที่วัตถุ Java อยู่ได้นานกว่ากระบวนการแอปพลิเคชันที่สร้างขึ้น ไม่ใช่ทุกอ็อบเจ็กต์ Java ที่ต้องคงอยู่ แต่แอ็พพลิเคชันส่วนใหญ่ยังคงมีอ็อบเจ็กต์ทางธุรกิจที่สำคัญ ข้อกำหนด JPA ช่วยให้คุณกำหนดซึ่งวัตถุที่ควรได้รับการยืนยันและวิธีการที่วัตถุเหล่านั้นควรได้รับการยืนยันในการใช้งานจาวาของคุณ ด้วยตัวมันเอง JPA ไม่ใช่เครื่องมือหรือกรอบ แต่เป็นการกำหนดชุดของแนวคิดที่สามารถนำไปใช้โดยเครื่องมือหรือกรอบงานใดก็ได้ ในขณะที่แบบจำลองการทำแผนที่เชิงสัมพันธ์เชิงวัตถุ (ORM) ของ JPA เดิมมีพื้นฐานมาจาก Hibernate แต่ก็มีการพัฒนาตั้งแต่นั้นมา

อ่านเพิ่มเติม

JVM คืออะไร? แนะนำ Java Virtual Machine

Java Virtual Machine เป็นโปรแกรมที่มีจุดประสงค์เพื่อเรียกใช้งานโปรแกรมอื่น ๆ มันเป็นความคิดที่เรียบง่ายที่ยังยืนเป็นหนึ่งในตัวอย่างที่ยิ่งใหญ่ที่สุดของเราในการเข้ารหัสกังฟู JVM ทำให้สภาพที่เป็นอยู่ในเวลานั้นแย่ลงและยังคงสนับสนุนนวัตกรรมการเขียนโปรแกรมในปัจจุบัน JVM ใช้สำหรับอะไร JVM มีฟังก์ชันหลัก 2 อย่างคืออนุญาตให้โปรแกรม Java ทำงานบนอุปกรณ์หรือระบบปฏิบัติการใด ๆ (เรียกว่าหลักการ "เขียนครั้งเดียวรันที่ไหนก็ได้") และเพื่อจัดการและเพิ่มประสิทธิภาพหน่วยความจำของโปรแกรม เมื่อ Java เปิดตัวในปี 1995 โปรแกรมคอมพิวเตอร์ทั้งหมดถูกเขียนลงในระบบปฏิบัติการเฉพาะและหน่วยความจำโปรแกรมได้รับการจัดการโดยนักพ

อ่านเพิ่มเติม

CUDA คืออะไร? การเขียนโปรแกรมแบบขนานสำหรับ GPU

CUDA เป็นแพลตฟอร์มการประมวลผลแบบขนานและรูปแบบการเขียนโปรแกรมที่พัฒนาโดย Nvidia สำหรับการประมวลผลทั่วไปบน GPU ของตัวเอง (หน่วยประมวลผลกราฟิก) CUDA ช่วยให้นักพัฒนาสามารถเร่งความเร็วแอปพลิเคชันที่ต้องใช้การประมวลผลมากขึ้นโดยใช้ประโยชน์จากพลังของ GPU สำหรับส่วนที่ขนานกันได้ของการคำนวณ ในขณะที่มีการเสนอ API อื่น ๆ สำหรับ GPU เช่น OpenCL และมี GPU ที่แข่งขันได้จาก บริษัท อื่น ๆ เช่น AMD การรวมกันของ CUDA และ Nvidia GPUs เข้าครอบงำพื้นที่แอปพลิเคชันต่างๆรวมถึงการเรียนรู้เชิงลึกและเป็นรากฐานสำหรับบางส่วนของ คอมพิวเตอร์ที่เร็วที่สุดในโลก กราฟิกการ์ดนั้นมีเนื้อหาที่เก่าพอ ๆ กับพีซีนั่นคือถ้าคุณถือว่า IB

อ่านเพิ่มเติม

JSP คืออะไร? บทนำสู่ JavaServer Pages

JavaServer Pages (JSP) เป็นเทคโนโลยีมาตรฐาน Java ที่ช่วยให้คุณสามารถเขียนไดนามิกเพจที่ขับเคลื่อนด้วยข้อมูลสำหรับเว็บแอ็พพลิเคชัน Java ของคุณ JSP สร้างขึ้นจากข้อมูลจำเพาะ Java Servlet โดยทั่วไปเทคโนโลยีทั้งสองจะทำงานร่วมกันโดยเฉพาะในเว็บแอปพลิเคชัน Java รุ่นเก่า จากมุมมองของการเข้ารหัสความแตกต่างที่ชัดเจนที่สุดระหว่างสิ่งเหล่านี้คือด้วย servlets ที่คุณเขียนโค้ด Java แล้วฝังมาร์กอัปฝั่งไคลเอ็นต์ (เช่น HTML) ลงในโค้ดนั้นในขณะที่ JSP คุณเริ่มต้นด้วยสคริปต์ฝั่งไคลเอ็นต์หรือมาร์กอัปจากนั้นฝัง แท็ก JSP เพื่อเชื่อมต่อเพจของคุณกับแบ็กเอนด์ Java JSP ยังเกี่ยวข้องอย่างใกล้ชิดกับ JSF (JavaServer Faces) ซึ่

อ่านเพิ่มเติม

Jenkins คืออะไร? เซิร์ฟเวอร์ CI อธิบาย

Jenkins นำเสนอวิธีง่ายๆในการตั้งค่าสภาพแวดล้อมการรวมแบบต่อเนื่องหรือการจัดส่งแบบต่อเนื่อง (CI / CD) สำหรับการรวมภาษาและที่เก็บซอร์สโค้ดเกือบทุกชนิดโดยใช้ไปป์ไลน์รวมถึงการพัฒนางานประจำอื่น ๆ โดยอัตโนมัติ แม้ว่า Jenkins จะไม่จำเป็นต้องสร้างสคริปต์สำหรับแต่ละขั้นตอน แต่ก็ให้วิธีที่รวดเร็วและมีประสิทธิภาพมากขึ้นในการรวมสายการสร้างการทดสอบและการปรับใช้ทั้งหมดของคุณมากกว่าที่คุณจะสามารถสร้างเองได้อย่างง่ายดาย “ อย่าทำลายงานสร้างทุกคืน!” เป็นกฎสำคัญในร้านพัฒนาซอฟต์แวร์ที่โพสต์เวอร์ชันผลิตภัณฑ์ที่สร้างขึ้นใหม่ทุกเช้าสำหรับผู้ทดสอบ ก่อนเจนกินส์นักพัฒนาที่ดีที่สุดสามารถทำได้เพื่อหลีกเลี่ยงการทำลายงานสร้า

อ่านเพิ่มเติม

ชุดการสอน: Android Studio สำหรับผู้เริ่มต้น

คู่มือสำหรับผู้เริ่มต้นใช้งาน Android Studio ฉบับสมบูรณ์ตั้งแต่การติดตั้ง Android Studio ไปจนถึงการเข้ารหัสและการแก้จุดบกพร่องแอป Android ตัวแรกของคุณ รวมเคล็ดลับการแก้ปัญหาสำหรับโปรแกรมจำลองอุปกรณ์ Android และซอร์สโค้ดสำหรับแอปตัวอย่างของ Android รูปภาพ Vasabii / Getty ส่วนที่ 1:การติดตั้ง + การตั้งค่า รับข้อกำหนดของระบบและคำแนะนำในการติดตั้ง Android Studio 3.x และเปิดตัวโครงการ Android แรกของคุณ คุณจะเริ่มโปรเจ็กต์ Android แรกของคุณและทำความรู้จักกับหน้าต่างหลักของ Android Studio รูปภาพ Vasabii / Getty ส่วนที่ 2:สำรวจ + โค้ดแอป เขียนแอป Android ที่เคลื่อนไหวเป็นครั้งแรกด้วยโปรแกรมแก้ไข

อ่านเพิ่มเติม

Android Studio สำหรับผู้เริ่มต้นตอนที่ 1: การติดตั้งและตั้งค่า

อัปเดต: มกราคม 2020 หลายปีมานี้เป็นที่ชัดเจนแล้วว่า Android เป็นพลังที่ต้องคำนึงถึงในแนวนอนของระบบปฏิบัติการมือถือ เทคโนโลยีที่ใช้ Java นี้ได้จุดประกายการตื่นทองครั้งใหม่โดยโปรแกรมเมอร์แข่งขันกันเพื่อสร้างรายได้จากแอปบนอุปกรณ์เคลื่อนที่ของตน งาน Android ก็มีมากมายดังที่แสดงในการค้นหางานด่วนโดยใช้ Indeed.com เพื่อให้ประสบความสำเร็จนักพัฒนา Android ต้องมีความเข้าใจภาษา Java (หรือ Kotlin), Android APIs และสถาปัตยกรรมแอปพลิเคชัน Android สิ่งสำคัญคือต้องใช้สภาพแวดล้อมการพัฒนาที่เหมาะสมและมีประสิทธิภาพ เป็นเวลาหลายปี Eclipse IDE พร้อมปลั๊กอิน ADT เป็นแพลตฟอร์มที่ต้องการสำหรับการพัฒนา Android วันนี้เ

อ่านเพิ่มเติม

App server, Web server: อะไรคือความแตกต่าง?

23 สิงหาคม 2545 ถาม:แอพพลิเคชั่นเซิร์ฟเวอร์และเว็บเซิร์ฟเวอร์ต่างกันอย่างไร A: เว็บเซิร์ฟเวอร์จะจัดการคำขอ HTTP โดยเฉพาะในขณะที่แอ็พพลิเคชันเซิร์ฟเวอร์ให้บริการตรรกะทางธุรกิจกับโปรแกรมแอปพลิเคชันผ่านโปรโตคอลจำนวนเท่าใดก็ได้ มาดูรายละเอียดเพิ่มเติมกัน เว็บเซิร์ฟเวอร์ เว็บเซิร์ฟเวอร์จัดการโปรโตคอล HTTP เมื่อเว็บเซิร์ฟเวอร์ได้รับคำขอ HTTP เซิร์ฟเวอร์จะตอบสนองด้วยการตอบกลับ HTTP เช่นการส่งกลับเพจ HTML ในการดำเนินการตามคำขอเว็บเซิร์ฟเวอร์อาจตอบสนองด้วยเพจ HTML แบบคงที่หรือรูปภาพส่งการเปลี่ยนเส้นทางหรือมอบหมายการสร้างการตอบกลับแบบไดนามิกให้กับโปรแกรมอื่น ๆ เช่นสคริปต์ CGI, JSPs (JavaServer Pages

อ่านเพิ่มเติม

JDBC คืออะไร? บทนำสู่ Java Database Connectivity

JDBC (Java Database Connectivity) คือ Java API ที่จัดการการเชื่อมต่อกับฐานข้อมูลการออกแบบสอบถามและคำสั่งและจัดการชุดผลลัพธ์ที่ได้รับจากฐานข้อมูล เปิดตัวโดยเป็นส่วนหนึ่งของ JDK 1.1 ในปี 1997 JDBC เป็นหนึ่งในองค์ประกอบแรกที่พัฒนาขึ้นสำหรับเลเยอร์การคงอยู่ของ Java เริ่มแรก JDBC ถูกมองว่าเป็น API ฝั่งไคลเอ็นต์ทำให้ไคลเอ็นต์ Java สามารถโต้ตอบกับแหล่งข้อมูลได้ ที่เปลี่ยนแปลงด้วย JDCB 2.0 ซึ่งรวมแพ็กเกจเสริมที่สนับสนุนการเชื่อมต่อ J

อ่านเพิ่มเติม

Python คืออะไร? การเขียนโปรแกรมที่มีประสิทธิภาพและใช้งานง่าย

ตั้งแต่ปี 1991 ภาษาการเขียนโปรแกรม Python ถือเป็นช่องว่างซึ่งเป็นวิธีการเขียนสคริปต์ที่ "ทำให้สิ่งที่น่าเบื่อเป็นไปโดยอัตโนมัติ" (เป็นหนังสือยอดนิยมเล่มหนึ่งเกี่ยวกับการเรียนรู้ Python วางไว้) หรือเพื่อสร้างแอปพลิเคชันต้นแบบอย่างรวดเร็วที่จะนำไปใช้ในภาษาอื่น ๆ . อย่างไรก็ตามในช่วงไม่กี่ปีที่ผ่านมา Python ได้กลายเป็นพลเมืองชั้นหนึ่งในการพัฒนาซอฟต์แวร์สมัยใหม่การจัดการโครงสร้างพื้นฐานและการวิเคราะห์ข้อมูล ไม่ใช่ภาษายูทิลิตี้ด้านหลังอีกต่อไป แต่เป็นพลังสำคัญในการสร้างเว็บแอปพลิเคชันและการจัดการระบบและเป็นตัวขับเคลื่อนสำคัญของการวิเคราะห์ข้อมูลขนาดใหญ่และข้อมูลอัจฉริยะของเครื่อง วิดีโอที่เกี่ยวข้อ

อ่านเพิ่มเติม

อินเทอร์เฟซใน Java

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

อ่านเพิ่มเติม

TensorFlow คืออะไร? อธิบายไลบรารีการเรียนรู้ของเครื่อง

การเรียนรู้ของเครื่องเป็นระเบียบวินัยที่ซับซ้อน แต่การนำโมเดลแมชชีนเลิร์นนิงไปใช้นั้นเป็นเรื่องที่น่ากลัวและยากกว่าที่เคยเป็นมามากเนื่องจากเฟรมเวิร์กการเรียนรู้ของเครื่องเช่น TensorFlow ของ Google ที่ช่วยให้กระบวนการรับข้อมูลง่ายขึ้นแบบจำลองการฝึกอบรมการให้บริการการคาดการณ์และการปรับแต่งผลลัพธ์ในอนาคต TensorFlow สร้างโดยทีม Google Brain เป็นไลบรารีโอเพ่นซอร์สสำหรับการคำนวณเชิงตัวเลขและการเรียนรู้ของเครื่องขนาดใหญ่ TensorFlow รวบรวมโมเดลและอัลกอริทึมของการเรียนรู้ของเครื่องและการเรียนรู้เชิงลึก (aka neural network) เข้าด้วยกันและทำให้เป็นประโยชน์โดยใช้อุปมาทั่วไป ใช้ Python เพื่อจัดเตรียม API ส่

อ่านเพิ่มเติม

การเรียงลำดับด้วย Comparable และ Comparator ใน Java

โปรแกรมเมอร์มักจะต้องเรียงองค์ประกอบจากฐานข้อมูลลงในคอลเลกชันอาร์เรย์หรือแผนที่ ใน Java เราสามารถใช้อัลกอริทึมการเรียงลำดับที่เราต้องการกับประเภทใดก็ได้ เมื่อใช้Comparableอินเทอร์เฟซและcompareTo()วิธีการเราสามารถจัดเรียงโดยใช้ลำดับตัวอักษรStringความยาวลำดับตัวอักษรย้อนกลับหรือตัวเลข Comparatorอินเตอร์เฟซที่ช่วยให้เราสามารถทำเช่นเดียวกัน แต่ในทางที่มีความยืดหยุ่นมากขึ้น ไม่ว่าเราต้องการทำอะไรเราเพียงแค่ต้องรู้วิธีใช้ตรรกะการเรียงลำดับที่ถูกต้องสำหรับอินเทอร์เฟซและประเภทที่กำหนด รับซอร์สโค้ด รับรหัสสำหรับ Java Challenger นี้ คุณสามารถเรียกใช้การทดสอบของคุณเองในขณะที่ทำตามตัวอย่าง การเรียงลำดับ

อ่านเพิ่มเติม

Node.js กับ PHP: การต่อสู้ครั้งยิ่งใหญ่สำหรับผู้พัฒนา Mindshare

เป็นเรื่องราวคลาสสิกของฮอลลีวูด: การต่อสู้ระหว่างเพื่อนเก่าสองคนที่แยกทางกัน บ่อยครั้งที่แรงเสียดทานเริ่มต้นเมื่อเพื่อนคนหนึ่งจุดประกายความสนใจในสิ่งที่เคยเป็นโดเมนที่ไม่ได้พูดของเพื่อน ในเวอร์ชันภาษาการเขียนโปรแกรมของภาพยนตร์เรื่องนี้เป็นการเปิดตัว Node.js ที่เปลี่ยนคู่หูให้เข้ากันได้อย่างน่าสยดสยอง: PHP และ JavaScript คู่ค้าสองรายที่เคยปกครองอินเทอร์เน็ตร่วมกัน แต่ตอนนี้ดันออกมาเพื่อแบ่งปันความคิดของนักพัฒนา ในสมัยก่อนการเป็นหุ้นส่วนนั้นเรียบง่าย JavaScript จัดการรายละเอียดเล็กน้อยบนเบราว์เซอร์ในขณะที่ PHP จัดการงานฝั่งเซิร์ฟเวอร์ทั้งหมดระหว่างพอร์ต 80 และ MySQL มันเป็นสหภาพที่มีความสุขที่ยัง

อ่านเพิ่มเติม

Apache Spark คืออะไร? แพลตฟอร์มข้อมูลขนาดใหญ่ที่บดขยี้ Hadoop

กำหนด Apache Spark Apache Spark เป็นเฟรมเวิร์กการประมวลผลข้อมูลที่สามารถดำเนินการประมวลผลกับชุดข้อมูลขนาดใหญ่มากได้อย่างรวดเร็วและยังสามารถกระจายงานการประมวลผลข้อมูลไปยังคอมพิวเตอร์หลายเครื่องไม่ว่าจะเป็นของตัวเองหรือควบคู่กับเครื่องมือคอมพิวเตอร์แบบกระจายอื่น ๆ คุณสมบัติทั้งสองนี้เป็นกุญแจสำคัญในโลกของข้อมูลขนาดใหญ่และการเรียนรู้ของเครื่องซึ่งต้องใช้พลังประมวลผลขนาดใหญ่เพื่อบดขยี้ผ่านที่เก็บข้อมูลขนาดใหญ่ Spark ยังนำภาระการเขียนโปรแกรมบางส่วนออกจากไหล่ของนักพัฒนาด้วย API ที่ใช้งานง่ายซึ่งแยกส่วนของงานคอมพิวเตอร์แบบกระจายและการประมวลผลข้อมูลขนาดใหญ่ จากจุดเริ่มต้นที่ต่ำต้อยใน AMPLab ที่ UC Ber

อ่านเพิ่มเติม

Kotlin คืออะไร? ทางเลือก Java อธิบาย

Kotlin เป็นภาษาการเขียนโปรแกรมแบบ "ใช้งานจริง" แบบโอเพ่นซอร์สที่ใช้งานได้โดยทั่วไปซึ่งได้รับการออกแบบมาสำหรับ JVM (Java Virtual Machine) และ Android ซึ่งรวมคุณสมบัติการเขียนโปรแกรมเชิงวัตถุและฟังก์ชันการทำงานไว้ด้วยกัน เน้นไปที่การทำงานร่วมกันความปลอดภัยความชัดเจนและการสนับสนุนเครื่องมือ เวอร์ชันของ Kotlin ที่กำหนดเป้าหมาย JavaScript ES5.1 และโค้ดเนทีฟ (โดยใช้ LLVM) สำหรับโปรเซสเซอร์จำนวนหนึ่งก็อยู่ในระหว่างการผลิตเช่นกัน Kotlin มีต้นกำเนิดที่ JetBrains ซึ่งเป็น บริษัท ที่อยู่เบื้องหลัง IntelliJ IDEA ในปี 2010 และเป็นโอเพ่นซอร์สตั้งแต่ปี 2012 ปัจจุบันทีม Kotlin มีสมาชิกเต็มเวลามากกว่า 90 คนจาก

อ่านเพิ่มเติม

สถาปัตยกรรมที่มุ่งเน้นการบริการคืออะไร?

สถาปัตยกรรมที่มุ่งเน้นการบริการ (SOA) เกิดขึ้นในช่วงต้นศตวรรษนี้โดยเป็นวิวัฒนาการของคอมพิวเตอร์แบบกระจาย ก่อน SOA บริการต่างๆถูกเข้าใจว่าเป็นผลลัพธ์สุดท้ายของกระบวนการพัฒนาแอปพลิเคชัน ใน SOA แอปพลิเคชันประกอบด้วยบริการ บริการสามารถจัดส่งทีละรายการหรือรวมกันเป็นส่วนประกอบในบริการที่มีขนาดใหญ่กว่า บริการโต้ตอบผ่านสายโดยใช้โปรโตคอลเช่น REST หรือ SOAP (Simple Object Access Protocol) บริการมีการทำงานร่วมกันอย่างหลวม ๆหมายความว่าอินเทอร์เฟซบริการไม่ขึ้นอยู่กับการใช้งาน นักพัฒนาหรือผู้ติดตั้งระบบสามารถรวบรวมบริการอย่างน้อยหนึ่งบริการลงในแอปพลิเคชันโดยไม่จำเป็นต้องทราบว่าแต่ละบริการใช้งานอย่างไร บทควา

อ่านเพิ่มเติม

Docker คืออะไร? จุดประกายสำหรับการปฏิวัติตู้คอนเทนเนอร์

Docker เป็นแพลตฟอร์มซอฟต์แวร์สำหรับการสร้างแอปพลิเคชันโดยใช้คอนเทนเนอร์ - สภาพแวดล้อมการดำเนินการขนาดเล็กและน้ำหนักเบาที่ใช้ร่วมกันของเคอร์เนลของระบบปฏิบัติการ แต่จะแยกออกจากกัน ในขณะที่คอนเซ็ปต์คอนเทนเนอร์เป็นแนวคิดมาระยะหนึ่งแล้ว Docker ซึ่งเป็นโครงการโอเพ่นซอร์สที่เปิดตัวในปี 2013 ช่วยให้เทคโนโลยีเป็นที่นิยมและช่วยผลักดันแนวโน้มไปสู่การจัดทำคอนเทนเนอร์และไมโครเซอร์วิส  ในการพัฒนาซอฟต์แวร์ซึ่งเป็นที่รู้จักกันในชื่อคลาวด์เนทีฟ การพัฒนา. คอนเทนเนอร์คืออะไร? เป้าหมายประการหนึ่งของการพัฒนาซอฟต์แวร์สมัยใหม่คือการทำให้แอปพลิเคชันบนโฮสต์หรือคลัสเตอร์เดียวกันแยกออกจากกันเพื่อไม่ให้รบกวนการทำงาน

อ่านเพิ่มเติม

JDK คืออะไร? บทนำสู่ Java Development Kit

Java Development Kit (JDK) เป็นหนึ่งในแพ็คเกจเทคโนโลยีหลักสามชุดที่ใช้ในการเขียนโปรแกรม Java พร้อมกับ JVM (Java Virtual Machine) และ JRE (Java Runtime Environment) สิ่งสำคัญคือต้องแยกความแตกต่างระหว่างเทคโนโลยีทั้งสามนี้รวมทั้งทำความเข้าใจว่าเทคโนโลยีเหล่านี้เชื่อมโยงกันอย่างไร: JVM เป็นส่วนประกอบแพลตฟอร์ม Java ที่รันโปรแกรม JRE เป็นส่วนบนดิสก์ของ Java ที่สร้าง JVM JDK ช่วยให้นักพัฒนาสร้างโปรแกรม Java ที่สามารถเรียกใช้และรันโดย JVM และ JRE นักพัฒนาที่เพิ่งเริ่มใช้ Java มักจะสับสนระหว่าง Java Development Kit และ Java Runtime Environment ความแตกต่างคือ JDK เป็นชุดเครื่องมือสำหรับการพัฒนาซอ

อ่านเพิ่มเติม

โครงสร้างข้อมูลและอัลกอริทึมใน Java ตอนที่ 1: ภาพรวม

โปรแกรมเมอร์ Java ใช้โครงสร้างข้อมูลเพื่อจัดเก็บและจัดระเบียบข้อมูลและเราใช้อัลกอริทึมเพื่อจัดการข้อมูลในโครงสร้างเหล่านั้น ยิ่งคุณเข้าใจโครงสร้างข้อมูลและอัลกอริทึมและวิธีการทำงานร่วมกันมากเท่าไหร่โปรแกรม Java ของคุณก็จะมีประสิทธิภาพมากขึ้นเท่านั้น บทช่วยสอนนี้เปิดตัวชุดข้อมูลสั้น ๆ ที่แนะนำโครงสร้างข้อมูลและอัลกอริทึม ในส่วนที่ 1 คุณจะได้เรียนรู้ว่าโครงสร้างข้อมูลคืออะไรและจัดประเภทโครงสร้างข้อมูลอย่างไร นอกจากนี้คุณจะได้เรียนรู้ว่าอัลกอริทึมคืออะไรวิธีแสดงอัลกอริทึมและวิธีใช้ฟังก์ชันความซับซ้อนของเวลาและพื้นที่เพื่อเปรียบเทียบอัลกอริทึมที่คล้ายคลึงกัน เมื่อคุณมีพื้นฐานเหล่านี้แล้วคุณก็พร้อมท

อ่านเพิ่มเติม

สิ่งที่ฉันได้เรียนรู้ในการเล่นเหยื่อหลอกลวง Windows

“ ฉันโทรหาคุณจาก Windows” ดังนั้นจึงเป็นช่องทางเปิดของการหลอกลวงทางโทรศัพท์ที่มีชื่อเสียงซึ่งมีคนโทรมาอ้างว่าเป็นช่างเทคนิคของแผนกช่วยเหลือที่ติดต่อเพื่อแก้ไขปัญหาคอมพิวเตอร์ของคุณ ผู้หลอกลวง Windows เหล่านี้ดึงความกังวลของผู้คนเกี่ยวกับการละเมิดข้อมูลและการขโมยข้อมูลประจำตัวเพื่อหลอกให้พวกเขาติดตั้งมัลแวร์ลงในเครื่องของพวกเขา กลโกงหลอกลวงเหยื่อมาหลายปีแล้วแม้ว่าจะไม่มีสิ่งที่ผู้โทรพูดว่าสมเหตุสมผลก็ตาม ฉันเพิ่งได้รับโทรศัพท์ดังกล่าวและตัดสินใจที่จะเล่นด้วยเพื่อดูว่ากลโกงพัฒนาไปอย่างไรและผู้เล่นอาจเป็นใคร ในช่วงสามเดือนที่ผ่านมาฉันได้รับสายโดยเฉลี่ยสี่ครั้งต่อสัปดาห์จากผู้คนหลาย ๆ คนโดยตั้งใจ

อ่านเพิ่มเติม

การเขียนโปรแกรม Socket ใน Java: บทช่วยสอน

บทช่วยสอนนี้เป็นบทนำเกี่ยวกับการเขียนโปรแกรมซ็อกเก็ตใน Java โดยเริ่มจากตัวอย่างไคลเอนต์เซิร์ฟเวอร์แบบง่ายที่แสดงคุณสมบัติพื้นฐานของ Java I / O คุณจะได้รู้จักกับทั้งjava.io แพ็กเกจดั้งเดิม  และ NIO ซึ่งเป็นjava.nioAPI ที่ไม่ปิดกั้น I / O ( ) ที่เปิดตัวใน Java 1.4 สุดท้ายคุณจะเห็นตัวอย่างที่แสดงให้เห็นถึงเครือข่าย Java ที่ใช้งานจาก Java 7 ไปข้างหน้าใน NIO 2 การเขียนโปรแกรมซ็อกเก็ตจะทำให้ระบบสองระบบสื่อสารกัน โดยทั่วไปการสื่อสารบนเครือข่ายมีสองรสช

อ่านเพิ่มเติม

การเปรียบเทียบวัตถุ Java ด้วยเท่ากับ () และ hashcode ()

ในJava Challengerนี้คุณจะได้เรียนรู้equals()และhashcode()รวมเข้าด้วยกันเพื่อให้การเปรียบเทียบวัตถุมีประสิทธิภาพและง่ายดายในโปรแกรม Java ของคุณ พูดง่ายๆก็คือวิธีการเหล่านี้ทำงานร่วมกันเพื่อตรวจสอบว่าวัตถุสองชิ้นมีค่าเท่ากันหรือไม่   หากไม่มีequals()และhashcode()เราจะต้องสร้างifการเปรียบเทียบ " " ที่มีขนาดใหญ่มากโดยเปรียบเทียบทุกฟิลด์จากวัตถุ สิ่งนี้จะทำให้โค้ดสับสนและอ่านยากมาก วิธีการทั้งสองร่วมกันนี้ช่วยให้เราสร้างรหัสที่ยืดหยุ่นและเหนียวแน่นมากขึ้น รับซอร์สโค้ด Java Challengers การแทนที่ equals () และ hashcode () ใน Java วิธีการแทนที่เป็นเทคนิคที่พฤติกรรมของคลาสพาเรนต์หรืออินเตอร์เฟสถ

อ่านเพิ่มเติม

Java 101: ทำความเข้าใจกับเธรด Java ตอนที่ 1: แนะนำเธรดและ runnables

บทความนี้เป็นบทความแรกในซีรีส์Java 101สี่ส่วนที่สำรวจเธรด Java แม้ว่าคุณอาจคิดว่าเธรดใน Java จะยากที่จะเข้าใจ แต่ฉันตั้งใจจะแสดงให้คุณเห็นว่าเธรดนั้นเข้าใจง่าย ในบทความนี้ฉันแนะนำคุณเกี่ยวกับเธรด Java และ runnables ในบทความต่อไปเราจะสำรวจการซิงโครไนซ์ (ผ่านการล็อก) ปัญหาการซิงโครไนซ์ (เช่นการหยุดชะงัก) กลไกการรอ / แจ้งเตือนการตั้งเวลา (มีและไม่มีลำดับความสำคัญ) การหยุดชะงักของเธรดตัวจับเวลาความผันผวนกลุ่มเธรดและตัวแปรภายในเธรด . โปรดทราบว่าบทความนี้ (ส่วนหนึ่งของไฟล์เก็บถาวร JavaWorld) ได้รับการอัปเดตด้วยรายการโค้ดใหม่และซอร์สโค้ดที่ดาวน์โหลดได้ในเดือนพฤษภาคม 2013 การทำความเข้าใจเธรด Java - อ่

อ่านเพิ่มเติม

ภาษาโปรแกรมที่ดีที่สุดในการเรียนรู้ตอนนี้

วิธีที่ดีที่สุดในการทำความเข้าใจคอมพิวเตอร์และปรับให้เข้ากับความต้องการของเราคือเรียนรู้ที่จะพูดภาษาของพวกเขาเพื่อที่พวกเขาจะเข้าใจคำสั่งของเรา ผู้ที่ชื่นชอบนวนิยายแฟนตาซีบางครั้งมักจินตนาการว่าพวกเขากำลังเรียนรู้คาถาและคาถาวิเศษ ในทางปฏิบัติใช้ภาษาที่มีพื้นฐานมากขึ้นเพื่อแสดงโครงสร้างเชิงตรรกะของตัวเลขและข้อมูล ไม่ว่าในกรณีใดการทำความเข้าใจว่าลำดับการกดแป้นพิมพ์และการคลิกเมาส์แบบใดที่จะทำให้คอมพิวเตอร์ข้ามผ่านห่วงเชิงเปรียบเทียบและดำเนินการเต้นรำเสมือนได้ ทุกโรงเรียน MOOC และสถานที่ฝึกอบรมจำเป็นต้องใช้ภาษาแรกสำหรับเยาวชน Padawans สถานที่บางแห่งเช่น Harvard ที่คลั่งไคล้ยังคงยึดติดกับยุค 70 C แต

อ่านเพิ่มเติม

Pythons 12 ตัวสำหรับทุกความต้องการในการเขียนโปรแกรม

เมื่อคุณเลือก Python สำหรับการพัฒนาซอฟต์แวร์คุณจะเลือกระบบนิเวศของภาษาขนาดใหญ่พร้อมแพ็คเกจมากมายที่ครอบคลุมความต้องการด้านการเขียนโปรแกรมทุกรูปแบบ แต่นอกเหนือจากไลบรารีสำหรับทุกอย่างตั้งแต่การพัฒนา GUI ไปจนถึงการเรียนรู้ของเครื่องแล้วคุณยังสามารถเลือกช่วงเวลาการทำงานของ Python ได้อีกด้วยและบางช่วงเวลาเหล่านี้อาจเหมาะกับกรณีการใช้งานที่คุณมีอยู่ในมือมากกว่าแบบอื่น ๆ นี่คือบทแนะนำสั้น ๆ เกี่ยวกับการแจกแจง Python ตั้งแต่การใช้งานมาตรฐาน (CPython) ไปจนถึงเวอร์ชันที่ปรับให้เหมาะกับความเร็ว (PyPy) สำหรับกรณีการใช้งานพิเศษ (Anaconda, ActivePython) สำหรับเวลาทำงานของภาษาต่างๆ (Jython, IronPython) และแม

อ่านเพิ่มเติม

Visual Studio Code กับ Visual Studio: วิธีการเลือก

เป็นเวลาหลายสิบปีเมื่อฉันต้องทำงานในตอนเช้าฉันจะเริ่ม Microsoft Visual Studio (หรือหนึ่งในรุ่นก่อนหน้าเช่น Visual C ++ หรือ Visual InterDev) จากนั้นชงชาและอาจเข้าร่วมการประชุมตอนเช้าในขณะที่เริ่มต้นอย่างลำบาก . ฉันจะเปิด IDE ไว้ตลอดทั้งวันในขณะที่ฉันผ่านรอบการพัฒนา / ทดสอบ / ดีบักเพื่อหลีกเลี่ยงความล่าช้าในการเริ่มต้นอีกครั้ง เมื่อฉันทำงานกับโปรเจ็กต์ C ++ ที่มีโค้ด ~ 2 ล้านบรรทัดฉันยังเริ่มต้นการทำงานในแต่ละวันด้วยการเรียกใช้สคริปต์แบตช์โดยอัตโนมัติซึ่งทำการเช็คเอาต์โค้ดและสร้างผลิตภัณฑ์ใหม่ทั้งหมดภายในไม่

อ่านเพิ่มเติม

วิธีติดตั้ง Python ด้วยวิธีที่ชาญฉลาด

Python ใช้งานง่ายเป็นมิตรกับผู้เริ่มต้นและมีประสิทธิภาพเพียงพอที่จะสร้างซอฟต์แวร์ที่มีประสิทธิภาพสำหรับแอปพลิเคชันเกือบทุกประเภท แต่ก็ยังคงเป็นซอฟต์แวร์เช่นเดียวกับซอฟต์แวร์อื่น ๆ ซึ่งหมายความว่าอาจมีความซับซ้อนในการตั้งค่าและจัดการ ในบทความนี้เราจะอธิบายถึงวิธีการตั้งค่า Python อย่างถูกวิธี: วิธีเลือกเวอร์ชันที่เหมาะสมวิธีป้องกันไม่ให้หลาย ๆ เวอร์ชันเหยียบกันและวิธีหลีกเลี่ยงขอบคมอื่น ๆ ทั้งหมดและข้อผิดพลาดที่อาจเกิดขึ้นตาม ทาง. เลือกเวอร์ชันและการแจกจ่าย Python ที่เหมาะสม เพื่อประโยชน์ในการเข้ากันได้กับโมดูลของบุคคลที่สามก็มักจะปลอดภัยที่สุดในการเลือกรุ่นหลามที่เป็นหนึ่งในการแก้ไขประเด็นสำค

อ่านเพิ่มเติม

JSF คืออะไร? ขอแนะนำ JavaServer Faces

JavaServer Faces (JSF) เป็นเทคโนโลยีมาตรฐานของ Java สำหรับการสร้างเว็บอินเตอร์เฟสที่เน้นองค์ประกอบตามเหตุการณ์ เช่นเดียวกับ JavaServer Pages (JSP) JSF อนุญาตให้เข้าถึงข้อมูลและตรรกะฝั่งเซิร์ฟเวอร์ แตกต่างจาก JSP ซึ่งโดยพื้นฐานแล้วเพจ HTML เต็มไปด้วยความสามารถฝั่งเซิร์ฟเวอร์ JSF เป็นเอกสาร XML ที่แสดงส่วนประกอบที่เป็นทางการในโครงสร้างแบบลอจิคัล คอมโพเนนต์ JSF ได้รับการสนับสนุนโดยอ็อบเจ็กต์ Java ซึ่งไม่ขึ้นอยู่กับ HTML และมีความสามารถ Java แบบเต็มรูปแบบรวมถึงการเข้าถึง API และฐานข้อมูลระยะไกล ความคิดที่สำคัญในกรอบเช่น JSF คือการแค็ปซูล (หรือห่อ ) เทคโนโลยีฝั่งไคลเอ็นต์เช่น HTML, CSS และ JavaScrip

อ่านเพิ่มเติม

JRE คืออะไร? บทนำสู่ Java Runtime Environment

Java Development Kit (JDK), Java Virtual Machine (JVM) และ Java Runtime Environment (JRE) ร่วมกันสร้างองค์ประกอบสามส่วนที่มีประสิทธิภาพของแพลตฟอร์ม Java สำหรับการพัฒนาและรันแอปพลิเคชัน Java ฉันเคยแนะนำ JDK และ JVM ไปแล้ว ในบทช่วยสอนฉบับย่อนี้คุณจะได้เรียนรู้เกี่ยวกับ JRE ซึ่งเป็นสภาพแวดล้อมรันไทม์สำหรับ Java ในทางปฏิบัติสภาพแวดล้อมรันไทม์เป็นซอฟต์แวร์ที่ออกแบบมาเพื่อเรียกใช้ซอฟต์แวร์อื่น ๆ เนื่องจากสภาพแวดล้อมรันไทม์สำหรับ Java JRE มีไลบรารีคลาส Java ตัวโหลดคลาส Java และ Java Virtual Machine ในระบบนี้: ตัวโหลดคลาสมีหน้าที่ในการโหลดคลาสอย่างถูกต้องและเชื่อมต่อกับไลบรารีคลาส Java หลัก JVMเป็น

อ่านเพิ่มเติม

ข้อยกเว้นใน Java ตอนที่ 1: พื้นฐานการจัดการข้อยกเว้น

ข้อยกเว้นของ Java คือประเภทไลบรารีและคุณลักษณะของภาษาที่ใช้เพื่อแสดงและจัดการกับความล้มเหลวของโปรแกรม หากคุณต้องการทำความเข้าใจว่าความล้มเหลวแสดงในซอร์สโค้ดอย่างไรคุณมาถูกที่แล้ว นอกเหนือจากภาพรวมของข้อยกเว้น Java ฉันจะช่วยให้คุณเริ่มต้นด้วยคุณสมบัติภาษาของ Java สำหรับการขว้างปาสิ่งของลองใช้รหัสที่อาจล้มเหลวจับวัตถุที่ถูกโยนและล้างโค้ด Java ของคุณหลังจากที่มีข้อยกเว้นเกิดขึ้น ในช่วงครึ่งแรกของบทช่วยสอนนี้คุณจะได้เรียนรู้เกี่ยวกับคุณสมบัติภาษาพื้นฐานและประเภทไลบรารีที่มีมาตั้งแต่ Java 1.0 ในช่วงครึ่งหลังคุณจะพบกับความสามารถขั้นสูงที่นำมาใช้ใน Java เวอร์ชันล่าสุด โปรดทราบว่าตัวอย่างโค้ดในบทช่วยส

อ่านเพิ่มเติม

การเรียนรู้ของเครื่องสำหรับนักพัฒนา Java ตอนที่ 1: อัลกอริทึมสำหรับการเรียนรู้ของเครื่อง

รถยนต์ที่ขับเคลื่อนด้วยตัวเองซอฟต์แวร์ตรวจจับใบหน้าและลำโพงที่ควบคุมด้วยเสียงล้วนสร้างขึ้นจากเทคโนโลยีและกรอบการเรียนรู้ของเครื่องและนี่เป็นเพียงคลื่นลูกแรก ในทศวรรษหน้าผลิตภัณฑ์รุ่นใหม่จะเปลี่ยนแปลงโลกของเราโดยริเริ่มแนวทางใหม่ ๆ ในการพัฒนาซอฟต์แวร์แอปพลิเคชันและผลิตภัณฑ์ที่เราสร้างและใช้งาน ในฐานะนักพัฒนา Java คุณต้องการก้าวข้ามเส้นโค้งนี้โดยเฉพาะอย่างยิ่งเนื่องจาก บริษัท เทคโนโลยีเริ่มลงทุนอย่างจริงจังในการเรียนรู้ของเครื่อง สิ่งที่คุณเรียนรู้ในวันนี้คุณสามารถต่อยอดได้ในอีก 5 ปีข้างหน้า แต่คุณต้องเริ่มต้นที่ไหนสักแห่ง บทความนี้จะช่วยคุณเริ่มต้น คุณจะเริ่มต้นด้วยความประทับใจแรกเกี่ยวกับวิธีก

อ่านเพิ่มเติม

Tomcat คืออะไร? คอนเทนเนอร์ Java servlet ดั้งเดิม

Apache Tomcat เป็นคอนเทนเนอร์ Java แบบโอเพนซอร์สที่มีอายุการใช้งานยาวนานซึ่งใช้ข้อกำหนดหลักของ Java สำหรับองค์กรหลายประการ ได้แก่ Java Servlet, JavaServer Pages (JSP) และ WebSockets APIs โครงการ Apache Software Foundation Tomcat เปิดตัวครั้งแรกในปี 1998 เพียงสี่ปีหลังจาก Java Tomcat เริ่มต้นจากการใช้งานอ้างอิงสำหรับ Java Servlet API ตัวแรกและข้อมูลจำเพาะ JSP แม้ว่าจะไม่ใช่การใช้งานอ้างอิงสำหรับเทคโนโลยีเหล่านี้อีกต่อไป แต่ Tomcat ยังคงเป็นเซิร์ฟเวอร์ Java ที่ใช้กันอย่างแพร่หลายโดยมีเอ็นจิ้นหลักที่ผ่านการทดสอบและพิสูจน์แล้วพร้อมความสามารถในการขยายที่ดี ในบทแนะนำสั้น ๆ นี้คุณจะได้เรียนรู้ว่าเหตุ

อ่านเพิ่มเติม

ความหลากหลายและการถ่ายทอดทางพันธุกรรมใน Java

ตามตำนาน Venkat Subramaniam ความหลากหลายเป็นแนวคิดที่สำคัญที่สุดในการเขียนโปรแกรมเชิงวัตถุ ความหลากหลาย - หรือความสามารถของอ็อบเจ็กต์ในการดำเนินการเฉพาะตามประเภท - คือสิ่งที่ทำให้โค้ด Java มีความยืดหยุ่น รูปแบบการออกแบบเช่น Command, Observer, Decorator, Strategy และอื่น ๆ อีกมากมายที่สร้างโดย Gang Of Four ล้วนแล้วแต่ใช้ความหลากหลายรูปแบบ การเรียนรู้แนวคิดนี้ช่วยเพิ่มความสามารถในการคิดแก้ปัญหาเกี่ยวกับการเขียนโปรแกรมได้อย่างมาก รับรหัส คุณสามารถรับซอร์สโค้ดสำหรับความท้าทายนี้และทำการทดสอบของคุณเองได้ที่นี่: //github.com/rafadelnero/javaworld-challengers การเชื่อมต่อและการถ่ายทอดทางพันธุกรรมในค

อ่านเพิ่มเติม

Node.js กับ Java: การต่อสู้ครั้งยิ่งใหญ่สำหรับผู้พัฒนา Mindshare

ในประวัติศาสตร์คอมพิวเตอร์ปี 1995 เป็นช่วงเวลาที่บ้าคลั่ง Java ปรากฏตัวครั้งแรกจากนั้นปิดด้วยส้นเท้า JavaScript ชื่อนี้ทำให้พวกเขาดูเหมือนฝาแฝดที่เพิ่งถูกแยกออกจากกัน แต่ก็ไม่สามารถแตกต่างไปมากกว่านี้ หนึ่งในนั้นถูกรวบรวมและพิมพ์แบบคงที่ อีกฝ่ายตีความและพิมพ์แบบไดนามิก นั่นเป็นเพียงจุดเริ่มต้นของความแตกต่างทางเทคนิคระหว่างสองภาษาที่แตกต่างกันอย่างดุเดือดซึ่งนับตั้งแต่นั้นได้เปลี่ยนไปสู่การปะทะกันของรูปแบบต่างๆด้วย Node.js หากคุณอายุมากพอที่จะย้อนเวลากลับไปได้คุณอาจจำจุดสูงสุดในยุคแรก ๆ ของ Java ได้ มันออกจากห้องทดลองและตรึงมิเตอร์โฆษณาไว้ ทุกคนมองว่าเป็นการปฏิวัติที่จะหยุดเพียงแค่การครอบครองคอม

อ่านเพิ่มเติม

LLVM คืออะไร? พลังที่อยู่เบื้องหลัง Swift, Rust, Clang และอื่น ๆ

ภาษาใหม่และการปรับปรุงภาษาที่มีอยู่กำลังเกิดขึ้นทั่วทั้งภูมิทัศน์ที่ดีงาม Rust ของ Mozilla, Swift ของ Apple, Kotlin ของ Jetbrains และภาษาอื่น ๆ อีกมากมายทำให้นักพัฒนามีตัวเลือกใหม่ ๆ สำหรับความเร็วความปลอดภัยความสะดวกในการพกพาและพลังงาน ทำไมตอนนี้? เหตุผลสำคัญประการหนึ่งคือเครื่องมือใหม่สำหรับการสร้างภาษาโดยเฉพาะคอมไพเลอร์ และหัวหน้าของพวกเขาคือ LLVM ซึ่งเป็นโครงการโอเพ่นซอร์สที่พัฒนาโดย Chris Lattner ผู้สร้างภาษา Swift ในฐานะโครงการวิจัยที่มหาวิทยาลัยอิลลินอยส์ LLVM ช่วยให้ไม่เพียงสร้างภาษาใหม่ ๆ ได้ง่ายขึ้น แต่ยังช่วยเพิ่มการพัฒนาภาษาที่มีอยู่ มันมีเครื่องมือสำหรับการสร้างส่วนที่ไม่ต้องขอบคุ

อ่านเพิ่มเติม

การถ่ายทอดทางพันธุกรรมกับองค์ประกอบ: วิธีการเลือก

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

อ่านเพิ่มเติม

สำรวจวิธีการเสมือนและนามธรรมใน C #

ภาษาการเขียนโปรแกรม C # ให้การสนับสนุนทั้งวิธีเสมือนและนามธรรมซึ่งแต่ละวิธีมีข้อดีที่แตกต่างกัน คุณใช้เมธอดเสมือนเพื่อใช้การโยงล่าช้าในขณะที่เมธอดนามธรรมช่วยให้คุณบังคับคลาสย่อยของประเภทให้มีการลบล้างเมธอดอย่างชัดเจน ในโพสต์นี้ฉันจะนำเสนอการอภิปรายเกี่ยวกับวิธีการเสมือนและนามธรรมและเวลาที่ควรใช้ วิธีการเสมือนคือวิธีที่ถูกประกาศให้เป็นเสมือนในคลาสพื้นฐาน มีการประกาศเมธอดเป็นเสมือนโดยระบุคีย์เวิร์ด "virtual" ในลายเซ็นวิธี วิธีการเสมือนอาจมีหรือไม่มีชนิดส่งคืน วิธีการเสมือนอนุญาตให้คลาสย่อยของชนิดสามารถแทนที่เมธอดได้ พวกเขาใช้เพื่อใช้ความหลากหลายของเวลาทำงานหรือการเชื่อมโยงล่าช้า ควรสังเกตว่าสมาชิ

อ่านเพิ่มเติม

NoSQL คืออะไร? ฐานข้อมูลสำหรับอนาคตระดับคลาวด์

หนึ่งในตัวเลือกพื้นฐานที่สุดที่ควรทำเมื่อพัฒนาแอปพลิเคชันคือการใช้ฐานข้อมูล SQL หรือ NoSQL เพื่อจัดเก็บข้อมูล ฐานข้อมูล SQL ธรรมดา (เช่นเชิงสัมพันธ์) เป็นผลมาจากวิวัฒนาการของเทคโนโลยีหลายทศวรรษการปฏิบัติที่ดีและการทดสอบความเครียดในโลกแห่งความเป็นจริง ได้รับการออกแบบมาเพื่อการทำธุรกรรมที่เชื่อถือได้และการสืบค้นแบบเฉพาะกิจซึ่งเป็นหลักในการใช้งานทางธุรกิจ แต่ก็มีข้อ จำกัด เช่นสคีมาที่เข้มงวดซึ่งทำให้ไม่เหมาะกับแอปประเภทอื่น ๆ ฐานข้อมูล NoSQL เกิดขึ้นเพื่อตอบสนองต่อข้อ จำกัด เหล่านั้น ระบบ NoSQL จัดเก็บและจัดการข้อมูลในรูปแบบที่ช่วยให้มีความเร็วในการดำเนินงานสูงและมีความยืดหยุ่นสูงในส่วนของนักพัฒนา

อ่านเพิ่มเติม

การคงอยู่ของ Java กับ JPA และ Hibernate ตอนที่ 1: เอนทิตีและความสัมพันธ์

Java Persistence API (JPA) เป็นข้อกำหนดของ Java ที่เชื่อมช่องว่างระหว่างฐานข้อมูลเชิงสัมพันธ์และการเขียนโปรแกรมเชิงวัตถุ บทช่วยสอนสองส่วนนี้แนะนำ JPA และอธิบายถึงวิธีการจำลองวัตถุ Java เป็นเอนทิตี JPA วิธีกำหนดความสัมพันธ์ของเอนทิตีและวิธีใช้ JPA EntityManagerกับรูปแบบพื้นที่เก็บข้อมูลในแอปพลิเคชัน Java โปรดทราบว่าบทช่วยสอนนี้ใช้ Hibernate เป็นผู้ให้บริการ JPA แนวคิดส่วนใหญ่สามารถขยายไปยังเฟรมเวิร์กการคงอยู่ของ Java อื่น ๆ ได้ JPA คืออะไร? ดู "JPA คืออะไรรู้เบื้องต้นเกี่ยวกับ Java Persistence API" เพื่อเรียนรู้เกี่ยวกับวิวัฒนาการของ JPA และเฟรมเวิร์กที่เกี่ยวข้องรวมถึง EJB 3.0 และ JDBC ความส

อ่านเพิ่มเติม

เริ่มต้นด้วยนิพจน์แลมบ์ดาใน Java

ก่อน Java SE 8 โดยทั่วไปจะใช้คลาสที่ไม่ระบุชื่อเพื่อส่งผ่านฟังก์ชันไปยังเมธอด วิธีปฏิบัตินี้ทำให้ซอร์สโค้ดสับสนทำให้เข้าใจยากขึ้น Java 8 กำจัดปัญหานี้โดยการแนะนำ lambdas บทช่วยสอนนี้แนะนำคุณลักษณะภาษาแลมบ์ดาก่อนจากนั้นให้ข้อมูลเบื้องต้นโดยละเอียดเกี่ยวกับการเขียนโปรแกรมเชิงฟังก์ชันด้วยนิพจน์แลมบ์ดาพร้อมกับประเภทเป้าหมาย นอกจากนี้คุณยังจะได้เรียนรู้วิธีการ lambdas โต้ตอบกับขอบเขตตัวแปรท้องถิ่นthisและsuperคำหลักและข้อยกเว้น Java  โปรดทราบว่าตัวอย่างโค้ดในบทช่วยสอนนี้เข้ากันได้กับ JDK 12 ค้นหาประเภทสำหรับตัวคุณเอง ฉันจะไม่แนะนำคุณสมบัติภาษาที่ไม่ใช่แลมบ์ดาในบทช่วยสอนนี้ซึ่งคุณไม่เคยเรียนมาก

อ่านเพิ่มเติม

Go pro: คู่มือผู้ใช้ PowerShell

หากคุณเคยต่อสู้กับ Windows 10 คุณเคยได้ยิน PowerShell อย่างไม่ต้องสงสัย หากคุณเคยลองทำอะไรแปลก ๆ กับ Win7 / 8.1 เมื่อเร็ว ๆ นี้ PowerShell ก็อาจเกิดขึ้นเช่นกัน หลังจากใช้บรรทัดคำสั่งของ Windows และส่งไฟล์แบตช์เข้าด้วยกันเป็นเวลาหลายปีก็ถึงเวลากำหนดเป้าหมายของคุณเกี่ยวกับสิ่งที่มีประสิทธิภาพและปรับเปลี่ยนได้มากขึ้น - ดีกว่า PowerShell เป็นส่วนเสริมที่ยิ่งใหญ่ในกล่องเครื่องมือ Windows และสามารถกระตุ้นความกลัวได้เล็กน้อยเนื่องจากความมหาศาลนั้น มันเป็นภาษาสคริปต์, เชลล์คำสั่ง, แว็กซ์พื้นหรือไม่? คุณต้องเชื่อมโยง cmdlet กับคลาส. Net ที่สร้างอินสแตนซ์เพื่อรันกับผู้ให้บริการหรือไม่? และทำไมเอกสารสนับส

อ่านเพิ่มเติม

Linux: Lubuntu ดีกว่า Xubuntu หรือไม่?

Lubuntu กับ Xubuntu Ubuntu มีรสชาติที่แตกต่างกันมากมายรวมถึง Lubuntu และ Xubuntu Ubuntu ทั้งสองรสชาตินี้เสนอเดสก์ท็อปน้ำหนักเบา แต่อันไหนดีกว่ากัน? นักเขียนที่ Linux และ Ubuntu เพิ่งชั่งน้ำหนักข้อดีข้อเสียของ Lubuntu และ Xubuntu: ในช่วงหลายปีที่ผ่านมา Lubuntu และ Xubuntu เป็นสองรสชาติยอดนิยมที่เป็นทางเลือกให้กับคนจำนวนมากที่ชอบสิ่งอื่น

อ่านเพิ่มเติม

บริการเว็บใน Java SE ตอนที่ 2: การสร้างบริการเว็บ SOAP

JAX-WS รองรับบริการเว็บที่ใช้ SOAP ส่วนที่ 2 ของซีรีส์สี่ส่วนนี้บน Java SE Web services กำหนดเว็บเซอร์วิสที่ใช้ SOAP สร้างและตรวจสอบบริการเว็บนี้ในเครื่องผ่านเซิร์ฟเวอร์ HTTP ที่มีน้ำหนักเบาเริ่มต้น (กล่าวถึงในตอนที่ 1) แปลความหมายของเอกสาร WSDL ของบริการ และเข้าถึงบริการจากลูกค้าทั่วไป การกำหนดบริการเว็บแปลงหน่วย บริการเว็บการแปลงหน่วยซึ่งฉันตั้งชื่อว่า UC ประกอบด้วยฟังก์ชันสี่อย่างสำหรับการแปลงระหว่างเซนติเมตรและนิ้วและระหว่างองศาฟาเรนไฮต์และองศาเซลเซียส แม้ว่าตัวอย่างนี้อาจถูกสร้างเป็นคลาส Java เดียว แต่ฉันก็เลือกที่จะปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดโดยการสร้างเป็นอินเทอร์เฟซ Java และคลาส

อ่านเพิ่มเติม

ทำไม Redis ถึงชนะ Memcached สำหรับการแคช

Memcached หรือ Redis? เป็นคำถามที่มักจะเกิดขึ้นในการอภิปรายเกี่ยวกับการเพิ่มประสิทธิภาพให้มากขึ้นจากเว็บแอปพลิเคชันที่ทันสมัยและขับเคลื่อนด้วยฐานข้อมูล เมื่อจำเป็นต้องปรับปรุงประสิทธิภาพการแคชมักเป็นขั้นตอนแรกและโดยทั่วไปแล้ว Memcached หรือ Redis จะเป็นจุดเริ่มต้นในการเปลี่ยน แคชเอนจิ้นที่มีชื่อเสียงเหล่านี้มีความคล้ายคลึงกันหลายประการ แต่ก็มีความแตกต่างที่สำคัญเช่นกัน Redis ซึ่งเป็นรุ่นใหม่และหลากหลายกว่าของทั้งสองรุ่นนี้เป็นตัวเลือกที่เหนือกว่าเกือบตลอดเวลา Redis กับ Memcached สำหรับการแคช เริ่มต้นด้วยความคล้ายคลึงกัน ทั้ง Memcached และ Redis ทำหน้าที่เป็นที่เก็บข้อมูลคีย์ - ค่าในหน่วยความจ

อ่านเพิ่มเติม

วิธีรับ Siri บนอุปกรณ์ Android ของคุณ

แม้ว่าฉันจะมีความสุขกับโทรศัพท์ Android Samsung Galaxy S II ของฉัน แต่ฉันก็มีปัญหาที่น่าอิจฉาของ Siri ฉันเองก็ต้องการ "ผู้ช่วยส่วนตัว" ที่ตอบสนองต่อคำขอภาษาธรรมชาติเช่น "ย้ายการประชุมจาก 3 เป็น 4" และฉันแน่ใจว่าฉันไม่ได้อยู่คนเดียวอย่างที่ผลการค้นหา "Siri สำหรับ Android" ของ Google นับล้านเป็นเครื่องยืนยัน คุณสามารถสร้างประสบการณ์ที่เหมือน Siri บนสมาร์ทโฟน Android ได้หรือไม่? ไม่อย่างนั้นเนื่องจากไม่มีแอปเดียวที่รวมอยู่ในระบบปฏิบัติการที่สามารถรองรับคำขอที่หลากหลายเช่นเดียวกันโดยใช้ภาษาธรรมชาติรูปแบบอิสระ อย่างไรก็ตามเป็นไปได้ที่จะได้รับฟังก์ชั่นการใช้งานของ Siri จำนวนมาก ซึ่งแตกต่างจากผู้ใช้ i

อ่านเพิ่มเติม

การเขียนโปรแกรมเชิงฟังก์ชันสำหรับนักพัฒนา Java ตอนที่ 1

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

อ่านเพิ่มเติม

อธิบายการเชื่อมโยงการรวมตัวและองค์ประกอบใน OOP

Unified Modeling Language (UML) เป็นมาตรฐาน de-facto สำหรับการสร้างโมเดลระบบเชิงวัตถุ ใน UML มีความสัมพันธ์ที่แตกต่างกันห้าประเภท ได้แก่ การเชื่อมโยงการรวมองค์ประกอบการพึ่งพาและการสืบทอด บทความนี้นำเสนอการอภิปรายเกี่ยวกับแนวคิดสามประการแรกเหล่านี้โดยปล่อยให้แนวคิดที่เหลืออยู่ในบล็อกโพสต์อื่น การเชื่อมโยงในการเขียนโปรแกรมเชิงวัตถุ การเชื่อมโยงเป็นความสัมพันธ์ที่อ่อนแอทางความหมาย (การพึ่งพาทางความหมาย) ระหว่างวัตถุอื่นที่ไม่เกี่ยวข้อง การเชื่อมโยงคือความสัมพันธ์แบบ "ใช้" ระหว่างออบเจ็กต์ตั้งแต่สองชิ้นขึ้นไปซึ่งอ็อบเจ็กต์มีอายุการใช้งานของตัวเองและไม่มีเจ้าของ ตัวอย่างเช่นลองนึกภาพความสัมพันธ์ระ

อ่านเพิ่มเติม

การติดตั้ง Oracle Java SE 11 บน Ubuntu 18.04

บทความนี้เป็นคำแนะนำโดยย่อสำหรับผู้ใช้ Ubuntu Linux ที่ติดตั้ง Java 11 ซึ่งเป็นเวอร์ชัน Java ที่รองรับระยะยาว (LTS) ในปัจจุบัน ฉันจะอธิบายสั้น ๆ เกี่ยวกับการย้ายฐานรหัสของคุณไปยัง Java 11 จากนั้นแนะนำคุณตลอดขั้นตอนในการติดตั้ง Oracle JDK 11 โดยใช้บรรทัดคำสั่งของ Ubuntu โปรดทราบว่านี่เป็นคำแนะนำโดยย่อสำหรับผู้ใช้ Ubuntu ที่ติดตั้ง Java 11 ฉันจะไม่ดำลึกลงไปในคุณสมบัติ Java 11 หรือปัญหาการย้ายข้อมูลซึ่งครอบคลุมถึงที่อื่น กรณีสำหรับการโอนย้ายไปยัง Java 11 Java 8 เปิดตัวในเดือนมีนาคม 2014 สัญญาว่าจะเป็นแนวทางที่ทันสมัยกว่าในการพัฒนา Java แนวโน้มนี้ยังคงดำเนินต่อไปในปี 2560 เมื่อ Oracle ประกาศจังหว

อ่านเพิ่มเติม

Julia กับ Python: ข้อใดดีที่สุดสำหรับวิทยาศาสตร์ข้อมูล

ในกรณีการใช้งานมากมาย Python ครอบคลุมการวิเคราะห์ข้อมูลอาจกลายเป็นสิ่งที่ใหญ่ที่สุดและสำคัญที่สุด ระบบนิเวศของ Python เต็มไปด้วยไลบรารีเครื่องมือและแอพพลิเคชั่นที่ทำให้การทำงานของคอมพิวเตอร์ทางวิทยาศาสตร์และการวิเคราะห์ข้อมูลรวดเร็วและสะดวกสบาย แต่สำหรับนักพัฒนาที่อยู่เบื้องหลังภาษาจูเลีย - มุ่งเน้นเฉพาะ“การคำนวณทางวิทยาศาสตร์การเรียนรู้เครื่องการทำเหมืองข้อมูลขนาดใหญ่เชิงเส้นพีชคณิตกระจายและขนานคอมพิวเตอร์” -Python ไม่เร็วหรือสะดวกพอ Julia มุ่งหวังที่จะให้นักวิทยาศาสตร์และนักวิเคราะห์ข้อมูลไม่เพียง แต่พัฒนาอย่างรวดเร็วและสะดวกสบายเท่านั้น แต่ยังมีความเร็วในการดำเนินการที่รวดเร็วอีกด้วย 

อ่านเพิ่มเติม

Machine Learning คืออะไร? ข่าวกรองที่มาจากข้อมูล

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

อ่านเพิ่มเติม

เรียนรู้ Java ตั้งแต่ต้น

คุณต้องการโปรแกรมใน Java หรือไม่? เยี่ยมมากและคุณมาถูกที่แล้ว Java 101 ชุดยังมีการเปิดตัวแนะนำตัวเองกับการเขียนโปรแกรม Java ที่เริ่มต้นด้วยพื้นฐานและครอบคลุมทุกแนวคิดหลักที่คุณจำเป็นต้องรู้เพื่อเป็นนักพัฒนา Java ประสิทธิผล ซีรีส์นี้มีเนื้อหาทางเทคนิคพร้อมตัวอย่างโค้ดมากมายที่จะช่วยให้คุณเข้าใจแนวคิดในขณะที่เราดำเนินการไป ฉันจะถือว่าคุณมีประสบการณ์การเขียนโปรแกรมอยู่แล้วไม่ใช่แค่ใน Java บทความแรกนี้แนะนำแพลตฟอร์ม Java และอธิบายความแตกต่างระหว่างสามรุ่น ได้แก่ Java SE, Java EE และ Java ME คุณจะได้เรียนรู้เกี่ยวกับบทบาทของ Java virtual machine (JVM) ในการปรับใช้แอปพลิเคชัน Java ฉันจะช่วยคุณตั้งค่า

อ่านเพิ่มเติม

รีวิว: VirtualBox 5.0 กับ VMware Workstation 11

Oracle VirtualBox และ VMware Workstation ได้เปิดตัวออกมาเป็นเวลาหลายปีแล้ว VirtualBox ครอบครองมุม "ฟรีและโอเพ่นซอร์ส" ของวงแหวนในขณะที่ VMware Workstation เป็นแอปพลิเคชันเชิงพาณิชย์ที่เป็นกรรมสิทธิ์ สำหรับราคาโดยทั่วไปแล้ว Workstation จะเป็นผู้นำในด้านคุณสมบัติและประสิทธิภาพในขณะเดียวกันก็มีการผสานรวมอย่างใกล้ชิดกับส่วนที่เหลือของสายการจำลองเสมือน VMware โดยพื้นฐานแล้วผลิตภัณฑ์ทั้งสองมีความคล้ายคลึงกันมาก ทั้งสองทำงานบนโฮสต์ Windows หรือ Linux และทั้งสองรองรับแขก Windows, Linux และ Unix ที่หลากหลาย (VirtualBox ทำงานบน OS X ด้วยในขณะที่ VMware เสนอ Fusion สำหรับ Mac) ทั้ง VirtualBox และ Workstat

อ่านเพิ่มเติม

Java 9 อยู่ที่นี่: ทุกสิ่งที่คุณจำเป็นต้องรู้

Java 9 อย่างเป็นทางการ Java Platform Standard Edition เวอร์ชัน 9 - ในที่สุดก็มาถึงแล้วและ Java Development Kit (JDK) พร้อมให้นักพัฒนาดาวน์โหลด มีความสำคัญหลายประการหากมีคุณสมบัติใหม่ที่ขัดแย้งกัน แต่ก็เป็นสิ่งสุดท้ายสำหรับการส่ง Java แบบเก่า จะดาวน์โหลด Java 9 JDK ได้ที่ไหน Oracle ได้โพสต์ Java SE 9 JDK และเอกสารสำหรับดาวน์โหลดโดยนักพัฒนา คุณสมบัติใหม่ที่สำคัญใน Java 9 การเปิดตัวเกือบสามปีหลังจาก Java SE 8, Java SE 9 มีการเปลี่ยนแปลงทางสถาปัตยกรรมที่สำคัญหลายอย่างรวมถึงการปรับปรุงมากมาย โมดูลาร์ของ Java 9 เป็นตัวเปลี่ยนเกม ความสามารถในการแยกส่วนใหม่ที่เป็นที่ถกเถียงกันบนพื้นฐานของ Project

อ่านเพิ่มเติม

วิธีการนับตามกลุ่มใน R

การนับตามกลุ่มหลายกลุ่มซึ่งบางครั้งเรียกว่ารายงานแบบไขว้อาจเป็นวิธีที่มีประโยชน์ในการดูข้อมูลตั้งแต่การสำรวจความคิดเห็นของประชาชนไปจนถึงการทดสอบทางการแพทย์ ตัวอย่างเช่นผู้คนโหวตตามเพศและกลุ่มอายุอย่างไร นักพัฒนาซอฟต์แวร์ที่ใช้ทั้ง R และ Python เป็นผู้ชายกับผู้หญิงกี่คน? มีหลายวิธีในการนับประเภทนี้ตามหมวดหมู่ใน R ที่นี่ฉันต้องการแบ่งปันรายการโปรดของฉัน สำหรับการสาธิตในบทความนี้ฉันจะใช้ชุดย่อยของแบบสำรวจ Stack Overflow Developers ซึ่งสำรวจนักพัฒนาในหลายหัวข้อตั้งแต่เงินเดือนไปจนถึงเทคโนโลยีที่ใช้ ฉันจะย่อคอลัมน์สำหรับภาษาที่ใช้เพศและถ้ารหัสเป็นงานอดิเรก ฉันยังเพิ่มคอลัมน์ LanguageGroup ของตัวเอง

อ่านเพิ่มเติม

อะไรทำให้นักพัฒนาเว็บหงุดหงิด เว็บเบราว์เซอร์

นักพัฒนาที่สำรวจโดย Mozilla ในช่วงครึ่งหลังของปี 2019 เกี่ยวกับประสบการณ์ของพวกเขากับแพลตฟอร์มเว็บเครื่องมือและความสามารถส่วนใหญ่พึงพอใจ แต่พวกเขาอ้างถึงข้อบกพร่องบางประการโดยเฉพาะปัญหาเกี่ยวกับการรองรับเบราว์เซอร์ โดยรวมแล้ว 59.8 เปอร์เซ็นต์รายงานว่าพึงพอใจกับเว็บในขณะที่ 16.3 พึงพอใจมาก มีเพียง 6.8 เปอร์เซ็นต์เท่านั้นที่ไม่พอใจและ 2.2 เปอร์เซ็นต์ไม่พอใจมาก การค้นพบนี้เป็นส่วนหนึ่งของรายงาน MDN Web DNA (Developer Needs Assessment) ประจำปี 2019 ซึ่งได้รับข้อมูลจากนักพัฒนาเว็บและนักออกแบบมากกว่า 28,000 คนทั่วโลก MDN Web DNA Report 2019 เป็นฉบับแรกของสิ่งที่วางแผนไว้ว่าจะเป็นการศึกษาระดับโลกประจ

อ่านเพิ่มเติม

ใช้ประเภทคงที่เพื่อรหัสที่ปลอดภัยและสะอาดยิ่งขึ้น

ในบทช่วยสอนนี้จะขยายแนวคิดเรื่องค่าคงที่แจกแจงตามที่กล่าวไว้ใน Eric Armstrong ของ "สร้างค่าคงที่แจกแจงใน Java" ฉันขอแนะนำอย่างยิ่งให้อ่านบทความนั้นก่อนที่คุณจะดื่มด่ำกับบทความนี้เนื่องจากฉันจะถือว่าคุณคุ้นเคยกับแนวคิดที่เกี่ยวข้องกับค่าคงที่ที่แจกแจงและฉันจะขยายความเกี่ยวกับโค้ดตัวอย่างบางส่วนที่ Eric นำเสนอ แนวคิดของค่าคงที่ ในการจัดการกับค่าคงที่แจกแจงฉันจะพูดถึงส่วนที่แจกแจงของแนวคิดในตอนท้ายของบทความ สำหรับตอนนี้เราจะเน้นเฉพาะด้านคงที่ค่าคงที่เป็นตัวแปรที่ค่าไม่สามารถเปลี่ยนแปลงได้ ใน C / C ++ คีย์เวิร์ดconstจะใช้เพื่อประกาศตัวแปรคงที่เหล่านี้ ใน Java finalคุณใช้คำหลักอย่างไรก็ตามเครื่องมื

อ่านเพิ่มเติม

ใช้ JavaScript และแบบฟอร์ม

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

อ่านเพิ่มเติม

ทำไมวิธี getter และ setter ถึงชั่วร้าย

ฉันไม่ได้ตั้งใจจะเริ่มซีรีส์ "is evil" แต่ผู้อ่านหลายคนขอให้ฉันอธิบายว่าทำไมฉันถึงบอกว่าคุณควรหลีกเลี่ยง get / set method ในคอลัมน์ของเดือนที่แล้ว "Why expands Is Evil" แม้ว่าเมธอด getter / setter จะเป็นสิ่งที่พบเห็นได้ทั่วไปใน Java แต่ก็ไม่ได้เป็นแบบเชิงวัตถุ (OO) โดยเฉพาะ ในความเป็นจริงมันสามารถทำลายความสามารถในการบำรุงรักษาของโค้ดของคุณ ยิ่งไปกว่านั้นการปรากฏตัวของวิธี getter และ setter จำนวนมากเป็นธงสีแดงที่โปรแกรมไม่จำเป็นต้องได้รับการออกแบบมาอย่างดีจากมุมมองของ OO บทความนี้อธิบายว่าเหตุใดคุณจึงไม่ควรใช้ getter และ setter (และเมื่อใดที่คุณสามารถใช้ได้) และแนะนำวิธีการออกแบบที่จะช่วยให้คุณ

อ่านเพิ่มเติม

StringBuffer กับ String

Java จัดเตรียมStringBufferและStringคลาสและStringคลาสนี้ใช้เพื่อจัดการกับสตริงอักขระที่ไม่สามารถเปลี่ยนแปลงได้ ระบุเพียงว่าวัตถุประเภทStringอ่านได้อย่างเดียวและไม่เปลี่ยนรูป StringBufferระดับจะใช้เพื่อแสดงตัวอักษรที่สามารถแก้ไขได้ ความแตกต่างของประสิทธิภาพที่สำคัญระหว่างคลาสทั้งสองนี้StringBufferคือเร็วกว่าStringเมื่อทำการเรียงต่อกันอย่างง่าย ในStringโค้ดการจัดการสตริงอักขระจะเชื่อมต่อกันเป็นประจำ การใช้Stringคลาสโดยทั่วไปการเรียงต่อกันจะดำเนินการดังนี้: String str = สตริงใหม่ ("Stanford"); str + = "หาย !!"; หากคุณจะใช้StringBufferเพื่อทำการเชื่อมต่อเดียวกันคุณจะต้องมีรหัสที่มีลักษณะดังนี้: S

อ่านเพิ่มเติม

วิธีใช้การยืนยันใน Java

การเขียนโปรแกรมที่ทำงานอย่างถูกต้องในรันไทม์อาจเป็นเรื่องท้าทาย เนื่องจากสมมติฐานของเราเกี่ยวกับการทำงานของโค้ดของเราเมื่อดำเนินการมักจะผิด การใช้คุณสมบัติการยืนยันของ Java เป็นวิธีหนึ่งในการตรวจสอบว่าตรรกะการเขียนโปรแกรมของคุณนั้นถูกต้อง บทช่วยสอนนี้แนะนำการยืนยัน Java ก่อนอื่นคุณจะได้เรียนรู้ว่าการยืนยันคืออะไรและวิธีระบุและใช้ในโค้ดของคุณ จากนั้นคุณจะพบวิธีใช้การยืนยันเพื่อบังคับใช้เงื่อนไขเบื้องต้นและเงื่อนไขภายหลัง สุดท้ายคุณจะเปรียบเทียบการยืนยันกับข้อยกเว้นและค้นหาสาเหตุที่คุณต้องการทั้งสองอย่างในรหัสของคุณดาวน์โหลดรับโค้ดดาวน์โหลดซอร์สโค้ดเพื่อดูตัวอย่างในบทช่วยสอนนี้ สร้างโดย Jeff Frie

อ่านเพิ่มเติม

EJB คืออะไร? วิวัฒนาการของ Enterprise JavaBeans

Enterprise JavaBeans (EJB) เป็นข้อกำหนดสำหรับการพัฒนาแอปพลิเคชันทางธุรกิจขนาดใหญ่แบบกระจายบนแพลตฟอร์ม Java EJB 1.0 เปิดตัวในปี 1998 EJB 3.2.3 รุ่นล่าสุดได้ถูกนำมาใช้เพื่อรวมไว้ใน Jakarta EE โดยจะเปลี่ยนชื่อเป็น Jakarta Enterprise Beans สถาปัตยกรรม EJB สถาปัตยกรรม EJB ประกอบด้วยองค์ประกอบหลักสามส่วน ได้แก่

อ่านเพิ่มเติม

การเริ่มต้นคลาสและอ็อบเจ็กต์ใน Java

คลาสและอ็อบเจ็กต์ใน Java ต้องถูกเตรียมใช้งานก่อนที่จะใช้ ก่อนหน้านี้คุณได้เรียนรู้แล้วว่าฟิลด์คลาสถูกกำหนดค่าเริ่มต้นเป็นค่าเริ่มต้นเมื่อคลาสถูกโหลดและอ็อบเจ็กต์นั้นถูกเตรียมใช้งานผ่านตัวสร้าง แต่ยังมีการเตรียมใช้งานเพิ่มเติม บทความนี้แนะนำคุณลักษณะทั้งหมดของ Java สำหรับการเริ่มต้นคลาสและอ็อบเจ็กต์ดาวน์โหลดรับโค้ดดาวน์โหลดซอร์สโค้ดสำหรับแอปพลิเคชันตัวอย่างในบทช่วยสอนนี้ สร้างโดย Jeff Friesen สำหรับ JavaWorld วิธีเริ่มต้นคลาส Java ก่อนที่เราจะสำรวจการสนับสนุนของ Java สำหรับการเริ่มต้นคลาสเรามาสรุปขั้นตอนการเริ่มต้นคลาส Java กันก่อน พิจารณารายชื่อ 1. รายการ 1. การกำหนดค่าฟิลด์คลาสเป็นค่าเริ่มต

อ่านเพิ่มเติม

การจัดการ Java NullPointerException ที่มีประสิทธิภาพ

ไม่ต้องใช้ประสบการณ์ในการพัฒนา Java มากนักในการเรียนรู้โดยตรงว่า NullPointerException เกี่ยวกับอะไร ในความเป็นจริงมีคนหนึ่งให้ความสำคัญกับการจัดการกับสิ่งนี้เนื่องจากนักพัฒนา Java ทำผิดพลาดอันดับหนึ่ง ก่อนหน้านี้ฉันบล็อกเกี่ยวกับการใช้ String.value (Object) เพื่อลด NullPointerExceptions ที่ไม่ต้องการ มีเทคนิคง่ายๆอื่น ๆ อีกมากมายที่สามารถใช้เพื่อลดหรือกำจัดการเกิดขึ้นของ RuntimeException ประเภททั่วไปที่อยู่กับเรามาตั้งแต่ JDK 1.0 บล็อกโพสต์นี้รวบรวมและสรุปเทคนิคยอดนิยมบางส่วน ตรวจสอบวัตถุแต่ละชิ้นเป็นค่าว่างก่อนใช้ วิธีที่แน่นอนที่สุดในการหลีกเลี่ยง NullPointerException คือการตรวจสอบการอ้างอิง

อ่านเพิ่มเติม

Kubernetes คืออะไร? แพลตฟอร์มแอปพลิเคชันถัดไปของคุณ

Kubernetes เป็นแพลตฟอร์มโอเพนซอร์สยอดนิยมสำหรับการจัดระเบียบคอนเทนเนอร์นั่นคือสำหรับการจัดการแอปพลิเคชันที่สร้างขึ้นจากหลาย ๆ รันไทม์ในตัวซึ่งส่วนใหญ่เรียกว่าคอนเทนเนอร์ คอนเทนเนอร์ได้รับความนิยมมากขึ้นเรื่อย ๆ นับตั้งแต่โครงการ Docker containerization เปิดตัวในปี 2013 แต่แอปพลิเคชันคอนเทนเนอร์ขนาดใหญ่แบบกระจายอาจยากต่อการประสานงานมากขึ้น Kubernetes ได้กลายเป็นส่วนสำคัญของการปฏิวัติตู้คอนเทนเนอร์ด้วยการทำให้แอปพลิเคชันที่มีคอนเทนเนอร์สามารถจัดการตามขนาดได้ง่ายขึ้นอย่างมาก Kubernetes จึงกลายเป็นส่วนสำคัญของการปฏิวัติตู้คอนเทนเนอร์ การจัดระเบียบตู้คอนเทนเนอร์คืออะไร? คอนเทนเนอร์รองรับการแยกข้อกั

อ่านเพิ่มเติม

ความแตกต่างของ Java และประเภทของมัน

ความหลากหลายหมายถึงความสามารถของเอนทิตีบางอย่างที่จะเกิดขึ้นในรูปแบบที่แตกต่างกัน เป็นที่นิยมในการแสดงโดยผีเสื้อซึ่งแปรเปลี่ยนจากตัวอ่อนเป็นดักแด้ไปจนถึงอิมาโก Polymorphism ยังมีอยู่ในภาษาโปรแกรมเช่นเดียวกับเทคนิคการสร้างแบบจำลองที่ช่วยให้คุณสร้างอินเทอร์เฟซเดียวสำหรับตัวถูกดำเนินการอาร์กิวเมนต์และอ็อบเจ็กต์ต่างๆ ความหลากหลายของ Java ส่งผลให้โค้ดมีความกระชับและดูแลรักษาง่ายขึ้น แม้ว่าบทช่วยสอนนี้จะเน้นไปที่ความหลากหลายของประเภทย่อย แต่ก็มีประเภทอื่น ๆ อีกหลายประเภทที่คุณควรทราบ เราจะเริ่มต้นด้วยภาพรวมของความหลากหลายทั้งสี่ประเภทดาวน์โหลดรับโค้ดดาวน์โหลดซอร์สโค้ดสำหรับแอปพลิเคชันตัวอย่างในบทช่วย

อ่านเพิ่มเติม

วิธีย้อนกลับการอัปเกรด Windows 10 ของคุณ

ผู้ใช้ Windows 10 หลายร้อยล้านคนไม่สามารถผิดพลาดได้หรือไม่? ฉันได้ยินจากผู้คนทุกวันที่พยายามอัปเกรด Win10 และด้วยเหตุผลหลายประการ - ไดรเวอร์ที่เสียโปรแกรมที่เข้ากันไม่ได้ความไม่คุ้นเคยกลัวการสอดแนมข้อสงสัยเกี่ยวกับอนาคตของ Win10 - ต้องการกลับไปใช้ Windows 7 หรือ 8.1 ที่ดีของพวกเขา . หากคุณทำการอัปเกรดโดยใช้เครื่องมือของ Microsoft และเทคนิคการเจิมการย้อนกลับน่าจะทำได้ง่าย ระยะการผ่าตัด: "ควร" น่าเสียดายที่หลายคนพบว่า Win10 เป็นการเดินทางเที่ยวเดียว - บางครั้งก็มีเหตุผลที่ดีมาก นี่คือบทสรุปโดยละเอียดเกี่ยวกับสิ่งที่คุณควรคาดหวังในระหว่างการอัปเกรดจากนั้นในระหว่างการย้อนกลับพร้อมกับรายการสิ่งที่ผ

อ่านเพิ่มเติม

โครงสร้างข้อมูลและอัลกอริทึมใน Java ตอนที่ 4: รายการที่เชื่อมโยงแบบเดี่ยว

เช่นเดียวกับอาร์เรย์ซึ่งแนะนำในส่วนที่ 3 ของชุดบทช่วยสอนนี้รายการที่เชื่อมโยงเป็นหมวดหมู่โครงสร้างข้อมูลพื้นฐานที่สามารถยึดโครงสร้างข้อมูลที่ซับซ้อนมากขึ้นได้ แตกต่างจากลำดับขององค์ประกอบอย่างไรก็ตามรายการที่เชื่อมโยงเป็นลำดับของโหนดโดยแต่ละโหนดจะเชื่อมโยงกับโหนดก่อนหน้าและถัดไปในลำดับ จำไว้ว่าโหนดเป็นอ็อบเจ็กต์ที่สร้างขึ้นจากคลาสการอ้างอิงตนเองและคลาสการอ้างอิงตนเองมีฟิลด์อย่างน้อยหนึ่งฟิลด์ที่มีชนิดการอ้างอิงเป็นชื่อคลาส โหนดในรายการที่เชื่อมโยงถูกเชื่อมโยงผ่านการอ้างอิงโหนด นี่คือตัวอย่าง: class Employee { private int empno; private String name; private double salary; public Employee next; /

อ่านเพิ่มเติม

ทำไมคุณควรใช้ Docker และคอนเทนเนอร์

หนังสือที่ตีพิมพ์ในปี 1981 ชื่อ  Nailing Jelly to a Treeอธิบายถึงซอฟต์แวร์ว่า "คลุมเครือและยากที่จะยึดเกาะได้แน่นหนา" นั่นเป็นเรื่องจริงในปี 1981 และไม่น้อยกว่าเกือบสี่ทศวรรษที่ผ่านมา ซอฟต์แวร์ไม่ว่าจะเป็นแอปพลิเคชันที่คุณซื้อหรือที่คุณสร้างขึ้นเองยังคงใช้งานได้ยากจัดการยากและใช้งานยาก Docker container เป็นวิธีการจับซอฟต์แวร์ คุณสามารถใช้ Docker เพื่อสรุปแอปพลิเคชันในลักษณะที่มีปัญหาในการปรับใช้และรันไทม์ - วิธีการแสดงบนเครือข่ายวิธีจัดการการใช้พื้นที่เก็บข้อมูลและหน่วยความจำและ I / O วิธีควบคุมสิทธิ์การเข้าถึง - ได้รับการจัดการ ภายนอกแอปพลิเคชันเองและในลักษณะที่สอดคล้องกันในแอป "คอนเทนเนอ

อ่านเพิ่มเติม

พื้นฐาน Bytecode

ยินดีต้อนรับสู่อีกงวดของ "Under The Hood" คอลัมน์นี้ช่วยให้นักพัฒนา Java มองเห็นสิ่งที่เกิดขึ้นภายใต้โปรแกรม Java ที่ทำงานอยู่ บทความประจำเดือนนี้จะดูเบื้องต้นเกี่ยวกับชุดคำสั่ง bytecode ของ Java virtual machine (JVM) บทความนี้ครอบคลุมประเภทดั้งเดิมที่ดำเนินการโดย bytecodes, bytecodes ที่แปลงระหว่างชนิดและ bytecodes ที่ทำงานบนสแต็ก บทความต่อไปจะกล่าวถึงสมาชิกคนอื่น ๆ ในตระกูล bytecode รูปแบบ bytecode Bytecodes เป็นภาษาเครื่องของเครื่องเสมือน Java เมื่อ JVM โหลดไฟล์คลาสจะได้รับหนึ่งสตรีมของ bytecodes สำหรับแต่ละวิธีในคลาส สตรีม bytecodes ถูกเก็บไว้ในพื้นที่วิธีการของ JVM bytecodes สำหรับเมธอดจะ

อ่านเพิ่มเติม

Maven คืออะไร? การสร้างและการจัดการการพึ่งพาสำหรับ Java

Apache Maven เป็นรากฐานที่สำคัญของการพัฒนา Java และเป็นเครื่องมือจัดการบิลด์ที่ใช้มากที่สุดสำหรับ Java รูปแบบการกำหนดค่าที่ใช้ XML ที่คล่องตัวของ Maven ช่วยให้นักพัฒนาสามารถอธิบายหรือเข้าใจโครงร่างของโครงการที่ใช้ Java ได้อย่างรวดเร็วซึ่งทำให้การเริ่มต้นและการแบ่งปันโครงการใหม่เป็นเรื่องง่าย Maven ยังสนับสนุนการพัฒนาที่ขับเคลื่อนด้วยการทดสอบการบำรุงรักษาโครงการระยะยาวและการกำหนดค่าที่เปิดเผยและปลั๊กอินที่หลากหลายทำให้เป็นตัวเลือกยอดนิยมสำหรับ CI / CD บทความนี้เป็นการแนะนำ Maven โดยย่อรวมถึง Maven POM และโครงสร้างไดเร็กทอรีและคำสั่งสำหรับการสร้างโครงการ Maven แรกของคุณ โปรดทราบว่า Maven รุ่นล่าส

อ่านเพิ่มเติม

การสืบทอดใน Java ตอนที่ 1: คีย์เวิร์ดขยาย

Java สนับสนุนการใช้คลาสซ้ำผ่านการสืบทอดและองค์ประกอบ บทช่วยสอนสองส่วนนี้จะสอนวิธีใช้การสืบทอดในโปรแกรม Java ของคุณ ในส่วนที่ 1 คุณจะได้เรียนรู้วิธีใช้extendsคีย์เวิร์ดเพื่อรับคลาสย่อยจากคลาสพาเรนต์เรียกใช้คอนสตรัคเตอร์และเมธอดคลาสพาเรนต์และแทนที่เมธอด ในส่วนที่ 2 คุณจะทัวร์ชมjava.lang.Objectซึ่งเป็นซูเปอร์คลาสของ Java ที่คลาสอื่น ๆ ทุกคลาสสืบทอดมา หากต้องการเรียนรู้เกี่ยวกับการสืบทอดให้สมบูรณ์อย่าลืมดูเคล็ดลับ Java ของฉันที่อธิบายว่าเมื่อใดควรใช้องค์ประกอบเทียบกับการสืบทอด คุณจะได้เรียนรู้ว่าเหตุใดองค์ประกอบจึงเป็นส่วนเสริมที่สำคัญในการสืบทอดและวิธีใช้เพื่อป้องกันปัญหาเกี่ยวกับการห่อหุ้มในโปรแก

อ่านเพิ่มเติม

GitHub ทำให้ repos ส่วนตัวฟรีสำหรับทีม

GitHub ได้สร้างที่เก็บส่วนตัวโดยมีผู้ทำงานร่วมกันแบบไม่ จำกัด จำนวนสำหรับบัญชี GitHub ทั้งหมดซึ่งหมายความว่าฟีเจอร์หลักนั้นฟรีสำหรับทุกคนรวมถึงทีมด้วย ก่อนที่ GitHub จะประกาศในวันที่ 14 เมษายนองค์กรต่างๆต้องสมัครแผนชำระเงินหากต้องการใช้ GitHub สำหรับการพัฒนาส่วนตัว ภายใต้แผนฟรีใหม่ทีมสามารถมีที่เก็บสาธารณะหรือส่วนตัวจำนวนเท่าใดก็ได้พร้อมกับการดำเนินการ repo ส่วนตัว 2,000 รายการและพื้นที่เก็บข้อมูลแพ็คเกจ repo ส่วนตัว 500MB ต่อเดือน รายละเอียดของแผนใหม่ของ GitHub ได้แก่ : GitHub Free เปิดตัวในเดือนมกราคม 2019 เพื่อให้นักพัฒนารีโพสต์ส่วนตัวแบบไม่ จำกัด พร้อมให้ใช้งานได้ทันทีสำหรับทีมและมี rep

อ่านเพิ่มเติม

รีวิว: Python IDE 6 ตัวไปที่เสื่อ

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

อ่านเพิ่มเติม

Swift เทียบกับ Objective-C: 10 เหตุผลที่อนาคตชอบ Swift

ภาษาการเขียนโปรแกรมไม่ได้ตายไปง่ายๆ แต่การพัฒนาร้านค้าที่ยึดติดกับกระบวนทัศน์ที่ซีดจางทำ หากคุณกำลังพัฒนาแอพสำหรับอุปกรณ์พกพาและคุณยังไม่ได้ตรวจสอบ Swift โปรดทราบ: Swift ไม่เพียง แต่จะเข้ามาแทนที่ Objective-C ในการพัฒนาแอพสำหรับ Mac, iPhone, iPad, Apple Watch และอุปกรณ์ที่จะมา แต่จะแทนที่ C สำหรับโปรแกรมฝังตัวบนแพลตฟอร์ม Apple ด้วย ด้วยคุณสมบัติที่สำคัญหลายประการทำให้ Swift มีศักยภาพที่จะกลายเป็นภาษาการเขียนโปรแกรมเชิงพฤตินัยสำหรับการสร้างแอปพลิเคชันที่ตอบสนองและตอบสนองต่อผู้บริโภคได้อย่างสมจริงในอีกหลายปีข้างหน้า ดูเหมือนว่า Apple จะมีเป้าหมายใหญ่สำหรับ Swift ได้ปรับแต่งคอมไพเลอร์เพื่อประสิทธ

อ่านเพิ่มเติม

มีอะไรใหม่ใน Angular 10.1.1

Angular 10.1.0 ซึ่งเป็นรุ่นติดตามผลของ Angular 10 ได้รับการเผยแพร่เมื่อวันที่ 2 กันยายนโดยนำการปรับปรุงประสิทธิภาพมาสู่คอมไพเลอร์และเราเตอร์พร้อมกับเครื่องมือแยกข้อความใหม่  โดยทั่วไปแล้ว Angular 10 จะวางจำหน่ายในรูปแบบการผลิตในวันที่ 24 มิถุนายนการอัปเกรดครั้งใหญ่เป็นเฟรมเวิร์ก TypeScript ที่พัฒนาโดย Google ให้ความสำคัญกับการปรับปรุงคุณภาพเครื่องมือและระบบนิเวศมากกว่าคุณสมบัติใหม่ Angular 10 มีขนาดเล็กกว่า Angular เวอร์ชันก่อนหน้า ความสามารถใหม่รวมถึงตัวเลือกช่วงวันที่ใหม่ในไลบรารีองค์ประกอบ Angular Material UI และคำเตือนสำหรับการนำเข้า CommonJS คำเตือนการนำเข้า CommonJS จะแจ้งเตือนนักพั

อ่านเพิ่มเติม

Cloud-native คืออะไร? วิธีการที่ทันสมัยในการพัฒนาซอฟต์แวร์

คำว่า“ คลาวด์เนทีฟ” ได้รับความนิยมมากมายโดยเฉพาะผู้ให้บริการระบบคลาวด์ ไม่เพียงแค่นั้น แต่ยังมีรากฐานของตัวเองนั่นคือ Cloud Native Computing Foundation (CNCF) ซึ่งเปิดตัวในปี 2558 โดย Linux Foundation กำหนด "Cloud-native" ในการใช้งานทั่วไป“ คลาวด์เนทีฟ” เป็นแนวทางในการสร้างและเรียกใช้แอปพลิเคชันที่ใช้ประโยชน์จากข้อดีของรูปแบบการส่งมอบระบบคลาวด์คอมพิวติ้ง “ Cloud-native” เป็นข้อมูลเกี่ยวกับวิธีสร้างและปรับใช้แอปพลิเคชันไม่ใช่ที่ใด หมายความว่าแอปนั้นอาศัยอยู่ในระบบคลาวด์สาธารณะซึ่งต่างจากศูนย์ข้อมูลภายในองค์กร CNCF กำหนด“ คลาวด์เนทีฟ” ให้แคบลงเล็กน้อยเพื่อหมายถึงการใช้สแต็กซอฟต์แวร์โอเพนซอร์สเพ

อ่านเพิ่มเติม

Serverless คืออะไร? อธิบายการประมวลผลแบบไร้เซิร์ฟเวอร์

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

อ่านเพิ่มเติม

24 Python libraries สำหรับนักพัฒนา Python ทุกคน

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

อ่านเพิ่มเติม

รีวิว: Visual Studio 2017 ดีที่สุดเท่าที่เคยมีมา

เมื่อสองปีก่อนตอนที่ฉันตรวจสอบ Visual Studio 2015 ฉันคิดว่า IDE ของ Microsoft กลายเป็นผลิตภัณฑ์ที่ซับซ้อนที่สุดเท่าที่เคยมีมาและ Microsoft จะต้องทำให้มันง่ายขึ้นในอนาคต ฉันคิดผิดในแง่หนึ่ง: แม้ว่า Microsoft จะโยนคุณสมบัติบางอย่างสำหรับ Visual Studio 2017 ออกไป แต่ก็เพิ่มอีกมากมาย แต่แน่นอนว่า Microsoft สามารถส่งมอบ IDE ที่เรียบง่ายและรวดเร็วยิ่งขึ้นใน Visual Studio 2017 แม้จะเพิ่มขีดความสามารถ ซึ่งแตกต่างจาก Visual Studio เวอร์ชันก่อน ๆ ที่เน้นการนำเสนอเทคโนโลยีใหม่ ๆ ที่ซับซ้อนของ Microsoft เช่น Windows Communication Foundation และ Windows Workflow Foundation Visual Studio 2017 จะติดตั้งและทำง

อ่านเพิ่มเติม

เคล็ดลับประสิทธิภาพที่สำคัญ 10 ประการสำหรับ MySQL

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

อ่านเพิ่มเติม

Node.js คืออะไร? อธิบายรันไทม์ JavaScript

ความสามารถในการปรับขยายเวลาในการตอบสนองและปริมาณงานเป็นตัวบ่งชี้ประสิทธิภาพหลักสำหรับเว็บเซิร์ฟเวอร์ การรักษาเวลาในการตอบสนองให้ต่ำและปริมาณงานสูงในขณะที่การปรับขนาดขึ้นและลงไม่ใช่เรื่องง่าย Node.js เป็นสภาพแวดล้อมรันไทม์ของ JavaScript ที่มีเวลาแฝงต่ำและปริมาณงานสูงโดยใช้วิธีการ "ไม่บล็อก" ในการให้บริการคำขอ กล่าวอีกนัยหนึ่ง Node.js ไม่เสียเวลาหรือทรัพยากรในการรอการร้องขอ I / O เพื่อส่งคืน ในแนวทางดั้งเดิมในการสร้างเว็บเซิร์ฟเวอร์สำหรับการร้องขอหรือการเชื่อมต่อที่เข้ามาแต่ละครั้งเซิร์ฟเวอร์จะสร้างเธรดการดำเนินการใหม่หรือแม้แต่แยกกระบวนการใหม่เพื่อจัดการคำขอและส่งการต

อ่านเพิ่มเติม

วิธีนำทางรูปแบบ Singleton ที่เรียบง่ายหลอกลวง

รูปแบบ Singleton นั้นเรียบง่ายโดยเฉพาะอย่างยิ่งสำหรับนักพัฒนา Java ในบทความ JavaWorld แบบคลาสสิกนี้ David Geary แสดงให้เห็นว่านักพัฒนา Java ใช้ singletons อย่างไรโดยมีตัวอย่างโค้ดสำหรับมัลติเธรดคลาสโหลดเดอร์และการจัดลำดับโดยใช้รูปแบบ Singleton เขาสรุปด้วยการดูการใช้งานการลงทะเบียนแบบซิงเกิลตันเพื่อระบุ singletons ที่รันไทม์ บางครั้งมันก็เหมาะสมที่จะมีหนึ่งอินสแตนซ์ของคลาส: ตัวจัดการหน้าต่างตัวจัดคิวงานพิมพ์และระบบไฟล์เป็นตัวอย่างต้นแบบ โดยปกติแล้วประเภทของอ็อบเจ็กต์เหล่านั้นหรือที่เรียกว่า singletons จะเข้าถึงได้โดยอ็อบเจ็กต์ที่แตกต่างกันในระบบซอฟต์แวร์ดังนั้นจึงต้องมีการเข้าถึงทั่วโลก แน่นอนว่

อ่านเพิ่มเติม

7 นักพัฒนาแพลตฟอร์ม low-code ควรรู้

นักพัฒนาบางรายอ้างว่าใช้แพลตฟอร์มรหัสต่ำที่นำพวกเขาออกจากสภาพแวดล้อม Java, .NET และ JavaScript หรือแยกออกจาก IDEs, กรอบการทดสอบอัตโนมัติและแพลตฟอร์มการพัฒนา คนอื่น ๆ ใช้แพลตฟอร์มรหัสต่ำเป็นเครื่องมือที่ช่วยให้การพัฒนาแอปพลิเคชันรวดเร็วรองรับการผสานรวมที่ซับซ้อนและมอบประสบการณ์ผู้ใช้อุปกรณ์เคลื่อนที่ แต่นักพัฒนาไม่ควรเพียงแค่ปิดแพลตฟอร์มโค้ดต่ำและความสามารถของพวกเขา ธุรกิจต้องการการพัฒนาแอปพลิเคชันมากกว่าที่ทีมไอทีส่วนใหญ่จะสามารถส่งมอบหรือสนับสนุนได้ ไอทีอาจไม่ใช้แพลตฟอร์มรหัสต่ำสำหรับทุกอย่าง แต่สามารถช่วยเร่งการพัฒนาและให้ประโยชน์เพิ่มเติมได้ ฉันครอบคลุมรหัสต่ำไม่มีรหัสการพัฒนาพลเมืองและเครื

อ่านเพิ่มเติม

การเขียนโปรแกรมกราฟิก 3 มิติใน Java ตอนที่ 1: Java 3D

ในการสร้างแพลตฟอร์ม Java ที่แท้จริง Sun ได้ตระหนักตั้งแต่เนิ่นๆว่าจำเป็นต้องกรอกรูปภาพ API นอกเหนือจากฟังก์ชันที่ จำกัด ที่มีอยู่ในแพลตฟอร์มหลักของ Java 1.0 Sun ได้พัฒนาแกนหลักอย่างมากด้วย 1.1 และ 1.2 ที่กำลังจะมาถึง แต่ก็ยังมีบางส่วนที่ขาดหายไปจากปริศนา Java Sun และพันธมิตรได้พัฒนา Java Media and Communication APIs เพื่อจัดหาชิ้นส่วนโปรแกรมมัลติมีเดียที่ขาดหายไป สองชิ้นที่ใหญ่ที่สุดคือกราฟิก 2D และ 3D กำหนดเ

อ่านเพิ่มเติม