Как настроить смартфоны и ПК. Информационный портал
  • Главная
  • Windows 7, XP
  • Разные языки программирования и их области применения. Лекция в Яндексе

Разные языки программирования и их области применения. Лекция в Яндексе

Машина не понимает человеческий язык. Конечно, мы не про Siri и другие распознаватели голоса — мы про создание нового софта. Чтобы сделать калькулятор, машине нужно поставить задачу так же, как бригадир объясняет рабочим как класть кирпич. Но «Вася, ёпт, ну ровнее же надо!» нужно описать на языке программирования. Откуда вообще взялись эти языки?

Отправная точка современного компьютера — аналитическая машина Бэббиджа, но языки придумали раньше: в XIX веке изобрели механическое пианино и ткацкий станок, для которых инженеры описывали логику работы. Этот набор инструкций — прототип того, на чём сегодня пишут программисты.

В середине XX века появляется машина Тьюринга, затем первые компьютеры и первый современный язык программирования Plankalkül. Первый скачок развития произошёл, когда на компьютеры обратили внимание военные — DARPA и иже с ними начали активно инвестировать в молодую отрасль. Второй пришёл с распространением интернета — чем глубже люди погружаются в цифровую эпоху, тем более востребованы главные творцы окружения этой эпохи — программисты. И всё больше желающих к ним присоединиться.

Желание разумное и понятное, но первый вопрос в голове часто становится непреодолимым барьером — с какого языка начать обучаться программированию? Страх неправильного выбора основывается на страхе потратить время впустую. В итоге начинающий программист несколько лет ищет «свой» язык, никак не продвигаясь к заветной цели. Так, чёрт возьми, какой же выбрать язык?

Критерии выбора первого языка программирования

Выбор языка зависит от задач, которые хочет решить программист. Для интернет-проектов популярен Python, который используют в своих проектах Google и Facebook, для мобильных приложений под Android лучший друг — Java, а под iOS — Swift.

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

Конечно, узкоспециализированные языки лучше решают задачи, под которые они заточенны, но это следующий шаг. Новичку всё же нужна свобода выбора.

Помимо универсальности , есть ещё критерии:

  • Простота — спотыкаться о сложный синтаксис и застревать в дебрях нечитаемого кода — не самое приятное начало обучения.
  • Популярность — язык должен часто обновляться, иметь большое сообщество разработчиков, быть востребованным в крупных компаниях. Ещё один плюс — чем популярнее язык, тем легче найти ответ на возникший рабочий вопрос.

Под эти три описания лучше всего подходят языки Python, C#, Java и Ruby.

Разработан в 80-е годы голландским программистом Гвидо ван Россумом. Большие технологические компании работают с Python: Яндекс, Google, Facebook и YouTube. Это так называемый скриптовый язык — на нём пишут то, что у программы под капотом. Его используют для веб-приложений, в разработке игр, софта для серверов…

Простота Популярность Универсальность

Код легко читается, у него понятная структура. Стандартного инструментария достаточно для начала обучения.

Занимает 1-е место в программах начального обучения программированию в университетах США.

Регулярно обновляется — раз в 2,5 года. Входит в пятерку популярных языков по версии аналитической компании TIOBE Software на январь 2016 года.

На Python пишут почти всё: скрипты управления системами, веб-сайты, системы машинного обучения, игры.

Язык был разработан в конце 90-х на базе C++ и Java. В основном используется для больших enterprise-проектов, но не ограничивается только ими. Например, скрипты в игровом движке Unity пишут на C#.

Простота Популярность Универсальность

Структурно близок к C++ и Java — синтаксис (структура программного кода) сложнее, чем у Python и Ruby, но зато на изучение родственных языков уйдёт меньше времени. Интерфейсы библиотек хорошо вписываются в шаблоны проектирования — это упрощает изучение.

Последнее обновление было в 2015-м году.

На C# пишут под Windows Phone, iOS и Android. Большое количество документации, но библиотек со свободной лицензией не много — это значит, что для обучения программист может использовать чужой код, но вот для использования в коммерческом продукте нужно платить.

Язык придумали программисты из Microsoft для разработки Windows-приложений. Несмотря на это, его используют и в других системах. Также работает на встраиваемых, десктопных и серверных платформах.


Ruby

Создан японским разработчиком под влиянием языка Perl. Запущен в 1995 году. На Ruby написаны: Shopify, Github, Groupon, Yellow Pages, Twitter и Slideshare. Он набирает популярность, но чаще встречается в стартапах, нежели в крупных компаниях. Хорошо подходит для создания простого интернет-проекта.

Простота Популярность Универсальность

Как и Python, код легко читается. Структура также идентична Python. В сравнении с остальными языками, выбор стандартных библиотек скуднее — нужно потратить время на поиски.

Большое и лояльное сообщество разработчиков — замыкает десятку самых популярных языков по версии TIOBE Software. Много библиотек в свободном доступе.

Наименее универсальный из всей четвёрки — в основном подходит для web-разработок. С другой стороны, внутри интернет-проектов с ним можно делать очень разные и очень крутые вещи.


Java

Первая версия языка вышла в мае 1995 года. Java используется в Amazon, eBay, LinkedIn и Yahoo!

Простота Популярность Универсальность

Как было сказано ранее, у Java и C# очень похожий синтаксис — выучил один, почти знаешь другой. Но как и в первом случае, синтаксис сложнее, чем у Ruby и Python.

В мире 3 миллиарда смартфонов на Android — это значит, что Java ещё долго будет востребован. Первый по популярности по версии TIOBE Software.

Чаще всего используется для enterprise-разработки и Android-приложений.


Итог препарирования

Вывод сделать сложно. С одной стороны манит возможность одним выстрелом убить двух зайцев и взять Java или C#, но Python манит свой универсальностью, а Ruby — простотой.

Мы сомневались и пошли говорить с опытными разработчиками — они всё же советуют остановиться на Python. Вот что говорит Григорий Петров, профессиональный разработчик, евангелист VoxImplant:

«Язык программирования Python часто называют «исполняемым псевдокодом», потому что синтаксис языка и стандартные библиотеки делают упор на читаемость и понятность. Добавим к этому широчайший выбор средств разработки, библиотек, обучающих материалов — и мы получим один из лучших языков программирования для начинающих».

Вывод: пока нет чётких задач и ясных целей, а есть только желание кодить, остановиться стоит на Python — он простой, популярный и универсальный. Никита Соболев, преподаватель программирования для начинающих в #tceh, также считает выбор этого языка оптимальным для новичка — образовательная программа получилась сложнее и длиннее, чем на курсе по Ruby, но свобода в выборе направления того стоит.

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

Язы́к программи́рования - формальная знаковая система , предназначенная для записи компьютерных программ . Язык программирования определяет набор лексических , синтаксических и семантических правил, задающих внешний вид программы и действия, которые выполнит исполнитель (компьютер) под её управлением.

  • Функция: язык программирования предназначен для написания компьютерных программ, которые применяются для передачи компьютеру инструкций по выполнению того или иного вычислительного процесса и организации управления отдельными устройствами .
  • Задача: язык программирования отличается от естественных языков тем, что предназначен для передачи команд и данных от человека к компьютеру, в то время как естественные языки используются для общения людей между собой. Можно обобщить определение «языков программирования» - это способ передачи команд, приказов, чёткого руководства к действию; тогда как человеческие языки служат также для обмена информацией.
  • Исполнение: язык программирования может использовать специальные конструкции для определения и манипулирования структурами данных и управления процессом вычислений.

Стандартизация языков программирования

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

Для многих широко распространённых языков программирования созданы международные стандарты . Специальные организации проводят регулярное обновление и публикацию спецификаций и формальных определений соответствующего языка. В рамках таких комитетов продолжается разработка и модернизация языков программирования и решаются вопросы о расширении или поддержке уже существующих и новых языковых конструкций.

Типы данных

Современные цифровые компьютеры обычно являются двоичными и данные хранят в двоичном (бинарном) коде (хотя возможны реализации и в других системах счисления). Эти данные как правило отражают информацию из реального мира (имена, банковские счета, измерения и др.), представляющую высокоуровневые концепции.

Особая система, по которой данные организуются в программе, - это система типов языка программирования; разработка и изучение систем типов известна под названием теория типов . Языки могут быть классифицированы как системы со статической типизацией и языки с динамической типизацией .

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

Структуры данных

Системы типов в языках высокого уровня позволяют определять сложные, составные типы, так называемые структуры данных . Как правило, структурные типы данных образуются как декартово произведение базовых (атомарных) типов и ранее определённых составных типов.

Основные структуры данных (списки, очереди, хеш-таблицы, двоичные деревья и пары) часто представлены особыми синтаксическими конструкциями в языках высокого уровня. Такие данные структурируются автоматически.

Семантика языков программирования

Существует несколько подходов к определению семантики языков программирования.

Наиболее широко распространены разновидности следующих трёх: операционного, деривационного (аксиоматического) и денотационного (математического).

  • При описании семантики в рамках операционного подхода обычно исполнение конструкций языка программирования интерпретируется с помощью некоторой воображаемой (абстрактной) ЭВМ.
  • Деривационная семантика описывает последствия выполнения конструкций языка с помощью языка логики и задания пред- и постусловий.
  • Денотационная семантика оперирует понятиями, типичными для математики - множества, соответствия, а также суждения, утверждения и др.

Парадигма программирования

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

Несмотря на то, что большинство языков ориентировано на императивную модель вычислений , задаваемую фон-неймановской архитектурой ЭВМ, существуют и другие подходы. Можно упомянуть языки со стековой вычислительной моделью (Форт , Factor , PostScript и др.), а также функциональное (Лисп , Haskell , , и др.) и логическое программирование (Пролог) и язык РЕФАЛ , основанный на модели вычислений, введённой советским математиком А. А. Марковым-младшим.

В настоящее время также активно развиваются проблемно-ориентированные, декларативные и визуальные языки программирования .

Способы реализации языков

Языки программирования могут быть реализованы как компилируемые и интерпретируемые .

Программа на компилируемом языке при помощи компилятора (особой программы) преобразуется (компилируется) в машинный код (набор инструкций) для данного типа процессора и далее собирается в исполнимый модуль , который может быть запущен на исполнение как отдельная программа. Другими словами, компилятор переводит исходный текст программы с языка программирования высокого уровня в двоичные коды инструкций процессора.

Если программа написана на интерпретируемом языке, то интерпретатор непосредственно выполняет (интерпретирует) исходный текст без предварительного перевода. При этом программа остаётся на исходном языке и не может быть запущена без интерпретатора. Процессор компьютера, в этой связи, можно назвать интерпретатором для машинного кода.

Разделение на компилируемые и интерпретируемые языки является условным. Так, для любого традиционно компилируемого языка, как, например, Паскаль , можно написать интерпретатор. Кроме того, большинство современных «чистых» интерпретаторов не исполняют конструкции языка непосредственно, а компилируют их в некоторое высокоуровневое промежуточное представление (например, с разыменованием переменных и раскрытием макросов).

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

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

Интерпретируемые языки обладают некоторыми специфическими дополнительными возможностями (см. выше), кроме того, программы на них можно запускать сразу же после изменения, что облегчает разработку. Программа на интерпретируемом языке может быть зачастую запущена на разных типах машин и операционных систем без дополнительных усилий.

Однако интерпретируемые программы выполняются заметно медленнее, чем компилируемые, кроме того, они не могут выполняться без программы-интерпретатора.

Подобный подход в некотором смысле позволяет использовать плюсы как интерпретаторов, так и компиляторов. Следует упомянуть, что есть языки, имеющие и интерпретатор, и компилятор (Форт).

Используемые символы

Современные языки программирования рассчитаны на использование ASCII , то есть доступность всех графических символов ASCII является необходимым и достаточным условием для записи любых конструкций языка. Управляющие символы ASCII используются ограниченно: допускаются только возврат каретки CR, перевод строки LF и горизонтальная табуляция HT (иногда также вертикальная табуляция VT и переход к следующей странице FF).

Ранние языки, возникшие в эпоху 6-битных символов , использовали более ограниченный набор. Например, алфавит Фортрана включает 49 символов (включая пробел): A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 = + - * / () . , $ " :

Заметным исключением является язык APL , в котором используется очень много специальных символов.

Использование символов за пределами ASCII (например, символов KOI8-R или символов Юникода) зависит от реализации: иногда они разрешаются только в комментариях и символьных/строковых константах, а иногда и в идентификаторах. В СССР существовали языки, где все ключевые слова писались русскими буквами, но большу́ю популярность подобные языки не завоевали (исключение составляет Встроенный язык программирования 1С:Предприятие).

Расширение набора используемых символов сдерживается тем, что многие проекты по разработке программного обеспечения являются международными. Очень сложно было бы работать с кодом, где имена одних переменных записаны русскими буквами, других - арабскими, а третьих - китайскими иероглифами. Вместе с тем, для работы с текстовыми данными языки программирования нового поколения (Delphi 2006 , , Java) поддерживают Unicode .

Классы языков программирования

См. также

Примечания

Литература

  • Hal Abelson, Gerald Jay Sussman. Structure and Interpretation of Computer Programs
  • Роберт У. Себеста. Основные концепции языков программирования = Concepts of Programming Languages / Пер. с англ. - 5-е изд. - М .: Вильямс, 2001. - 672 с. - 5000 экз. - ISBN 5-8459-0192-8 (рус.), ISBN 0-201-75295-6 (англ.)
  • Вольфенгаген В. Э. Конструкции языков программирования. Приёмы описания. - М .: Центр ЮрИнфоР, 2001. - 276 с. - ISBN 5-89158-079-9
  • Паронджанов В. Д. Как улучшить работу ума. Алгоритмы без программистов - это очень просто! - М .: Дело, 2001. - 360 с. - ISBN 5-7749-0211-0
  • Ф. Бьянкуцци, Ш. Уорден. Пионеры программирования. Диалоги с создателями наиболее популярных языков программирования . - СПб. : Символ-Плюс, 2010. - 608 с. - ISBN 978-5-93286-170-7

Ссылки

  • The Language List (англ.) - более 2500 языков с кратким описанием
  • Computer Languages History (англ.) - история языков программирования (с 1954 по май 2004) (содержит регулярно обновляемую диаграмму)
  • Examples (англ.) - примеры программирования на 162 языках
  • Programming Language Popularity (англ.) - исследование популярности языков программирования за 2004 год
  • 10 языков программирования, которые стоит изучать (2006 г.)
  • Programming Community Index (англ.) - регулярно обновляемый рейтинг популярности языков программирования
  • Computer Language Shootout Benchmarks (англ.) - сравнение языков программирования по эффективности
  • Programming Languages that are Loved (англ.) - сравнение языков программирования по «любви» и «ненависти» к ним

Wikimedia Foundation . 2010 .

Действительно ли нам нужны новые языки программирования ? Безусловно, на данный момент их вполне достаточно. Среди разнообразия императивных, функциональных, объектно-ориентированных , динамических, компилируемых, интерпретируемых и скриптовых языков ни один разработчик не сможет познать все доступные на сегодняшний день возможности.

И всё же возникновение новых языков - явление довольно частое. Некоторые из них создаются студентами или любителями в качестве индивидуальных проектов, другие являются продуктами крупных производителей программного обеспечения . Даже небольшие и средние компании принимают участие в этом процессе, создавая языки для нужд своих отраслей. Так почему же люди продолжают изобретать велосипед снова и снова?

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

Таким образом, здесь представлены 10 передовых языков программирования , каждый из которых рассматривает искусство разработки ПО с новой стороны, решая определённую проблему либо специфический недостаток языков, наиболее популярных на сегодняшний день. Некоторые из них являются уже законченными проектами, тогда как другие находятся лишь на ранних стадиях своего развития. Вполне вероятно, что некоторые из них так и не обретут популярность , но любой из них может стать революционным достижением, которое окончательно изменит программирование - по крайней мере до тех пор, пока не будут созданы новые языки.

