กลับไปหน้าบทความ

อ่าน 6 นาที

สวัสดีโลก

โปรแกรม " Hello, world " โดยทั่วไปเป็น โปรแกรมคอมพิวเตอร์ แบบง่ายๆ ที่แสดง ข้อความคล้ายกับ "Hello, world" บนหน้าจอ (มักจะเป็น คอนโซล ) โค้ดขนาดเล็กใน ภาษาโปรแกรมทั่วไป ส่วนใหญ่...

สวัสดีโลก

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

ประวัติศาสตร์

โปรแกรมแสดงข้อความ "hello, world" ที่เขียนด้วยลายมือในภาษาซีและลงชื่อโดยไบรอัน เคอร์นิแกน (ปี 1978)

แม้ว่าจะมีโปรแกรมทดสอบขนาดเล็กหลายโปรแกรมมาตั้งแต่การพัฒนาคอมพิวเตอร์ ที่ตั้งโปรแกรมได้ แต่ธรรมเนียมการใช้วลี "Hello, world" เป็นข้อความทดสอบนั้นได้รับอิทธิพลมาจากโปรแกรมตัวอย่างในหนังสือThe C Programming Language ปี 1978 [ 2 ] ซึ่งน่าจะมีการใช้งานมาก่อนหน้านี้ในBCPLโปรแกรมตัวอย่างจากหนังสือจะพิมพ์"สวัสดีโลก"และสืบทอดมาจาก บันทึกภายในของ Bell Laboratories ในปี 1974 โดยBrian Kernighanการเขียนโปรแกรมในภาษา C: บทช่วยสอน : [ 3 ]

main ( ) { printf ( "hello, world" ); }

ในตัวอย่างข้างต้นหลัก( )ฟังก์ชัน กำหนดจุด เริ่มต้นการทำงานของโปรแกรมส่วนเนื้อหาของฟังก์ชันประกอบด้วยคำสั่ง เดียว คือการเรียกใช้ฟังก์ชันprintf()ฟังก์ชันนี้ย่อมาจาก " print formatted" ซึ่งจะแสดงผลลัพธ์ ที่ส่งเข้ามาเป็นพารามิเตอร์ในกรณีนี้ คือ สตริง ออกทางคอนโซล"สวัสดีโลก".

เวอร์ชันภาษา C นั้นมีมาก่อนโดยหนังสือ A Tutorial Introduction to the Language B ของ Kernighan เองในปี 1972 [ 4 ]ซึ่งเวอร์ชันแรกที่รู้จักของโปรแกรมพบได้ในตัวอย่างที่ใช้เพื่อแสดงตัวแปรภายนอก:

หลัก( ) { extrn a, b, c; putchar(a); putchar(b); putchar(c); putchar('!*n'); } 'นรก' โค้งคำนับ'; c 'โลก'; 

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

รายงาน Jargon File ระบุว่าวลี "hello, world!" มีต้นกำเนิดในปี 1967 โดย ใช้ภาษาBCPL [ 5 ]นอกเหนือจากด้านคอมพิวเตอร์ การใช้วลีดังกล่าวเริ่มขึ้นก่อนหน้านั้นกว่าสิบปี โดยเป็นวลีติดปากของดีเจวิทยุในนิวยอร์กชื่อ William B. Williamsตั้งแต่ช่วงปี 1950 [ 6 ]

การเปลี่ยนแปลง

"Hello World" คือข้อความที่แสดงโดยโปรแกรมบนเครื่อง PlayStation Portable ของ Sony เพื่อเป็นตัวอย่างการทำงาน

โปรแกรม "Hello, world" มีความซับซ้อนแตกต่างกันไปตามภาษาโปรแกรม ในบางภาษา โดยเฉพาะภาษาสคริปต์โปรแกรม "Hello, world" สามารถเขียนได้ด้วยคำสั่งเดียว ในขณะที่ภาษาอื่นๆ (โดยเฉพาะภาษาโปรแกรมระดับต่ำ ) อาจต้องใช้คำสั่งมากกว่านั้น ตัวอย่างเช่น ในPythonการพิมพ์สตริง "Hello, world" สามารถทำได้ด้วยคำสั่งเดียวสวัสดีโลกตามด้วยขึ้นบรรทัดใหม่ ก็เพียงแค่เขียน. ในทางตรงกันข้าม โค้ดที่เทียบเท่ากันในC++ [ 7 ]ต้องใช้การนำเข้าไลบรารีมาตรฐาน C++การประกาศจุดเริ่มต้น (ฟังก์ชัน main) และการเรียกเพื่อพิมพ์ข้อความหนึ่งบรรทัดไปยังสตรีมเอาต์พุตมาตรฐาน print("Hello, world")

การทดสอบการตัดเฉือนด้วยเครื่องจักร ควบคุมเชิงตัวเลขด้วยคอมพิวเตอร์(CNC) ในวัสดุโพลี(เมทิลเมทาคริเลต) (เพอร์สเป็กซ์)

วลี "Hello, world" มีการเปลี่ยนแปลงรูปแบบการใช้ตัวพิมพ์ใหญ่และเครื่องหมายวรรคตอนต่างๆ เช่น การมีหรือไม่มีเครื่องหมายจุลภาคหรือเครื่องหมายอัศเจรีย์ อุปกรณ์บางอย่างจำกัดรูปแบบให้เป็นไปตามรูปแบบเฉพาะ เช่น เวอร์ชันที่เป็นตัวพิมพ์ใหญ่ทั้งหมดบนระบบที่รองรับเฉพาะตัวพิมพ์ใหญ่ ในขณะที่ภาษาโปรแกรม บางภาษา อาจต้องพิมพ์สตริงที่แก้ไขเล็กน้อย ภาษาของมนุษย์อื่นๆ ถูกนำมาใช้เป็นเอาต์พุต ตัวอย่างเช่น บทช่วยสอนสำหรับภาษา Goแสดงผลทั้งตัวอักษร ภาษาอังกฤษและ ภาษาจีนหรือ ญี่ปุ่น ซึ่งแสดงให้เห็นถึง การรองรับUnicodeในตัวของภาษา[ 8 ]อีกตัวอย่างที่น่าสนใจคือภาษา Rustซึ่งระบบการจัดการจะแทรกโปรแกรม "Hello, World" โดยอัตโนมัติเมื่อสร้างโปรเจกต์ใหม่

ข้อความ "HELLO WORLD" แสดงผลผ่านเทคนิคการวาดภาพด้วยแสงแบบ เปิดรับแสงนาน โดยใช้แถบไฟ LED ที่เคลื่อนที่ได้

ภาษาโปรแกรมบางภาษาเปลี่ยนหน้าที่ของโปรแกรม "Hello, world" ในขณะที่ยังคงรักษาเจตนารมณ์ของการแสดงตัวอย่างง่ายๆ ไว้ ภาษา โปรแกรมเชิงฟังก์ชันเช่นLisp , MLและHaskellมักจะแทนที่ "Hello, world" ด้วยโปรแกรม แฟกทอเรียลเนื่องจากภาษาโปรแกรมเชิงฟังก์ชันเน้นเทคนิคการเรียกซ้ำ ในขณะที่ตัวอย่างดั้งเดิมเน้นการรับส่งข้อมูล ซึ่งขัดกับเจตนารมณ์ของภาษาโปรแกรมเชิงฟังก์ชันบริสุทธิ์โดยการสร้างผลข้างเคียงภาษาอื่นๆ ที่สามารถพิมพ์ "Hello, world" ได้ ( ภาษาแอสเซมบลี , C , VHDL ) อาจถูกนำมาใช้ในระบบฝังตัวซึ่งการแสดงผลข้อความทำได้ยาก (ต้องใช้ส่วนประกอบเพิ่มเติมหรือการสื่อสารกับคอมพิวเตอร์เครื่องอื่น) หรือไม่มีเลย สำหรับอุปกรณ์เช่นไมโครคอนโทรลเลอร์ , อาร์เรย์เกตที่ตั้งโปรแกรมได้แบบฟิลด์และอุปกรณ์ลอจิกที่ตั้งโปรแกรมได้ที่ซับซ้อน (CPLD) "Hello, world" จึงอาจถูกแทนที่ด้วยไดโอดเปล่งแสง (LED) ที่กะพริบ ซึ่งแสดงให้เห็นถึงจังหวะเวลาและการทำงานร่วมกันระหว่างส่วนประกอบต่างๆ[ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ]

ระบบปฏิบัติการ Linux DebianและUbuntu มีโปรแกรม "Hello, world" ให้ใช้งานผ่าน ระบบ จัดการแพ็กเกจซอฟต์แวร์ซึ่งสามารถเรียกใช้งานได้ด้วยคำสั่งสวัสดีมันทำหน้าที่เป็นตัวตรวจสอบความถูกต้องและตัวอย่างง่ายๆ ของการติดตั้งแพ็กเกจซอฟต์แวร์ สำหรับนักพัฒนา มันเป็นตัวอย่างของการสร้าง แพ็ก เกจ .debไม่ว่าจะด้วยวิธีดั้งเดิมหรือใช้debhelperและเวอร์ชันของสวัสดีGNU Hello ที่ ใช้เป็นตัวอย่างของการเขียนโปรแกรมGNU [ 14 ]

มีการแสดงโปรแกรม "Hello, world" เวอร์ชันต่างๆ ที่สร้างเอาต์พุตแบบกราฟิก (ตรงข้ามกับเอาต์พุตแบบข้อความ) ด้วยเช่นกัน Sunได้สาธิตโปรแกรม "Hello, world" ในภาษา Javaโดยใช้กราฟิกเวกเตอร์ที่ปรับขนาดได้[ 15 ]และ ภาษาการเขียนโปรแกรม XLมีฟีเจอร์ "Hello, world" โลกหมุนได้โดยใช้กราฟิกคอมพิวเตอร์ 3 มิติ[ 16 ] Mark GuzdialและElliot Solowayได้แนะนำว่าข้อความทดสอบ "hello, world" อาจล้าสมัยไปแล้ว เนื่องจากกราฟิกและเสียงสามารถจัดการได้ง่ายเหมือนกับข้อความ[ 17 ]

ในกราฟิกคอมพิวเตอร์การเรนเดอร์รูปสามเหลี่ยม — "Hello Triangle" — บางครั้งถูกใช้เป็นตัวอย่างเบื้องต้นสำหรับไลบรารีกราฟิก[ 18 ] [ 19 ]

ได้เวลาทักทายโลกแล้ว!

"เวลาในการทักทายโลก" (TTHW) คือเวลาที่ใช้ในการเขียนโปรแกรม "Hello, world" ในภาษาโปรแกรมที่กำหนด นี่เป็นการวัดความง่ายในการใช้งานของภาษาโปรแกรมอย่างหนึ่ง เนื่องจากโปรแกรมนี้มีจุดประสงค์เพื่อเป็นการแนะนำสำหรับผู้ที่ไม่คุ้นเคยกับภาษา ดังนั้นโปรแกรม "Hello, world" ที่ซับซ้อนกว่าอาจบ่งชี้ว่าภาษาโปรแกรมนั้นเข้าถึงได้ยากกว่า[ 20 ]ตัวอย่างเช่น โปรแกรม "Hello, world" แรกที่เป็นที่รู้จักในวงกว้างในภาษา Malbolge (ซึ่งจริงๆ แล้วแสดงผลเป็น "HEllO WORld") ใช้เวลาสองปีในการประกาศ และไม่ได้สร้างขึ้นโดยมนุษย์ แต่สร้างขึ้นโดยตัวสร้างโค้ดที่เขียนด้วยCommon Lisp

