ต่อจากบทความที่แล้ว
7. โทร
การเรียกเป็นหนึ่งในคำสั่งที่ใช้บ่อยที่สุดในการเขียนโปรแกรม โดยทั่วไปรวมถึงการเรียกใช้ระบบ การเรียกใช้ฟังก์ชันที่เขียนเอง ฯลฯ สาระสำคัญของการโทรคือการประมวลผลของโมดูลลอจิก นี่แสดงว่าการเรียกนั้นเป็นโมดูลซึ่งเป็นชุดของคำสั่งการทำงาน ในเวลาเดียวกัน ฟังก์ชันนี้เป็นการแบ่งเชิงตรรกะ โดยทั่วไปเป็นไปไม่ได้ที่จะแบ่งคำสั่งที่เกี่ยวข้องออกเป็นสองฟังก์ชัน
เราควรใส่ใจกับประเด็นต่อไปนี้เกี่ยวกับการโทร:
1) วิธีเขียนฟังก์ชันที่เขียนเอง
2) วิธีเรียกใช้ฟังก์ชันที่เขียนเอง
3) วิธีอ้างอิงฟังก์ชันของระบบ
4) วิธีเรียกใช้ฟังก์ชันระบบ
5) เมื่อโทร ให้ใส่ใจกับประเภทพารามิเตอร์และลำดับพารามิเตอร์ของฟังก์ชันที่ตรงกับคำจำกัดความ
6) ให้ความสนใจกับค่าที่ส่งคืนของฟังก์ชันเมื่อเรียกใช้: ไม่มีค่า ค่า และชนิดข้อมูลของค่าที่ส่งคืน
7) ให้ความสนใจเป็นพิเศษกับการใช้พารามิเตอร์พอยน์เตอร์ในฟังก์ชันที่เขียนเองเพื่อหลีกเลี่ยงการล้นของพอยน์เตอร์ ทำให้เกิดข้อผิดพลาดของฟังก์ชัน
8) ฝึกฝนวิธีการเปลี่ยนฟังก์ชันให้เป็นพารามิเตอร์เพื่อทำให้ฟังก์ชันมีความยืดหยุ่นมากขึ้น
9) ทำความเข้าใจวิธีการเรียกของฟังก์ชันคู่ที่หลวม โดยเฉพาะอย่างยิ่งเชี่ยวชาญการโทรและการเรียกบริการเว็บแบบไดนามิก
8. การทำงานของไฟล์
การดำเนินการกับไฟล์ถูกใช้บ่อยมากในอดีต แต่ตอนนี้ข้อมูลจำนวนมากถูกเก็บไว้ในฐานข้อมูล และงานการดำเนินการไฟล์ส่วนใหญ่ถูกแทนที่ด้วยฐานข้อมูล อย่างไรก็ตาม ไฟล์จะยังคงใช้ในการประมวลผลข้อมูลเบื้องหลัง การประมวลผลพารามิเตอร์ ผลลัพธ์เอาต์พุต ฯลฯ สาระสำคัญของการดำเนินการกับไฟล์คือการดำเนินการกับข้อมูลที่จัดเก็บไว้ในไฟล์ ไฟล์สามารถใช้เป็นแหล่งข้อมูลสำหรับการดำเนินงานหรือเป็นผลจากการประมวลผลข้อมูล
เราควรใส่ใจกับประเด็นต่อไปนี้เกี่ยวกับการทำงานของไฟล์:
1) รู้จักไฟล์พื้นฐานสองประเภท: ไบนารีและ ASCII ฟังก์ชั่นระบบที่เปิดโดยทั้งสองประเภทจะแตกต่างกัน ระบบประมวลผลทั้งสองแตกต่างกัน!
2) รู้ประเภทและขอบเขตการใช้งานของวิธีการเปิดไฟล์: อ่าน เขียน อ่านอย่างเดียว เขียนอย่างเดียว ฯลฯ
3) รู้ฟังก์ชันพื้นฐานของการทำงานของไฟล์: เปิด ปิด อ่าน เขียน ตัวชี้ออฟเซ็ต (การวางตำแหน่ง)
4) รู้จักฟังก์ชันที่ใช้กันทั่วไปสำหรับการทำงานของไฟล์สตรีม
5) ให้ความสนใจเป็นพิเศษกับค่าส่งคืนของการดำเนินการไฟล์ที่ล้มเหลว: การเปิดล้มเหลว! การเขียนล้มเหลว (ไฟล์อ่านอย่างเดียว สิทธิ์ไม่เพียงพอ พื้นที่เต็ม ฯลฯ)
6) ทำความเข้าใจวิธีจัดการไฟล์ขนาดใหญ่ (ขนาดใหญ่กว่า 4G)
7) เนื่องจากมีการใช้ไฟล์ xls อย่างกว้างขวาง เราจึงต้องเชี่ยวชาญวิธีการเรียกการอ่าน เขียน และฟังก์ชันอื่น ๆ ที่เกี่ยวข้องกับการประมวลผลไฟล์ xls โดยเฉพาะ
8) เชี่ยวชาญฟังก์ชันที่เกี่ยวข้องของ FTP และสามารถอ้างอิงและเรียก FTP ได้
9) วิธีแก้ปัญหาการเริ่มอ่านหรือส่งไฟล์ขนาดใหญ่อีกครั้งก่อนที่การถ่ายโอนจะเสร็จสิ้น
9. การดำเนินการเชิงตรรกะ
โดยทั่วไปการดำเนินการทางลอจิคัลจะใช้สำหรับความสัมพันธ์เชิงตรรกะ เช่น AND หรือ NOT ระหว่างนิพจน์แบบมีเงื่อนไข ซึ่งไม่ค่อยมีการใช้ในโปรแกรม แต่มักจะปรากฏในอัลกอริธึมที่ประยุกต์ใช้ โดยเฉพาะอย่างยิ่งในเงื่อนไขเคียวรี โดยที่การดำเนินการ AND ถูกใช้อย่างแพร่หลายที่สุด สาระสำคัญของการดำเนินการเชิงตรรกะคือความสัมพันธ์เชิงตรรกะระหว่างสิ่งต่าง ๆ การดำเนินการทางลอจิคัลเป็นเพียงเงื่อนไขและข้อกำหนดเบื้องต้นสำหรับการประมวลผลบางอย่าง โดยทั่วไปไม่สามารถดำรงอยู่ได้โดยลำพัง
ในส่วนของการดำเนินการเชิงตรรกะ โดยทั่วไปเราต้องให้ความสนใจกับ:
1) เมื่อมีหลายเงื่อนไขเกิดขึ้น วิธีที่ดีที่สุดคือรวมเงื่อนไขต่างๆ ให้เป็นสองเงื่อนไขหลักเพื่อทำให้โปรแกรมมีตรรกะและสามารถอ่านได้ง่ายขึ้น
2) เข้าใจว่าเมื่อดำเนินการ AND เมื่อเงื่อนไขเดียวเป็นเท็จ นิพจน์ทั้งหมดจะส่งผลให้เกิดเท็จ แทนที่จะคำนวณเงื่อนไขทั้งหมด!
ตัวอย่างเช่น: นิพจน์คือ a>5&&b>6&&c>7&&d>8
ถ้า a=1 ผลลัพธ์ของนิพจน์จะเป็นเท็จ และโปรแกรมจะไม่ประเมินค่า b>6, c>7, d>8 อีกต่อไป
ถ้า a=6, b=7, c=8 แล้วโปรแกรมจะต้องคำนวณ d>8 หลังจากเข้าใจหลักการทั้งหมดแล้ว เราก็สามารถใส่เงื่อนไขที่น่าจะเป็นเท็จมากที่สุดไว้ข้างหน้านิพจน์ ซึ่งสามารถปรับปรุงประสิทธิภาพของโปรแกรมได้
ในทำนองเดียวกัน เมื่อดำเนินการ OR เมื่อเงื่อนไขเดียวเป็นจริง นิพจน์ทั้งหมดจะเป็นจริง แต่ไม่ใช่ทุกเงื่อนไขจะได้รับการประเมิน
3) เรียนรู้การใช้ตัวดำเนินการเชิงตรรกะเป็นพารามิเตอร์เพื่อสร้างคำสั่งแบบมีเงื่อนไขในแบบสอบถามแบบไดนามิก
4) เรียนรู้การสร้างนิพจน์ที่มีเงื่อนไขโดยอัตโนมัติผ่านคำสั่งแบบวนซ้ำ
ตัวอย่างเช่น เราค้นหาผลลัพธ์ที่มีเงื่อนไขทั้งชื่อและเพศ
โดยทั่วไปเราสามารถเขียน name='Wang Hua' และ sex='1' ได้
เราสามารถใส่ชื่อและเพศในอาร์เรย์ fld_name และใส่ Wang Hua และ 1 ในอาร์เรย์เนื้อหา
คำสั่งแบบมีเงื่อนไขนี้ถูกสร้างขึ้นโดยอัตโนมัติโดยการดำเนินการบนอาเรย์:
สตริงประสบการณ์ =””;
สำหรับ(int i=0;i<2;i++)
-
ถ้า(i==0)
exp=fld_name[i]+”='”+เนื้อหา[i]+”’”;
อื่น
ประสบการณ์=ประสบการณ์+”&&”+ fld_name[i]+”=’”+เนื้อหา[i]+”’”;
-
เมื่อเรามีช่องข้อความค้นหาจำนวนมาก โปรแกรมของเราจะเรียบง่ายและหลากหลาย
10. การเข้าถึงฐานข้อมูล
ปัจจุบันฐานข้อมูลเป็นเทคโนโลยีที่ใช้มากที่สุดในแอพพลิเคชั่นซอฟต์แวร์ ซอฟต์แวร์ที่ไม่มีฐานข้อมูลแทบจะเป็นไปไม่ได้เลย โดยเฉพาะซอฟต์แวร์ขนาดใหญ่ สาระสำคัญของฐานข้อมูลคือการรวบรวมสิ่งต่าง ๆ เชิงปริมาณและความสัมพันธ์ของพวกมัน โปรแกรมเมอร์ต้องไม่เพียงแต่เชี่ยวชาญฟังก์ชันของฐานข้อมูลเท่านั้น เช่น การสร้างฐานข้อมูล การสร้างตาราง การสร้างดัชนี และสิ่งจำเป็นพื้นฐานที่สุดของการแทรก อัปเดต และเลือกการใช้งานภาษาการจัดการข้อมูล แต่ยังรวมถึงการเข้าถึงฐานข้อมูลผ่านโปรแกรมด้วย .
เมื่อเข้าถึงฐานข้อมูลเราควรคำนึงถึง:
1) เราจะเข้าถึงฐานข้อมูลได้อย่างไร เข้าถึงฐานข้อมูลด้วยวิธีใด และต้องใช้พารามิเตอร์ใดบ้างในการเข้าถึงฐานข้อมูล
2) วิธีการส่งคำสั่งการดำเนินการฐานข้อมูลและวิธีการดำเนินการขั้นตอนการจัดเก็บ
3) วิธีรับค่าส่งคืนของคำสั่งฐานข้อมูลและทำความเข้าใจความหมายของค่าส่งคืน
4) วิธีรับชุดผลลัพธ์ของคำสั่งฐานข้อมูล วิธีจัดเก็บชุดผลลัพธ์ และวิธีการใช้งานชุดผลลัพธ์
5) เรียนรู้การใช้ชื่อตาราง ชื่อฟิลด์ จำนวนฟิลด์ และจำนวนเรคคอร์ด เพื่อดำเนินการวนซ้ำ
6) การจัดการข้อผิดพลาดในการดำเนินงานฐานข้อมูล
7) การซิงโครไนซ์การอัพเดตชุดข้อมูลและฐานข้อมูล
8) การประมวลผลธุรกรรมฐานข้อมูล
9) วิธีการประมวลผลข้อมูลจำนวนมาก (วิธีใช้ความสัมพันธ์ระหว่างชุดผลลัพธ์และฐานข้อมูลเพื่อปรับปรุงประสิทธิภาพการประมวลผลข้อมูล วิธีการประมวลผลอื่นไม่ได้กล่าวถึงที่นี่)
สำหรับทักษะบางอย่างของฐานข้อมูล เราจะไม่กล่าวถึงทักษะเหล่านี้ที่นี่
11. การควบคุม
การควบคุมส่วนใหญ่จะใช้ในอินเทอร์เฟซการโต้ตอบระหว่างมนุษย์กับคอมพิวเตอร์ และแน่นอนว่ามีการควบคุมการทำงานหลายอย่างที่ไม่แสดงขึ้นมา การควบคุมมีการใช้กันอย่างแพร่หลายและมักพบโดยโปรแกรมเมอร์ รายการที่ใช้บ่อยที่สุด ได้แก่ ป้ายกำกับ กล่องข้อความ ปุ่มคำสั่ง กล่องรายการ กล่องแบบหล่นลง ตาราง ฯลฯ ผู้คนควบคุมสิ่งเหล่านี้โดยการลากและวาง สาระสำคัญของการควบคุมคือสื่อกลางในการสนทนาระหว่างมนุษย์กับเครื่องจักร แน่นอนว่ายังมีฟังก์ชันสำหรับวัตถุที่นำมาใช้ซ้ำได้ด้วย
โดยทั่วไปเราจำเป็นต้องใส่ใจกับประเด็นต่อไปนี้เมื่อพูดถึงการควบคุม:
1) ให้ความสนใจเป็นพิเศษกับคุณลักษณะและช่วงการใช้งานของการควบคุมแต่ละรายการ และเรียนรู้การใช้การควบคุมอย่างถูกต้อง ตัวอย่างเช่น กล่องข้อความสามารถแสดงสตริงได้ และป้ายชื่อก็สามารถแสดงสตริงได้เช่นกัน อย่างไรก็ตาม โดยทั่วไปเราใช้การควบคุมป้ายกำกับเพื่อแสดงค่าคงที่และเป็นแบบอ่านอย่างเดียว และใช้กล่องข้อความเพื่อแสดงตัวแปรและสามารถแก้ไขได้ หลังจากสังเกตเห็นความแตกต่างเหล่านี้แล้ว เราก็สามารถเลือกการควบคุมของเราได้อย่างถูกต้อง หากเราใช้กล่องข้อความเพื่อแสดงชื่อเรื่อง เราอาจใช้การควบคุมที่ไม่เหมาะสม
2) นอกเหนือจากการเรียนรู้การลากและวางเพื่อให้ตัวควบคุมมีตำแหน่งและขนาดแล้ว เรายังต้องเชี่ยวชาญการตั้งค่าคุณสมบัติของตัวควบคุมและตั้งโปรแกรมเหตุการณ์ของตัวควบคุมด้วย โดยเฉพาะอย่างยิ่ง ทำความเข้าใจว่าแต่ละเหตุการณ์เกิดขึ้นเมื่อใด
3) เรียนรู้การเชื่อมโยงข้อมูลของตัวควบคุม โดยเฉพาะกลไกการเชื่อมโยงและรีเฟรชกับฐานข้อมูล
4) เรียนรู้วิธีตรวจสอบความถูกต้องของค่าอินพุตควบคุมเพื่อให้แน่ใจว่าข้อมูลอินพุตมีความถูกต้อง
5) เรียนรู้วิธีตั้งค่าการตั้งค่าแบบอ่านอย่างเดียว แก้ไขได้ แสดงผล/ไม่แสดงผลสำหรับการควบคุม
6) เรียนรู้การนำการควบคุมของระบบกลับมาใช้ใหม่ โดยเฉพาะการควบคุมกล่องแบบหล่นลง เป็นเรื่องยากสำหรับกล่องแบบเลื่อนลงทั่วไปที่จะตอบสนองฟังก์ชั่นการแสดงรหัสส่งคืนเป็นตัวอักษรจีน โดยเฉพาะในกล่องแสดงผลที่สามารถป้อนรหัสและตัวอักษรจีนและผลลัพธ์ที่ตรงตามเงื่อนไขสามารถแสดงให้ผู้ใช้เลือกได้ ตัวอย่างเช่น คุณสามารถออกแบบกล่องแบบหล่นลงสำหรับฝ่ายธุรการได้ หากคุณป้อน 110000 หรือ Beijing ลงในช่อง ระบบจะส่งคืน 110000 กล่องดรอปดาวน์ธรรมดาสามารถเลือกได้เฉพาะจากแผนกธุรการมากกว่า 3,000 แผนกตามลำดับรหัสแผนกธุรการ
7) โปรแกรมเมอร์สามารถลองออกแบบการควบคุมด้วยตนเองได้
8) เชี่ยวชาญวิธีการผูกข้อมูลสำหรับการควบคุมตาราง โดยเฉพาะวิธีการประมวลผลชุดผลลัพธ์ข้อมูลขนาดใหญ่
9) ฝึกฝนวิธีการโหลดการควบคุมต่างๆ
12. ชั้นเรียน
คลาสมีการใช้กันอย่างแพร่หลายในการเขียนโปรแกรม และบางภาษาและโปรแกรมเป็นสำนวนของคลาส สำหรับโปรแกรมเมอร์ ในด้านหนึ่งเราต้องเรียนรู้แนวคิดการเขียนโปรแกรมเชิงวัตถุ ในทางกลับกัน เราต้องเรียนรู้ที่จะกำหนดและใช้คลาส สาระสำคัญของคลาสคือรูปแบบนามธรรมเชิงวัตถุ มีหลายอย่างเกี่ยวกับคลาส เช่น การห่อหุ้ม การสืบทอด ความหลากหลาย และคุณสมบัติอื่นๆ อย่างไรก็ตาม โปรแกรมเมอร์ไม่ควรสับสนกับฟังก์ชันที่หลากหลายของคลาส พวกเขาจะต้องเรียนรู้สิ่งพื้นฐานที่สุด สิ่งหนึ่งคือการกำหนด เขียน และใช้ของคุณเอง และอีกคลาสหนึ่งคือการเรียนรู้ References โดยใช้คลาสระบบและคลาสอื่นๆ
เราควรใส่ใจกับหมวดหมู่ต่อไปนี้:
1) กำหนดคลาส สิ่งที่สำคัญที่สุดคือการกำหนดคุณลักษณะและเหตุการณ์ของคลาส
2) กำหนดค่าให้กับคุณลักษณะของคลาส
3) การเขียนโปรแกรมกิจกรรม
4) การสืบทอดคลาส
5) การอ้างอิงชั้นเรียน
6) การโทรในชั้นเรียน
7) ให้ความสนใจเป็นพิเศษกับการออกแบบพารามิเตอร์รายการและค่าส่งคืนของฟังก์ชันในคลาส
13. การกำหนดพารามิเตอร์
หลายคนกำลังพูดถึงการกำหนดพารามิเตอร์และเชื่อว่าการกำหนดพารามิเตอร์สามารถทำให้โปรแกรมมีความยืดหยุ่นและปรับขนาดได้มากขึ้น แต่มีเพียงไม่กี่คนที่รู้ว่าการกำหนดพารามิเตอร์คืออะไร และขอบเขตของการกำหนดพารามิเตอร์คืออะไร วิธีการนำพารามิเตอร์ไปใช้คืออะไร?
สาระสำคัญของการกำหนดพารามิเตอร์หมายถึงวิธีการแก้ไขการเปลี่ยนแปลงในสิ่งต่างๆ เนื้อหาที่สำคัญได้แก่ ประการแรก วิธีสรุปสิ่งต่าง ๆ ให้เป็นพารามิเตอร์ ประการที่สอง วิธีจัดเก็บพารามิเตอร์ และประการที่สาม วิธีที่โปรแกรมจัดการกับพารามิเตอร์
ตัวอย่างเช่น เมื่อเปิดฐานข้อมูล เพื่อปรับให้เข้ากับการเปลี่ยนแปลงในฐานข้อมูล เราต้องสรุปชื่อผู้ใช้และรหัสผ่านของฐานข้อมูลให้เป็นพารามิเตอร์ เราสามารถใส่ชื่อผู้ใช้และรหัสผ่านลงในไฟล์กำหนดค่าได้ ในโปรแกรมเมื่อเปิดฐานข้อมูลเราจำเป็นต้องได้รับชื่อผู้ใช้และรหัสผ่านจากไฟล์กำหนดค่าเพื่อสร้างสตริงการเชื่อมต่อฐานข้อมูล เปิดฐานข้อมูลผ่านสายอักขระการเชื่อมต่อนี้
เมื่อชื่อผู้ใช้และรหัสผ่านของฐานข้อมูลเปลี่ยนไป เราเพียงต้องเปลี่ยนชื่อผู้ใช้และรหัสผ่านในไฟล์ปรับแต่งเท่านั้น
ข้างต้นเป็นเพียงตัวอย่างที่ง่ายที่สุดของการกำหนดพารามิเตอร์ จริงๆ แล้วมีพารามิเตอร์มากมายในการกำหนดพารามิเตอร์ ขึ้นอยู่กับวิสัยทัศน์และระดับของโปรแกรมเมอร์
โปรแกรมเมอร์ทั่วไปมุ่งเน้นไปที่การกำหนดพารามิเตอร์ของพารามิเตอร์ฟังก์ชันเท่านั้น ที่จริงแล้ว ฟังก์ชัน โครงสร้างข้อมูล โมดูลการทำงาน และสถาปัตยกรรมซอฟต์แวร์ทั้งหมดสามารถกำหนดพารามิเตอร์ได้ และรูปแบบการจัดเก็บพารามิเตอร์ก็มีความหลากหลายเช่นกัน และการประมวลผลพารามิเตอร์ก็แตกต่างกันสำหรับทุกคน พารามิเตอร์บางตัวยังต้องคำนึงถึงความปลอดภัยด้วย
การกำหนดพารามิเตอร์อย่างง่ายเป็นทักษะพื้นฐาน แต่การกำหนดพารามิเตอร์ที่ซับซ้อนเป็นทักษะขั้นสูงในการเขียนโปรแกรม
อัลกอริธึมและสถาปัตยกรรมที่ซับซ้อนจำนวนมากส่วนใหญ่เป็นการผสมผสานระหว่างทักษะพื้นฐานข้างต้น หลังจากที่โปรแกรมเมอร์ได้วางรากฐานที่ดีแล้ว พวกเขาสามารถใช้รากฐานนี้เพื่อสร้างอัลกอริธึมที่ซับซ้อนมากขึ้นและเขียนโปรแกรมได้ดีขึ้น
มีเนื้อหาเกี่ยวกับทักษะพื้นฐานของการเขียนโปรแกรมมากมาย แต่ละส่วนสามารถบอกเล่าเรื่องราวและตัวอย่างที่น่าสนใจได้มากมาย และแต่ละส่วนสามารถเป็นบทแยกกันได้ อย่างไรก็ตาม ในที่นี้ฉันสามารถให้แนวคิดได้เพียงบางส่วนและให้แนวคิดและวิธีการแก่โปรแกรมเมอร์เท่านั้น จุดประสงค์คือเพื่อหวังว่าโปรแกรมเมอร์จะให้ความสนใจกับทักษะพื้นฐานและทักษะการปฏิบัติ ใช้เวลาส่วนใหญ่กับทักษะเหล่านี้ และวางรากฐานที่ดี หวังว่าโปรแกรมเมอร์จะสามารถเปลี่ยนสถานะที่เป็นอยู่ของการรู้วิธีการเขียนโปรแกรมเท่านั้น ถามหรือรู้ว่าทำไมพวกเขาถึงเขียนโปรแกรมด้วยวิธีนี้ ฉันหวังว่าเมื่อโปรแกรมเมอร์เผชิญกับอัลกอริทึม สิ่งแรกที่พวกเขานึกถึงคือชุดทักษะพื้นฐาน จากนั้นพวกเขาจะเลือกทักษะพื้นฐานที่เหมาะสมที่สุดสำหรับการนำอัลกอริธึมไปใช้โดยเฉพาะ จากนั้นจึงใช้ทักษะเหล่านี้ในการเขียนโปรแกรม วิธีการนี้สามารถเพิ่มการเน้นย้ำของโปรแกรมเมอร์ในด้านทฤษฎี พัฒนาแนวคิดของการเขียนโปรแกรมแบบมีแนวทางตามทฤษฎี และเปลี่ยนการเขียนโปรแกรมแบบธรรมชาติเป็นการเขียนโปรแกรมแบบมีสติ ด้วยวิธีนี้เท่านั้น ระดับการเขียนโปรแกรมของโปรแกรมเมอร์ของเราจึงได้รับการปรับปรุงอย่างมาก