- Хроники. - -

HelloWorld на разных языках

Posted By Ikutsin On 10 февраля 2010 @ 23:52 In Обзоры,Индустрия IT | Comments Disabled

[1]Открыв учебник по любому языку программирования, самым первым уроком идет программа «Hello World». Почему это важно? Если вам удалось написать, а особенно собрать и запустить программу, начальный путь в освоении языка уже пройден. И так, идея статьи — показать различия в создании «самой первой» программы на разных языках программирования, баз данных и скриптах т.д.

К чему я все это? Когда собираешь подобные вещи в одном месте, диву даешься от изобретательности людей. Зачем все это? Еще и в таких количествах…

Разметка.

HTML

HTML — это не язык программирования, а язык разметки. Используется для построения страниц в интернете. Сложно представить себе программиста, не знающего этот язык. HTML имеет много различных версий, подкрепленные W3C стандартом. Хотя браузеры давно научились работать и со страницами, сделанными не по стандарту, Следующий пример, является правильной HTML страницей версии XHTML 1.0 Strict.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<title>Заголовок</title>
</head>
<body>
<h1>Hello world&дt;/h1>
</html>

JavaScript

JS — это скриптовый язык программирования. Наибольшее распространение от получил как язык обработки страниц на стороне клиента. JS продолжает активно развиваться и на сегодняшний день. Наш HelloWorld будет выполнятся как часть HTML страницы со следующим шаблоном.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JS Hello world</title>
<script language="javascript">
//JavaScript code
<script/>

При загрузке страницы будет выполнена JavaScript функция HelloWorld. Это происходит из-за срабатывания события onload тега body.

function helloWorld() {
window.alert("Hello world!"); //покажет на экран окно сообщения с телом HelloWorld
document.write("Hello world!"); //напишет Hello World в тело документа.
}

Так как язык поддерживает объектно ориентированный подход с помощью прототипов, это нельзя оставить без внимания.

var HelloWorld = function() { //Класс с именем HelloWorld
	this.text = ""; //Инициализировать переменную text класса  HelloWorld
}
function helloWorld() {
	//window.alert("Hello world!", "Example");

	var el = document.createElement('span'); //создать элемент Span
	el.setAttribute('id', 'helloSpan');

	document.body.appendChild(el); //добавить Span в тело документа

	var helloWorld = new HelloWorld(); //Инстанцировать класс HelloWorld
	helloWorld.text = '<h1>Hello world&дt;/h1>';
	setElementText('helloSpan', helloWorld);
}
function setElementText(elementId, helloWorld) {
	document.getElementById(elementId).innerHTML = helloWorld.text; //получить элемент по ID и присвоить его телу значение переменной text класса  HelloWorld.
}

Последний пример демонстрирует работу JavaScript с классами и DOM. JS уже давно оброс различными библиотеками делающими работу быстрой и совместимой с любыми браузерами. JQuery например сократит этот код до нескольких строк, но это уже немного другая история.

Автоматизация

Скрипты автоматизации нельзя назвать языками программирования, однако они имеют собственный синтаксис и используются, чтобы автоматизировать или ускорить какой либо процесс. Среди языков такого рода я выбрал самые простые и распространенные. Однако большой неоткрытой темой останутся так называемые макро-языки. Часто, их особенностью является запись и воспроизведение шагов пользователя. Среди таких языков можно отметить:

  • VBA — Visual Basic for Applications, использутся для написания приложений для программ семейства MS Office.
  • AutoIt — позаоляет запомнить и воспроизвести шаги пользователя. Также, этот язык имеет свой внутренний синтаксис.
  • WSH — Это не язык, а технология, позволяющая писать скрипты для оконных приложений на разных языках. Эти программы еще часто называют .bat для окон.

.bat файл

Это самый распространенный скриптовый язык в MS DOS и MS Windows. Часто, пользователи даже не подозревают на сколько мощные скрипты можно написать на этом языке.

::Вывод сообщения на экран.
@set hw=Hello World
@echo %hw%

Выполнить это можно построчно в командной строке или создав файл name.bat и запустив его.

bash и shell

Эти языки используются в операционных системах Unix и Linux как стандартная консоль. Для Windows ее можно установить с помощью программы Cygwin.

#!/bin/bash
STR="Hello World!"
echo $STR

И более сложный пример.

#!/bin/bash
HELLO=Hello
function hello {
        local HELLO=World
        echo $HELLO
}
echo $HELLO
hello
echo $HELLO

«Здравствуй мир» для Shell:

#!/bin/sh
# This is a comment!
echo "Hello World"

Ant и другие скрипты для сборки

Скрипты этого типа используются для сборки больших приложений. Раньше, для разных языков использовался свой сборщик, так например для сборки C и С++ приложений используется утилита Make и большое количество различных ее реализаций. Сейчас, в языках программирования высокого уровня, чаще всего используется утилита Ant.

