ความต้องการภาษา Python เหตุใด Python จึงเป็นตัวเลือกที่ดีที่สุดสำหรับการเรียนรู้ของเครื่อง วิเคราะห์การให้คะแนนและจำกัดการค้นหาให้แคบลง

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

คำอธิบายสั้น ๆ

ในช่วงต้นทศวรรษที่ 90 ของศตวรรษที่ผ่านมา นักพัฒนาชาวดัตช์ได้สร้าง Python ซึ่งรวมคุณสมบัติของภาษาการเขียนโปรแกรมต่างๆ ภาษาระดับสูงที่เป็นปัญหาอยู่ในอันดับที่ 4 ของโลก มีการใช้งานและสนับสนุนโดย Mail, Pinterest, Youtube และผู้สร้างเครื่องมือค้นหาขนาดใหญ่

โปรแกรมเมอร์ Python ที่มีประสบการณ์เน้นถึงจุดแข็งของภาษาดังต่อไปนี้และข้อดีของการทำงานด้วย:

  • ความสามารถในการขยายภาษา การบูรณาการกับ C/C++;
  • ไวยากรณ์ที่เรียบง่าย, รองรับ Unicode;
  • ข้ามแพลตฟอร์ม;
  • การพิมพ์แบบไดนามิก
  • ความสามารถในการสร้างโค้ดที่ซับซ้อนที่สุดอย่างรวดเร็ว
  • สภาพแวดล้อมการพัฒนาจำนวนมาก
  • สามารถใช้เขียนผลิตภัณฑ์ซอฟต์แวร์ทุกประเภท
  • การบำรุงรักษาซอฟต์แวร์ที่สร้างขึ้นง่ายขึ้น
  • ใบอนุญาตฟรี
  • ชุมชนโปรแกรมเมอร์ที่มีความสามารถขนาดใหญ่

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

คุณสมบัติของอาชีพโปรแกรมเมอร์ Python

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

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

นักพัฒนา Python มีส่วนร่วมในการดูแลรักษาซอฟต์แวร์ที่เขาพัฒนาหรืออัปเกรด ฝึกอบรมพนักงาน เตรียมคำแนะนำ และเอกสารประกอบ

ข้อดีและข้อเสียของอาชีพ

ข้อดี

  1. ความสามารถในการเรียนรู้อย่างอิสระซึ่งสะดวกสำหรับผู้ที่ตัดสินใจเลิกใช้การเขียนโปรแกรมที่ซับซ้อน
  2. การเรียนรู้ที่รวดเร็ว
  3. ชุมชนโปรแกรมเมอร์ขนาดใหญ่ที่พูดภาษารัสเซีย
  4. รหัสภาษาที่สวยงามและเรียบง่าย ซึ่งช่วยเร่งกระบวนการพัฒนาได้อย่างมาก
  5. โปรแกรมเมอร์จำนวนไม่มากที่เชี่ยวชาญภาษา Python
  6. มีความต้องการมากจึงมีงานมาก

ข้อเสีย

  1. Python ได้รับความนิยมน้อยกว่า Java และ C/C++ ซึ่งมีผลกระทบอย่างมากต่อเงินเดือน
  2. ภาษาโปรแกรมที่เป็นปัญหาอาจเป็นภาษาที่สอง แต่ไม่ใช่ภาษาแรก
  3. โปรแกรมเมอร์ Python เป็นที่ต้องการในบริษัทชื่อดังในมอสโก เซนต์ปีเตอร์สเบิร์ก และเมืองใหญ่อื่นๆ ดังนั้นนักพัฒนาที่พูดภาษาโปรแกรมได้เพียงภาษาเดียวอาจประสบปัญหาในการหางานในพื้นที่ห่างไกล
  4. หากต้องการได้รับการว่าจ้างในบริษัทขนาดใหญ่ คุณต้องมีประสบการณ์ 2-3 ปีกับ Java, C/C++

คุณสมบัติส่วนบุคคลที่สำคัญ

  1. ความอดทน.
  2. ทำงานหนัก.
  3. การกำหนด.
  4. ความคิดริเริ่ม.
  5. การกำหนด.
  6. ความมั่นใจในตนเอง
  7. ความเอาใจใส่.
  8. การควบคุมตนเอง

การฝึกอบรมโปรแกรมเมอร์ Python

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

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

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

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

Python เป็นภาษาโปรแกรมระดับสูงที่ใช้ในสาขาไอทีต่างๆ เช่น การเรียนรู้ของเครื่อง การพัฒนาแอปพลิเคชัน เว็บ การแยกวิเคราะห์ และอื่นๆ

ในปี 2019 Python กลายเป็นภาษาการเขียนโปรแกรมที่ได้รับความนิยมมากที่สุด แซงหน้า Java ถึง 10% นี่เป็นเพราะสาเหตุหลายประการ หนึ่งในนั้นคือค่าจ้างที่สูงของผู้เชี่ยวชาญที่มีคุณสมบัติเหมาะสม (ประมาณ 100,000 ดอลลาร์ต่อปี)

ภาษาโปรแกรมไพธอน

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

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

ที่มาของชื่อ

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

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

หลามหรือหลาม?

ไม่ว่าจะเป็นชื่อรายการทีวีของอังกฤษ หรือเสียงภาษาอังกฤษของคำว่า "งู" Python ออกเสียงถูกต้องเหมือนกับ Python- อย่างไรก็ตาม ประมาณ 80% ของชุมชนรัสเซียคุ้นเคยกับการใช้คำว่า "Python"