JavaScript хорош для добавления базовых элементов интерактивности веб-страницам, но когда код ваших веб-приложений состоит из тысяч строк, слабые места этого языка становятся заметны. Вот почему Google создала Dart - язык, который, как полагает компания, станет новым "родным" языком веб-программирования .

Как и в JavaScript, в Dart используются синтаксисы и ключевые слова, похожие на те, которые используются в языке C. Однако одним существенным различием является то, что в то время как JavaScript основывается на прототипах, объекты в Dart определяются с помощью классов и интерфейсов, как в C++ или Java . Также Dart позволяет программистам дополнительно задавать переменные со статическими типами. Идея заключается в том, чтобы сделать Dart таким же привычным, динамичным и гибким языком, как и JavaScript, который в то же время позволяет разработчикам писать коды, быстрые и лёгкие в выполнении, и в которых сложно сделать труднонаходимые ошибки.

Сегодня Dart мало где можно использовать. Он разработан для запуска либо на клиенте, либо на сервере (а-ля Node.js), но единственным способом запустить клиентскую версию Dart-кода является его кросскомпиляция в JavaScript. Однако и после этого он не будет запускаться во всех браузерах. Но так как Dart выпускается по бесплатной лицензии типа BSD , то любой продавец, который согласен с условиями Google, может свободно использовать этот язык в своих продуктах. Всё, что осталось сделать Google, - это убедить всю индустрию.

Код F# чем-то похож на код OCaml, но содержит свой собственный интересный синтаксис. Например, для облегчения проведения научных расчётов числовыми типами данных в F# могут являться единицы измерения. Также в F# имеются конструкции для облегчения асинхронных вводов/выводов, параллелизации ЦПУ и вывода процессов на графический процессор.

После длительного периода созревания в Microsoft Research, на сегодняшний день F# поставляется вместе с Visual Studio 2010 . Что ещё лучше, но не характерно для корпорации, Microsoft создала F# компилятор и корневую библиотеку, доступную по открытой лицензии Apache. Вы можете начать работу с ним бесплатно и даже использовать его на системах Mac и Linux (с помощью Mono runtime).

Естественно, с такого рода интегрированной системой в конце должно получиться что-то волшебное. Среда выполнения Opa объединяет собственный веб-сервер и систему управления базой данных , которые не могут быть заменены самостоятельными альтернативами. Как бы то ни было, это может быть не так уж и важно, учитывая возможность разработки современных веб-приложений , управляемых данными, с помощью всего лишь нескольких десятков строк кода. Opa поставляется бесплатно и на данный момент доступен для 64-х битных Linux и Mac OS X платформ, другие же порты пока разрабатываются.

Fantom распространяется бесплатно в соответствии с Academic Free License 3.0 и доступен для Windows и Unix-подобных платформ (в том числе и Mac OS X).

Исследуемый язык программирования №7: Zimbu

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

Единственной проблемой является портативность. Хотя Zimbu и является компилируемым языком, его компилятор выдаёт ANSI C код, а двоичные файлы могут быть созданы лишь на платформах со встроенным C-компилятором.

К сожалению, проект Zimbu находится на стадии разработки. Компилятор и несколько программ-примеров могут быть созданы самостоятельно, но не весь действительный Zimbu-код будет компилироваться и выполняться должным образом. Не все заявленные функции ещё разработаны, а некоторые из уже представленных работают некорректно. Спецификация языка также, возможно, со временем изменится: по мере необходимости добавятся ключевые слова, типы и синтаксис. Следовательно, документация также ещё неполная. Однако если Вы хотите попробовать, предварительные утилиты уже доступны по лицензии Apache .

Исследуемый язык программирования №8: X10