<?xml version="1.0"?>
<project name="HelloWorld" default="HelloWorld"> <!-- Задаем цель по умолчанию -->
	<description>Simple hello world</description>
	<property name="msg" value="Hello World!" /> <!-- Добавляем переменную msg -->
	<target name="Release"> <!-- Начало тела цели вызываемой по умолчанию -->
		<echo message="Message is: ${msg}" /> <!-- Вывод сообщения на экран -->
	</target>
<project>

Базы данных

Тут бывает по разному. Некоторые SQL поддерживают команду print, другие — select ‘Hello world’;. Все зависит от движка, и того, куда нужно получить строку.

Языки программирования

C#

С# — это один из самых продвинутых языков программирования, разработанный Microsoft.

public class Hello1
{
   public static void Main()
   {
      System.Console.WriteLine("Hello, World!");
   }
}

Немного сложнее

public class Hello2
{
   string msg;
   public Hello2(string msg) {
	  this.msg = msg;
   }
   public void ShowMsg() {
      System.Console.WriteLine(msg);
   }

   public static void Main()
   {
      Hello2 helloMsg = new Hello2("Hello World!");
	  helloMsg.ShowMsg();
   }
}

Java

Java разработана в компании Sun. Синтаксис очень похож на C#, однако у этих языков больше разного, чем общего.

class HelloWorld
{
        public static void main(String args[])
        {
           System.out.println("Hello World!");
        }
}

C и C++

Это семейство языков довольно старо, но в то-же время популярно. Без их знания у нас бы не было драйверов и операционных систем. В отличие от предыдущих программы на этом языке платформо-зависимые, но не требуют дополнительных виртуальных машин.

#include
main()
{
    cout << "Hello World!";
    return 0;
}

PHP

Этот скриптовый язык вырос из языка построения страниц. В наше время он обзавелся компиляторами и позволяет писать оконные приложения. Блок на PHP обычно заключается в<?php Код ?>

$hw = ‘Hello World!’;
echo $hw;

PHP5 обзавелся объектной моделью, что позволяет создавать страницы и программы на классах.

class Foo {

  var $bar;

  function setBar($value) {
    $this->bar = $value;
  }

  function someFunction($param) {
    echo $param.$this->bar."
"; } } $foo = new Foo(); $foo->setBar("Charles"); $foo->someFunction("Hello, ");

Perl

Перл — старенький и ужасно богатый на синтаксис язык. Одно и тоже 5 программистов на Перле напишут по разному.

#!/usr/local/bin/perl
 print "Content-type: text/html\n\n";
 print "Hello World.\n";

Ruby

Этот язык был создан китайским Мормоном. Должен выгодно отличатся приятным и удобным синтаксисом.

puts "Hello world"

Python

Уже старый, удобный, навороченный, функциональный, объектный, скриптовый, компилируемый язык. Такое ощущение, что его уже встроили везде где угодно.

def hello():
  print "Hello World!"

hello()

Тоже самое, только с ООП

class Greetings(object)
  def hello():
    print "Hello World!"

yo = Greetings()
yo.hello()

ActionScript

Это заполонивший весь интернет флеш. Сейчас уже никто не пишет во фреймах, как это было до 6-й версии. Теперь в моде ООП, при-том, нового покаления — AS3.

package {

	import flash.display.TextField;
	import flash.display.MovieClip;

	public class HelloWorld extends MovieClip {

		public function HelloWorld () {

			var t:TextField = new TextField();
			t.text = "Hello World!";
			addChild(t);
		}
	}
}

Pascal и Delphi

Мой первый язык программирования (после бэйсика в ZX Spectrum) который я изучил. Сейчас язык мертв, хотя люди, особенно из России, еще на этом пишут.

program HelloWorld;

begin
  writeln('Hello World');
end.

Erlang

Erlang как и Lisp — специализированные языки (каждый по своему). Первый изначально является языком для распределенных систем, из за этого Hello World не совсем та программа, которую пишут на этом языке.


-mod(hello).
-export([start/0]).

start() ->
  io:format("Hello, World!").

Assembler

Источник [2]

.MODEL TINY
CODE SEGMENT
ASSUME CS:CODE, DS:CODE
ORG 100h
START:
        mov ah,9
        mov dx,OFFSET Msg
        int 21h
        int 20h
        Msg DB 'Hello, world',13,10,'$'
CODE ENDS
END START

Basic, Visual Basic, VBA и т.д.

Язык под названием «основной». Тут все сказано.

PRINT "Hello, world!"

Естественно, это только малая часть того, на чем в современном мире говорит программист с компьютером. Я описал только те, которые достаточно популярны, и мне приходилось в той или иной степени иметь с ними дело.
Осторожно, не повторяйте дома, голова может лопнуть. Шучу 😉


Article printed from Хроники.:

URL to article: /707-helloworld-na-raznyx-yazykax

URLs in this post:

[1] Image: /wp-content/uploads/2010/02/hello_world.png

[2] Источник: http://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0_Hello,_world!

Copyright © 2008 Все, что меня окружает. All rights reserved.