ไม่สามารถพูดได้ว่าการใช้ตัวเลือกใดตัวเลือกหนึ่งนั้นถูกต้องอย่างแน่นอน หลายชื่อได้รับการปรับให้เข้ากับการออกเสียงของภาษาใดภาษาหนึ่ง และเป็นการยากมากที่จะเปลี่ยนนิสัยที่เป็นที่ยอมรับของสังคม อย่างไรก็ตาม เป็นการเหมาะสมที่จะใช้ชื่อ "Python" ในการสนทนากับคู่สนทนาที่พูดภาษารัสเซียเท่านั้น เพราะสำหรับ การประชุมนานาชาติความหมายของคำว่า "หลาม" ก็จะไม่เข้าใจเพราะว่า ภาษาอังกฤษไม่มีเลย มีเพียง “ไพธอน (Python)” เท่านั้น

โลโก้

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

ประวัติความเป็นมาของการทรงสร้าง

ภาษานี้ได้รับการพัฒนาโดยโปรแกรมเมอร์ Guido van Rossum ในช่วงปลายทศวรรษ 1980 ในเวลานั้นเขาทำงานที่ศูนย์คณิตศาสตร์และวิทยาการคอมพิวเตอร์ในประเทศเนเธอร์แลนด์

Guido van Rossum สนใจในการทำงานกับฮาร์ดแวร์มาตั้งแต่สมัยเรียน และแม้ว่าเขาจะไม่ได้รับการสนับสนุนและการรับรองจากเพื่อนๆ ของเขา แต่ก็ไม่ได้หยุดเขาจากการพัฒนาภาษาการเขียนโปรแกรมด้วยตัวเอง

Rossum ทำงานกับ Python ใน เวลาว่างโดยพื้นฐานแล้วเขาใช้ภาษาการเขียนโปรแกรม ABC ในการพัฒนาซึ่งเขาเคยเข้าร่วม

ขั้นตอนในประวัติศาสตร์ของภาษาการเขียนโปรแกรม Python:

  • ในเดือนกุมภาพันธ์ พ.ศ. 2534 ซอร์สโค้ดภาษาถูกเผยแพร่บน alt.sources- ถึงตอนนั้น ภาษาก็ยังใช้แนวทางเชิงวัตถุ สามารถทำงานกับคลาส การสืบทอด ฟังก์ชัน การจัดการข้อยกเว้น และโครงสร้างข้อมูลพื้นฐานทั้งหมดได้
  • ในปี 2000 Python เวอร์ชันที่สองได้เปิดตัว- มีการเพิ่มเครื่องมือสำคัญหลายอย่างเข้าไป รวมถึงการรองรับ Unicode และตัวรวบรวมขยะ
  • เมื่อวันที่ 3 ธันวาคม พ.ศ. 2551 Python เวอร์ชันที่สามได้เปิดตัวซึ่งยังคงเป็นเวอร์ชันหลัก- คุณลักษณะหลายประการของภาษาได้รับการออกแบบใหม่และเข้ากันไม่ได้ รุ่นก่อนหน้า- และถึงแม้ว่าฟังก์ชันการทำงานของเวอร์ชันที่สามจะไม่ด้อยไปกว่าเวอร์ชันที่สองเลย แต่การพัฒนาภาษาก็ถูกแบ่งออกเป็นสองสาขา บางคนยังคงใช้ Python 2 เพื่อรองรับโปรเจ็กต์เก่า ในขณะที่บางคนเปลี่ยนไปใช้เวอร์ชันที่สามโดยสิ้นเชิง

วันหมดอายุของเวอร์ชันที่สองถูกกำหนดไว้ในปี 2558 อย่างไรก็ตาม เนื่องจากกลัวว่าจะไม่มีเวลาถ่ายโอนโค้ดที่มีอยู่ทั้งหมดไปยัง Python 3 อายุการใช้งาน Python 2 ขยายออกไปจนถึงปี 2020.

Python เป็นภาษาที่เรียบง่าย

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

ความเรียบง่ายส่วนหนึ่งเนื่องมาจากการที่ Python เขียนขึ้นโดยใช้ภาษา ABC ซึ่งใช้ในการสอนการเขียนโปรแกรมและงานประจำวันของผู้ที่ไม่ใช่โปรแกรมเมอร์

