Показаны сообщения с ярлыком код. Показать все сообщения
Показаны сообщения с ярлыком код. Показать все сообщения

11 октября 2011 г.

Dart, язык веб-программирования от Google

Оригинал статьи: Dart, Google’s Programming Language for the Web

Альтернатива JavaScript, предлагаемая Google, теперь называется не Dash: название было изменено на Dart. Разработанный как объектно-ориентированный язык программирования, обладающий и гибкостью, и строгостью, Dart покажется знакомым программистам на Java и C++; в то же время он унаследовал некоторые преимущества сценарных языков типа JavaScript.

Dart — это «основанный на классах и определяемых типах язык программирования для создания веб-приложений» («a class-based optionally typed programming language for building web applications») и Google утверждает, что он лучше подходит для широкомасштабных проектов. «Разработанный в стремлении к простоте, эффективности и масштабируемости, язык Dart объединяет мощные возможности нового языка со знакомыми конструкциями — и получается ясный, легко читаемый синтаксис».

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

На текущий момент ни один браузер не поддерживает Dart, однако наверняка положение дел исправит Chrome, и в самом ближайшем будущем. Код может выполняться «либо на исходной виртуальной машине, либо поверх JavaScript-машины с использованием компилятора, переводящего код Dart в JavaScript». Google уже запустил в онлайне простенькую ИСР (интегрированную среду разработки, IDE) под названием Dartboard. Сегодня она позволяет редактировать прямо в браузере короткие программы, однако должна развиться в полнофункциональную онлайновую ИСР.

В прошлом году один из сотрудников Google признал, что убедить разработчиков и распространителей браузеров внедрить новый язык будет крайне сложно, однако тот факт, что код Dart легко преобразуется в JavaScript, существенно облегчает дело. Google намерен продвигать Dart «как язык для серьёзных веб-разработок на веб-платформе» и собирается «предпринять активные действия для принятия его в качестве стандарта и повсеместного распространения». В конце концов, «цель проекта Dart состоит в том, чтобы в итоге заменить JavaScript в роли lingua franca (межнационального языка) веб-разработки на открытой веб-платформе». Трудно сказать, увенчается ли этот проект успехом, однако стоит попытаться избавиться от изъянов JavaScript, начав работу с нуля. Если Google сможет стандартизовать язык Dart, создать инструменты разработки и разработать на этой основе мощные приложения — это будет изменение к лучшему.

27 июля 2011 г.

Обновлённый код кнопки Google +1

Оригинал статьи: Updated Code for Google +1 Buttons

Как мы уже сообщали, код для кнопки Google +1 вполне можно улучшить, так что кнопки будут грузиться быстрее и не будут блокировать другие ресурсы. Google обновил код и рекомендует веб-издателям перегенерировать код для своих страниц.

«Мы представляем новый асихронный сниппет, позволяющий снизить время на кнопку “+1”. Этот программный фрагмент позволяет веб-странице продолжать загрузку параллельно с обработкой браузером сценария JavaScript. Параллельная загрузка элементов гарантирует, что использование сценария JavaScript для кнопки “+1” не ведёт к увеличению общего времени загрузки страницы», разъясняет Google.

Также Google провёл оптимизацию кода со своей стороны, в результате чего кнопка обрабатывается (renders) чуть ли не 3 раза быстрее. Так что даже если вы не обновите код на своих веб-страницах, пользу от проведённых изменений получите.

Генератор кода прост в использовании, и заметно большее количество сайтов разместили кнопку «+1» рядом с фейсбуковской «Нравится» («Like»). Жаль, что все эти оптимизации не были сделаны до запуска сервиса.

24 июня 2011 г.

Улучшенный код для кнопки Google +1

Оригинал статьи: Better Embedding Code for Google +1 Buttons

Google хочет видеть свою кнопку «+1» на каждой веб-странице, но многие терпеть не могут виджетов и кнопок, потому что они засоряют страницы и увеличивают время загрузки на сотни миллисекунд.

Google помешан на скорости и производительности, однако с работой по оптимизации кода внедрения кнопки «+1» не справился. Как разъяснил Аарон Питерс (Aaron Peters), код Google блокирует загрузку страницы, если его разместить внутри тэга <head>, так что лучше его поместить перед закрытием тэга <body>. А ещё лучше было бы загружать скрипт Google +1 вне блоков, как это сделал Google со сценариями Google Analytics, AdSense и Google Related Links.

Аарон также заметил, что код JavaScript не минимизирован, может храниться в кэше браузера в течение всего 6 минут, а ещё там есть ошибка в адресе этой страницы: «http» следует заменить на «https», чтобы избежать лишней переадресации.

Вот улучшенный код, который предлагает Аарон:


<!— Place this tag just before your close body tag —>
<script>
(function(d, t) {
var g = d.createElement(t),
s = d.getElementsByTagName(t)[0];
g.async = true;
g.src = 'https://apis.google.com/js/plusone.js';
s.parentNode.insertBefore(g, s);
})(document, 'script');
</script>

<!— Place this tag where you want the +1 button to render —>
<g:plusone></g:plusone>

Очевидно, этот код по умолчанию не будет работать в Blogger. Способ обойти это есть, однако не следует им пользоваться, если вы плохо знаете HTML и не пробовали редактировать шаблоны Blogger. В общем, нужно заменить <b:include data='blog' name='all-head-content'/> на код, созданный Blogger («Просмотр кода» / «View source» вам в помощь), а затем удалить: <meta content='blogger' name='generator'/>.

Как объясняет Google, «большинство браузеров загружают код параллельно с другими скриптами, что уменьшает время загрузки веб-страницы».