Pull to refresh

Coffeescript — Javascript в силе Ruby

Ruby *CoffeeScript *
CoffeeScript — язык, чтобы писать на JavaScript с более удобным синтаксисом.

Краткий пример на CoffeeScript (с jQuery):
jQuery($ =>
 notified: false
 $('a').click( =>
  if notified
   true
  else
   $('.alert').show()
   false..
 ).
)

Этот код будет транслирован в:
jQuery(function($) {
  var notified = false;
  $('a').click(function() {
    if (notified) {
      return true;
    } else {
      $('.alert').show()
      return false;
    }
  })
})

Но обо всём по порядку
Total votes 54: ↑30 and ↓24 +6
Views 21K
Comments 119

Coffeescript. И снова о нём. Резюме о приятностях

JavaScript *CoffeeScript *
CoffeeScript — это, если так можно выразиться, язык высокого уровня, преобразуемый в JavaScript.

Основан простым парнем по имени Jeremy Ashkenas при поддержке его корешей, которые упомянуты на github'е. Вдохновленный Ruby, паренёк решил упростить всем нам жизнь и создал его! CoffeeScript!

Интересно?
Total votes 44: ↑34 and ↓10 +24
Views 5.5K
Comments 56

Используем Coffeescript на Windows

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

По своей магической природе, сам компилятор для coffee-скриптов написан на coffee-скрипте. Но на наше счастье, пакет исходников CoffeeScript уже содержит готовые к употреблению js-скрипты. И сейчас я расскажу вам как их использовать в windows с помощью Node.js, Cygwin и Nant, ибо дело это не совсем простое, на первый взгляд.

Как жарить кофе?
Total votes 10: ↑8 and ↓2 +6
Views 8.8K
Comments 5

CoffeeScript стал языком по умолчанию в Rails 3.1

Ruby on Rails *CoffeeScript *
Разработка Ruby on Rails 3.1 идёт полным ходом. Как выяснилось, с этой версии он будет поставляться в комплекте с CoffeeScript, который вместо JavaScript становится языком по умолчанию.

CoffeeScript — это высокоуровневый язык программирования, который компилируется в Javascript: см. обзор на Хабре, где наглядно демонстрируются его преимущества, и список приложений (github), сделанных на CoffeeScript.
Читать дальше →
Total votes 38: ↑35 and ↓3 +32
Views 2.7K
Comments 59

CoffeeScript в деле — Пять вещей, которые можно сделать и с JavaScript

JavaScript *CoffeeScript *
Translation
От переводчика: В статье есть несколько JavaScript нюансов, которые могут быть интересны и тем, кто далек от CoffeeScript

Как и все программисты, я осторожен в отношение CoffeeScript. Как может, немного синтаксического сахара, оправдать дополнительный шаг компиляции?

Но, после того как я поиграл с CoffeeScript, всего несколько дней, я понял, я никогда не вернусь назад. Синтаксический сахар — это только начало. Я стал писать код быстрее, и с меньшим количеством ошибок, потому что он, стал намного чище. CoffeeScript помогает придерживаться хорошего стиля в написание кода. Ниже я приведу несколько примеров на Javascript и опишу их более изящное решение с помощью CoffeeScript.
Читать дальше →
Total votes 45: ↑37 and ↓8 +29
Views 13K
Comments 45

10 «однострочников», которые произведут впечатление на ваших друзей

Programming *F# *
За последнюю неделю появилось несколько топиков с названием «10 однострочников на <MY_LANGUAGE>, которые произведут впечатление на ваших друзей», которые содержат однострочное решение нескольких простых задач, демонстрирующее достоинства и «крутость» любимого языка программирования автора. Я решил перевести их и для сравнения собрать в одном топике. Вся волна началась (вроде как) со Scala.
Итак, поехали!
Читать дальше →
Total votes 181: ↑154 and ↓27 +127
Views 41K
Comments 147

Вышел PhpStorm 3.0