Python ทำให้การเขียนโค้ดเป็นเรื่องง่ายและพัฒนาได้เร็วเพราะมีคุณสมบัติดังต่อไปนี้:

  • การพิมพ์แบบไดนามิก- โปรแกรมเมอร์ไม่จำเป็นต้องระบุประเภทของตัวแปร ภาษาจะกำหนดเอง ตัวดำเนินการ ประเภทต่างๆการเข้าร่วมในการดำเนินการหนึ่งครั้งจะลดลงเป็นการดำเนินการที่ต้องการโดยอัตโนมัติตามกฎบางประการ
  • ส่งกลับค่าหลายค่าได้อย่างสะดวกด้วยฟังก์ชัน- สามารถแสดงรายการได้โดยคั่นด้วยเครื่องหมายจุลภาค และจะถูกแปลงเป็น โดยอัตโนมัติ หากต้องการกลับจากฟังก์ชัน เพียงเขียนว่า “return array_name” ไม่จำเป็นต้องจัดสรรหน่วยความจำและส่งพอยน์เตอร์ไปยังฟังก์ชัน
  • การจัดสรรหน่วยความจำอัตโนมัติ- โปรแกรมเมอร์ไม่จำเป็นต้องจัดสรรหน่วยความจำเพื่อสิ่งใดด้วยตนเอง ในอีกด้านหนึ่ง สิ่งนี้จะลดการควบคุมโปรแกรมเมอร์เหนือโปรแกรม ในทางกลับกัน การพัฒนาจะถูกเร่งอย่างมาก
  • คนเก็บขยะ- หากวัตถุไร้ประโยชน์ (ไม่มีการอ้างอิงอีกต่อไป) วัตถุนั้นจะถูกรวบรวมโดยอัตโนมัติ ตัวรวบรวมขยะช่วยให้คุณเพิ่มประสิทธิภาพการใช้หน่วยความจำและหลีกเลี่ยงการลบวัตถุที่ไม่มีประโยชน์ออกด้วยตนเอง
  • ก, ข = ข, ก- บรรทัดนี้สลับค่าของตัวแปรเพื่อให้สิ่งที่อยู่ใน a อยู่ใน b และในทางกลับกัน สิ่งนี้เป็นไปได้เนื่องจากในขั้นแรก Python จะดูตัวแปรทางด้านขวาของเครื่องหมาย “=” และวางไว้ในรายการ โดยจะทำแบบเดียวกันกับองค์ประกอบทางด้านซ้ายของ “=” จากนั้นจึงเชื่อมโยงแต่ละองค์ประกอบทางด้านขวา รายการกับคนซ้าย ด้วยวิธีนี้ คุณสามารถแลกเปลี่ยนค่าไม่เพียงแต่สองตัวแปร แต่ยังรวมถึงสาม ห้า และอื่นๆ อีกด้วย
  • การเชื่อมโยงชนิดข้อมูล- ชนิดข้อมูลผูกกับค่า ไม่ใช่ตัวแปร นั่นคือค่าคือวัตถุบางชนิดที่มีคุณลักษณะที่กำหนดประเภทและคุณลักษณะอื่นๆ และตัวแปรเป็นเพียงการอ้างอิงถึงวัตถุนี้ แนวทางนี้ขจัดความจำเป็นในการนิยามประเภทที่ชัดเจน และทำให้การกำหนดค่าตัวแปรใหม่ง่ายขึ้นอย่างมาก (โดยเฉพาะอย่างยิ่งหากประเภทของค่าใหม่แตกต่างจากค่าเริ่มต้น)
  • สำหรับวง- การทำงานกับอาร์เรย์ รายการ และคอนเทนเนอร์อื่นๆ ใน Python นั้นง่ายและสะดวก เมื่อจำเป็นต้องวนซ้ำองค์ประกอบทั้งหมด โครงสร้างจะมีลักษณะดังนี้: “สำหรับ x ในคอนเทนเนอร์:” (การค้นหาเริ่มจาก 0 ถึงองค์ประกอบสุดท้าย ดัชนีสามารถกำหนดให้เป็น -1) หากคุณต้องการให้วนซ้ำจำนวนหนึ่งเพื่อผ่านไป ให้เขียนสิ่งนี้: “สำหรับ x อยู่ในช่วง (1,9):” (การวนซ้ำจะดำเนินการด้วยค่า x ตั้งแต่ 1 ถึง 8)
  • ภาษาที่ตีความ- ไม่จำเป็นต้องคอมไพล์โค้ดที่เขียน เพียงแค่เรียกใช้และรับผลลัพธ์ นอกจากนี้คุณสามารถทำงาน โหมดโต้ตอบและได้รับผลลัพธ์อย่างแท้จริงหลังการดำเนินการทุกครั้ง

Python ผสมผสานความเรียบง่ายและเครื่องมืออันทรงพลังเข้าด้วยกัน สามารถใช้สร้างต้นแบบโปรแกรมได้เกือบทุกโปรแกรม

เพื่อเร่งการพัฒนา ส่วนหนึ่งของโปรแกรม (ปกติแล้วจะไม่ส่งผลต่อความเร็วการทำงานมากนัก) เขียนด้วยภาษา Python

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

รหัสตัวอย่าง:

กำหนด what_bigger(a, b): ถ้า a > b: print(a, "greater than", b) else: print(b, "greater than", a) def max_arr(arr): max = 0 สำหรับ x ใน arr : if arr > max: max = arr[x] return max def arr_to_2arr(array): array = array * 2 return array print("A simple Python program") a = what_bigger(1,5) r1 = max_arr(a ) r2 = arr_to_2arr(a) print("การกลับมาของฟังก์ชัน max_arr - ", r1) print("การกลับมาของฟังก์ชัน arr_to_2arr - ", r2)

ผลการดำเนินการ:

โปรแกรมอย่างง่ายใน Python 5 มากกว่า 1 ฟังก์ชั่น Return max_arr - 6 ฟังก์ชั่น Return arr_to_2arr -

ความนิยม

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

เขาได้รวบรวมชุมชนนักพัฒนาจำนวนมากอยู่รอบตัวเขา และจากการสำรวจใน Stackoverflow นั้น Python ได้อันดับที่ 7 ด้วยคะแนนโหวตเกือบ 39%

ดัชนี TIOBE

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

ตามดัชนี TIOBE Python ครองอันดับที่ 3 ด้วยความนิยม 9 เปอร์เซ็นต์- เขายอมเท่านั้น ภาษาจาวาและซี

พีพีแอล

ดัชนีนี้ขึ้นอยู่กับตัวเลข คำค้นหาเกี่ยวกับ สื่อการศึกษาตามภาษา

จากข้อมูลจาก PYPL Python ครองอันดับหนึ่งด้วยความนิยมมากกว่า 29% และนำหน้า Java อยู่ 10%.

statista.com

การให้บริการ ประเภทต่างๆสถิติรวมถึงความนิยมของภาษาโปรแกรม

จากการสำรวจผู้ตอบแบบสอบถามมากกว่า 85,000 คน Python อยู่ในอันดับที่ 4 ตามหลังภาษาเช่น JS, ภาษามาร์กอัป และ SQL

ความเร็วในการทำงาน

โปรแกรมเมอร์มักสงสัยว่า “การใช้ Python จะทำให้เกิดปัญหาด้านประสิทธิภาพหรือไม่” คุณไม่ควรสรุปผลใด ๆ โดยไม่มีการตรวจสอบอย่างละเอียด

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

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

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

Python ช่วยให้คุณเขียนโค้ดได้ค่อนข้างเร็ว แต่อาจล้มเหลวได้ใน "คอขวด" บางอย่างที่ส่งผลกระทบ อิทธิพลที่ยิ่งใหญ่ที่สุดประสิทธิภาพของโครงการทั้งหมด เพื่อไม่ให้การพัฒนาล่าช้าและได้รับโปรแกรมที่ใช้งานได้ ความเร็วสูงโครงสร้างได้รับการออกแบบเพื่อให้อัตราส่วน "ประสิทธิภาพ/เวลาในการพัฒนา" มีค่าสูงสุด

