summaryrefslogtreecommitdiffhomepage
path: root/ru-ru
diff options
context:
space:
mode:
Diffstat (limited to 'ru-ru')
-rw-r--r--ru-ru/go-ru.html.markdown9
-rw-r--r--ru-ru/html-ru.html.markdown129
-rw-r--r--ru-ru/markdown-ru.html.markdown2
-rw-r--r--ru-ru/php-ru.html.markdown157
-rw-r--r--ru-ru/typescript-ru.html.markdown2
-rw-r--r--ru-ru/vim-ru.html.markdown241
-rw-r--r--ru-ru/xml-ru.html.markdown15
7 files changed, 552 insertions, 3 deletions
diff --git a/ru-ru/go-ru.html.markdown b/ru-ru/go-ru.html.markdown
index e06ae9bd..6c8622cc 100644
--- a/ru-ru/go-ru.html.markdown
+++ b/ru-ru/go-ru.html.markdown
@@ -35,6 +35,7 @@ package main
// Import предназначен для указания зависимостей этого файла.
import (
"fmt" // Пакет в стандартной библиотеке Go
+ "io/ioutil" // Реализация функций ввод/ввывода.
"net/http" // Да, это веб-сервер!
"strconv" // Конвертирование типов в строки и обратно
m "math" // Импортировать math под локальным именем m.
@@ -321,6 +322,14 @@ func (p pair) ServeHTTP(w http.ResponseWriter, r *http.Request) {
// Обработка запроса и отправка данных методом из http.ResponseWriter
w.Write([]byte("You learned Go in Y minutes!"))
}
+
+func requestServer() {
+ resp, err := http.Get("http://localhost:8080")
+ fmt.Println(err)
+ defer resp.Body.Close()
+ body, err := ioutil.ReadAll(resp.Body)
+ fmt.Printf("\nWebserver said: `%s`", string(body))
+}
```
## Что дальше
diff --git a/ru-ru/html-ru.html.markdown b/ru-ru/html-ru.html.markdown
new file mode 100644
index 00000000..5069d77f
--- /dev/null
+++ b/ru-ru/html-ru.html.markdown
@@ -0,0 +1,129 @@
+---
+language: html
+filename: learnhtml.html
+contributors:
+ - ["Christophe THOMAS", "https://github.com/WinChris"]
+translators:
+ - ["Lana Tim", "https://github.com/LanaTim"]
+lang: ru-ru
+---
+
+HTML расшифровывается как Hypertext Markup Language(гипертекстовый язык разметки).
+Это язык используют для написания страниц для World Wide Web(всемирной паутины).
+Это язык разметки позволяет писать веб-страниц с помощью кода, чтобы определять,
+как должны быть отображены текст и данные.
+На самом деле, HTML файлы представляют собой простые текстовые файлы.
+Что такое разметка? Это способ организации данных страницы,
+путем открытия и закрытия тегов(помещая данные внутрь этих тегов).
+Эта разметка служит, чтобы придать значение тексту, который он окружает.
+Как и в других языках программирования, HTML имеет много версий. Здесь мы будем говорить о HTML5.
+
+
+**Примечание:** Вы можете тестировать различные теги и элементы по мере продвижения
+через учебник на сайте, как [codepen](http://codepen.io/pen/) для того, чтобы увидеть
+их влияние, понять, как они работают и ознакомиться с языком.
+В данной статье рассматривается в основном HTML синтаксис и некоторые полезные советы.
+
+```html
+<!-- Комментарии заключаются как эта лини\! -->
+
+<!-- #################### Теги #################### -->
+
+<!-- Ниже приведен пример HTML-файл, который мы будем анализировать. -->
+
+<!doctype html>
+ <html>
+ <head>
+ <title>Мой сайт</title>
+ </head>
+ <body>
+ <h1>Привет, мир!</h1>
+ <a href = "http://codepen.io/anon/pen/xwjLbZ">
+ Переходите сюда, чтоб посмотреть как это выглядит.
+ </a>
+ <p>Это параграф.</p>
+ <p>Это другой параграф.</p>
+ <ul>
+ <li>Это элемент не нумерованного списка (маркированный список)</li>
+ <li>Это другой элемент</li>
+ <li>Это последний элемент в списке</li>
+ </ul>
+ </body>
+ </html>
+
+<!-- HTML-файл всегда начинается с указанием браузеру, что страница это HTML. -->
+<!doctype html>
+
+<!-- После этого, страница начинается с <html> тега. -->
+<html>
+
+<!-- страница будет закрыта в конце с помощью тега </html>. -->
+</html>
+
+<!-- Ничто не должно появиться после этого заключительного тега. -->
+
+<!-- Внутри (между открывающим и закрывающим тегами <html> </ html>), мы находим: -->
+
+<!-- Заголовок определяется <head> (it он должен быть закрыт </head>). -->
+<!-- Заголовок содержит описание и дополнительную информацию, которая не отображается; это метаданные. -->
+
+<head>
+ <title>Мой сайт</title><!-- Тег <title> указывает браузеру заголовок, чтобы показать в строке заголовка названия и вкладки браузера окна. -->
+</head>
+
+<!-- После секция <head>, находится секция - <body> -->
+<!-- До этого момента, ничего описаное не будет отображаться в окне браузера. -->
+<!-- Мы должны наполнить <body> содержанием, которое будет отображаться. -->
+
+<body>
+ <h1>Hello, world!</h1> <!-- Тег h1 создает заголовок. -->
+ <!-- Так же существуют другие заголовки от имеющего большее значение <h1> по убыванию к <h6>. -->
+ <a href = "http://codepen.io/anon/pen/xwjLbZ">Переходите сюда, чтоб посмотреть как это выглядит.</a>
+ <!--гиперссылка на URL, заданнf атрибутом href="" -->
+ <p>Это параграф.</p> <!-- Тег <p> позволяет нам добавдять текст на странице HTML. -->
+ <p>Это другой параграф.</p>
+ <ul> <!-- Тег <ul> создает маркированный список. -->
+ <!-- Для того, чтобы иметь пронумерованный список лучше использовать <ol>
+ тогда первый элемент будет иметь значение 1. для второго элемента, 2. и так далее. -->
+ <li>Это элемент в не нумерованном списке (маркированный список)</li>
+ <li>Это еще один элемент</li>
+ <li>И это последний пункт в списке</li>
+ </ul>
+</body>
+
+<!-- Вот так просто можно создать HTML страницу. -->
+
+<!--Но можно добавить множество дополнительных типов HTML тегов. -->
+
+<!-- Для вставки картинки -->
+<img src="http://i.imgur.com/XWG0O.gif"/> <!-- Источник изображения указывается с помощью атрибута src="" -->
+<!-- Источником может быть URL или даже путь к файлу на вашем компьютере. -->
+
+<!-- Кроме того, можно создать таблицу. -->
+
+<table> <!-- Мы открыли <table> элемент. -->
+ <tr> <!-- <tr> позволяет создать ряд. -->
+ <th>Первый заголовок</th> <!-- <th> позволяет дать название для столбца таблицы. -->
+ <th>Второй заголовок</th>
+ </tr>
+ <tr>
+ <td>Первый ряд, первая колонка</td> <!-- <td> позволяет нам создать ячейку таблицы. -->
+ <td>Первый ряд, вторая колонка</td>
+ </tr>
+ <tr>
+ <td>Второй ряв, первая колонка</td>
+ <td>Второй ряд, вторая колонка</td>
+ </tr>
+</table>
+
+```
+
+## Применение
+
+HTML файлы имеют окончание(расширение) `.html`.
+
+## Узнать больше
+
+* [википедиа](https://ru.wikipedia.org/wiki/HTML)
+* [HTML учебник](https://developer.mozilla.org/ru/docs/Web/HTML)
+* [htmlbook](http://htmlbook.ru/)
diff --git a/ru-ru/markdown-ru.html.markdown b/ru-ru/markdown-ru.html.markdown
index f71435ea..ff7a0cc3 100644
--- a/ru-ru/markdown-ru.html.markdown
+++ b/ru-ru/markdown-ru.html.markdown
@@ -5,7 +5,7 @@ contributors:
- ["Jacob Ward", "http://github.com/JacobCWard/"]
translators:
- ["Pirogov Alexey", "http://twitter.com/alex_pir"]
- - ["Andre Polykanine", https://github.com/Oire"]
+ - ["Andre Polykanine", "https://github.com/Oire"]
filename: markdown-ru.md
lang: ru-ru
---
diff --git a/ru-ru/php-ru.html.markdown b/ru-ru/php-ru.html.markdown
index b5feb105..181368de 100644
--- a/ru-ru/php-ru.html.markdown
+++ b/ru-ru/php-ru.html.markdown
@@ -58,8 +58,10 @@ $int1 = 12; // => 12
$int2 = -12; // => -12
$int3 = 012; // => 10 (ведущий 0 обозначает восьмеричное число)
$int4 = 0x0F; // => 15 (ведущие символы 0x означают шестнадцатеричное число)
+
// Двоичная запись integer доступна начиная с PHP 5.4.0.
$int5 = 0b11111111; // 255 (0b в начале означает двоичное число)
+
// Дробные числа
$float = 1.234;
$float = 1.2e3;
@@ -87,6 +89,7 @@ $dbl_quotes = "This is a $sgl_quotes."; // => 'This is a $String.'
// Специальные (escape) символы работают только в двойных кавычках
$escaped = "This contains a \t tab character.";
$unescaped = 'This just contains a slash and a t: \t';
+
// Заключайте переменные в фигурные скобки, если это необходимо
$apples = "I have {$number} apples to eat.";
$oranges = "I have ${number} oranges to eat.";
@@ -684,8 +687,160 @@ use My\Namespace as SomeOtherNamespace;
$cls = new SomeOtherNamespace\MyClass();
+*//**********************
+* Позднее статическое связывание.
+*
+*/
+
+class ParentClass
+{
+ public static function who()
+ {
+ echo "I'm a " . __CLASS__ . "\n";
+ }
+
+ public static function test()
+ {
+ // self ссылается на класс в котором определен метод.
+ self::who();
+ // static ссылается на класс в котором метод вызван.
+ static::who();
+ }
+}
+
+ParentClass::test();
+/*
+I'm a ParentClass
+I'm a ParentClass
+*/
+
+class ChildClass extends ParentClass
+{
+ public static function who()
+ {
+ echo "But I'm " . __CLASS__ . "\n";
+ }
+}
+
+ChildClass::test();
+/*
+I'm a ParentClass
+But I'm ChildClass
+
+/**********************
+* Позднее статическое связывание.
+*
+*/
+
+class ParentClass
+{
+ public static function who()
+ {
+ echo "I'm a " . __CLASS__ . "\n";
+ }
+
+ public static function test()
+ {
+ // self ссылается на класс в котором определен метод.
+ self::who();
+ // static ссылается на класс в котором метод вызван.
+ static::who();
+ }
+}
+
+ParentClass::test();
+/*
+I'm a ParentClass
+I'm a ParentClass
*/
+class ChildClass extends ParentClass
+{
+ public static function who()
+ {
+ echo "But I'm " . __CLASS__ . "\n";
+ }
+}
+
+ChildClass::test();
+/*
+I'm a ParentClass
+But I'm ChildClass
+*/
+
+
+/**********************
+* Магические константы
+*
+*/
+
+// Возвращает имя текущего класса. Должно быть использовано внутри класса.
+echo "Current class name is " . __CLASS__;
+
+// Возвращает полный путь текущей папки из которой вызван файл.
+echo "Current directory is " . __DIR__;
+
+ // Обычно используют в таких случаях:
+ require __DIR__ . '/vendor/autoload.php';
+
+// Возвращает полный путь к текущему файлу.
+echo "Current file path is " . __FILE__;
+
+// Возвращает имя текущей функции.
+echo "Current function name is " . __FUNCTION__;
+
+// Возвращает номер текущей линии.
+echo "Current line number is " . __LINE__;
+
+// Возвращает имя текущего метода. Возвращает только если вызван внутри метода.
+echo "Current method is " . __METHOD__;
+
+// Возвращает имя текущего пространства имен.
+echo "Current namespace is " . __NAMESPACE__;
+
+// Возвращает имя текущего трейта.
+// Возвращает только если испольщуется внутри трейта.
+echo "Current namespace is " . __TRAIT__;
+
+
+/**********************
+* Обработка ошибок
+*
+*/
+
+// Простую обработку ошибок можно произвести спомощью try catch блока.
+
+try {
+ // Выполняем что-то
+} catch (Exception $e) {
+ // Обработка исключения
+}
+
+// При использовании try catch блока в области вилимости, стоит использовать
+// следующий подход:
+
+try {
+ // Do something
+} catch (\Exception $e) {
+ // Обработка исключения
+}
+
+// Специальное(кастомное) исключение - exceptions
+
+class MyException extends Exception {}
+
+try {
+
+ $condition = true;
+
+ if ($condition) {
+ throw new MyException('Something just happend');
+ }
+
+} catch (MyException $e) {
+ // Обработка исключения
+}
+
```
## Смотрите также:
@@ -695,4 +850,4 @@ $cls = new SomeOtherNamespace\MyClass();
Если вы раньше пользовались языком с хорошей организацией пакетов, посмотрите [Composer](http://getcomposer.org/).
-Для изучения стандартов использования языка посетите PHP Framework Interoperability Group's [PSR standards](https://github.com/php-fig/fig-standards).
+Для изучения стандартов использования языка посетите PHP Framework Interoperability Group's [PSR standards](https://github.com/php-fig/fig-standards).
diff --git a/ru-ru/typescript-ru.html.markdown b/ru-ru/typescript-ru.html.markdown
index 67b58a38..09bbb2d1 100644
--- a/ru-ru/typescript-ru.html.markdown
+++ b/ru-ru/typescript-ru.html.markdown
@@ -5,7 +5,7 @@ contributors:
- ["Philippe Vlérick", "https://github.com/pvlerick"]
translators:
- ["Fadil Mamedov", "https://github.com/fadilmamedov"]
- - "Andre Polykanine", "https://github.com/Oire"]
+ - ["Andre Polykanine", "https://github.com/Oire"]
filename: learntypescript-ru.ts
---
diff --git a/ru-ru/vim-ru.html.markdown b/ru-ru/vim-ru.html.markdown
new file mode 100644
index 00000000..6f62fd49
--- /dev/null
+++ b/ru-ru/vim-ru.html.markdown
@@ -0,0 +1,241 @@
+---
+category: tool
+tool: vim
+contributors:
+ - ["RadhikaG", "https://github.com/RadhikaG"]
+translators:
+ - ["Anton Slukovskiy", "https://github.com/slukovskiy"]
+filename: LearnVim-ru.txt
+lang: ru-ru
+---
+
+[Vim](www.vim.org)
+(Vi IMproved) это клон полулярного текстового редактора для Unix. Он разработан
+с целью повышения скорости и продуктивности и повсеместно используется в
+большинство Юникс-подобных систем. В нем имеется множество клавиатурных
+сочетаний для быстрой навигации к определенным точкам в файле и быстрого
+редактирования.
+
+## Основы навигации в vim
+
+```
+ vim <filename> # Открыть <filename> в vim
+ :q # Выйти из vim
+ :w # Сохранить текущий файл
+ :wq # Сохранить и выйти
+ :q! # Выйти из vim не сохраняя файл
+
+ :x # Сохранить файл и выйти из vim, короткая версия :wq
+
+ u # Отмена последней команды
+ CTRL+R # Отмена отмены
+
+ h # Переместить курсор на один символ влево
+ j # Переместить курсор на один символ вниз
+ k # Переместить курсор на один символ вверх
+ l # Переместить курсор на один символ вправо
+
+ # Перемещение по строке
+
+ 0 # Переместить курсор к началу строки
+ $ # Переместить курсор к концу строки
+ ^ # Переместить курсор к первому непустому символу в строке
+
+ # Поиск в тексте
+
+ /<word> # Подсветить все вхождения <word> в тексте после курсора
+ ?<word> # Подсветить все вхождения <word> в тексте до курсора
+ n # Передвигает курсор к следующему вхождения искомого слова
+ N # Передвигает курсор к предыдущему вхождения искомого слова
+
+ :%s/foo/bar/g # Меняет «foo» на «bar» во всем файле
+ :s/foo/bar/g # Меняет «foo» на «bar» на текущей строке
+
+ # Переходы к символу
+
+ f<character> # Перенести курсор к <character>
+ t<character> # Перенести курсор вперед и остановиться прямо
+ # перед <character>
+
+ # Например,
+ f< # Перести курсор и остановиться на <
+ t< # Перенсти курсор и остановиться прямо перед <
+
+ # Перемещение по словам
+
+ w # Переместиться вперед на одно слово
+ b # Перенеститься назад на одно слово
+ e # Перейти к концу текущего слова
+
+ # Другие команды для передвижения по тексту
+
+ gg # Перейти к началу файла
+ G # Перейти к концу файла
+ :NUM # Перейти к строке под номером NUM
+ # (NUM может быть любым числом)
+ H # Переместить курсор к верхнему краю экрана
+ M # Переместить курсор к середине экрана
+ L # Переместить курсор к нижнему краю экрана
+```
+
+## Режимы:
+
+Vim основывается на концепте **режимов**.
+
+Командный режим - vim запускается в этом режиме по-умолчанию, используется для
+навигации и ввода команд.
+Режим ввода - используется для внесения изменений в файле.
+Визуальный режим - используется для подсветки текста и выполнения операций над ним.
+Режим командной строки - используется для ввода команд в нижнем углу экрана после символа «:».
+
+```
+ i # Переводит vim в режим вставки перед позицией курсора
+ a # Переводит vim в режим вставки после позиции курсора
+ v # Переводит vim в визуальный режим
+ : # Переводит vim в режим командной строки
+ <esc> # Выходит из любого режима в котором вы находитесь
+ # в командный режим
+
+ # Копирование и вставка текста
+
+ y # Скопировать выделенное
+ yy # Скопировать текущую строку
+ d # Удалить выделенное
+ dd # Удалить текущую строку
+ p # Вставить скопированный текст после текущей позиции курсора
+ P # Вставить скопированный текст перед текущей позицией курсора
+ x # Удалить символ под текущей позицией курсора
+```
+
+## «Грамматика» vim
+
+Vim можно рассматривать как набор команд в формате «Глагол-Модификатор-Существительное», где:
+
+Глагол - ваше действие.
+Модификатор - то как вы его выполняете.
+Существительное - объект над которым вы его выполняете.
+
+Несколько важных пример «Глаголов», «Модификаторов», и «Существительных»:
+
+```
+ # «Глаголы»
+
+ d # Удалить
+ c # Изменить
+ y # Скопировать
+ v # Визуально выделить
+
+ # «Модификаторы»
+
+ i # Внутри
+ a # Снаружи
+ NUM # Число
+ f # Ищет что-то и останавливается на нем
+ t # Ищет что-то и останавливается перед ним
+ / # Ищет строку после курсора
+ ? # Ищет строку перед курсором
+
+ # «Существительные»
+
+ w # Слово
+ s # Предложение
+ p # Параграф
+ b # Блок
+
+ # Образцы «предложений» или команд
+
+ d2w # Удалить 2 слова
+ cis # Изменить объемлющее предложение
+ yip # Скопировать объемлющий параграф
+ ct< # Изменяет текст от курсора до следующей открывающей скобки
+ d$ # Удалить все от положения курсора до конца строки
+```
+
+## Некоторые сокращения и хитрости
+
+ <!--TODO: Add more!-->
+```
+ > # Сдвинуть выделенное на один отступ вправо
+ < # Сдвинуть выделенное на один отступ влево
+ :earlier 15m # Возвращает документ к состоянию в котором он был
+ # 15 минут назад
+ :later 15m # Отменяет предыдущую команду
+ ddp # Меняет позиции последовательных строк, сначала dd затем p
+ . # Повторяет предыдущее действие
+```
+
+## Макросы
+
+Макросы это просто записываемые действия.
+Во время записи макросы запоминают **все** действия и команды до тех пор пока
+запись не будет остановлена.При вызове макрос применяет ту же самую последовательность
+действий и команд на выделенном тексте.
+
+```
+ qa # Начать запись макроса под именем «a»
+ q # Закончить запись
+ @a # Выполнить макрос
+```
+
+### Настройка ~/.vimrc
+
+Файл .vimrc может использоваться для настройки Vim при запуске.
+
+Вот пример файла ~/.vimrc:
+
+```
+" Пример ~/.vimrc
+" 2015.10
+
+" Отключает совместимость со старым vi
+set nocompatible
+
+" Определяет тип файла по его имени для разрешения автоматических отступов и т. д.
+filetype indent plugin on
+
+" Включает подсветку синтаксиса
+syntax on
+
+" Улучшенное автодополнение команд
+set wildmenu
+
+" Использовать поиск не чувствительный к регистру
+" за исключением использования заглавный букв
+set ignorecase
+set smartcase
+
+" Копирует отступы с текущей строки при добавлении новой
+set autoindent
+
+" Показывать номера строк
+set number
+
+" Настройки отступов, изменяйте по собственному вкусу
+
+" Количество видимых пробелов на один символ табуляции
+set tabstop=4
+
+" Количество пробелов в символе табуляции при редактировании
+set softtabstop=4
+
+" Количество пробелов в отступе при использовании операций >> и <<
+set shiftwidth=4
+
+" Конвертировать символы табуляции в пробелы
+set expandtab
+
+" Включить умную табуляцию и пробелы для отступов и выравнивания
+set smarttab
+```
+
+### Ссылки
+
+[Vim | Home (EN)](http://www.vim.org/index.php)
+
+`$ vimtutor`
+
+[A vim Tutorial and Primer (EN)](https://danielmiessler.com/study/vim/)
+
+[What are the dark corners of Vim your mom never told you about? (Stack Overflow thread) (EN)](http://stackoverflow.com/questions/726894/what-are-the-dark-corners-of-vim-your-mom-never-told-you-about)
+
+[Arch Linux Wiki](https://wiki.archlinux.org/index.php/Vim_%28%D0%A0%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9%29)
diff --git a/ru-ru/xml-ru.html.markdown b/ru-ru/xml-ru.html.markdown
index b0096b75..bf3f22b0 100644
--- a/ru-ru/xml-ru.html.markdown
+++ b/ru-ru/xml-ru.html.markdown
@@ -128,3 +128,18 @@ XML-документ, который следует описанию докум
</book>
</bookstore>
```
+
+## DTD совместимость и определение XML Schema(схем/структуры)
+
+Поддержка DTDs является повсеместным, потому что это довольно старая технология. К сожалению, современные функции XML как пространств имен(namespaces) не поддерживаются DTDs. Определения XML-схемы (XSDs) предназначены для замены DTDs которая в свою очередь предназначена для определения грамматики XML-документа.
+
+## Ресурсы
+
+* [Валидатор XML (ссылка на английском языке)](http://www.xmlvalidation.com)
+
+## Для будущего прочтения
+
+* [XML Schema Definitions Tutorial (ссылка на английском языке)](http://www.w3schools.com/schema/)
+* [DTD руководство (ссылка на английском языке)](http://www.w3schools.com/xml/xml_dtd_intro.asp)
+* [XML руководство (ссылка на английском языке)](http://www.w3schools.com/xml/default.asp)
+* [использование XPath запросов для парсинга XML (ссылка на английском языке)](http://www.w3schools.com/xml/xml_xpath.asp)