PHP *
Доступна для загрузки новая версия PhpStorm — среды разработки для PHP от компании JetBrains. Закачка идет быстро и нас здесь хорошо знают — так что буду краток.

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

  • Анализ кода и поиск дубликатов помогут вам найти потенциальные ошибки и код низкого качества, рефакторинг — безопасно улучшить его
  • Диаграммы классов UML помогут охватить взглядом структуру проекта и семантическое представлений изменений — локальных или из VCS
  • Просмотр результатов профилирования c помощью Xdebug и Zend Debugger
  • Поддержка PhpUnit 3.6 и всех опций командной строки
  • CoffeeScript
  • Рекурсивная синхронизация папок и гибкая настройка исключений FTP/SFTP
  • Microsoft TFS, граф ревизий для git
  • Новый интерфейс для всех операционных систем

Подробности и картинки

Уже скоро: релиз WebStorm 3.0 — поддержка Node.JS, JSLint и JSTestDriver

Работайте с удовольствием!

P.S. Ошибки — в трекер, вопросы — в форум, работа над 3.0.1 уже идет!
Total votes 92: ↑90 and ↓2 +88
Views 4K
Comments 173

CoffeeScript: Подробное руководство по циклам

Website development *JavaScript *CoffeeScript *
Tutorial
CoffeeScript: Подробное руководство по циклам

Как известно, CoffeeScriptпредлагает несколько иной набор управляющих конструкций, нежели JavaScript.



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



Читать дальше →
Total votes 41: ↑38 and ↓3 +35
Views 31K
Comments 72

Рельсы сошли с рельс: Почему я переписываю Archaeopteryx на CoffeeScript

Programming *Ruby on Rails *Node.JS *CoffeeScript *
Translation
Вы бывали на вечеринках, где друзья с работы и друзья из колледжа не разговаривают?

Я запостил видео на Tumblr, которое бы никогда не запостил на Facebook:


Это гитарист, отжигающий под «Bangarang» Skrillex'а.
Эй, при чём тут вообще Рельсы?!
Total votes 86: ↑66 and ↓20 +46
Views 4.9K
Comments 94

WebStorm 4 — в гармонии с ECMA Script

CSS *JavaScript *Node.JS *
Мы продолжаем поддержку новейших технологий и улучшаем средства контроля качества. В сегодняшнем WebStorm 4.0 — ECMAScript Harmony и встроенный Code Coverage для JavaScript Unit Testing.

Кроме того:
Читать дальше →
Total votes 48: ↑45 and ↓3 +42
Views 2.3K
Comments 83

MR шаблон для написания сервисов на Node.js

Website development *Node.JS *CoffeeScript *
Recovery mode
image
Суть такова: node.js не дает готового решения для создания проекта. Первый мой проект на node.js состоял из одного coffeescript файла и run.js для запуска из IDE. Когда роутов было пять штук, все было замечательно, но когда проект оброс моделями и роутами, это превратилось в ад. Решают эту проблему разными способами, кто-то используй hub, кто-то global, кто-то все в один файл заносит.
Читать дальше →
Total votes 19: ↑14 and ↓5 +9
Views 4.4K
Comments 13

Joosy: альтернативный подход к браузерным фреймворкам

Round Lake corporate blog JavaScript *Ruby on Rails *
Translation

Если коротко


Мы разработали новый JS-фреймворк, не похожий на существующие. Он использует новый подход. Мы зовём его Joosy.

Официальный сайт
Руководство для новичков
На гитхабе


Читать дальше →
Total votes 58: ↑46 and ↓12 +34
Views 16K
Comments 38

CoffeeScript: Классы

Website development *Ruby *JavaScript *CoffeeScript *
Tutorial
CoffeeScript: Classes

В ECMAScript пока отсутствует понятие «класс», в классическом понимании этого термина, однако, в CoffeeScript такое понятие есть, поэтому сегодня мы рассмотрим этот вопрос очень подробно.


Содержание:

1. Основные понятия
2. Члены класса
   2.1. Метод constructor
   2.2. Открытые члены класса
   2.3. Закрытые члены класса
   2.4. Защищенные члены класса
   2.5. Статические члены класса
   2.6. Оператор => (fat arrow)
3. Наследование
4. Дополнительная литература

Читать дальше →
Total votes 44: ↑40 and ↓4 +36
Views 21K
Comments 15

Встречайте WebMatrix 2 RC: поддержка Node.js, Jade, EJS, LESS, CoffeeScript и многое другое

Microsoft corporate blog Website development *Node.JS *
Translation
После нескольких месяцев активной разработки, команда WebMatrix рада представить новую версию WebMatrix 2 Release Candidate. WebMatrix 2 включает в себя очень много новых функций, но сегодня я предлагаю вам ознакомиться с обзором той работы, которая была проделана для поддержки разработки приложений Node.js в WebMatrix.



Для того чтобы загрузить WebMatrix 2 достаточно перейти по следующей ссылке. Подробнее о нововведениях в WebMatrix 2 предыдущей предварительной версии можно прочитать здесь.
Читать дальше →
Total votes 65: ↑52 and ↓13 +39
Views 19K
Comments 49

CLI скрипт на CoffeeScript — легко

Programming *Node.JS *CoffeeScript *


Я уже довольно давно использую coffee-консоль как калькулятор. Удобно!

И вот недавно задумался — почему бы не попробовать написать CLI-скрипт на CoffeeScript от начала и до конца? И написал!
Читать дальше →
Total votes 7: ↑3 and ↓4 -1
Views 1.2K
Comments 12

Автоматическая сборка javascript/coffeescript проекта

Website development *Ruby *Programming *CoffeeScript *
Sandbox
При разработке хоть сколько-нибудь большого javascript проекта сразу понимаешь, что писать весь код в одном-единственном файле нельзя. После этого код разносится по нескольким файлам и директориям и пишется простой скрипт для того, чтобы все эти файлы можно было легко объединить в один большой production файл. Спустя какое-то время начинаешь замечать, что чем дальше, тем труднее становится следить за зависимостями между файлами, да и весь разработанный механизм больше похож на костыль. И тут приходить озарение, что неплохо было бы посмотреть, какие существуют решения этой проблемы.

К системе управления сборкой проекта выдвигаются следующие требования:
  1. Компиляция из coffescript в javascript. Если в файле coffeescript содержится ошибка, то в консоли должны отобразиться название файла и сообщение об ошибке.
  2. Сборка проекта в один javascript файл должна производится с учетом зависимостей.
  3. Возможность собрать все приложение целиком в один файл в нескольких видах (с комментариями, минимизированный). При этом само приложение может состоять из нескольких модулей.
  4. Сборка тестовых файлов и их выполнение в консоли (да, разрабатываем для веба, при этом не притрагиваемся к мышке и вообще не вылазим из любимого vim'a).
  5. Конечно же все это должно быть удобно в использовании.

В данной статье я не буду затрагивать вопрос тестирования, а рассмотрю вариант системы управления сборкой javascript/coffescript проекта (и саму структуру проекта) с использованием rake и Rake::Pipeline (git).
Читать дальше →
Total votes 9: ↑7 and ↓2 +5
Views 5.6K
Comments 19

Kaylee: распределённые вычисления в браузере

Python *
В 1999 году проект SETI@home предложил пользователям предоставлять ресурсы своих персональных компьютеров для анализа радиосигналов из космоса в целях поиска внеземного разума. В рамках этого проекта в университете Berkley была разработана платформа BOINC (Berkeley Open Infrastructure for Network Computing), на основе которой впоследствии были запущены уже упомянутый SETI@home, ABC@home (доказательство abc-гипотезы), Climateprediction.net (улучшение климатических моделей), LHC@home (симуляция столкновений высокоэнергетических частиц) и другие.

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

С этими мыслями я взялся за написание Kaylee.

Читать дальше →
Total votes 54: ↑51 and ↓3 +48
Views 13K
Comments 49

Вышел Bundle Transformer 1.6.2 или что изменилось за полгода?

Client optimization *.NET *ASP *
Логотип Bundle Transformer
Bundle Transformer – это разработанное мной модульное расширение для Microsoft ASP.NET Web Optimization Framework (другие названия: ASP.NET Bundling and Minification, System.Web.Optimization, Microsoft.Web.Optimization и ASP.NET Optimization – Bundling). В апреле этого года я уже делал подробный обзор возможностей Bundle Transformer, но за это время данный продукт очень сильно изменился. Поэтому я решил написать данный обзор и рассказать об основных изменениях, которые произошли в Bundle Transformer за прошедшие полгода.
Читать дальше →
Total votes 25: ↑21 and ↓4 +17
Views 8.3K
Comments 4