2009-03-02 58 views
82

'hello, world' thường là ví dụ đầu tiên cho bất kỳ ngôn ngữ lập trình nào. Tôi đã luôn luôn tự hỏi câu này đến từ đâu và nó được sử dụng lần đầu tiên ở đâu.'Hello world' đến từ đâu?

Tôi đã từng được thông báo rằng đây là câu đầu tiên được hiển thị trên màn hình máy tính, nhưng tôi không thể tìm thấy bất kỳ tham chiếu nào về điều này.

Vì vậy, câu hỏi của tôi là:
Thực tiễn sử dụng 'hello, world' làm ví dụ đầu tiên cho ngôn ngữ máy tính bắt nguồn từ đâu?
Được sử dụng lần đầu tiên ở đâu?

Cập nhật
Mặc dù câu trả lời khá thú vị, tôi nên lưu ý rằng tôi đã đọc bài viết trên Wikipedia. Nó trả lời câu hỏi về việc sử dụng đầu tiên trong văn học, nhưng không trả lời khi 'hello world' là lần đầu tiên được sử dụng.
Vì vậy, tôi nghĩ rằng nó là an toàn để kết luận rằng nó không phải là câu đầu tiên bao giờ được hiển thị trên một màn hình máy tính và rằng không có hồ sơ về khi nó lần đầu tiên được sử dụng?

Trả lời

74

Brian Kernighan thực sự viết đầu tiên Chương trình "hello, world" là một phần của tài liệu hướng dẫn cho ngôn ngữ lập trình BCPL được phát triển bởi Martin Richards. BCPL đã được sử dụng trong khi C được phát triển tại Bell Labs một vài năm trước khi xuất bản cuốn sách C của Kernighan và Ritchie vào năm 1972.

Là một phần của nghiên cứu về một cuốn sách tôi viết về môi trường lập trình Alice, tôi trao đổi thư từ cả giáo sư Kernighan tại Princeton và Martin Richards ở Cambridge (khi tôi đang giảng dạy một hội thảo vào những năm 1990). Họ đã giúp tôi theo dõi việc sử dụng mã tài liệu đầu tiên để in thông điệp "Xin chào, Thế giới!" Brian Kernighan nhớ lại viết mã cho một phần của phần I/O của cẩm nang BCPL. Martin Richards - người dường như có một kho báu các ghi chú, tài liệu cũ, vv - đã tìm thấy sách hướng dẫn và xác nhận rằng đây là sự xuất hiện ban đầu của chương trình, mã này được sử dụng để kiểm tra sớm trình biên dịch C và được đưa vào cuốn sách của Kernighan và Ritchie. nó là một trong những chương trình đầu tiên sử dụng để kiểm tra trình biên dịch C++ Bjarne Stroustrup của.

nó đã trở thành một tiêu chuẩn cho các lập trình viên mới sau khi nó xuất hiện trong Kernighan và Ritchie, mà có lẽ là sự ra đời bán tốt nhất để lập trình của mọi thời đại.

+0

Nhìn vào (?) BCPL của nhãn hiệu cm.bell-labs.com/cm/cs/who/dmr/bcpl.pdf Tôi không thấy nó – barlop

+1

Cuốn sách C không phải là năm 1972. Cuốn B là năm 1972. The Ấn bản đầu tiên của cuốn sách C, được xuất bản vào năm 1978 http://en.wikipedia.org/wiki/The_C_Programming_Language_(book) Có một "bản ghi nhớ nội bộ của Phòng thí nghiệm Bell Bell 1974 bởi Brian Kernighan, Lập trình trong C: Hướng dẫn" http : //en.wikipedia.org/wiki/Hello_world_program – barlop

+0

Bạn cũng không thể hiện liệu nó có chữ viết hoa hay dấu chấm than nào không. – barlop

10

Chương trình C đầu tiên trong sách "Ngôn ngữ lập trình C" là để in "hello world!" trên màn hình.

Kể từ đó nó được sử dụng làm chương trình đầu tiên giới thiệu các chi tiết cơ bản của ngôn ngữ lập trình.

45

Theo wikipedia:

Trong khi các chương trình thử nghiệm nhỏ tồn tại kể từ sự phát triển của lập trình máy tính, truyền thống của việc sử dụng các cụm từ "Hello world!" như một bài kiểm tra tin nhắn đã bị ảnh hưởng bởi một ví dụ chương trình trong cuốn sách chính thức Ngôn ngữ lập trình C . Chương trình ví dụ từ đó in cuốn sách "hello, thế giới" (không có chữ in hoa hoặc dấu chấm than), và được thừa hưởng từ 1974 Bell Laboratories nội bản ghi nhớ của Brian Kernighan, Lập trình trong C: A Hướng dẫn, mà chứa các phiên bản đầu tiên được biết:

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

các ví dụ được biết đến đầu tiên của việc sử dụng của dòng chữ "hello" và "thế giới" với nhau trong văn học máy tính xảy ra trước đó, vào năm 1972 giới thiệu Hướng dẫn Kernighan của t ông Ngôn ngữ B [1], với đoạn mã sau:

main() { 
    extrn a, b, c; 
    putchar(a); putchar(b); putchar(c); putchar('!*n'); 
} 
a 'hell'; 
b 'o, w'; 
c 'orld'; 
+0

trông giống như hướng dẫn C 1974 ở đây http://www.cprogramming.com/cgi-bin/cdir/Cdirectory.cgi?action=Detail&LID=305 trỏ đến http://www.lysator.liu.se /c/bwk-tutor.html Tôi nhận thấy nơi bạn viết 'main()' trên trang html mà tôi đề cập đến là 'main()' tức là một dấu cách giữa '()'. – barlop

0

Lần đầu tiên tôi đi qua nó trong in ấn là (tôi nghĩ) ấn bản đầu tiên của K & R, vì vậy tha sẽ là vào khoảng năm 1982 , nhưng tôi đã viết các chương trình "Hello world" của riêng tôi từ lâu trước đó, như mọi người khác.

0

Từ Wikipedia

Trong khi các chương trình thử nghiệm nhỏ tồn tại từ sự phát triển của máy tính có thể lập trình, truyền thống của việc sử dụng cụm từ "Hello world!"là một thông điệp thử nghiệm đã bị ảnh hưởng bởi một chương trình ví dụ trong cuốn sách seminal Ngôn ngữ lập trình C. Chương trình ví dụ từ cuốn sách đó in" hello, world "(không có chữ in hoa hoặc dấu chấm than), và được thừa hưởng từ 1974 Laboratories nội bộ biên bản ghi nhớ của Brian Kernighan, Lập trình trong C: A Hướng dẫn, trong đó có phiên bản đầu tiên được biết đến:

http://en.wikipedia.org/wiki/Hello_world_program

7

Từ http://en.wikipedia.org/wiki/Hello_world_program:

các ví dụ được biết đến đầu tiên của việc sử dụng của các từ "anh ấy llo" và "thế giới" với nhau trong văn học máy tính xảy ra trước đó, vào năm 1972 Hướng dẫn Giới thiệu Kernighan để ngôn ngữ B [1], với đoạn mã sau:

main() { 
    extrn a, b, c; 
    putchar(a); putchar(b); putchar(c); putchar('!*n'); 
} 
a 'hell'; 
b 'o, w'; 
c 'orld'; 
5

Tôi nên đã cẩn thận hơn với ngôn ngữ trong bài đăng gốc của tôi về điều này -

Tất nhiên Barlop là đúng, K & R đã được xuất bản vào năm 1978. Mất tích trong bài đăng của tôi. Tôi có nghĩa là hướng dẫn sử dụng BCPL với mã Hello World của Tiến sĩ Kernighan là ngày 1972. Biên bản ghi nhớ có liên quan đến điều này là từ năm 1974.

Martin Richards có các tài liệu này. Tôi có một bản sao xấu của sổ tay và một bản sao của bản ghi nhớ.

Tôi tin rằng bản gốc không có dấu chấm câu.

Mã BCPL và mã B xuất hiện gần như cùng một lúc. Tôi luôn luôn nghĩ rằng mã B trích dẫn bởi therefromhere đến trước, nhưng Martin Richards dường như nghĩ rằng mã BCPL là lần đầu tiên. Trong cả hai trường hợp, "Hello Word!" predates K & R, và sử dụng tài liệu đầu tiên của nó trong mã dường như đã được viết bởi Brian Kernighan tại Bell Labs.

-1

'Xin chào, thế giới!'

Mọi lập trình viên mới lập trình hoặc là người mới sử dụng ngôn ngữ lập trình viết "Hello, World!" chương trình.Không phân biệt loại ngôn ngữ lập trình nào. Nó có thể là ứng dụng web, ứng dụng độc lập, thiết bị di động, giao diện điều khiển. Đây là một trong những chương trình cơ bản và đơn giản nhất để bắt đầu.

Chúng được viết để viết "Xin chào, thế giới!" bởi vì nó dạy họ cách cài đặt và thiết lập môi trường của họ và bắt đầu với nó. Quá trình đó bao gồm:

  1. Tải xuống phần mềm như trình biên dịch, IDE và các phụ thuộc khác của phần mềm cần thiết.
  2. Sau khi tải xuống, họ phải cài đặt phần mềm và thiết lập đường dẫn cần thiết.
  3. Sau khi hoàn tất. Họ phải viết một bài cơ bản cần thiết cho tất cả các chương trình để chạy. Nói (Tiêu đề và hàm chính trong C).
  4. Sau khi viết sơ khai, họ phải viết thao tác cơ bản để in đầu ra màn hình (điều này có thể là printf(), cout, v.v.). Để họ hiểu và bắt đầu với cú pháp.
  5. Họ phải lưu tệp với phần mở rộng có liên quan cho ngôn ngữ đó.
  6. Biên dịch chương trình và kiểm tra xem có bất kỳ lỗi hoặc vấn đề nào liên quan và phải giải quyết chúng hay không. Vì vậy, ở đây họ có thể đến để biết nơi cửa sổ lỗi và làm thế nào để xác định chúng.
  7. Một khi nó được thực hiện họ phải chạy chương trình và đầu ra có thể là một giao diện điều khiển hoặc trình duyệt web hoặc vv

Vì vậy, "Hello, World!" chương trình giúp họ tìm hiểu cách chạy ứng dụng cơ bản bằng ngôn ngữ lập trình mới.

PS: Hiện tại có rất nhiều IDE có trình biên dịch tích hợp sẵn và tất cả đều giúp các lập trình viên dễ dàng bắt đầu. Hãy sửa tôi nếu tôi sai ở bất cứ đâu.

Cảm ơn bạn.

+0

Điều này không trả lời câu hỏi được yêu cầu. – Jacco