Советы и лайфхаки

Платформа программирования – Категория:Платформы программирования — Википедия

Содержание

Компьютерная платформа — Википедия

У этого термина существуют и другие значения, см. Платформа.
Возможно, эта статья содержит оригинальное исследование.Добавьте ссылки на источники, в противном случае она может быть выставлена на удаление.
Дополнительные сведения могут быть на странице обсуждения. (13 мая 2011)
В Викисловаре есть статья «платформа»

Компьютерная платфо́рма — в общем смысле, это любая существующая среда выполнения, в которой должен выполняться вновь разрабатываемый фрагмент программного обеспечения или объектный модуль с учётом накладываемых этой средой ограничений и предоставляемых возможностей. Термин платформа может применяться к разным уровням абстракции, включая определенную аппаратную архитектуру, операционную систему или библиотеку времени выполнения[1].

Содержание

  • 1 Аппаратная платформа
  • 2 Программная платформа
  • 3 Кроссплатформенное программное обеспечение
  • 4 См. также
  • 5 Примечания
  • 6 Литература
  • 7 См. также
  • 8 Ссылки

Аппаратная платформа[

ru.wikipedia.org

Программная платформа Википедия

У этого термина существуют и другие значения, см. Платформа.

Компьютерная платфо́рма — в общем смысле, это любая существующая среда выполнения, в которой должен выполняться вновь разрабатываемый фрагмент программного обеспечения или объектный модуль с учётом накладываемых этой средой ограничений и предоставляемых возможностей. Термин платформа может применяться к разным уровням абстракции, включая определенную аппаратную архитектуру, операционную систему или библиотеку времени выполнения[1].

Аппаратная платформа

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

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

Программная платформа

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

При рассмотрении совместимости, или сходства, на уровне операционных систем, например, системных вызовов, файловых систем и пользовательской среды, при сравнении родственных операционных систем (например, UNIX) или семейства (например, Microsoft Windows), речь идет о совместимости на уровне API операционной системы, например, в рамках семейства ОС, а не абстрактного понятия «платформы»

Примеры платформ ОС
  • Win32 — Win32 API,
  • API POSIX для ОС UNIX/Linux.

Кроссплатформенное программное обеспечение

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

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

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

Примеры

См. также

Примечания

Литература

  • Э. Таненбаум. Архитектура компьютера = Structured Computer Organization. — 5-е изд. (Классика Computer Science). — СПб.: Питер, 2007. — С. 848. — ISBN 5-469-01274-3.
  • Барри Брэй. Микропроцессоры Intel: 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, Pentium Pro Processor, Pentium 4. Архитектура, программирование и интерфейсы. — 6-е изд. — СПб.: БХВ-Петербург, 2005. — С. 1328. — ISBN 5-94157-422-3.

См. также

Ссылки

wikiredia.ru

Выбор технологии и платформы программирования / Песочница / Хабр

У каждого начинающего программиста возникает вопрос: на каком языке остановиться и продолжить его углубленное изучение. Чтобы облегчить выбор данная краткая статья может помочь начинающим (и не только) разобраться во всем этом.
Adobe AIR

Эта технология можно сказать перенесла веб-программистов на рабочий стол пользователя, позволяя создавать оконные приложения, функционирующие с ОС конечного пользователя. Вообще AIR — это кроссплатформенная среда и позволяет писать программы как и для PС, так и для планшетов и мобильных телефонов. К сожалению, программы написанные для Desktop не запустятся на планшете Android или IPad.

AIR предлагает программистам писать свои приложения на 2 языках: JavaScript и ActionScript. Первый вариант (по моему опыту) тормозит систему (особенно на Linux), что нельзя сказать про ActionScript, использующий в качестве отображения технологию Flash.

Для создания приложений используется IDE Flex Builder, позволяющий единожды написав код, скомпилировать его для 3 платформ: Android, IOS, BlackBerry OS.

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

.NET

Что не говори, но со статистикой не поспоришь. Операционка Windows давно оставила позади своих конкурентов. И логично предположить, что приложение написанное даже на кроссплатформенной технологии AIR в основном будет затачиваться для Windows. Если вы хотите писать первоклассные приложения взаимодействующее со всеми узлами и технологиями Windows без всяких усилий, то рекомендую .NET. Эта платформа позволяет писать приложения легким способом. Например, язык C#, являющийся основным в .NET, ничуть не труднее Java или ActionScript. Если вы знакомы с C-подобным синтаксисом, то с легкостью освоите этот язык.

.NET позволяет также писать оконные приложения нового поколения — WPF. Эта технология позволит по новому взглянуть на формы Windows, которые напоминают больше HTML-страницу, чем прежние WindowsForms, благодаря DirectX.

Так как Windows полностью пропитан .Net Framework, то разработчик .NET может работать также и с сервером на Windows — благодаря ASP.NET. В паре с Silverlight — можно проделать сногсшибательные проекты.

.NET рекомендована разработчикам Windows, но её можно использовать и на Linux благодаря Mono. И все же эта затея не рекомендована, так как Mono в данный момент не поддерживает технологию WPF.

Python with Qt

Изучая Python вы поймете, что на свете не все похоже на C++. Язык Python настиг меня, когда я приобрел мини-компьютер Raspberry PI. Должен сказать, что Python — это один из легких языков при изучении. Но в золотых руках программиста этот язык превращается в сказку. Преимущество питона не в том, что он делает с данными (это могут делать и другие языки), но в том что он делает с кодом. Благодаря лямбда-выражениям вы легко сможете модифицировать ваш код на лету.

Еще одной важной особенностью Python является подключение к другим языкам программирования, если реализация на питоне не имеет возможности. К таким языкам относятся — C, LISP и т.д.

Ну конечно, оконные приложения тоже не чужды Python’у. Разработчик Питона может сам выбрать какие GUI ему использовать. Но я рекомендую Qt.

Мир не стоит на месте. Языки программирования совершенствуются. Появляются новые языки. И выбирать технологию или язык не имеет смысла — они выберут вас сами, когда наступит время. Но в процессе поиска, я надеюсь, вы наберетесь опыта, который позволит вам с легкостью осваивать новые технологии и языки.

habr.com

Обзор современных платформ программирования

ТОП 10:

Turbo Pascal (Турбо Паскаль). Процедурно-ориентированный язык. Усовершенствованная версия языка Pascal, изобретенного еще в 60-х годах. В настоящее время используется в качестве учебного языка во всех высших и средних учебных заведениях, а также в школах. Этот язык знает любой программист. На основе синтаксиса Паскаля были созданы другие более функциональные языки, но уже с объектно-ориентированным принципом программирования (Object Pascal, Delphi).

C (Си). Си является стандартизированным процедурным языком. Разработан был еще в 1970-х годах. Создавался специально для использования в ОС Unix, но впоследствии был модифицирован и портирован на другие операционные системы. Ценят Си за его эффективность. Си — самый популярный язык для создания системного ПО, а также прикладных программ.

С++ (Си++). Является компилируемым, строго типизированным языком общего назначения. Поддерживает процедурный, функциональный, обобщенный и объектно-ориентированный принцип программирования. С++ используют для написания сложных приложений. Для работы с С++ на платформе IBM PC наиболее популярна система Turbo C++ американской фирмы Borland.

С# (C-Sharp — Си-Шарп). Объектно-ориентированный язык программирования высокого уровня. Также поддерживает контекстно-ориентированную концепцию. Этот язык — своеобразный помощник программистам, работающим с языками C и C++. Он помогает более эффективно создавать Интернет-приложения для платформы Microsoft.NET. Имеет С-подобный синтаксис и по своему характеру напоминает С++ и Java.

Java (произносится Джава или Ява). Один из самых простых и понятных ЯП. Язык является объектно-ориентированным, высокоуровневым. Изначально был разработан для бытовой электроники и назывался Oak, но позже был переименован в Java и сейчас используется для написания серверного ПО, апплетов и приложений. Синтаксис Java максимально приближен к синтаксису С++, но принцип работы Java совсем другой.

PHP (PHP: Hypertext Preprocessor — PHP: гипертекстовый препроцессор). Рефлексивный язык программирования. Был разработан для работы с базами данных и создания динамических веб-страниц. Однако сейчас PHP в основном используется для верстки сайтов и создания веб-приложений. Благодаря своей функциональности, простоте и скорости выполнения PHP является популярнейшим скриптовым языком для программирования в области сети Интернет.

Perl (Practical Extraction and Report Language). Многоцелевой язык. Создавался в помощь Unix-утилитам. Он решает системные задачи, с которыми не могли в полной мере справиться существующие тогда Unix-утилиты, такие как sed и awk. В настоящее время Perl содержится в любом дистрибутиве Linux и прочих Unix-системах. Также теперь он портирован на Windows и многие другие платформы. Perl используется всеми администраторами мира для автоматизации пользовательских повседневных задач.

HTML (HyperText Markup Language). Язык гипертекстовой разметки. Производит статическое размещение страниц в сети Интернет. Абсолютное большинство всех веб-страниц написаны на языке HTML (или XHTML). Интернет-браузер интерпретирует HTML и выводит его программный код в понятном для человека виде (в виде документа).

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

Инструментальные средства создания

Это и есть работа по созданию сайта. На этом этапе проводится подготовка текстового и графического материала (печать, сканирование). Материал разби-вается по файлам в соответствии со структурой. Организуются ссылки между файлами сайта. Рекомендуется создать шаблон-заготовку страницы с основными структурными областями и стилевым оформлением и использовать ее для создания всех страниц узла. Меняйте в каждой новой странице только содержимое и адресацию ссылок, такая организация работы сократит время, потраченное на каждую из них.ТестированиеЗавершив работу по размещению страниц на Web-сайте, необхо-димо выполнить тестирование. Оно состоит из двух этапов: тестирование на работоспо-собность и тестирование на удобство пользования интер-фейсом. На этапе тестирования на работоспособность прове-ряют, как функционирует Web-сайт, используя те же условия, при которых с ним будет работать пользователь. Пора-ботайте с Web-сайтом в различных браузерах и посмот-рите, как выглядит Ваш сайт в каждом из них. Постарайтесь оценить время загрузки страниц, что очень важно.Публикация Готовый Web-сайт необходимо опубликовать на Web-сервере, чтобы он был доступен через Internet. Если ваш сайт создан посредством редактора Front-Page, то на сервере должны быть инсталлированы серверные расширения FrontPage, что обеспечит полную поддержку доступных в FrontPage ком-понентов, которые были помещены на странице в процессе создания сайта. Однако для того чтобы окончательно выбрать сервер для размещения своего сайта необходимо обратить внимание на следующее: отсутствие дискриминации по контенту. надежность Web-сервера, отсутствие скрытых завуалированных видов оплаты места в виде всевозможных доплат за различные услуги и рекламы;техническая поддержка. объем выделяемого Вам пространства. дополнительные возможности. какое программное обеспечение установлено на сервере. есть ли на сервере автоматическая перекодировка содержимого страниц, в соответствии с пользовательскими настройками браузера. Рекламирование сайтаСуществует множество приемов рекламирования сайта: размещение информации о нем на поисковом Web-сайте, организация взаимных ссылок с другими сайтами и т.д. Как привлечь пользователя? Красиво оформленные страницы Web-сайта – это только половина дела. В первую очередь страницы должны быть содержательными. Основное требование к содержимому Web-сайта – полнота и достоверность. Информация должна быть представлена таким образом, чтобы пользователь, однажды посетивший Web-сайт, еще ни раз обратился к нему.Сопровождение сайтаСодержимое Web-сайта может подвергаться неоднократным изменениям. Важно, чтобы предоставляемая на Web-сайте информация всегда была актуальной, поэтому как можно чаще обновляйте информацию на своем Web-сайте, по возможности расширяйте материал, улучшайте дизайн.

Основы web-дизайна

Как театр начинается с вешалки, так и web-дизайн начинается с определения целей и задач будущего сайта. Зачем нужен сайт? На какую аудиторию рассчитан? Каких результатов позволит добиться?Ответы на эти и подобные вопросы и должны лечь в формирование основы web-дизайна проекта. Под термином «web-дизайн» принято понимать совокупность работ по разработке логической структуры и художественного оформления веб-страниц. Задачей web-дизайна является обеспечение удобной подачи информации пользователю сайта или web-приложения, удовлетворение эстетического вкуса аудитории. Современный web-дизайн начинается с разделения оформления и содержания. Благодаря такому подходу вносить изменения в содержание сайта, не затрагивая его дизайн, или же изменять дизайн, не изменяя содержание, стало намного легче. Во многом этому способствуют современные системы управления контентом – CMS. Основы web-дизайна закладываются на этапе разработки технического задания – документа, описывающего требования относительно визуального представления и структуры сайта. В техническом задании также зачастую описываются пожелания касательно программной реализации сайта. После разра-ботки и утверждения техзадания начинается этап разработки дизайна. И первое, что необходимо сделать – это создать модульную сетку. Модульная сетка описывает расположение элементов на страницах сайта. Модульная сетка любой web-страницы содержит, как минимум, два блока: для основного теста сайта и для меню. Если на странице нужны дополнительные элементы, например, еще одно меню, «подвал» («footer») или «хедер» («header»), то модульная сетка разбивается еще на несколько блоков. Размеры блоков модульной сетки подбираются индивидуально и могут быть какими угодно. Однако следует учитывать, что согласно требованиям юзабилити, появление горизонтальной полосы прокрутки при просмотре страницы недопустимо – это негативно сказывается на восприятии сайта посетителями. Поэтому в совокупности ширина блоков не должна превышать максимальной ширины экранов представителей целевой аудитории сайта. В блоке «хедер» принято указывать название сайта, которое может быть выбрано в соответствии с названием компании или именем автора, а также при необходимости логотип сайта. Основной блок меню в европейских сайтах традиционно расположен слева, в соответствии с направлением письменности (слева-направо). Также основное меню может быть расположено сверху, под «хедером». Если сайт рассчитан для просмотра на экранах с разным разрешением, то web-дизайн, как правило, выполняется «резиновым» или же центрируется по горизонтали. Когда информационная модель будущего сайта готова, можно приниматься за художественную часть web-дизайна. Обычно web-дизайн выполняется в виде шаблонов – определенных наборов элементов и их взаимосвязей. Именно шаблоны позволяют отделить разработку визуального дизайна сайта от содержания. Различают шаблон главной и шаблоны типовых страниц сайта. Шаблон главной страницы оформляется, как правило, более «затейливо», а шаблоны остальных страниц сайта лишь поддерживают основную идею. Разработанный в графическом редакторе шаблон верстается в html-файл. При помощи тэгов языка html и таблиц стилей css задаются все необходимые параметры страницы: размещение элементов, цвет и размеры шрифтов, цвет фона и т.д. Работа над шаблоном требует обязательного теста на кросс-браузерность, т.е. на совме-стимость с различными браузерами и их версиями. Разные браузеры могут по-разному интерпретировать код html, поэтому такое тестирование необходимо, чтобы избежать возможного «развала» дизайна. Протестированный и полностью готовый к работе дизайн сайта «прикрепляется» к функциональной «канве», созданной веб-программистами. В случае использования CMS, разрабо-танные шаблоны «зака-чиваются» в соответствующую папку на сервере – и все, сайт готов для наполнения.

 

 




infopedia.su

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

Кт1 22.11.2012 на конс

1.вопросы из лк

2.воросы по среде разработки (на выбор)

Кудрявцева и Левыкин візуальні мови среди розробки та програмування, Хамоненко

Вопросы:

1.визуальная среда разработки приложений

2.обьектно ориентированное программирование в среде (основные принципы, как они реализуются в среде)

3. создание и состав проекта, создание простейших приложений, компиляция выполнения проекта

4.Основные понятии языка программирования (алфавит, словарь языка, структура программы)

5.Типы данных языка (общая хар-ка и тд)

6. операторы языка (классификация, основные операторы, процедуры, функции)

7. выражение языка программирования (конструкция выражений и основные функции кот поддерживаются)

Кт 2 11.12.2012 на лк

Winforms , ASP. NET, Web Services – на самостоятельное подробное изучение, осн понятия, определения, архитектура (хотя бы составляющие), причины возникновения, преимущества и надостатки

Вопросы только из лк ADO.NET,EntityFramework,LINQ

WPF, WCF, WWF, Atlas. Рассмотреть архитекуру

XML, JSON, SOAP, MVC4 – обзорно.

Преподаватель: Кудрявцева Марина Сергеевка, доц. каф. ИУС.

13 лекций, 5 лабораторных, 2 контрольные точки, зачет, самостоятельное задание.

Список литературы:

  1. Уоткинз Д., Ханнонд М., Эйбранз, Е. «Программирование на платформе Dot.Net», 2003 г.

  2. Хомоненко А.Д. «Самоучитель Delphi.Net», 2006 г.

  3. Рихтер Дж. «Программирование на платформе Microsoft Dot.Net Framework», 2006 г.

  4. Рихтер Дж. «программирование на языке C# via Dot.Net»

Лекция №1 04.09.2012

  1. Визуальные языки и среды разработки приложений.

    1. Классификация визуальных языков программирования.

    2. Характеристика языков программирования.

  2. Операционные системы и платформы программирования.

  3. Архитектура операционных систем и систем программирования.

    1. Архитектура ОС Windows.

    2. Архитектура Microsoft .Net

Визуальные языки и среды разработки приложений. Классификация.

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

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

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

  1. Машинно-ориентированные языки низкого уровня программирования (автокоды и ассемблеры). Имеют связь с внешними устройствами ЭВМ.

  2. Процедурно-ориентированные машинно-независимые языки высокого уровня программирования (Fortran, Algol, Kobol).

  3. Проблемно-ориентированные языки высокого уровня программирования (GPSS, Statistica).

  4. Объектно-ориентированные языки (Visual Basic, Borland Delphi, C++, C#, Java, J#).

  5. Проблемно-ориентированные языки (sql, plsql) – языки для ведения баз данных.

  6. Веб-ориентированные языки (html, xml, java) для программирования в среде Internet.

.Net (New Extended Technology) – модель программирования с управляемым кодом от Microsoft, нацеленная на создание приложений для клиентов Windows, серверов, а так же мобильных и встраиваемых устройств.

Технология .Net обладает улучшенной функциональной совместимостью, и в ее основе лежит использование открытых стандартов Internet. Разработчикам программного обеспечения (веб-приложения, серверные приложения, приложения баз данных, приложения интеллектуальных клиентов, консольные приложения) технология .net предоставляет новую программную платформу и инструментальные средства, в которых основную роль играет язык xml.

Характеристика языков программирования.

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

Операционные системы и платформы программирования.

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

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

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

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

Взаимодействия пользователя с ОС осуществляется, как правило, через графический интерфейс. Средства организации графического интерфейса позволяют пользователю работать с окнами и элементами управления, обеспечивают обработку команд пользователя, поступающих от манипуляторов.

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

studfiles.net

Программная платформа — это… Что такое Программная платформа?


Программная платформа

Платфо́рма (компьютерная) — совокупность компьютеров, совместимых между собою в том или ином смысле.

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

Аппаратная платформа

Рассматривается совместимость с точки зрения аппаратных компонент, работы шин и т.п. Аппаратную платформу называют также архитектурой. Примером аппаратной платформы является IBM PC.

Платформа процессора

Основная статья: Архитектура системы команд

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

Платформа операционной системы

Рассматривается совместимость или сходство на уровне операционных систем, например, системных вызовов, файловых систем и пользовательской среды. Примером платформы операционной системы является POSIX.

Сочетание этого толкования и платформы процессора приводит к понятию совместимости на уровне исполняемых файлов.

Виртуальные машины

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

Ссылки

Wikimedia Foundation. 2010.

  • Программная библиотека
  • Программная лицензия университета Беркли

Смотреть что такое «Программная платформа» в других словарях:

  • Java (программная платформа) — Не следует путать с JavaScript. Программная платформа Java ряд программных продуктов и спецификаций компании Sun Microsystems, ранее независимой компании, а ныне дочерней компании корпорации Oracle, которые совместно предоставляют систему для… …   Википедия

  • Национальная программная платформа — Эта статья предлагается к удалению. Пояснение причин и соответствующее обсуждение вы можете найти на странице Википедия:К удалению/23 ноября 2012. Пока процесс обсуждени …   Википедия

  • аппаратно-программная платформа — 3.1 аппаратно программная платформа: Единый комплекс средств вычислительной техники и системных программ. Источник …   Словарь-справочник терминов нормативно-технической документации

  • Microsoft Tablet PC — HP Compaq tablet PC с поворотным экраном Microsoft Tablet PC  аппаратно/программная платформа, представляющая собой бесклавиатурный или клавиатурный планшетный компьютер, который благодаря операционной системе Microsoft Windows Tablet …   Википедия

  • S40 — Series 40 S40 (Series 40, Nokia Series 40) наиболее широко используемая программная платформа и интерфейс пользовательских приложений для широкого спектра телефонов Nokia среднего класса …   Википедия

  • .NET Framework — Для термина «.NET» см. другие значения. .NET Framework Тип Комп …   Википедия

  • Смартфон — Samsung Galaxy Nexus  смартфон на базе Android OS …   Википедия

  • Список поглощений Oracle — Эта страница информационный список. В данном списке приводятся сведения об опубликованных поглощениях, осуществлённых корпорацией Oracle, включая приобретение компаний и отдельных подразделений …   Википедия

  • Mobilinux — Разработчик MontaVista Software Семейство ОС Unix like …   Википедия

  • ГОСТ Р 53622-2009: Информационные технологии. Информационно-вычислительные системы. Стадии и этапы жизненного цикла, виды и комплектность документов — Терминология ГОСТ Р 53622 2009: Информационные технологии. Информационно вычислительные системы. Стадии и этапы жизненного цикла, виды и комплектность документов оригинал документа: 3.1 аппаратно программная платформа: Единый комплекс средств… …   Словарь-справочник терминов нормативно-технической документации


dic.academic.ru

Языки программирования и фреймворки, которые вам стоит изучить

В этой статье вы найдете краткий перечень новых релизов web технологий, которые мы считаем наиболее важными.

Тренды

Переход от back-end к front-end

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

Быстрые релизы новых версий браузеров

Еще одним значительным достижением стал выпуск браузера Edge. Этот преемник Internet Explorer имеет обновленный интерфейс и более высокую производительность. От IE его отличает то, что он характеризуется таким же коротким периодом времени между выходом обновленных версий, что и Firefox и Chrome. Это способствует развитию сообщества JavaScript-разработчиков, так как обновления JavaScript и новые веб-стандарты становятся доступны в браузерах спустя несколько недель, а не лет.

Смерть Flash

Это наконец-то случилось! YouTube перешел на HTML5, оставив в прошлом Flash-плеер. Firefox начал по умолчанию блокировать плагины Flash. Даже мощный пакет Adobe Flash был переименован в Adobe Animate и по умолчанию экспортирует содержимое в HTML5. Это открывает новые возможности для веб-платформ:

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

Выпущен Python 3.5, в котором реализовано большое количество новых функций, таких как Asyncio, которая предоставляет подобный Node.js цикл событий и подсказки по типам. В целом Python 3 приобретает все большую популярность, и мы настоятельно рекомендуем его вместо старого Python 2.

PHP 7 является новой версией, которая исправляет ряд проблем и вводит новые возможности (обзор). PHP 7 примерно в два раза быстрее, чем PHP 5.6, что имеет значительное влияние на крупные современные web технологии, базы кода и CMS системы, такие как WordPress и Drupal.

Мы рекомендуем PHP The Right Way, который обновлен до версии 7. А если вам нужно еще больше скорости, попробуйте HHVM, который используется Facebook.

JavaScript также получил обновления в виде стандарта ES2015 (ранее известного, как ES6). Он открывает перед нами новые захватывающие возможности и вводит некоторые дополнения к языку. Благодаря браузерам, которые следуют политике быстрых релизов, поддержка ES2015 уже сегодня находится на довольно высоком уровне. Кроме этого есть Babel.js, который поможет адаптировать код под старые браузеры.

Node.js претерпел много изменений, включая разделение сообщества Node.js и io.js, а затем повторное объединение. На сегодняшний день мы имеем активно поддерживаемый проект с большим количеством участников и двумя версиями Node — релиз LTS (долгосрочная поддержка), который обеспечивает стабильность для долго функционирующих проектов и крупных компаний, а также релиз, который позволяет быстро добавлять новые функции JavaScript.

Swift 2 — это видение компании Apple современного языка программирования, которое упрощает разработку приложений под iOS и OS X. Swift стал программным обеспечением с открытым исходным кодом и уже был импортирован на Linux. Это означает, что теперь на нем можно разрабатывать серверное и back-end программное обеспечение.

Go 1.5 внес ряд существенных изменений в архитектуру. В 2015 году он приобрел значительную популярность и был применен в некоторых ведущих стартапах и проектах с открытым исходным кодом. Сам язык является относительно простым.

TypeScript является статически типизированным языком, который компилируется в JavaScript. Он разрабатывается Microsoft и идеально интегрируется с Visual Studio и открытым редактором Visual Studio Code. По всей видимости, он станет довольно популярным основным понятием web технологий, так как готовящийся к релизу Angular 2 написан именно на нем. Статические типы обеспечивают такие преимущества, как возможность задействовать команды и работать с большими базами кода. Так что, если хотя бы один из этих факторов для вас актуален, вы должны попробовать TypeScript.

Ради развлечения можно попробовать один из функциональных языков, таких как Haskell или Clojure. Есть также интересные языки с высокой производительностью, такие как Rust и Elixir. Если вы ищете работу программиста, изучение таких языков, как Java (который в 8-й версии получил ряд интересных функций) и C# (который благодаря Visual Studio Code и .net core теперь может запускаться на различных платформах) может стать отличным вложением вашего времени.

Изучите один или несколько из этих языков программирования: Python 3, Go, PHP 7, ES2015, Node.js, Swift, TypeScript

JavaScript-фреймворки

JavaScript является важной частью веб-разработки, поэтому мы отвели ему специальный раздел. Появились два новых стандарта — Service Workers и Web Assembly, которые определяют, как теперь будут разрабатываться веб-приложения. Также вышло несколько новых версий популярных фреймворков:

Angular.js стал JavaScript-фреймворком для предприятий и крупных компаний. Angular 2 был представлен на рассмотрение разработчикам. Angular 2 гарантированно станет основным корпоративным фреймворком для многих разработчиков. Уже сейчас вы можете прочитать краткое руководство по нему.

React выпустил новые релизы и проекты, реализовавшие его в качестве библиотеки. А также новые средства разработки.

Facebook выпустил React Native, который является основой для создания мобильных приложений для Android и IOS. Он сочетает в себе оригинальный внешний интерфейс с работой React под капотом.

Polymer 1.0 позиционируется, как стабильная и готовая к работе «из коробки». Polymer базируется на Web Components, который является стандартом для упаковки HTML, JS и CSS в отдельные виджеты, которые могут быть импортированы в веб-приложения. На данный момент Web Components поддерживается только в Chrome и Opera, но Polymer делает его доступным во всех браузерах.

Также вышла новая версия Ember.js. В ней была введена модульная система, удалены устаревшие функции и оптимизирован код. Ember исповедует написание семантически корректного кода и команда поддержки фреймворка очень осторожно вводит новые функции. Если вам нужен стабильный фреймворк для технологии разработки web приложений с простой миграцией на новые версии, вы можете попробовать Ember.

Vue.js — это новая библиотека, которая предлагает адаптивные компоненты для создания пользовательских интерфейсов. Она поддерживает связывание данных, модульные компоненты и композиции. Vue похожа на React, но она не использует виртуальный DOM и работает только в браузере. За короткое время своего существования Vue.js объединила вокруг себя очень активное сообщество. Библиотека позиционируется как инструмент для создания веб-интерфейсов.

Изучите один из этих фреймворков: Angular 2, React, Ember.js, Vue.js, Polymer, Web Components, Service Workers

Front-end

Bootstrap стал еще популярнее, он понемногу превращается в стандарт веб-разработки. Версия 4 версии реализована поддержка flexbox и интеграция SASS. Авторы фреймворка обещают плавный переход с версии 3.

Foundation — это еще один frontend-фреймворк, который является альтернативой Bootstrap. В версии 6 основное внимание было уделено модульной системе, чтобы можно было включать только те фрагменты, которые вам нужны, это позволит значительно сократить время загрузки.

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

CSS-препроцессоры также продолжают совершенствоваться. Less и SASS являются наиболее популярными на данный момент, их набор функций в основном сопоставим. Тем не менее, новость о том, что Bootstrap 4 переходит на SASS, дает ему небольшое преимущество перед Less.

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

Изучите один или несколько из них: Bootstrap, MDL, Foundation, SASS, LESS, PostCSS

Back-end

В течение последних нескольких лет в веб-разработке все больше логики приложений переносится в веб-интерфейс, а back-end рассматривается только как API. Однако до сих пор остается много классических веб-приложений с генерируемым HTML, поэтому мы считаем, что изучение классических фреймворков полного стека по-прежнему важно.

В зависимости от того, какой язык вы предпочитаете, есть несколько вариантов на выбор. Если PHP, то есть Symfony, Zend, Laravel (и Lumen, его новая более компактная альтернатива для API), Slim и другие. Если Python, то Django и Flask. Если Ruby — Rails и Sinatra. Если Java — Play и Spark. Если Node.js, то Express, Hapi и Sails.js, а если Go — Revel.

AWS Lambda был выпущен еще в 2015, но только в 2016 году его концепция была окончательно установлена и готова к производству. Это сервис, который полностью устраняет back-end серверы и является бесконечно масштабируемым. Можно определить функции, которые вызываются при определенных условиях или когда посещаются определенные адреса API. Это означает, что можно получить back-end полностью без клиент серверных технологий web.

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

Разработчики, которые раньше создавали блоги на WordPress с базой данных и панелью администрирования, теперь предпочитают генерировать HTML-страницы и загружать только статическую версию сайта. Это дает существенные преимущества в плане повышения безопасности (нет back-end, который можно взломать, и нет базы данных, которую можно похитить) и увеличения производительности. В сочетании с CDN, такими как MaxCDN и CloudFlare, клиент может запросить страницу сайта и получить ее с ближайшего сервера, что значительно сокращает время ожидания.

Изучите один из них: back-end фреймворки полного стека, AWS Lambda, генераторы статических сайтов

CMS

Мы включили в наш обзор две наиболее популярные технологии создания web сайтов. Обе написаны на PHP и просты в установке и работе. Они используют новый быстрый PHP 7.

В последние годы WordPress стал намного больше, чем просто блог-платформой. Это полноценный CMS / фреймворк, который с помощью плагинов позволяет запустить любой сайт. На рынке представлено большое количество тем для WordPress высокого качества, и многие фрилансеры зарабатывают себе на жизнь разработкой под WordPress. С помощью таких проектов как WP-API можно использовать WordPress в качестве REST API back-end.

В прошлом году вышел Drupal 8. Он был полностью переписан, особое внимание было уделено современным технологиям разработки. Теперь Drupal использует компоненты Symfony 2, пакеты Composer и движок шаблонов Twig. Миллионы сайтов работают на Drupal, это хороший вариант для разработки тяжелых порталов.

Базы данных

В этом году сообщество веб-разработчиков утратило часть своего энтузиазма по поводу баз данных NoSQL, и многие вернулись к реляционным базам данных, таким как Postgres и MySQL. Заметным исключением из этой тенденции являются RethinkDB и Redis.

Postgres является популярной реляционной СУБД, команда поддержки которой пристально следит за всеми инновациями в сфере разработки и постоянно совершенствует систему, добавляя новые функции. В ближайшее время ожидается выход версии 9.5. В ней будет реализована улучшенная поддержка столбцов JSONB для хранения без схемных данных (в результате чего отпадает необходимость в наличии отдельной базы данных NoSQL) и долгожданная операция upsert, которая упрощает INSERT-или-UPDATE запросы.

MySQL является самой популярной СУБД с открытым исходным кодом, применяемой в технологии web программирования. Начиная с версии 5.7, MySQL также поддерживает столбцы JSON для хранения без схемных данных. Если вы являетесь начинающим back-end разработчиком, вы в первую очередь обратите свое внимание на базы данных MySQL, которые хостинг-провайдер предварительно настроил для вас. Возможно, они будут более старой версии, и вы не сможете поработать с JSON. Но MySQL включен в популярные пакеты, такие как XAMPP и MAMP, так что вы сможете легко начать работу с системой.

Изучите одну из этих СУБД: Redis, RethinkDB, MySQL / MariaDB, PostgreSQL

Мобильные приложения

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

В данный момент на рынке присутствуют популярные Ionic и Meteor. Недавно вышла версия Meteor 1.4, и он теперь подходит для разработки мобильных приложений. Facebook запустил React Native, который использует компоненты React в потоках JavaScript. Они также обновили свой оригинальный интерфейс, что позволило разрабатывать во многом идентичный код как под iOS, так и под Android.

Изучите один из них: Ionic, React Native, Meteor

Редакторы и инструменты

Вышла версия 1.0 редактора Atom. Это бесплатный и мощный редактор кода, который построен с использованием современных технологий создания web сайтов. Он содержит множество пакетов и уже успел сформировать вокруг себя большое сообщество поклонников. Он интегрируется с плагинами для рефакторинга кода и имеет множество красивых тем оформления, которые можно выбрать и настроить, написав код CoffeeScript и CSS. Facebook использовал эту функцию и запустил редактор Nuclide.

Корпорация Microsoft удивила всех, выпустив свой редактор Visual Studio Code. Это компактный IDE, который поддерживает несколько языков и работает под управлением Windows, Linux и OS X. Он поддерживает функцию проверки кода IntelliSense и интегрируется с отладчиком для ASP.Net и Node.js.

NPM, менеджер пакетов Node.js, в последнее приобрел сумасшедшую популярность и стал стандартным упаковщиком для front-end и node разработчиков. Это самый легкий способ управлять зависимостями JavaScript проекта, он очень прост в работе.

Даже для разработчиков-одиночек Git стал просто незаменим. Его без серверная модель позволяет превратить любую папку в хранилище с контролем версии, которое можно залить на Bitbucket или Github и синхронизировать с компьютером.

Изучите один из них: Atom, Visual Studio Code, NPM, Git

Перевод статьи «The Languages And Frameworks You Should Learn In 2016» был подготовлен дружной командой проекта Сайтостроение от А до Я.

www.internet-technologies.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *