"Witaj świecie!" program -"Hello, World!" program
"Hello, World!" program to na ogół program komputerowy, który generuje lub wyświetla komunikat „Hello, World!”. Taki program jest bardzo prosty w większości języków programowania i jest często używany do zilustrowania podstawowej składni języka programowania. Często jest to pierwszy program napisany przez ludzi uczących się kodowania. Może być również używany jako test zdrowego rozsądku, aby upewnić się, że oprogramowanie komputerowe przeznaczone do kompilowania lub uruchamiania kodu źródłowego jest prawidłowo zainstalowane i że operator rozumie, jak z niego korzystać.
Historia
Chociaż małe programy testowe istnieją od czasu rozwoju programowalnych komputerów , tradycja używania wyrażenia „Hello, World!” jako wiadomość testową miał wpływ przykładowy program w przełomowej książce z 1978 r. The C Programming Language . Przykładowy program w tej książce wypisuje „Witaj świecie" i został odziedziczony z wewnętrznego memorandum Bell Laboratories z 1974 r. przez Briana Kernighana , Programowanie w języku C: A Tutorial :
main( ) {
printf("hello, world\n");
}
W powyższym przykładzie Główny( ) funkcja określa, gdzie program powinien rozpocząć wykonywanie . Ciało funkcji składa się z pojedynczej instrukcji , wywołania funkcjiprintffunkcja, co oznacza „ drukuj sformatowany”. Ta funkcja spowoduje, że program wypisze wszystko, co zostanie mu przekazane jako parametr , w tym przypadku napis Witaj świecie, po którym następuje znak nowej linii .
Wersja w języku C została poprzedzona autorskim A Tutorial Introduction to the Language B firmy Kernighan z 1972 roku , w którym pierwsza znana wersja programu znajduje się w przykładzie służącym do zilustrowania zmiennych zewnętrznych:
main( ) {
extern a, b, c;
putchar(a); putchar(b); putchar(c); putchar('!*n');
}
a 'hell';
b 'o, w';
c 'orld';
Program również drukuje Witaj świecie!na terminalu, w tym znak nowej linii . Fraza jest podzielona na wiele zmiennych, ponieważ w B stała znakowa jest ograniczona do czterech znaków ASCII . Poprzedni przykład w tutorialu wydrukowanyCześć! na terminalu, a fraza Witaj świecie! zostało wprowadzone jako nieco dłuższe powitanie, które wymagało kilku stałych znaków do jego wyrażenia.
W żargonie pliku twierdzi, że „Hello, World!” zamiast tego pochodzi z BCPL (1967). Twierdzenie to jest rzekomo poparte archiwalnymi notatkami wynalazców BCPL, Briana Kernighana z Princeton i Martina Richardsa z Cambridge . Wyrażenie poprzedzało o ponad dekadę jego użycie w informatyce; już w latach 50-tych było to hasłem radiowego dżokeja Williama B. Williamsa .
Wariacje
"Witaj świecie!" programy różnią się złożonością w różnych językach. W niektórych językach, zwłaszcza w językach skryptowych , komunikat „Hello, World!” program może być napisany jako pojedyncza instrukcja, podczas gdy w innych (szczególnie w wielu językach niskiego poziomu ) może być wymagane o wiele więcej instrukcji. Na przykład w Pythonie , aby wydrukować ciągWitaj świecie!po którym następuje znak nowej linii, wystarczy napisać . W przeciwieństwie do tego, równoważny kod w C++ [1] wymaga importu biblioteki oprogramowania wejścia/wyjścia , ręcznej deklaracji punktu wejścia i wyraźnej instrukcji, że ciąg wyjściowy powinien zostać wysłany do standardowego strumienia wyjściowego . Ogólnie rzecz biorąc, języki programowania, które dają programiście większą kontrolę nad maszyną, będą skutkować bardziej złożonymi programami "Hello, World".
print("Hello, World!")
Wyrażenie „Witaj świecie!” zaobserwował różne odchylenia w interpunkcji i wielkości liter, takie jak obecność przecinka i wykrzyknika oraz pisanie wielkich liter w pierwszych literach H i W . Niektóre urządzenia ograniczają format do określonych odmian, takich jak wersje pisane wyłącznie wielkimi literami w systemach obsługujących tylko wielkie litery, podczas gdy niektóre ezoteryczne języki programowania mogą wymagać drukowania nieznacznie zmodyfikowanego ciągu. Na przykład pierwszy nietrywialny program Malbolge'a wydrukował "Hello world", uznając to za wystarczająco dobre . Jako wynik zostały użyte inne języki ludzkie; na przykład samouczek dla języka programowania Go wyprowadzał zarówno znaki angielskie, jak i chińskie lub japońskie, demonstrując wbudowaną obsługę Unicode w języku programowania .
Niektóre języki zmieniają funkcjonalność "Hello, World!" program, zachowując ducha demonstrowania prostego przykładu. Funkcjonalne języki programowania , takie jak Lisp , ML i Haskell , mają tendencję do zastępowania programu czynnikowego „Hello, World!”, ponieważ programowanie funkcjonalne kładzie nacisk na techniki rekurencyjne, podczas gdy oryginalne przykłady kładą nacisk na I/O, co narusza ducha czysto funkcjonalnego programowanie poprzez wywoływanie efektów ubocznych . Języki zdolne do drukowania „Hello, World!” (Assembly, C, VHDL ) mogą być również używane w systemach wbudowanych , gdzie wyprowadzanie tekstu jest albo trudne (wymaga dodatkowych komponentów lub komunikacji z innym komputerem), albo nie istnieje. W przypadku urządzeń takich jak mikrokontrolery , programowalne tablice bramek i CPLD , "Hello, World!" można zatem zastąpić migającą diodą LED , która pokazuje czas i interakcję między komponentami.
W Debianie i Ubuntu dystrybucji Linuksa dostarczają „Hello, World!” programu za pomocą systemów zarządzania pakietami oprogramowania , które można wywołać za pomocą poleceniadzień dobry. Służy jako kontrola poprawności i prosty przykład instalacji pakietu oprogramowania. Dla programistów zawiera przykład tworzenia pakietu .deb , tradycyjnie lub przy użyciu debhelper , oraz wersjędzień dobryużywany, GNU Hello , służy jako przykład napisania programu GNU .
Odmiany „Hello, World!” pokazano również program, który generuje wyjście graficzne (w przeciwieństwie do wyjścia tekstowego). Sun zademonstrował "Hello, World!" program w Javie oparty na skalowalnej grafice wektorowej , a język programowania XL zawiera obracającą się Ziemię "Hello, World!" z wykorzystaniem grafiki komputerowej 3D . Mark Guzdial i Elliot Soloway zasugerowali, że wiadomość testowa „hello, world” może być przestarzała, ponieważ grafiką i dźwiękiem można manipulować równie łatwo jak tekstem.
Czas na Witaj świecie
„Time to hello world” (TTHW) to czas potrzebny na napisanie „Hello, World!” program w danym języku programowania. Jest to jedna z miar łatwości użycia języka programowania; ponieważ program ma stanowić wprowadzenie dla osób nieznających języka, bardziej złożone „Hello, World!” program może wskazywać, że język programowania jest mniej przystępny. Koncepcja została rozszerzona poza języki programowania na interfejsy API , jako miara tego, jak proste jest dla nowego programisty uzyskanie działającego podstawowego przykładu; krótszy czas oznacza łatwiejszy do wdrożenia interfejs API dla programistów.
Przykłady
PODSTAWOWY
10 PRINT "Hello, World!"
20 END
Seria
@echo off
echo Hello World!
Grzmotnąć
echo "Hello World!"
C
#include <stdio.h>
int main(void) {
printf("Hello World!");
}
C++
#include <iostream>
int main()
{
std::cout << "Hello World!" << std::endl;
}
C#
using System;
class App
{
static void Main()
{
Console.WriteLine("Hello World!");
}
}
Clojure
(println "Hello world!")
Strzałka
void main() {
print('Hello, World!');
}
Fortran
program Hello
print *, "Hello World!"
end program Hello
Udać się
package main
import "fmt"
func main() {
fmt.Println("Hello World!")
}
Haskell
main :: IO ()
main = putStrLn "Hello World!"
Jawa
class Main {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
JavaScript
console.log("Hello World!");
Cel C
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@mylak {
NSLog(@"Hello World!");
}
return 0;
}
Pascal
program Hello;
begin
writeln ('Hello World!')
end.
Perl
print "Hello World!\n";
PHP
<?php
echo "Hello World!";
?>
PowerShell
Write-Host 'Hello World!'
Pyton
print("Hello World!")
Rubin
puts"Hello World!"
Rdza
fn main() {
println!("Hello World!");
}
Szybki
print("Hello, World!")
Lua
print("Hello, World!")
Zobacz też
- C (język programowania) § Przykład „Witaj świecie”
- „99 butelek piwa” stosowane w informatyce
- Foobar
- Złe jabłko!! (graficzny odpowiednik "Hello, World!" dla starego sprzętu)
- Sklep zoologiczny Java
- Po prostu kolejny haker Perla
- Lista podstawowych tematów informatyki
- Algorytm Trabba Pardo-Knutha
Bibliografia
Zewnętrzne linki
- Rösler, Wolfram. "Witaj świecie kolekcja" . helloworldcollection.de .
- "Witaj świecie/Tekst" . Kod Rosetty .
- "GitHub - leachim6/hello-world: Witaj świecie w każdym języku komputerowym. Podziękowania dla wszystkich, którzy się do tego przyczyniają, upewnij się, że zajrzyj na CONTRIBUTING.md, aby uzyskać instrukcje dotyczące wkładu!" .
- „Nieznani bohaterowie IT / Część pierwsza: Brian Kernighan” . Nieznani BohaterowieOfIT.com . Zarchiwizowane od oryginału w dniu 2016-03-26 . Pobrano 23.08.2014 .