แนวคิดนี้ได้รับการขยายออกไปนอกเหนือจากภาษาการเขียนโปรแกรมไปยังAPIโดยใช้เป็นมาตรวัดความง่ายในการที่นักพัฒนาใหม่จะทำให้ตัวอย่างพื้นฐานทำงานได้ ยิ่งเวลาน้อยลง แสดงว่า API นั้นง่ายต่อการใช้งานสำหรับนักพัฒนา[ 21 ] [ 22 ]

บทความวิกิพีเดียที่มีโปรแกรม "Hello, world"

ดูเพิ่มเติม

  • คอลเลกชัน Hello World
  • "Hello world/Text" . Rosetta Code . 23 พฤษภาคม 2024.
  • "GitHub – leachim6/hello-world: โปรแกรมแสดงข้อความ 'สวัสดีโลก' ในทุกภาษาคอมพิวเตอร์ ขอบคุณทุกคนที่ร่วมให้ข้อมูล โปรดดูไฟล์ CONTRIBUTING.md สำหรับคำแนะนำในการให้ข้อมูล!" GitHub 30ตุลาคม 2021
  • "วีรบุรุษผู้ไม่ได้รับการยกย่องในวงการไอที: ตอนที่หนึ่ง: ไบรอัน เคอร์นิแกน" TheUnsungHeroesOfIT.com เก็บถาวรจากต้นฉบับเมื่อวันที่ 26 มีนาคม 2016 เรียกดูเมื่อวันที่ 23 สิงหาคม 2014
ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Hello,_world&oldid=1359489069 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ สวัสดีโลก

โปรแกรม " Hello, world " โดยทั่วไปเป็น โปรแกรมคอมพิวเตอร์ แบบง่ายๆ ที่แสดง ข้อความคล้ายกับ "Hello, world" บนหน้าจอ (มักจะเป็น คอนโซล ) โค้ดขนาดเล็กใน ภาษาโปรแกรมทั่วไป ส่วนใหญ่...

ประวัติศาสตร์

แม้ว่าจะมีโปรแกรมทดสอบขนาดเล็กหลายโปรแกรมมาตั้งแต่การพัฒนา คอมพิวเตอร์ ที่ตั้งโปรแกรมได้ แต่ธรรมเนียมการใช้วลี "Hello, world" เป็นข้อความทดสอบนั้นได้รับอิทธิพลมาจากโปรแกรมตัวอย่างในหนังสือ The C Programming Language ปี 1978 [ 2 ] ซึ่ง...

การเปลี่ยนแปลง

โปรแกรม "Hello, world" มีความซับซ้อนแตกต่างกันไปตามภาษาโปรแกรม ในบางภาษา โดยเฉพาะ ภาษาสคริปต์ โปรแกรม "Hello, world" สามารถเขียนได้ด้วยคำสั่งเดียว ในขณะที่ภาษาอื่นๆ (โดยเฉพาะ ภาษาโปรแกรมระดับต่ำ ) อาจต้องใช้คำสั่งมากกว่านั้น ตัวอย่างเช่น ใน Python...

ได้เวลาทักทายโลกแล้ว!

"เวลาในการทักทายโลก" (TTHW) คือเวลาที่ใช้ในการเขียนโปรแกรม "Hello, world" ในภาษาโปรแกรมที่กำหนด นี่เป็นการวัดความง่ายในการใช้งานของภาษาโปรแกรมอย่างหนึ่ง เนื่องจากโปรแกรมนี้มีจุดประสงค์เพื่อเป็นการแนะนำสำหรับผู้ที่ไม่คุ้นเคยกับภาษา ดังนั้นโปรแกรม "Hello,...