Рубрика «Программирование» - 877

Редактор Atom от GitHub после установки поддерживает подсветку синтаксиса для основных языков программирования. Однако для более полноценной работы — валидации кода, проверки синтаксиса, базовой отладки и снипетов необходимо подключение дополнительных пакетов и ряд действий. Этот пост — продолжение предыдущего, про установку Atom на базовые ОС. Поэтому изначально считаем что у Вас установлена поддерживаемая операционная система, Node.JS и Atom. В примерах мы работаем в OpenSUSE (13.1) в нём (и вообще в дистрибутивах *nix) уже «из коробки» обычно есть не только Python но PHP и другие языки программирования. Так же исправно работает на Ubuntu (>12.04). Если у Вас Windows 7 или 8, а раньше Вы с ними (языками) не работали то их предварительно необходимо скачать и установить. О модулях Atom для работы с некоторыми языками расскажем под катом, а для приятного продолжения понедельника — немного юмора от разработчиков пакета Script:
Настройка Atom от GitHub для работы с PHP, Python и некоторыми другими языками программирования<
Внимание трафик — кликабельные картинки и анимированые gif.
Читать полностью »

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

По крайней мере, таков план.

Но как же именно вам, как разработчику игры, отрендерить такой эффект?
Читать полностью »

Написание своих автодополнений для Shell. Часть 2: bash
В данных статьях (решил, что тематически лучше разбить на две части) описываются некоторые основы создания файлов автодополнений для собственной программы.

Преамбула

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

Введение

Bash, в отличие от zsh, требует к себе некоторого велосипедостроения в отношении автодополнений. Бегло погуглив, я не нашел более-менее нормальных туториалов, потому за основу были взяты имеющиеся в системе файлы автодополнений для pacman (искренне надеюсь, что отцы-основатели Arch'а не придумывали много велосипедов).

Читать полностью »

Написание своих автодополнений для Shell. Часть 1: zsh
В данных статьях (решил, что тематически лучше разбить на две части) описываются некоторые основы создания файлов автодополнений для собственной программы.

Преамбула

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

Введение

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

Читать полностью »

Как стало известно на этой неделе, Корпорация Добра объединилась с небезизвестной Udacity чтобы сделать общедоступные бесплатные курсы по программированию под платформу Android. Курсы будут доступны для всех желающих. По традиции они будут включать в себя видео, викторины, множество учебных материалов и доступ к форумам для общения и обсуждения сопутствующих тем.

Читать полностью »

Добрый день!

Решил написать небольшой обзор с примерами на легковесный ORM для Scala — Squeryl 0.9.5

Начнем с основных достоинств данного фреймворка

1) Squeryl предоставляет DSL для SQL запросов. К примеру

def songs =  from(MusicDb.songs)(s => where(s.artistId === id) select(s))

def fixArtistName = update(songs)(s =>
  where(s.title === "Prodigy")
  set(
    s.title := "The Prodigy",
  )
) 

Синтаксис напоминает C# LINQ. Как вы могли заметить в запросах используются лямбда выражения, что значительно сокращает объем кода.

В данном примере метод songs возвращает объект Query[Song] который реализует интерфейс Iterable, что позволяет работать с ним как с обычной коллекцией.

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

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

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

Привет!

Я очень новичок в C++, программирую в общем исключительно ради своего удовольствия (причём иногда для несколько экзотичных платформ), не читал теоретических книжек, в процессе написания активно использую гугл, Stack Overflow и интуицию, а ещё придерживаюсь мнения, что C++ знать невозможно.

Надеюсь, это снимет некоторые вопросы и предотвратит удивлённые взгляды. :)
Читать полностью »

Hackathon@JetBrains 2014

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

Надо сказать, что в течение года руки чесались: сотрудники то и дело во время обеденного перерыва обсуждали новые проекты, которые можно было бы захакатонить, идеи откладывались в долгий ящик, со временем забывались, и появлялись новые. В начале лета невыносимое ожидание хакатона сменилось затишьем сразу же после анонса события. За две недели до начала в списке было не больше пяти проектов, что же случилось? Быть может, кризис идей или банальная нехватка времени? Оказалось, ни первое, ни второе: ребята в тайне друг от друга готовили свои проекты, выверяли сложность и временные затраты, всем хотелось получить за 48 часов работающий прототип, а не концептуальную модель.

Hackathon@JetBrains 2014

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

Как это было

Читать полностью »

Довольно часто перед веб разработчиками стоит задача интегрировать систему платежей в уже готовый проект. Как быстро и качественно справиться с такой задачей? Конечно, на сегодняшний день существует большое количество платежных систем, которые предоставляют инструменты для организации обработки транзакций по кредитным картам. И именно об одной из таких систем я хочу рассказать. Знакомьтесь — CyberSource.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js