Skip to content

Commit d23d369

Browse files
authored
Merge pull request #1649 from Rnbsov/links
👾 update links
2 parents 2d07497 + 977aeb9 commit d23d369

File tree

111 files changed

+247
-247
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

111 files changed

+247
-247
lines changed

1-js/01-getting-started/1-intro/article.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
```smart header="Почему <u>Java</u>Script?"
1616
Когда JavaScript создавался, у него было другое имя - "LiveScript". Однако, язык Java был очень популярен в то время, и было решено, что позиционирование JavaScript как "младшего брата" Java будет полезно.
1717
18-
Со временем JavaScript стал полностью независимым языком со своей собственной спецификацией, называющейся [ECMAScript](http://ru.wikipedia.org/wiki/ECMAScript), и сейчас не имеет никакого отношения к Java.
18+
Со временем JavaScript стал полностью независимым языком со своей собственной спецификацией, называющейся [ECMAScript](https://ru.wikipedia.org/wiki/ECMAScript), и сейчас не имеет никакого отношения к Java.
1919
```
2020

2121
Сегодня JavaScript может выполняться не только в браузере, но и на сервере или на любом другом устройстве, которое имеет специальную программу, называющуюся ["движком" JavaScript](https://ru.wikipedia.org/wiki/%D0%94%D0%B2%D0%B8%D0%B6%D0%BE%D0%BA_JavaScript).
@@ -107,8 +107,8 @@ JavaScript - это единственная браузерная техноло
107107
Примеры таких языков:
108108

109109
- [CoffeeScript](http://coffeescript.org/) добавляет "синтаксический сахар" для JavaScript. Он вводит более короткий синтаксис, который позволяет писать чистый и лаконичный код. Обычно такое нравится Ruby-программистам.
110-
- [TypeScript](http://www.typescriptlang.org/) концентрируется на добавлении "строгой типизации" для упрощения разработки и поддержки больших и сложных систем. Разработан Microsoft.
111-
- [Flow](http://flow.org/) тоже добавляет типизацию, но иначе. Разработан Facebook.
110+
- [TypeScript](https://www.typescriptlang.org/) концентрируется на добавлении "строгой типизации" для упрощения разработки и поддержки больших и сложных систем. Разработан Microsoft.
111+
- [Flow](https://flow.org/) тоже добавляет типизацию, но иначе. Разработан Facebook.
112112
- [Dart](https://www.dartlang.org/) стоит особняком, потому что имеет собственный движок, работающий вне браузера (например, в мобильных приложениях). Первоначально был предложен Google, как замена JavaScript, но на данный момент необходима его транспиляция для запуска так же, как для вышеперечисленных языков.
113113
- [Brython](https://brython.info/) транспилирует Python в JavaScript, что позволяет писать приложения на чистом Python без JavaScript.
114114

1-js/01-getting-started/2-manuals-specifications/article.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
Хотя зачастую вместо их сайта удобнее использовать какой-нибудь интернет-поисковик, вводя там запрос "MDN [что вы хотите найти]", например <https://google.com/search?q=MDN+parseInt> для поиска информации о функции `parseInt`.
2525

2626

27-
- **MSDN** – справочник от Microsoft, содержащий много информации, в том числе по JavaScript (который там часто обозначается как JScript). Если вам нужно найти что-то специфическое по браузеру Internet Explorer, лучше искать там: <http://msdn.microsoft.com/>.
27+
- **MSDN** – справочник от Microsoft, содержащий много информации, в том числе по JavaScript (который там часто обозначается как JScript). Если вам нужно найти что-то специфическое по браузеру Internet Explorer, лучше искать там: <https://msdn.microsoft.com/>.
2828

2929
Так же, как и в предыдущем случае, можно использовать интернет-поиск, набирая фразы типа "RegExp MSDN" или "RegExp MSDN jscript".
3030

1-js/01-getting-started/3-code-editors/article.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ IDE загружает проект (который может состоять
1313
Если вы ещё не выбрали себе IDE, присмотритесь к этим:
1414

1515
- [Visual Studio Code](https://code.visualstudio.com/) (кросс-платформенная, бесплатная).
16-
- [WebStorm](http://www.jetbrains.com/webstorm/) (кросс-платформенная, платная).
16+
- [WebStorm](https://www.jetbrains.com/webstorm/) (кросс-платформенная, платная).
1717

1818
Для Windows есть ещё Visual Studio (не путать с Visual Studio Code). Visual Studio - это платная мощная среда разработки, которая работает только на Windows. Она хорошо подходит для .NET платформы. У неё есть бесплатная версия, которая называется [Visual Studio Community](https://www.visualstudio.com/vs/community/).
1919

@@ -34,7 +34,7 @@ IDE загружает проект (который может состоять
3434
- [Atom](https://atom.io/) (кроссплатформенный, бесплатный).
3535
- [Sublime Text](http://www.sublimetext.com) (кроссплатформенный, условно-бесплатный).
3636
- [Notepad++](https://notepad-plus-plus.org/) (Windows, бесплатный).
37-
- [Vim](http://www.vim.org/) и [Emacs](https://www.gnu.org/software/emacs/) тоже хороши, если знать, как ими пользоваться.
37+
- [Vim](https://www.vim.org/) и [Emacs](https://www.gnu.org/software/emacs/) тоже хороши, если знать, как ими пользоваться.
3838

3939
## Не будем ссориться
4040

1-js/02-first-steps/04-variables/article.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -151,7 +151,7 @@ let message = "Другое"; // SyntaxError: 'message' has already been declare
151151
````
152152

153153
```smart header="Функциональные языки программирования"
154-
Примечательно, что существуют [функциональные](https://ru.wikipedia.org/wiki/%D0%A4%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5) языки программирования, такие как [Scala](http://www.scala-lang.org/) или [Erlang](http://www.erlang.org/), которые запрещают изменять значение переменной.
154+
Примечательно, что существуют [функциональные](https://ru.wikipedia.org/wiki/%D0%A4%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5) языки программирования, такие как [Scala](https://www.scala-lang.org/) или [Erlang](https://www.erlang.org/), которые запрещают изменять значение переменной.
155155
156156
В таких языках однажды сохранённое "в коробку" значение остаётся там навсегда. Если нам нужно сохранить что-то другое, язык заставляет нас создать новую коробку (объявить новую переменную). Мы не можем использовать старую переменную.
157157

1-js/02-first-steps/15-function-basics/article.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -408,7 +408,7 @@ checkPermission(..) // проверяет доступ, возвращая true/
408408
```smart header="Сверхкороткие имена функций"
409409
Имена функций, которые используются *очень часто*, иногда делают сверхкороткими.
410410

411-
Например, во фреймворке [jQuery](http://jquery.com) есть функция с именем `$`. В библиотеке [Lodash](http://lodash.com/) основная функция представлена именем `_`.
411+
Например, во фреймворке [jQuery](https://jquery.com) есть функция с именем `$`. В библиотеке [Lodash](https://lodash.com/) основная функция представлена именем `_`.
412412

413413
Это исключения. В основном имена функций должны быть в меру краткими и описательными.
414414
```

1-js/03-code-quality/05-testing-mocha/article.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ describe("pow", function() {
6969

7070
1. Пишется начальная спецификация с тестами, проверяющими основную функциональность.
7171
2. Создаётся начальная реализация.
72-
3. Для запуска тестов мы используем фреймворк [Mocha](http://mochajs.org/) (подробнее о нём чуть позже). Пока функция не готова, будут ошибки. Вносим изменения до тех пор, пока всё не начнёт работать так, как нам нужно.
72+
3. Для запуска тестов мы используем фреймворк [Mocha](https://mochajs.org/) (подробнее о нём чуть позже). Пока функция не готова, будут ошибки. Вносим изменения до тех пор, пока всё не начнёт работать так, как нам нужно.
7373
4. Теперь у нас есть правильно работающая начальная реализация и тесты.
7474
5. Мы добавляем новые способы использования в спецификацию, возможно, ещё не реализованные в тестируемом коде. Тесты начинают "падать" (выдавать ошибки).
7575
6. Возвращаемся на шаг 3, дописываем реализацию до тех пор, пока тесты не начнут завершаться без ошибок.
@@ -85,9 +85,9 @@ describe("pow", function() {
8585

8686
В этой главе мы будем пользоваться следующими JavaScript-библиотеками для тестов:
8787

88-
- [Mocha](http://mochajs.org/) -- основной фреймворк. Он предоставляет общие функции тестирования, такие как `describe` и `it`, а также функцию запуска тестов.
89-
- [Chai](http://chaijs.com) -- библиотека, предоставляющая множество функций проверки утверждений. Пока мы будем использовать только `assert.equal`.
90-
- [Sinon](http://sinonjs.org/) -- библиотека, позволяющая наблюдать за функциями, эмулировать встроенные функции и многое другое. Нам она пригодится позднее.
88+
- [Mocha](https://mochajs.org/) -- основной фреймворк. Он предоставляет общие функции тестирования, такие как `describe` и `it`, а также функцию запуска тестов.
89+
- [Chai](https://chaijs.com) -- библиотека, предоставляющая множество функций проверки утверждений. Пока мы будем использовать только `assert.equal`.
90+
- [Sinon](https://sinonjs.org/) -- библиотека, позволяющая наблюдать за функциями, эмулировать встроенные функции и многое другое. Нам она пригодится позднее.
9191

9292
Эти библиотеки подходят как для тестирования внутри браузера, так и на стороне сервера. Мы рассмотрим вариант с браузером.
9393

@@ -339,14 +339,14 @@ describe("pow", function() {
339339
```smart header="Другие функции сравнения"
340340
Обратите внимание на `assert.isNaN`. Это проверка того, что переданное значение равно `NaN`.
341341
342-
Библиотека [Chai](http://chaijs.com) содержит множество других подобных функций, например:
342+
Библиотека [Chai](https://chaijs.com) содержит множество других подобных функций, например:
343343
344344
- `assert.equal(value1, value2)` -- проверяет равенство `value1 == value2`.
345345
- `assert.strictEqual(value1, value2)` -- проверяет строгое равенство `value1 === value2`.
346346
- `assert.notEqual`, `assert.notStrictEqual` -- проверяет неравенство и строгое неравенство соответственно.
347347
- `assert.isTrue(value)` -- проверяет, что `value === true`
348348
- `assert.isFalse(value)` -- проверяет, что `value === false`
349-
- ...с полным списком можно ознакомиться в [документации](http://chaijs.com/api/assert/)
349+
- ...с полным списком можно ознакомиться в [документации](https://chaijs.com/api/assert/)
350350
```
351351

352352
Итак, нам нужно добавить пару строчек в функцию `pow`:

1-js/03-code-quality/06-polyfills/article.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11

22
# Полифилы
33

4-
JavaScript - динамично развивающийся язык программирования. Регулярно появляются предложения о добавлении в JS новых возможностей, они анализируются, и, если предложения одобряются, то описания новых возможностей языка переносятся в черновик <https://tc39.github.io/ecma262/>, а затем публикуются в [спецификации](http://www.ecma-international.org/publications/standards/Ecma-262.htm).
4+
JavaScript - динамично развивающийся язык программирования. Регулярно появляются предложения о добавлении в JS новых возможностей, они анализируются, и, если предложения одобряются, то описания новых возможностей языка переносятся в черновик <https://tc39.github.io/ecma262/>, а затем публикуются в [спецификации](https://www.ecma-international.org/publications/standards/Ecma-262.htm).
55

66
Разработчики JavaScript-движков сами решают, какие предложения реализовывать в первую очередь. Они могут заранее добавить в браузеры поддержку функций, которые всё ещё находятся в черновике, и отложить разработку функций, которые уже перенесены в спецификацию, потому что они менее интересны разработчикам или более сложные в реализации.
77

@@ -19,7 +19,7 @@ JavaScript - динамично развивающийся язык програ
1919

2020
На самом деле, есть две части Babel:
2121

22-
1. Во-первых, транспилер, который переписывает код. Разработчик запускает Babel на своём компьютере. Он переписывает код в старый стандарт. И после этого код отправляется на сайт. Современные сборщики проектов, такие как [webpack](http://webpack.github.io/) или [brunch](http://brunch.io/), предоставляют возможность запускать транспилер автоматически после каждого изменения кода, что позволяет экономить время.
22+
1. Во-первых, транспилер, который переписывает код. Разработчик запускает Babel на своём компьютере. Он переписывает код в старый стандарт. И после этого код отправляется на сайт. Современные сборщики проектов, такие как [webpack](http://webpack.github.io/) или [brunch](https://brunch.io/), предоставляют возможность запускать транспилер автоматически после каждого изменения кода, что позволяет экономить время.
2323

2424
2. Во-вторых, полифил.
2525

@@ -29,7 +29,7 @@ JavaScript - динамично развивающийся язык програ
2929

3030
Два интересных хранилища полифилов:
3131
- [core js](https://github.com/zloirock/core-js) поддерживает много функций, можно подключать только нужные.
32-
- [polyfill.io](http://polyfill.io) - сервис, который автоматически создаёт скрипт с полифилом в зависимости от необходимых функций и браузера пользователя.
32+
- [polyfill.io](https://polyfill.io) - сервис, который автоматически создаёт скрипт с полифилом в зависимости от необходимых функций и браузера пользователя.
3333

3434
Таким образом, чтобы современные функции поддерживались в старых движках, нам надо установить транспилер и добавить полифил.
3535

0 commit comments

Comments
 (0)