Bash-скрипты, часть 6: функции и разработка библиотек

Автор: admin от 24-04-2017, 16:30, посмотрело: 26

Bash-скрипты: начало
Bash-скрипты, часть 2: циклы
Bash-скрипты, часть 3: параметры и ключи командной строки
Bash-скрипты, часть 4: ввод и вывод
Bash-скрипты, часть 5: сигналы, фоновые задачи, управление сценариями

Занимаясь разработкой bash-скриптов, вы рано или поздно столкнётесь с тем, что вам периодически приходится использовать одни и те же фрагменты кода. Постоянно набирать их вручную скучно, а копирование и вставка — не наш метод. Как быть? Хорошо бы найти средство, которое позволяет один раз написать блок кода и, когда он понадобится снова, просто сослаться на него в скрипте.

Bash-скрипты, часть 6: функции и разработка библиотек


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

Категория: Системное администрирование, Linux

 

MakiseGUI — бесплатная библиотека графического интерфейса для микроконтроллеров

Автор: admin от 16-04-2017, 00:30, посмотрело: 50

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


Назвал я её MakiseGui.

Категория: Программирование

 

FRAM через I2C для Arduino

Автор: admin от 11-01-2017, 19:20, посмотрело: 64

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

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

Сначала я хотел обмануть судьбу записывая структурку данных в разные места 1К памяти чипа по кругу. Упёрся в то, что указатель надо где-то хранить тоже, а данные достаточно случайные, чтобы использовать какой-то маркер для последовательного поиска.

Коллеги из НТЦ Метротек подсказали поискать FRAM. Это ферритовая память с бешеным быстродействием и 1014 циклами записи.

Категория: Программирование

 

Создание поиска по библиотеке юным программистом — каково это?

Автор: admin от 23-06-2016, 11:35, посмотрело: 142

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

Создание поиска по библиотеке юным программистом — каково это?

Вступление


В один прекрасный денек я зашёл в библиотеку за одним рассказом. Сказав название и автора рассказа библиотекарю, получил стопку сборников данного автора. Для того чтобы найти среди всего этого многообразия нужный рассказ, пришлось перебрать все произведения. Намного легче было бы «загуглить» нужное произведение и получить желаемое в несколько кликов.

Категория: Веб-разработка, Android

 

Как мы делали централизованное хранение данных для розничной сети и оптимизировали его по шагам

Автор: admin от 7-06-2016, 10:55, посмотрело: 113

После того как мы рассказали о переносе хранилищ сотен отделений крупного банка в центральный ЦОД, используя решения Riverbed, мы решили немного углубиться технически в «стораджовую» составляющую продуктов, а заодно и подумать над вариантом консолидации данных, например, у крупного ретейлера, проверить эффективность систем SteelFusion Core и Edge, а также оценить инженерные усилия и выгоду заказчика.

По нашему опыту типичный региональный филиал ретейлера строится на паре сетевых коммутаторов, паре серверов, ленточной библиотеке и уборщице, которая меняет кассеты. Иногда библиотеке предпочитают внешний диск. Кассеты могут просто хранить, а могут вывозить с определённой периодичностью. То же самое и с внешним диском. Ширина WAN-канала ограничена парой Мбит/с и редко когда достигает высоких значений.

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

Как мы делали централизованное хранение данных для розничной сети и оптимизировали его по шагам

Одну из лабораторий мы приняли за воображаемый центральный офис (ЦОД), где развернули vCenter и собрали простенький HA-кластер…

Категория: Админитстрирование » Системное администрирование

 

Запросы к Rest API из JavaScript компактно и красиво

Автор: admin от 31-05-2016, 15:05, посмотрело: 106

Делал я тут небольшой проект на чистом JS и в ходе оного потребовалось работать с Rest API. Ну не ручками ведь XMLHttpRequest дёргать, решил я, наверняка есть бесчисленное количество готовых решений для такой простой задачи?..


Как можно догадаться по КДПВ, я несколько ошибался; впрочем, обо всём по порядку. Но если вкратце — получился вот такой симпатичный велосипедик, с которым запросы к Rest API получаются, как и обещано в заголовке, компактными и красивыми.


Запросы к Rest API из JavaScript компактно и красиво

Категория: Программирование, Веб-разработка

 

Как создать анимацию и переходы с помощью Motion UI

Автор: admin от 12-03-2016, 12:59, посмотрело: 227

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

Можно самостоятельно анимировать различные элементы страницы или же воспользоваться Motion UI. Это библиотека для создания плавных переходов и анимаций на Sass, вышедшая из семейства Foundation.

Как создать анимацию и переходы с помощью Motion UI

Категория: Программирование » Веб-разработка

 

Sinon.js — mock-библиотека для JavaScript

Автор: admin от 30-12-2015, 18:20, посмотрело: 717

Sinon.js — это mock-библиотека для javascript, которую можно использовать с любым тестовым фреймворком. Она предоставляет функции для эмуляции и проверки требуемого поведения в javascript. В библиотеке представлено три вида тестирования с spy, stub и mock. В данном посте мы рассмотрим документацию по API Sinon.js вместе с кратким введением в концепцию методов данной библиотеки.

Sinon.js — mock-библиотека для JavaScript

Категория: Программирование, Веб-разработка

 

Vim по полной: Библиотека, на которой все держится

Автор: admin от 7-08-2015, 16:52, посмотрело: 155

Оглавление



  • Введение (vim_lib)

  • Менеджер плагинов без фатальных недостатков (vim_lib, vim_plugmanager)

  • Уровень проекта и файловая система (vim_prj, nerdtree)

  • Snippets и шаблоны файлов (UltiSnips, vim_template)

  • Компиляция и выполнение чего угодно (vim-quickrun)

  • Работа с Git (vim_git)

  • Деплой (vim_deploy)

  • Тестирование с помощью xUnit (vim_unittest)

  • Библиотека, на которой все держится (vim_lib)

  • Другие полезные плагины


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

    Категория: Программирование » Веб-разработка

     

    OpenGL ES 1.1 в Windows 8 и Windows Phone 8.1

    Автор: admin от 27-12-2014, 11:06, посмотрело: 321

    OpenGL ES 1.1 в Windows 8 и Windows Phone 8.1
    В далеком 1998 году я пытался сделать свою игру с OpenGL. Разработка с трудом дошла до альфы и была заброшена, но что особо запомнилось, так это как удобно было делать под GL интерфейсы — ортогональная проекция, пара трансформаций, биндинг нескольких вершин с GL_TRIANGLE_STRIP и у нас уже есть кнопка. И вот, спустя шестнадцать лет и занимаясь мобильным игростроем я столкнулся с таким же подходом в OpenGL ES 1.*, разве что 2D текстуры без вращений можно теперь рисовать через glDrawTexfOES.
    Я поддерживал несколько проектов, сделанных по этому принципу и понемногу в голове выстроился коварный план: сделать кросс-платформенную 2D игру на мобильных с OpenGL ES и на C#, а на десктопах с обычным OpenGL. Цели я добился не с первого раза и было с этим много проблем, но в результате очередной проект у меня работает без изменений бизнес-логики на iOS, Android, BlackBerry, Windows XP/7, Mac OS X, Linux, ReactOS, Windows 8, Windows Phone 8.1. Материала набралось на много статей, но в этот раз я расскажу именно о поддержке Windows Runtime.

    Категория: Веб-разработка, Windows

     
    Назад Вперед