โปรแกรมเมอร์ใช้เทคนิคเพื่อชดเชยความเร็วการทำงานของโปรแกรม Python ที่ไม่เพียงพอ:

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

คุณเขียนอะไรใน Python ได้บ้าง?

Python ถูกนำมาใช้ในการเขียนโปรแกรมหลายด้าน ดังนั้นคุณจึงสามารถเขียนอะไรก็ได้ลงไป

ด้านหลังของเว็บไซต์

ในการพัฒนาฝั่งเซิร์ฟเวอร์ของไซต์ มีการใช้เฟรมเวิร์ก: Django และ Flask- พวกเขาเปลี่ยน Python ให้เป็นภาษาโปรแกรมฝั่งเซิร์ฟเวอร์ที่มีความสามารถทัดเทียมกับเครื่องมือยอดนิยมอื่นๆ

โปรแกรมเมอร์สามารถทำงานกับลิงก์ URL การเรียกฐานข้อมูลและการสร้างได้อย่างง่ายดาย ไฟล์ HTMLที่ผู้ใช้เห็นในเบราว์เซอร์

และถึงแม้ว่า PHP จะควบคุมตลาดการพัฒนาเว็บฝั่งเซิร์ฟเวอร์ส่วนใหญ่ แต่โปรแกรมเมอร์จำนวนมากขึ้นเรื่อยๆ ก็ให้ความสำคัญกับการพัฒนาใน Python

บล็อกเชน

บล็อกเชนเป็นบล็อกต่อเนื่องกัน โดยแต่ละบล็อกประกอบด้วยข้อมูลและเชื่อมต่อกับบล็อกก่อนหน้าเสมอ เทคโนโลยีนี้สามารถนำไปใช้ในสาขาใดก็ได้และได้รับความนิยมเป็นพิเศษในภาคการเงินและในสาขา Bitcoin cryptocurrency

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

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

บอท

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

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

ฐานข้อมูล

ฐานข้อมูล คือ การจัดระบบสารสนเทศตามลักษณะทั่วไปและกฎเกณฑ์พิเศษ โครงการขนาดใหญ่ใดๆ ก็ตามใช้ฐานข้อมูล โดยจะจัดเก็บข้อมูลเกี่ยวกับผู้ใช้ การเปลี่ยนแปลงในโปรแกรม ฯลฯ

ระบบการจัดการฐานข้อมูลสามารถเขียนด้วยภาษา Python

ความเป็นจริงยิ่ง

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

Augmented Reality สามารถเห็นได้ในภาพยนตร์เช่น Iron Man ในโลกแห่งความเป็นจริงมันถูกใช้ในเครื่องบินรบ (ระบบกำหนดเป้าหมาย)

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

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

Python เป็นเครื่องมือที่ยอดเยี่ยมสำหรับการสร้างโปรเจ็กต์ความเป็นจริงเสริม

ไคลเอนต์ BitTorrent

BitTorrent เป็นเทคโนโลยีพิเศษที่ช่วยให้คุณแลกเปลี่ยนข้อมูลจำนวนมากผ่านทางอินเทอร์เน็ตได้อย่างรวดเร็ว

ก่อนเวอร์ชัน 6 ไคลเอนต์ BitTorrent เขียนด้วยภาษา Python ทั้งหมด แม้ว่าจะถูกเขียนใหม่ทั้งหมดในภายหลังด้วยภาษา C++ แต่นี่แสดงให้เห็นว่า Python สามารถใช้ในการทำงานประเภทนี้ได้

โครงข่ายประสาทเทียม

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

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

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

พาร์เซอร์

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

parser สามารถเขียนได้หลายภาษา ไม่ใช่เฉพาะ Python เท่านั้น เครื่องมือที่ดีเพื่อจุดประสงค์นี้แต่ความสามารถก็เพียงพอแล้วในการเขียนแอปพลิเคชันที่รวบรวมข้อมูลอย่างรวดเร็วและมีประสิทธิภาพ

เครื่องคิดเลข

งานนี้ดำเนินการโดยนักศึกษาวิทยาศาสตร์คอมพิวเตอร์ทุกคน สามารถเขียนเป็นภาษาโปรแกรมใดก็ได้ และ Python ก็ไม่มีข้อยกเว้น

สิ่งสำคัญคือต้องเข้าใจว่าเครื่องคิดเลขต้องมีความแม่นยำในการคำนวณ 100% ดังนั้นข้อผิดพลาดทั้งหมดที่เกี่ยวข้องกับการปัดเศษและการแทนตัวเลขไบนารีจึงถือเป็นสิ่งสำคัญ อย่างไรก็ตาม ไลบรารี่ถูกเขียนขึ้นสำหรับ Python ซึ่งแก้ปัญหานี้ได้อย่างสมบูรณ์

เกม

ไม่ได้สร้างใน Python เกมใหญ่มันถูกใช้เพื่อพัฒนาต้นแบบหรือใช้งานบางส่วน (เช่น ตรรกะเซิร์ฟเวอร์ของเกมหรือระบบม็อด)

หากต้องการเขียนโปรเจ็กต์ขนาดเล็ก คุณสามารถใช้ไลบรารี Pygame ซึ่งมีเครื่องมือที่จำเป็นทั้งหมดสำหรับการสร้างเกม 2D ขนาดเล็ก

โปรแกรมแก้ไขข้อความ

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

