Difference between r1.1 and the current
@@ -1,38 +1,39 @@
'''Hello, World!''' 라는 문자열을 출력하는 프로그램은 대부분의 언어를 배우는 첫걸음이 되어준다.
----
누가 제일 처음 HelloWorld 를 만들었을까. 어떻게 모든 언어의 입문서에 빠지지 않는 예제가 된것일까.
이미 이 예제가 나올때부터 '프로그래밍이란 현실세계에 대한 가상세계로의 모델링' 이라는 개념을 들고 온 것이 아닐까. 새로운 세상에 대한 노크. 아. 멋지도다;
예전에 CACM 에서는 OO Language (Java 등)에서 C 스타일의 HelloWorld 소스를 예로 드는 점에 관련하여 OO 적이지 못한 예라는 논쟁이 있기도 했다는. ^^
== 관련 링크 ==
* http://www2.latech.edu/~acm/HelloWorld.shtml 다시 살아 났음
== 언어별 Hello World 예제 ==
=== C version ===
{{{~cpp
#include <stdio.h>
int main(void)
{
printf("Hello, World!n");
return 0;
}
}}}
=== C++ version ===
{{{~cpp
#include <iostream>
using namespace std;
int main() {
cout << "Hello, World" << endl;
return 0;
}
}}}
=== Python version ===
{{{~cpp
print "Hello, World!"
}}}
'''Hello, World!''' 라는 문자열을 출력하는 프로그램은 대부분의 언어를 배우는 첫걸음이 되어준다.
----
누가 제일 처음 HelloWorld 를 만들었을까. 어떻게 모든 언어의 입문서에 빠지지 않는 예제가 된것일까.
프로그래밍의 첫걸음으로 HelloWorld를 출력하는 관습은 1978년에 출판된, 브라이언 커니핸과 데니스 리치가 쓴 "The C Programming Language"라는 책에서 비롯되었다.
이미 이 예제가 나올때부터 '프로그래밍이란 현실세계에 대한 가상세계로의 모델링' 이라는 개념을 들고 온 것이 아닐까. 새로운 세상에 대한 노크. 아. 멋지도다;
예전에 CACM 에서는 OO Language (Java 등)에서 C 스타일의 HelloWorld 소스를 예로 드는 점에 관련하여 OO 적이지 못한 예라는 논쟁이 있기도 했다는. ^^
== 관련 링크 ==
* http://www2.latech.edu/~acm/HelloWorld.shtml 다시 살아 났음
== 언어별 Hello World 예제 ==
=== C version ===
{{{~cpp
#include <stdio.h>
int main(void)
{
printf("Hello, World!n");
return 0;
}
}}}
=== C++ version ===
{{{~cpp
#include <iostream>
using namespace std;
int main() {
cout << "Hello, World" << endl;
return 0;
}
}}}
=== Python version ===
{{{~cpp
print "Hello, World!"
}}}
=== Perl version ==={{{~cpp
#/usr/bin/perl
@@ -41,158 +42,142 @@
}}}
=== Ruby version ===
puts "Hello World!";
=== Java version ===
책에 처음 나오는 예제
{{{~cpp
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
}}}
권장 예제
{{{~cpp
public class HelloWorld{
public static void main(String[] args){
Mouth mouth = new Mouth();
mouth.say("Hello World!");
}
}
class Mouth{
public void say(String what){
System.out.println(what);
}
}
}}}
=== PHP Web version ===
{{{~cpp
<?php
echo "<H1>Hello, World!</H1><BR>n"
?>
}}}
=== PHP Web - Template version ===
{{{~cpp
<?php
include_once "class.CHTemplate.inc";
$tpl = CHTemplate();
$tpl->load_file("template_hello.tpl");
$tpl->register("MessageString", "Hello, World!");
$tpl->pprint();
?>
----
template_hello.tpl
<HTML>
<BODY><TABLE BORDER=1><TR><TD>
<H1> {MessageString} </H1>
</TD></TR></TABLE></BODY>
</HTML>
}}}
=== Windows API version ===
{{{~cpp
#include <windows.h>
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int nCmdShow)
{
MessageBox (NULL, "Hello, World!", "Message", MB_OK);
return 0;
}
}}}
=== MFC version ===
{{{~cpp
// ------------- Hello.h -------------
#include "resource.h"
class CHelloApp : public CWinApp
{
public:
CHelloApp() { }
public:
virtual BOOL InitInstance();
};
// ------------- Hello.cpp -------------
#include "stdafx.h"
#include "Hello.h"
CHelloApp theApp;
BOOL CHelloApp::InitInstance()
{
AfxMessageBox("Hello World!");
return FALSE;
}
}}}
=== Scheme version ===
{{{~cpp
(write "Hello World")
}}}
=== C# version ===
{{{~cpp
using System;
namespace HelloWorld
{
class HelloWorld
{
static void Main()
{
Console.WriteLine("Hello World!");
}
}
}
}}}
=== VB.NET version ===
{{{~cpp
Module HelloWorld
Sub Main()
Console.WriteLine("Hello World!")
End Sub
End Module
}}}
=== J# version ===
{{{~cpp
package HelloWorld;
public class HelloWorld
{
public static void main()
{
System.Console.WriteLine("Hello World!");
}
}
}}}
=== Managed Extension C++ version ===
{{{~cpp
#using <mscorlib.dll>
using namespace System;
int main(void)
{
Console::WriteLine("Hello World");
return 0;
}
}}}
=== Ada version ===
{{{~cpp
with Ada.Text_IO;
Procedure main is
begin
Ada.Text_IO.Put_Line("Hello World!");
end main;
}}}
=== Ruby version ===
{{{
puts "Hello World!"
}}}
=== Ruby version (OOP) ===
{{{
class String
def say
puts self
end
end
"Hello, world!".say
}}}
=== Java version ===
책에 처음 나오는 예제
{{{~cpp public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
}}}
권장 예제
{{{~cpp
public class HelloWorld{
public static void main(String[] args){
Mouth mouth = new Mouth();
mouth.say("Hello World!");
}
}
class Mouth{
public void say(String what){
System.out.println(what);
}
}
}}}
=== PHP Web version ===
{{{~cpp
<?php
echo "<H1>Hello, World!</H1><BR>n"
?>
}}}
=== PHP Web - Template version ===
{{{~cpp
<?php
include_once "class.CHTemplate.inc";
$tpl = CHTemplate();
$tpl->load_file("template_hello.tpl");
$tpl->register("MessageString", "Hello, World!");
$tpl->pprint();
?>
----
template_hello.tpl
<HTML>
<BODY><TABLE BORDER=1><TR><TD>
<H1> {MessageString} </H1>
</TD></TR></TABLE></BODY>
</HTML>
}}}
=== Windows API version ===
{{{~cpp
#include <windows.h>
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int nCmdShow)
{
MessageBox (NULL, "Hello, World!", "Message", MB_OK);
return 0;
}
}}}
=== Scheme version ===
{{{~cpp
(write "Hello World")
}}}
=== C# version ===
{{{~cpp
using System;
namespace HelloWorld
{
class HelloWorld
{
static void Main()
{
Console.WriteLine("Hello World!");
}
}
}
}}}
=== VB.NET version ===
{{{~cpp
Module HelloWorld
Sub Main()
Console.WriteLine("Hello World!")
End Sub
End Module
}}}
=== J# version ===
{{{~cpp
package HelloWorld;
public class HelloWorld
{
public static void main()
{
System.Console.WriteLine("Hello World!");
}
}
}}}
=== Managed Extension C++ version ===
{{{~cpp
#using <mscorlib.dll>
using namespace System;
int main(void)
{
Console::WriteLine("Hello World");
return 0;
}
}}}
=== Ada version ===
{{{~cpp
with Ada.Text_IO;
Procedure main is
begin
Ada.Text_IO.Put_Line("Hello World!");
end main;
}}}Hello, World! 라는 문자열을 출력하는 프로그램은 대부분의 언어를 배우는 첫걸음이 되어준다.
누가 제일 처음 HelloWorld 를 만들었을까. 어떻게 모든 언어의 입문서에 빠지지 않는 예제가 된것일까.
프로그래밍의 첫걸음으로 HelloWorld를 출력하는 관습은 1978년에 출판된, 브라이언 커니핸과 데니스 리치가 쓴 "The C Programming Language"라는 책에서 비롯되었다.
프로그래밍의 첫걸음으로 HelloWorld를 출력하는 관습은 1978년에 출판된, 브라이언 커니핸과 데니스 리치가 쓴 "The C Programming Language"라는 책에서 비롯되었다.
이미 이 예제가 나올때부터 '프로그래밍이란 현실세계에 대한 가상세계로의 모델링' 이라는 개념을 들고 온 것이 아닐까. 새로운 세상에 대한 노크. 아. 멋지도다;
예전에 CACM 에서는 OO Language (Java 등)에서 C 스타일의 HelloWorld 소스를 예로 드는 점에 관련하여 OO 적이지 못한 예라는 논쟁이 있기도 했다는.
관련 링크 ¶
언어별 Hello World 예제 ¶
C version ¶
~cpp #include <stdio.h> int main(void) { printf("Hello, World!n"); return 0; }
C++ version ¶
~cpp #include <iostream> using namespace std; int main() { cout << "Hello, World" << endl; return 0; }
Python version ¶
~cpp print "Hello, World!"
Perl version ¶
~cpp #/usr/bin/perl print "Hello World!n";
Ruby version ¶
puts "Hello World!"
Ruby version (OOP) ¶
class String def say puts self end end "Hello, world!".say
Java version ¶
책에 처음 나오는 예제
~cpp public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } }권장 예제
~cpp public class HelloWorld{ public static void main(String[] args){ Mouth mouth = new Mouth(); mouth.say("Hello World!"); } } class Mouth{ public void say(String what){ System.out.println(what); } }
PHP Web version ¶
~cpp <?php echo "<H1>Hello, World!</H1><BR>n" ?>
PHP Web - Template version ¶
~cpp <?php include_once "class.CHTemplate.inc"; $tpl = CHTemplate(); $tpl->load_file("template_hello.tpl"); $tpl->register("MessageString", "Hello, World!"); $tpl->pprint(); ?> ---- template_hello.tpl <HTML> <BODY><TABLE BORDER=1><TR><TD> <H1> {MessageString} </H1> </TD></TR></TABLE></BODY> </HTML>
Windows API version ¶
~cpp #include <windows.h> int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int nCmdShow) { MessageBox (NULL, "Hello, World!", "Message", MB_OK); return 0; }
Scheme version ¶
~cpp (write "Hello World")
C# version ¶
~cpp using System; namespace HelloWorld { class HelloWorld { static void Main() { Console.WriteLine("Hello World!"); } } }
VB.NET version ¶
~cpp Module HelloWorld Sub Main() Console.WriteLine("Hello World!") End Sub End Module
J# version ¶
~cpp package HelloWorld; public class HelloWorld { public static void main() { System.Console.WriteLine("Hello World!"); } }
Managed Extension C++ version ¶
~cpp #using <mscorlib.dll> using namespace System; int main(void) { Console::WriteLine("Hello World"); return 0; }
Ada version ¶
~cpp with Ada.Text_IO; Procedure main is begin Ada.Text_IO.Put_Line("Hello World!"); end main;