Когда-то параллельная обработка данных была специализированной нишей разработки ПО, но с распространением многоядерных процессоров и распределённых вычислений, параллелизм обрёл популярность. К сожалению, нынешние языки программирования не успевают за этой тенденцией. Именно поэтому IBM Research создаёт X10 - язык, созданный специально для современных параллельных архитектур, который нацелен на увеличение производительности разработчиков "в десять раз".

Параллелизм в X10 возможен благодаря PGAS модели программирования (модели разделённого глобального адресного пространства). Код и данные выделяются в блоки и распределяются по разным "пространствам", тем самым облегчая шкалирование программы от однопотокового прототипа (одно пространство) до многопотокового, выполняемого на одном или более многоядерном процессоре (несколько пространств) в высокопроизводительном кластере .

Код X10 больше всего похож на Java. По сути, среда выполнения X10 доступна как в качестве встроенных исполнимых файлов , так и как классовые файлы для JVM. Компилятор X10 может выдавать исходные коды либо на C++, либо на Java. В будущем планируется разработать прямую совместимость с Java.

А пока язык развивается, хотя он уже довольно разработан. Компилятор и среда выполнения доступны для различных платформ, в том числе Linux, Mac OS X и Windows. В качестве дополнительных утилит выступают интерактивная среда разработки (IDE), основанная на Eclipse, и отладчик, которые распространяются по лицензии Eclipse Public License.

Исследуемый язык программирования №9: haXe

Многие языки можно использовать для написания переносимого кода. C-компиляторы доступны практически для всех ЦПУ архитектур, а Java-байткод будет выполняться везде, где есть JVM. Но haXe (произносится как "хекс") является более чем просто переносимым. Это мультиплатформенный язык, который может использоваться в различных операционных средах, начиная от встроенных

    Списки языков программирования По категориям Хронологический Генеалогический Приведён список языков программирования, сгруппированных по категориям. Некоторые языки попали в несколько категорий. Содержание … Википедия

    Списки языков программирования По категориям Хронологический Генеалогический Приведён генеалогический список языков программирования. Языки классифицируются в соответствии с предшествующими языками, которые оказали сильное влияние на формирование … Википедия

    Содержание 1 По производителю или платформе 1.1 Flash 1.2 Java 1.3 Microsof … Википедия

    Списки языков программирования По категориям Хронологический Генеалогический Хронология языков программирования упорядоченный в хронологическом порядке список языков программирования. Содержание … Википедия

    Эту статью следует викифицировать. Пожалуйста, оформите её согласно правилам оформления статей. Условные обозначения … Википедия

    Эта страница информационный список. Языки программирования.NET (Языки с поддержкой CLI или CLI языки) компьютерные языки программирования, используемые для создания библиотек и программ, удовлетворяющих требованиям Comm … Википедия

    Основная статья: Текстовый редактор Список текстовых редакторов Windows и таблица сравнения. Содержание 1 Таблица сравнения известных текстовых редакторов … Википедия

    Язык программирования C# один из наиболее популярных языков программирования на сегодняшний день. Paint.NET открытое программное обеспечение для обработки растровой графики SharpDevelop открытая IDE для языков C#, Visual Basic .NET (VB.NET), Boo … Википедия

    Это список программного обеспечения, разрабатываемого Free Software Foundation как часть проекта GNU UNIX подобной операционной системы состоящей целиком из свободного программного обеспечения. Большая часть из этих пакетов также… … Википедия

    Эта статья или раздел нуждается в переработке. Пожалуйста, улучшите статью в соответствии с правилами написания статей … Википедия

Книги

  • Python для детей. Самоучитель по программированию , Бриггс Джейсон. О книге Эта книга - самоучитель по одному из самых востребованных на сегодняшний день языков программирования - Python. Начиная с самых простых действий, шаг за шагом вы будете писать свои…
  • JavaScript для детей. Самоучитель по программированию , Морган Ник. О книге Эта книга позволит вам погрузиться в программирование и с легкостью освоить JavaScipt. Вы напишете несколько настоящих игр - поиск сокровищ на карте, "Виселицу" и"Змейку" . На каждом…

Лучшие статьи по теме