Каталог книг

Программируем На Python

Перейти в магазин

Сравнить цены

Описание

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

Сравнить Цены

Предложения интернет-магазинов
Доусон М. Программируем на Python Доусон М. Программируем на Python 921 р. chitai-gorod.ru В магазин >>
Ричардсон К. Программируем с Minecraft. Создай свой мир с помощью Python Ричардсон К. Программируем с Minecraft. Создай свой мир с помощью Python 840 р. chitai-gorod.ru В магазин >>
Крэйг Ричардсон Программируем с Minecraft. Создай свой мир с помощью Python Крэйг Ричардсон Программируем с Minecraft. Создай свой мир с помощью Python 399 р. litres.ru В магазин >>
Крэйг Ричардсон Программируем с Minecraft. Создай свой мир с помощью Python Крэйг Ричардсон Программируем с Minecraft. Создай свой мир с помощью Python 873 р. book24.ru В магазин >>
Программируем на Python Программируем на Python 321 р. piter.com В магазин >>
Майкл Доусон Программируем на Python Майкл Доусон Программируем на Python 919 р. ozon.ru В магазин >>
Программируем на Python Программируем на Python 879 р. piter.com В магазин >>

Статьи, обзоры книги, новости

Что можно реализовать с помощью Python?

Что можно делать с помощью Python?

Общие вопросы Веб-сценарии, Графический интерфейс, Интеграция компонентов, Системное программирование

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

всего, что угодно, - от веб-сайтов и игровых программ до управления роботами и космическими кораблями.

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

Системное программирование

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

Кроме того, системные интерфейсы в языке Python созданы переносимыми, например сценарий копирования дерева каталогов не требует внесения изменений, в какой бы операционной системе он ни использовался. Система Stackless Python, используемая компанией EVE Online, также предлагает улучшенные решения, применяемые для параллельной обработки данных.

Графический интерфейс

tkinter без изменений могут использоваться в MS Windows, X Window (в one-рационных системах UNIX и Linux) и Mac OS (как в классической версии, так и в OS X). Свободно распространяемый пакет расширения PMW содержит дополнительные визуальные компоненты для набора tkinter. Кроме того, существует прикладной интерфейс wxPython GUI API, основанный на библиотеке C++, который предлагает альтернативный набор инструментальных средств построения переносимых графических интерфейсов на языке Python.

Инструменты высокого уровня, такие как PythonCard и Dabot построены на основе таких API, как wxPython и tkinter. При выборе соответствующей библиотеки вы также сможете использовать другие инструменты создания графического интерфейса, такие как Qt (с помощью PyQt), GTK (с помощью PyGtk), MFC (с помощью PyWin32), .NET (с помощью IronPython), Swing (с помощью Jython - реализации языка Python на Java, которая описывается в главе 2, или JPype). Для разработки приложений с веб-интерфейсом или не предъявляющих высоких требований к интерфейсу можно использовать Jython, веб-фреймворки на языке Python и CGI-сценарии, которые описываются в следующем разделе и обеспечивают дополнительные возможности по созданию пользовательского интерфейса.

Веб-сценарии

писем электронной почты; загружать веб-страницы с указанных адресов URL; производить разбор разметки HTML и XML полученных веб-страниц; производить взаимодействия по протоколам XML-RPC, SOAP и Telnet и многое другое.

Библиотеки, входящие в состав Python, делают реализацию подобных задач удивительно простым делом.

Кроме того, существует огромная коллекция сторонних инструментов для создания сетевых программ на языке Python, которые можно найти в Интернете. Например, система HTMLGen позволяет создавать HTML-страницы на основе описаний классов Python. Пакет mod_python предназначен для запуска сценариев на языке Python под управлением веб-сервера Apache и поддерживает шаблоны механизма Python Server Pages. Система Jython обеспечивает

бесшовную интеграцию Python/Java и поддерживает серверные апплеты, которые выполняются на стороне клиента.

Помимо этого для Python существуют полноценные пакеты веб-разработки, такие как Django, TurboGears, web2py, Pylons, Zope и WebWare, поддерживающие возможность быстрого создания полнофункциональных высококачественных веб-сайтов на языке Python. Многие из них включают такие возможности, как объектно-реляционные отображения, архитектура Модель/Представление/Контроллер (Model/View/Controller), создание сценариев, выполняющихся на стороне сервера, поддержка шаблонов и технологии AJAX, предоставляя

законченные и надежные решения для разработки веб-приложений.

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

системы на языке С и C++ делает его удобным и гибким языком для описания поведения других систем и компонентов. Например, интеграция с библиотекой на языке С позволяет Python проверять наличие и запускать библиотечные компоненты, а встраивание Python в программные продукты позволяет производить настройку программных продуктов без необходимости пересобирать эти продукты или поставлять их с исходными текстами.

Такие инструменты, как Swing и SIP, автоматически генерирующие программный код, могут автоматизировать действия по связыванию скомпилированных компонентов в Python для последующего их использования в сценариях, а система Cython позволяет программистам смешивать программный код на Python и С. Такие огромные платформы на Python, как поддержка СОМ

в MS Windows, Jython - реализация на языке Java, IronPython - реализация на базе .NET и разнообразные реализации CORBA, предоставляют альтернативные способы организации взаимодействий с программными компонентами. Например, в операционной системе Windows сценарии на языке Python могут использовать платформы управления такими приложениями, как MS Word и Excel.

Приложения баз данных

Стандартный модуль pickle реализует простую систему хранения объектов, что позволяет программам сохранять и восстанавливать объекты Python в файлах или в специализированных объектах. В Сети можно также найти систему, созданную сторонними разработчиками, которая называется ZODB.

Она представляет собой полностью объектно-ориентированную базу данных

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

инструменты, такие как SQLObject и SQLAlchemy, которые отображают

реляционные таблицы в модель классов языка Python. Начиная с версии Python 2.5,

стандартной частью Python стала база данных SQLite.

Быстрое создание прототипов

оставить на языке Python, что существенно упростит сопровождение и использование такой системы.

Программирование математических и научных вычислений

Дополнительные инструменты математических вычислений для Python поддерживают возможность создания анимационных эффектов и трехмерных объектов, позволяют организовать параллельные вычисления и так далее. Например, популярные расширения SciPy и ScientificPython предоставляют дополнительные библиотеки для научных вычислений и используют возможности расширения NumPy.

Игры, изображения, искусственный интеллект, XML роботы и многое другое

• Создавать игровые программы и анимационные ролики с помощью

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

порт с помощью расширения PySerial

• Обрабатывать изображения с помощью расширений PIL, PyOpenGL,

Blender, Maya и других

• Управлять роботом с помощью инструмента PyRo

• Производить разбор XML-документов с помощью пакета xml, модуля xmlrp-

clib и расширений сторонних разработчиков

• Программировать искусственный интеллект с помощью эмулятора нейро-

сетей и оболочек экспертных систем

• Анализировать фразы на естественном языке с помощью пакета NLTK.

Можно даже разложить пасьянс с помощью программы PySol. Поддержку многих других прикладных областей можно найти на веб-сайте PyPI или с помощью поисковых систем (ищите ссылки с помощью Google или на сайте http://www.python.org).

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

Кстати, у вас проблемы с блоком питания ноутбука? Советуем вам купить блоки питания для ноутбука по очень доступным ценам. На сайте компании darrom.com.ua вы найдете блоки питания для любого ноутбука.

Расскажите о возможностях нрафики в питон, плиз)

Источник:

python-3.ru

Пишем первую программу на Python в Windows

Пишем первую программу на Python в Windows

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

Благодаря этому совету вы напишете свою первую простую программу на языке Python.

Дата: 02.11.2009 г.

Если вы работаете в MS Windows и еще не установили Python (для дальнейшего изучения) или возможно испытываете затруднения в его установке, обратите внимание на статью Как установить Python в Windows XP. В ней рассмотрена пошаговая установка Python в операционную систему MS Windows XP.

Так уж вышло, что обучение любому языку программирования начинается с написания простой программы, выводящей на экран надпись "Hello world!" ("Здравствуй, мир!"). По традиции, мы начнем с этого и даже пройдем немного подальше.

Итак, для написания нашей программы, мы будем использовать IDLE, поставляемую с Python. Запустить ее вы сможете, выполнив "Пуск" -> "Все программы" -> "Python x_версия" -> IDLE (Python GUI)

Результатом будет появившееся окно Python Shell:

Откроем "File" -> "New window" (или нажмем комбинацию клавиш Ctrl+N). Появится окно редактора: в котором мы напишем следующий код:

Теперь сохраним наше творение в файл и назовем его first.py. Для этого выберем "File" -> "Save As.." или просто нажмем комбинацию клавиш Ctrl+Shift+S.

Файл мы сохранили, теперь самое время попробовать выполнить его и посмотреть результат. Для этого нажимаем в меню "Run" -> "Run Module" или просто нажмем на клавишу F5.

Результатом нашего действия будет появившееся окно Python Shell и, затем, появившаяся строчка "Hello world!"

Как мы видим, Python корректно обработал код программы и она выполнилась успешно.

Если вы допустите какую-нибудь ошибку в коде, Python сообщит вам об этом. Я попытался выполнить код: primt "Hello word!" и получил в ответ ошибку:

Как видим, Python сообщил о синтаксической ошибке в коде. При написании кода программ следите за корректностью написания команд. Но если вы ошибетесь, то в этом нет проблемы - Python "ткнет вас носом" в строку с ошибкой.

Что же, наша первая программа работает и давайте попробуем немного ее изменить. Во-первых добавим в нее комментарии, а, во-вторых, сделаем так, чтобы после вывода строки "Hello world!" компьютер ожидал от нас нажатия на любую клавишу и после этого завершал работу программы.

Запомните! Все строки, начинающиеся со знака # являются строками с комментариями. Если при выполнении кода Python встречает такие строки, он просто пропускает их. Комментирование своего кода является признаком хорошего тона у программистов и, я думаю, что вы оцените важность и удобность комментирования кода.

Наберите следующий код: # Our first program on Python

raw_input("\nPress the enter key to exit.") и, предварительно сохранив (а без этого Python не даст вам выполнить созданное) его, нажмите на F5. Результатом выполненного у вас будет вид:

Нажмите любую клавишу и программа завершит свою работу.

Как вы видите, комментарии в коде, как и положено им, не выводились на экран. А после вывода строки "Hello world!", через пустую строку (ее создал управляющий символ \n, находящийся перед фразой Press the enter. ), появилась строка: Press the enter key to exit. и система замерла в ожидании ваших действий. После того, как вы нажали на любую клавишу, программа завершила свою работу.

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

Похожие статьи:

Мы в социальных сетях:

Все права на материалы, находящиеся на сайте, охраняются в соответствии с законодательством РФ.

При любом использовании материалов сайта письменное согласие обязательно.

Источник:

www.ithowto.ru

Программирование на Python: от новичка до профессионала, Библиотека программиста

Программирование на Python: от новичка до профессионала

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

Что делать?

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

1. Первым делом изучите основы. Узнайте, что такое переменные, управляющие структуры, структуры данных. Эти знания необходимы без привязки к конкретному языку.

2. Займитесь изучением литературы. Начните с классики – Dive into Python. Эта книга вообще может стать настольной. Еще можно почитать Майкла Доусона «Программируем на Python» и Алексея Васильева «Python на примерах. Практический курс по программированию». Доусон – опытный программист и преподаватель, а в книге учит программировать, создавая простые игры. В книге Васильева, напротив, больше внимания уделяется основам и теории.

3. Практикуйтесь. Можно (и нужно) делать это параллельно с изучением теории. Пройдите курс Learn Python на Codecademy: вся необходимая для выполнения заданий теория подается прямо во время заданий. Как вариант, можно посетить Питонтьютор – бесплатный интерактивный курс по Python на русском.

Также есть хорошие курсы на Stepik:

4. Пройдите курс «Введение в компьютерные технологии и программирование на языке Python» от MIT.

5. Узнайте, какие библиотеки и инструменты и для каких целей используют другие питонисты. Найдите что-то интересное для себя.

6. Если вас интересуют веб-технологии, обратите внимание на фреймворки Flask и Django. Узнайте, для каких целей какой из них лучше подходит, начните изучать тот, что подходит вам.

7. Узнайте, как получать и анализировать массивы данных с отдельных сайтов, со всего Интернета и вообще откуда угодно – только старайтесь держаться в рамках закона.

8. Ищите информацию о методах машинного обучения.

9. Оптимизируйте работу с инструментами, автоматизируйте рутину и все, что еще не автоматизировано.

Куда сходить?

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

Полезные ресурсы Python Tutor

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

Bucky Roberts на YouTube

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

Derek Banas про Python на YouTube

Дерек – программист-самоучка, и у него свой взгляд на подход к изучению языков программирования. Он делает небольшие видеообзоры на различные языки длиной в 40-60 минут, в которых рассказывает все, что нужно, чтобы в общих чертах понять назначение языка.

Corey Schafer на YouTube

У Кори хорошие видео на тему форматирования строк, генераторов, программистских терминов (комбинации и перестановки, DRY, замыкания) и многого другого, что поможет понять основные концепции.

Django Getting Started

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

Введение во Flask

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

Полезные ссылки

Python 3 для начинающих

Знающему основы для углубленного изучения

М. Лутц «Программирование на Python, 4-е издание» (2011, PDF): первый том, второй том

Программирование компьютерного зрения на Python (2016)

Профессионалу

Много всего на Хабрахабре

Видеоматериалы Другие статьи по теме

Похожие статьиБольше от автора

Создаем бота в Facebook на Python менее чем за 60 минут

Странности языка Python, которые могут вас укусить

21 урок из курса по глубокому машинному обучению от Andrew Ng 6 Комментарии

Ценность статьи минимальная. Переводчики даже не удосужились адаптировать статью для русскоязычной аудитории.

Вы б ради приличия, прошлись по курсам питона в русскоязычном сегменте. Например, эти:

[…] Data Scientist’а в 2017 Как научиться data science? Программирование на Python: от новичка до профессионала Путь Python Junior-а в 2017 Машинное обучение за год Большая […]

[…] Программирование на Python: от новичка до профессионала […]

я не понимаю зачем вы советуете устаревшие источники с устаревшей информацией + никому ненужной??

Что является на ваш взгляд устаревшей информацией? Python 2 все еще где-то используется, например.

[…] Программирование на Python: от новичка до профессионала […]

Источник:

proglib.io

Простое» программирование на python

Информационный портал по безопасности «Простое» программирование на python

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

В статье заимствуются примеры и/или концепции из библиотеки funcy . Во-первых, она клевая, во-вторых, вы сразу же сможете начать ее использовать. И да, нам понадобится ФП.

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

Напишем функцию-фильтр, которая возвращает список элементов с тру-значениями.

Сделаем ее чистой:

Теперь можно вызвать ее лярд раз под ряд и результат будет тот же.

Функции высшего порядка

Это такие функции , которые принимают в качестве аргументов другие функции или возвращают другую функцию в качестве результата.

Мне пришлось переименовать функцию, потому что она теперь куда полезнее:

Заметьте, одна функция и делает уже много чего. Вообще-то, она должна быть ленивой, делаем:

Вы заметили, что мы удалили код, а стало только лучше? Это лишь начало, скоро мы будем писать функции только по праздникам. Вот смотрите:

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

Частичное применение

Это процесс фиксации части аргументов функции, который создает другую функцию, меньшей арности. В переводе на наш это functools.partial .

Я понимаю, что это все азы ФП, но хочу отметить, что мы не написали ничего нового: мы взяли уже готовые функции и сделали другие. Основа новых — очень маленькие, простые, легкотестируемые функции, мы можем без опаски использовать их для создания более сложных.

Композирование

Такой простой, крутой и нужной штуки в python нет. Ее можно написать самостоятельно, но хотелось бы вменяемой сишной имплементации :(

Теперь мы можем делать всякие штуки (выполнение идет справа налево):

Это прежние версии map и filter из второй версии python. Теперь, если вам понадобится неленивый map , вы можете вызвать mapv . Или по старинке писать чуть больше кода. Каждый раз.

Функции compose и partial прекрасны тем, что позволяют переиспользовать уже готовые, оттестированные функции. Но самое главное, если вы понимаете преимущество данного подхода, то со временем станете сразу писать их готовыми к композиции.

Это очень важный момент — функция должна решать одну простую задачу, тогда:

  • ее будет проще тестировать

  • просто читать и менять

    Задача: дропнуть None из последовательности.

    Обратите внимание: без разницы как называется переменная в выражении. Это настолько неважно, что большинство программистов тупо пишут x , чтобы не заморачиваться. Все пишут этот бессмысленный код раз за разом. Каждый цензура раз: for , in , if и несколько раз x — потому что для компрехеншена нужен scope и у него есть свой синтаксис. Мы пишем: на каждую итерацию цикла присвоить переменной значение. И оно присваивается, и проверяется условие.

    Мы каждый раз пишем этот бойлерплейт и пишем тесты на этот бойлерплейт. Зачем?

    Все. Никакого лишнего кода. Мне приятно такое читать, потому что этот код ( no_none = filter_none(seq) ) очень простой. То, как работает это функция, мне нужно прочитать ровно один раз за все время в проекте. Компрехеншен вам придется читать каждый раз, чтобы точно понять что оно делает. Ну или засуньте ее в функцию, без разницы, но не забудьте про тесты.

    Довольно частая задача получить значения по ключу из массива словарей.

    Кстати, работает очень быстро, но мы снова написали кучу ненужной фигни. Перепишем, чтобы работало еще быстрее:

    А как часто мы это будем делать?

    А если у нас объекты? Пф, параметризируй это:

    Представим себе простой генератор:

    Тут полно бойлерплейта: мы создаем пустой список, затем пишем цикл, добавляем элемент в список, отдаем его. Кажется, я буквально перечислил все тело функции :(

    Правильным решением будут использование filter(pred, seq) или map(func, seq) , но иногда нужно сделать что-то сложнее, т.е. генератор написать действительно нужно. А если результат всегда нужен в виде списка или тапла? Да легко:

    Это параметрический декоратор, работает он так:

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

    Обратите внимание, я использовал уже существующую compose . Результат — новая функция, которую никто не писал.

    Куча новых функций по цене одной! И я убрал бойлерплейт, функция стала меньше и намного симпатичнее.

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

  • пишите чистые функции, они обеспечат стабильность программы

  • пишите функции высшего порядка, код станет намного компактнее и надежнее

  • композируйте, декорируйте, частично применяйте, переиспользуйте код

  • используйте сишные либы, они дадут скорости вашему софту

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

    С чего начать?

  • обязательно ознакомьтесь с itertools , functools , operator , collections , в особенности с примерами в конце

  • загляните в документацию funcy или другой фпшной либы, почитайте исходный код

  • напишите свой funcy, весь он сразу вам не нужен, но опыт очень пригодится

    В моем случае, использование ФП началось со знакомства с clojure — это штука капитально выворачивает мозги, настоятельно рекомендую посмотреть хотя бы видосы на ютубе .

    Clojure как-то так устроен, что вам приходится писать проще, без привычных нам вещей: без переменных, без любимого стиля "романа", где сначала мы раскрываем личность героя, потом пускаемся в его сердечные проблемы. В clojure вам приходится думать %) В нем только базовые типы данных и "отсутствие синтаксиса" (с) . И эту "простую" концепцию, оказывается, можно портировать в python.

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

    Я люблю Python. Нет, правда, это отличный язык, подходящий для широкого круга задач: тут вам и работа с операционной системой, и веб-фреймворки на любой вкус, и библиотеки для научных вычислений и анализа данных. Но, помимо Python, мне нравится функциональное программирование. И питон в этом плане неплох: есть замыкания, анонимные функции и

    Поводом для написания статьи стал интерес к возможностям анонимных функции в Delphi. В разных источниках можно найти их теоретические основы, информацию о внутреннем устройстве, а вот примеры использования везде даются какие-то тривиальные. И многие задают вопросы: а для чего вообще нужны эти reference, какая может быть польза от их применения?

    Рич Хикки, автор языка Clojure, недавно придумал новую концепцию — Трансдьюсеры. Их сразу добавили в Clojure, но сама идея универсальна и может быть воспроизведена в других языках. Сразу, зачем это нужно: трансдьюсеры могут улучшить производительность, т.к. позволят не создавать временные коллекции в цепочках операций map.filter.takeWhile.etc

    Всем известно, что функциональное программирование распространяется с быстротой огня по современным языкам программирования. Недавние примеры — Java 8 и C++, оба из которых теперь поддерживают лямбда-функции. Итак, начнём (и да прибудет с нами веселье). Этот текст также доступен в виде слайдов на Slideshare. На написание этой статьи автор был

    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

    Источник:

    security-corp.org

  • Программируем На Python в городе Набережные Челны

    В представленном каталоге вы можете найти Программируем На Python по разумной цене, сравнить цены, а также изучить похожие книги в категории Компьютеры и интернет. Ознакомиться с параметрами, ценами и обзорами товара. Доставка может производится в любой населённый пункт России, например: Набережные Челны, Ярославль, Иваново.