การเขียนโปรแกรมแก้ไขข้อความขนาดเล็กไม่ใช่เรื่องยาก แต่การสร้างโครงการขนาดใหญ่จะต้องอาศัยความรู้และความพยายามอย่างมาก แม้จะมีความเร็วของการพัฒนาใน Python ก็ตาม โปรแกรมแก้ไขข้อความด้วยฟังก์ชันการทำงานที่เพียงพอตามมาตรฐานสมัยใหม่ - นี่เป็นผลงานสำหรับทีมโปรแกรมเมอร์ทั้งหมด

ภาษาโปรแกรม

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

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

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

ปัจจุบัน Python เป็นหนึ่งในภาษาการเขียนโปรแกรมที่ได้รับความนิยมมากที่สุด และขอบเขตการใช้งานของมันก็ขยายออกไปเท่านั้น ในช่วงไม่กี่ปีที่ผ่านมา ภาษานี้เป็นหนึ่งใน 3 ภาษาที่ได้รับความนิยมมากที่สุดในตลาดไอที

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

นักพัฒนาเว็บที่ทำงานด้วย Python จำเป็นต้องรู้เทคโนโลยีเพิ่มเติมจากการพัฒนาส่วนหน้าและภาษาการเขียนโปรแกรม JavaScript เพื่อรองรับโปรเจ็กต์ใดๆ ก็ได้อย่างเต็มที่

ในช่วง 5 ปีที่ผ่านมา นักพัฒนา Python เป็นที่ต้องการของตลาดแรงงาน ผู้เชี่ยวชาญในสาขานี้ยังมีไม่เพียงพอ

จะหางาน Python Developer ได้ที่ไหน

คุณควรมองหาตำแหน่งงานว่างในรัสเซียจากเว็บไซต์พิเศษยอดนิยม:

ผู้นำในจำนวนข้อเสนอของนายจ้างคือ HeadHunter และ Indeed

สามารถดูข้อเสนองานในประเทศอื่นๆ ได้ที่ https://ru.indeed.com/ มีเว็บไซต์เฉพาะสำหรับการหางานในต่างประเทศ - ใน CIS, จีน, ยุโรปและสหรัฐอเมริกา - https://24ru.com/ แต่ระดับเงินเดือนนั้นถูกประเมินต่ำเกินไป โอกาสในการหางานในต่างประเทศนั้นมีให้โดยแพลตฟอร์มสำหรับโปรแกรมเมอร์อิสระ เช่น https://www.upwork.com/ ซึ่งหลังจากเสร็จสิ้นโครงการคุณอาจสังเกตเห็นและได้รับความร่วมมือ

เว็บไซต์เหล่านี้มีข้อเสนอสำหรับทั้งผู้เริ่มต้น - แม้แต่นักเรียน - และผู้ที่มีประสบการณ์ มีทั้งงานเต็มเวลา งานนอกเวลา และงานระยะไกล โดยพื้นฐานแล้ว การทำงานจากระยะไกลมักจะจ่ายน้อยกว่า แต่ก็สามารถหาได้ ทำงานระยะไกลด้วยตารางเวลาที่ยืดหยุ่นและเงินเดือน 150-200,000 รูเบิล ทุกอย่างขึ้นอยู่กับนโยบายของบริษัทและคุณสมบัติของคุณ

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

ข้อกำหนดสำหรับนักพัฒนา Python

ข้อกำหนดสำหรับผู้สมัครจะแตกต่างกันไปขึ้นอยู่กับสาขาของกิจกรรมและแน่นอนในโครงการเฉพาะ หากเราพูดถึงตำแหน่งงานว่างทั่วไป ข้อกำหนดต่อไปนี้มีความเกี่ยวข้อง:

  • มีความรู้ที่มั่นคงเกี่ยวกับภาษา Python และไลบรารี
  • ความรู้เกี่ยวกับเฟรมเวิร์ก Django หรือ Flask/Pyramid/Tornado
  • ความรู้พื้นฐานเกี่ยวกับ HTML, CSS, JavaScript - สำหรับการจัดวางหน้า
  • ความสามารถในการทำงานร่วมกับ Git
  • มีความรู้เกี่ยวกับ SQL มีประสบการณ์ด้วย ฐานข้อมูลเชิงสัมพันธ์ข้อมูล (PostgreSQL, MySQL) ความสามารถในการใช้ ORM (เช่น Django ORM)
  • ภาษาอังกฤษ ตั้งแต่ขั้นพื้นฐานทางเทคนิคไปจนถึงการพูดขั้นสูง ขึ้นอยู่กับตำแหน่งที่ว่าง
  • มีประสบการณ์กับฐานข้อมูลที่ไม่เกี่ยวข้อง เช่น MongoDB
  • ความสามารถในการทำงานเป็นทีมและเข้าใจรหัสของผู้อื่น ความเข้าใจเกี่ยวกับ Agile (Scrum) และวิธีการพัฒนาแบบดั้งเดิม
  • การศึกษาระดับอุดมศึกษา - ส่วนใหญ่อยู่ในสาขานี้ เทคโนโลยีสารสนเทศและนักคณิตศาสตร์ แต่บางองค์กรจ้างผู้เชี่ยวชาญที่ไม่มีการศึกษาระดับอุดมศึกษา (ผู้ที่เรียนในหลักสูตรหรือเป็นอิสระ)

นี้ ข้อกำหนดทั่วไป- ตำแหน่งงานว่างและผลิตภัณฑ์ซอฟต์แวร์ที่คุณจะต้องร่วมงานด้วยนั้นกว้างมาก ดังนั้นทุกองค์กรจึงต้องการความรู้ที่จะเป็นประโยชน์ในการทำงาน กฎทั่วไปก็คือ ภาษาโปรแกรม เฟรมเวิร์ก และฐานข้อมูลที่ได้รับความนิยมและจำเป็นมากขึ้นที่คุณรู้จัก (Js, HTML, C, C++, PHP, Django, SQL, Mongo) และยิ่งคุณมีประสบการณ์การทำงานมากเท่าไร โอกาสที่จะประสบความสำเร็จในการจ้างงานก็จะมากขึ้นเท่านั้น เงินเดือนที่เหมาะสม

ภาษา Go ค่อนข้างได้รับความนิยมในขณะนี้ ตัวอย่างเช่น ตลาด Joom ที่มีชื่อเสียงเสนอเงินเดือน 270,000 รูเบิลต่อเดือนให้กับโปรแกรมเมอร์ที่มีคุณสมบัติของ Senior Backend Developer, ความรู้เกี่ยวกับ Go และประสบการณ์ในการพัฒนาสำหรับ Linux/Unix

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

ตำแหน่งงานว่างทั่วไปที่มีความรู้ Python

นักพัฒนา Python สามารถดำรงตำแหน่งต่อไปนี้:

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

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

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

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

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

นักพัฒนาแบ็กเอนด์ Python- สร้างส่วนเซิร์ฟเวอร์ในแอปพลิเคชันเว็บ จัดการฐานข้อมูล สถาปัตยกรรม ลอจิกของโปรแกรม นักพัฒนาแบ็คเอนด์ต้องรู้ภาษาโปรแกรมฝั่งเซิร์ฟเวอร์ เช่น PHP, Python, Ruby, Java, Perl, Node JS ( แพลตฟอร์มซอฟต์แวร์- นอกจาก Node JS แล้ว ผู้เชี่ยวชาญนี้ยังมีประโยชน์ในการศึกษา Express (ไลบรารีสำหรับการโต้ตอบแพลตฟอร์ม Node JS กับเซิร์ฟเวอร์) และ Mongo DB (ฐานข้อมูลสำหรับรับและจัดเก็บข้อมูล)

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

ระดับเงินเดือนในรัสเซียและประเทศอื่น ๆ

ในมอสโก โปรแกรมเมอร์ Python จะได้รับ 30,000 ถึง 450,000 รูเบิล ขึ้นอยู่กับบริษัทและระดับทักษะของเขา ในเซนต์ปีเตอร์สเบิร์กจาก 25,000 ถึง 350,000 เงินเดือนเฉลี่ยของนักพัฒนาคือ 120-150,000 ในเมืองของรัฐบาลกลางและ 75-100 ในศูนย์ภูมิภาค

ในประเทศ CIS มีการกระจายเงินเดือนอย่างมาก ตัวอย่างเช่นในอุซเบกิสถาน รายได้เฉลี่ยอยู่ในช่วง 20 ถึง 40,000 ในรูปของรูเบิลรัสเซีย ในเบลารุสเงินเดือนเฉลี่ยอยู่ที่ 2-3 พันดอลลาร์

เงินเดือนในประเทศในยุโรปอยู่ในช่วงตั้งแต่ 1,500 ถึง 5,000 เหรียญสหรัฐฯ ต่อเดือน ขึ้นอยู่กับประเทศและคุณสมบัติของพนักงาน ในสหรัฐอเมริกา โปรแกรมเมอร์เสนอราคาตั้งแต่ 2,500 ถึง 8,500,000 ดอลลาร์ต่อเดือน

นักพัฒนามือใหม่ทุกคนต้องเผชิญกับคำถามที่ว่า “ฉันควรเรียนภาษาไหนก่อน” โปรแกรมเมอร์ 10 คนสามารถให้คำตอบที่แตกต่างกัน 10 ข้อสำหรับคำถามนี้

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

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

มหาวิทยาลัยในอเมริกา 40 อันดับแรกเลือก Python

ในสถาบันอุดมศึกษาในสหรัฐอเมริกา Python มักได้รับการสอนในหลักสูตรวิทยาการคอมพิวเตอร์เบื้องต้น จากการศึกษาของสมาคมฯ วิศวกรรมคอมพิวเตอร์ในปี 2014 ภาษานี้ได้รับเลือกโดย 27 มหาวิทยาลัยจาก 39 มหาวิทยาลัยที่ดีที่สุดในอเมริกา มีสาเหตุหลายประการสำหรับสิ่งนี้:

1. เกณฑ์รายการ "ต่ำ" คนที่พูดภาษาอังกฤษจะคุ้นเคยกับ Python อย่างรวดเร็วและเขียนโปรแกรมแรกได้อย่างง่ายดาย นอกจากนี้ เด็กนักเรียนชาวอเมริกันจำนวนมากยังเรียนภาษานี้ในชั้นเรียนวิทยาการคอมพิวเตอร์อีกด้วย

2. ขอบเขตการใช้งานที่กว้าง ความรู้เกี่ยวกับ Python จะเป็นประโยชน์สำหรับนักเรียนในการศึกษาวิชาอื่นๆ ภาษานี้ใช้สำหรับการวิเคราะห์ข้อมูลและการวิจัยทางวิทยาศาสตร์

3. ภาษาได้รับความนิยมอย่างสูงในด้าน “การพัฒนาอย่างแท้จริง”

บริการการศึกษาออนไลน์ยอดนิยมทั่วโลก - Coursera, Codecademy, Udacity, edX - แนะนำให้เริ่มเรียนรู้การเขียนโปรแกรมด้วย Python

ความนิยมของ Python เมื่อเทียบกับภาษาอื่น

จากการจัดอันดับประจำปีของนิตยสาร IEEE Spectrum พบว่า Python ได้รับความนิยมอันดับหนึ่งในกลุ่มภาษาการเขียนโปรแกรม ในการรวบรวมการให้คะแนน นักข่าวได้วิเคราะห์แชทของนักพัฒนาสาธารณะ, ประกาศรับสมัครงาน, Github, StackOverflow และแหล่งข้อมูลอื่นๆ อีกหลายสิบแห่ง

ในเดือนสิงหาคม 2017 Python อยู่ในอันดับที่ 5 ใน Tiobe Index มันถูกรวบรวมโดยอิงจากผลลัพธ์ของข้อความค้นหาเช่น "การเขียนโปรแกรม" ในเครื่องมือค้นหายอดนิยม

Python ใช้ที่ไหน?

Python ใช้ใน:

นักพัฒนา Python มีรายได้เท่าไหร่?

ตามที่กล่าวไว้ข้างต้น ขอบเขตของ Python นั้นกว้าง ดังนั้นความต้องการโปรแกรมเมอร์ที่ทำงานในภาษานี้จึงสูงมาก

ตาม gooroo.io พอร์ทัลของอเมริกา โปรแกรมเมอร์ Python มี "เพดานเงินเดือน" สูงที่สุดในบรรดานักพัฒนาในภาษายอดนิยม ค่าตอบแทนรายปีสูงสุดที่ระบุไว้ในตำแหน่งงานว่างคือ $148,000

นักพัฒนา Python ก็เป็นที่ต้องการในรัสเซียเช่นกัน เงินเดือนของนักพัฒนาอาวุโสสูงถึง 200,000 รูเบิลต่อเดือน

วิธีการเรียนรู้การเขียนโปรแกรมใน Python

กรุณาให้คะแนนมัน

แปลดัดแปลงบทความ “Programming Languages ​​​​InfoQ Trends Report - ตุลาคม 2019”

ประเด็นสำคัญ

  • Elixir ปรากฏขึ้น - ภาษาใช้งานทั่วไปพร้อมการรองรับมัลติเธรด ทำงานบนเครื่องเสมือน Erlang ในรายงานปัจจุบันอยู่ในหมวดนวัตกรรม
  • ภาษาเฉพาะโดเมนที่ออกแบบมาเพื่อทำงานกับโครงสร้างพื้นฐานและ เทคโนโลยีคลาวด์- เหล่านี้คือเครื่องดนตรีเช่น Ballerina และ Pulumi ผู้เขียนรายงานยังระบุถึงภาษา Dark ซึ่งไม่รวมอยู่ในเทรนด์เพียงเพราะอยู่ในรุ่นเบต้า Rust ได้ย้ายจากหมวดหมู่นวัตกรรมไปสู่หมวดหมู่ที่เชี่ยวชาญ ผู้เขียน InfoQ เชื่อว่าเหตุผลนี้คือเครื่องมือสำหรับการทำงานกับโครงสร้างพื้นฐานและการจัดการระนาบข้อมูล เช่น Habitat และ Linkerd 2.0 Facebook ใช้ภาษานี้เพื่อพัฒนาสกุลเงินดิจิตอลของตัวเอง
  • Python ยังคงได้รับความนิยมอย่างต่อเนื่อง สาเหตุหลักมาจากการใช้เพื่อการวิเคราะห์ข้อมูลและการสอนการเขียนโปรแกรม
  • Swift สำหรับ iOS ได้ย้ายไปยังหมวดหมู่ส่วนใหญ่ในช่วงแรกๆ ซึ่งอาจเนื่องมาจากความนิยมของ iOS ในฐานะเฟรมเวิร์กแอป Kotlin กำลังแสดงความก้าวหน้าที่คล้ายกัน
  • ในตระกูล .NET นั้น .NET Core 3 เป็นที่สนใจเป็นพิเศษ เครื่องมือนี้ยังอยู่ในหมวดหมู่นวัตกรรม แต่มีโอกาสที่จะตามทัน .NET Core 2 ทุกครั้ง วิชวลเบสิกตกอยู่ในประเภทล้าหลัง

ความคิดเห็น

Abel Avram อาจารย์อาวุโสประจำภาควิชาสารสนเทศและระบบอัตโนมัติ มหาวิทยาลัยโพลีเทคนิคแห่ง Timisoara

เจ็ตเบรนส์ เผยแพร่ผลการศึกษา “สภาวะระบบนิเวศของนักพัฒนา ปี 2562” (สถานะของระบบนิเวศของนักพัฒนา 2019 ) จากการสำรวจนักพัฒนาซอฟต์แวร์ 7,000 ราย ได้ข้อสรุปดังต่อไปนี้:

  • Java เป็นภาษาโปรแกรมกระแสหลักที่ได้รับความนิยมมากที่สุด
  • JavaScript เป็นภาษาที่ใช้บ่อยที่สุด
  • Go เป็นภาษาที่มีแนวโน้มมากที่สุด
  • Python เป็นภาษาที่มีการศึกษามากที่สุด

เริ่มต้นด้วยส่วนแบ่ง 8% ในปี 2560 และตอนนี้ถึง 18% นอกจากนี้ นักพัฒนาส่วนใหญ่ (13%) ระบุว่า Go เป็นภาษาที่พวกเขาต้องการเรียนรู้

บันทึก StackOverflow ว่าในปี 2019 Python แซงหน้า Java ในการจัดอันดับและยังคงเป็นที่ชื่นชอบมากที่สุดเป็นอันดับสองรองจาก Rust

Arthur Casals นักวิจัยที่ทำงานในด้านปัญญาประดิษฐ์และระบบหลายตัวแทน

แม้ว่าการใช้งานของ Rust ยังมีข้อจำกัดอยู่บ้าง และภาษาเองก็ถูกมองว่าเป็นทางเลือกแทน C++ มากกว่า การเกิดขึ้นของไลบรารีใหม่และการใช้ภาษาโดยบริษัทขนาดใหญ่ ทำให้ภาษานี้เป็นตัวเลือกที่มีศักยภาพสำหรับประเภทของภาษาที่เชี่ยวชาญ

Elixir กำลังได้รับความนิยมในประเทศบ้านเกิดอย่างบราซิล สตาร์ทอัพรายใหญ่อย่างน้อยหนึ่งรายก็ใช้สิ่งนี้ Movile

Go ยังอยู่ในช่วงเริ่มต้น ภาษามีวงจรชีวิตที่ช้ากว่า ตัวอย่างเช่น เฟรมเวิร์ก และ Go ยังไม่ถึงขั้นการใช้งานอย่างแพร่หลาย ในความคิดของฉัน Elixir และ Elm ก็อยู่ในขั้นตอนการพัฒนาเช่นกัน

Swift สามารถจัดอยู่ในประเภทภาษาที่แพร่หลายอยู่แล้ว อาจเป็นเพราะเป็นภาษาที่สะดวกที่สุดสำหรับการพัฒนาแอป iOS

Cloud IDE ยังได้รับความนิยมอย่างมากในช่วงไม่กี่ปีที่ผ่านมาCodeSandbox และ StackBlitz มีความสามารถที่หลากหลายสำหรับทั้งการแก้ไขเบราว์เซอร์และการบูรณาการกับเครื่องมือการพัฒนาในเครื่อง

ฉันไม่คิดว่า Pony จะก้าวไปไกลกว่าหมวดหมู่นวัตกรรมอย่างน่าเศร้า ฉันชอบภาษานี้ แม้ว่าฉันจะพบว่าระบบประเภทของภาษานี้ค่อนข้างซับซ้อนก็ตาม และฉันคิดว่ามีงานทำที่น่าประทับใจอยู่บ้าง แต่ก็ยังมีชุมชนในภาษานี้น้อยเกินไป

ฉันได้ยินเกี่ยวกับ Dark มากขึ้นเรื่อยๆ แม้ว่าจะยังอยู่ในช่วงเบต้าก็ตาม ในบริบทของภาษาที่เน้นโครงสร้างพื้นฐาน ฉันพบว่าสิ่งนี้น่าสนใจ

ฉันคิดว่ามีการมุ่งเน้นอย่างจริงจังกับ .NET Core การย้ายเครื่องมือนี้จากนวัตกรรมไปสู่การเรียนรู้นั้นคุ้มค่า ฉันเชื่อว่าเมื่อ .NET Core 3 เปิดตัว มันควรจะแยกออกเป็นสาขาแยกต่างหากและวางไว้ในสาขาที่เป็นนวัตกรรมใหม่

ดูเหมือนว่า F# จะเป็นไปตามชะตากรรมเดียวกันกับ Clojure สำหรับ JVM มันดูค่อนข้างดี แต่ฉันไม่เห็นการพัฒนาที่จริงจังหรือการลดลงใดๆ เลย

ฉันคิดว่าจิธอนตายแล้ว ครั้งล่าสุดที่ฉันตรวจสอบเว็บไซต์ มันไม่ได้รับการอัปเดตมาหลายปีแล้ว และ สถานะปัจจุบันมันไม่ได้ใกล้เคียงกับ Python 3.x ด้วยซ้ำ

ภาษาสำหรับโครงสร้างพื้นฐาน: ดูเหมือนว่าจะมีแนวโน้มใหม่ในการรวมภาษาใหม่บางส่วนและปรับใช้

  • Pulumi และที่คล้ายกัน - typescript;
  • นางระบำ;
  • ภาษาพร้อมเพรียงกัน - ภาษาการทำงานใหม่จากผู้พัฒนา Scala/Haskell แต่ไม่มี monads ยังเร็วเกินไปที่จะประเมินมัน
  • ภาษามืด - ยังไม่เปิดเผยสู่สาธารณะ

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

บางทีเราอาจเห็นอนาคตใหม่ของการเขียนโปรแกรม Wasm (เบราว์เซอร์ เซิร์ฟเวอร์ที่มี WASI และอื่นๆ) รวมถึงการฟื้นฟูภาษาพื้นเมืองครั้งใหม่ (แบบไร้เซิร์ฟเวอร์ การใช้ เครื่องเสมือนและภาชนะ) วิธีการนี้จะลดความน่าดึงดูดใจของ JVM/bytecode และช่วยให้ทุกคนใช้ภาษาเวอร์ชันดั้งเดิมได้อย่างง่ายดาย (เวอร์ชันมาตรฐานที่ได้รับการพัฒนามานานหลายทศวรรษ) ฉันขอชี้แจงว่าข้อความข้างต้นใช้ไม่ได้กับภาษา JVM ดั้งเดิม เช่น Clojure, Scala, Kotlin ฯลฯ

ดูเหมือนว่าแฟน ๆ ของภาษา Elixir ส่วนใหญ่ชอบมันเพราะความแปลกใหม่เป็นหลัก และ/หรือเพราะพวกเขามีสิ่งที่เรียกว่า "การแพ้ Java" (มักเกิดจากความจริงที่ว่าแพลตฟอร์มนี้มีอายุมากกว่า 10 ปี) แต่... ฉันไม่เห็นอะไรเลยในภาษานี้ ซึ่งไม่สามารถนำไปใช้งานได้อย่างง่ายดายโดยใช้ JVM (แม้จะเล่นซอนิดหน่อย) - และ JVM นั้นสามารถรวมเข้ากับไลบรารีได้ดีกว่ามาก

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

หากคุณถามชุมชน F# มีสองปัญหา:

  • การสนับสนุนที่อ่อนแอจาก Microsoft;
  • เน้นที่ความเข้ากันได้กับ C# โดยเสียค่าใช้จ่ายในการใช้งานง่าย
  • มันซับซ้อนมากขึ้นเรื่อยๆ เช่นเดียวกับที่นักวิทยาศาสตร์คอมพิวเตอร์ชอบ อย่างไรก็ตาม ครู F# มุ่งเน้นไปที่การสอนผู้ที่อยู่ห่างไกลจากการเขียนโปรแกรมและต้องการเพียงภาษาสคริปต์ ความซับซ้อนมากเกินไปทำให้งานยาก

ฉันยังคิดว่า C# 8 จะเข้าสู่หมวดหมู่ของการเชี่ยวชาญอย่างรวดเร็ว ผู้คนต่างถามถึงประเภทการอ้างอิงที่เป็นโมฆะ... ตั้งแต่ .NET 1 พูดตามตรง