Итак, вторая часть. Здесь я раскрою как получить информацию от пользователя, а так же о манипуляции этими данными. Тут можно затронуть вопрос, поднятый в комментариях к предыдущему посту — «А зачем это все нужно?». Примерами применения таких интерфейсов в 21-м веке являются различные аплаянсы на виртуальных машинах, которые реализуют отдельные сервисы. Чаще всего они представляют из себя минимальный дистрибутив Linux или набор загружаемое ядро + busybox. С помощью такого интерфейса можно реализовать некий фронтэнд для сервиса, позволяющий одним взглядом определить состояние основных узлов или выполнить некие операции в удобной для пользователя форме. Примером можно назвать подобные фронтэнды у VMware ESXi (vDirector, vCenter etc), Citrix Xen, которые сочетают как мощь web-интерфейса, так и TUI как резервного интерфейса и/или интерфейса настройки/диагностики. Переключаясь по десяткам машин можно одним взглядом увидеть, все ли в порядке или быстро узнать IP адрес, полностью заблокировав юзеру доступ к консоли, показывая ему только то, что ему достаточно знать (foolproof).
Читать полностью »
Метка «c++» - 16
Текстовый интерфейс, ч.2. Взаимодействие с пользователем
2014-01-09 в 22:59, admin, рубрики: интерфейсы, Программирование, метки: c++C#. Сортировка членов типа с помощью Resharper
2014-01-08 в 12:16, admin, рубрики: .net, Code Style, ReSharper, метки: .net, c++, Code Style, ReSharper Существуют некоторые соглашения касаемые структуры класса, и того, в каком порядке должны располагаться его члены.
Например, правила которые использует StyleCop, возможно, в вашей компании есть свои собственные.
Поддерживать структуру вручную довольно тяжело, скучно и отнимает много времени, особенно когда в классе довольно большое количество свойств, полей, методов и.т.д.
В этом посте речь пойдет о том, как с помощью Resharper автоматизировать этот процесс.
Читать полностью »
Рекомендации по успешному трудоустройству на должность middle/senior c# developer в Москве
2014-01-08 в 11:35, admin, рубрики: Карьера в IT-индустрии, метки: c++, Карьера в IT-индустрии Здравствуйте, коллеги.
В течение последних полутора лет в Москве проходил собеседования в 10 компаниях, в 8 из которых прошел. В двух поработал, а сейчас устроился на работу в третью. По результатам прохождения собеседований накопилось некоторое количество опыта, которым хотелось бы поделиться. Возможно, для кого-то он окажется полезным и поможет найти достойную, хорошую работу.
Читать полностью »
Длинная арифметика от Microsoft
2014-01-07 в 11:29, admin, рубрики: .net, java, Mono, Алгоритмы, длинная арифметика, метки: .net, c++, java, Mono, Алгоритмы, длинная арифметикаВведение
Известно, что компьютер может оперировать числами, количество бит которых ограниченно. Как правило, мы привыкли работать с 32-х и 64-х разрядными целыми числами, которым на платформе .NET соответствуют типы Int32 (int) и Int64 (long) соответственно.
А что делать, если надо представить число, такое как, например, 29! = 8841761993739701954543616000000? Такое число не поместится ни в 64-х разрядный, ни тем более 32-х разрядный тип данных. Именно для работы с такими большими числами существует длинная арифметика.
Длинная арифметика — в вычислительной технике операции (сложение, умножение, вычитание, деление, возведение в степень и т.д.) над числами, разрядность которых превышает длину машинного слова данной вычислительной машины. Эти операции реализуются не аппаратно, а программно, используя базовые аппаратные средства работы с числами меньших порядков.
Читать полностью »
MVVM: новый взгляд
2014-01-07 в 11:18, admin, рубрики: .net, mvvm, silverlight, WinPhone, wpf, Программирование, метки: .net, c++, mvvm, silverlight, WinPhone, wpf, ПрограммированиеПредисловие
Некоторое время назад я затеял разработку бесплатного текстового редактора с красивым интерфейсом и широким удобным функционалом на платформе WPF. Довелось решить очень много технических задач, поэтому у меня накопился определённый опыт, которым хочу поделиться с другими людьми.
К делу
Разработчикам WPF, Silverlight и WinPhone-приложений хорошо знаком паттерн проектирования MVVM (Model — View — ViewModel). Однако если дополнительно применить к нему ещё немного фантазии, то может получиться что-то более интересное, и немного даже, осмелюсь заверить, революционное. Читать полностью »
Пишем виртуальный буфер обмена на C#
2014-01-07 в 10:14, admin, рубрики: .net, .net 4.0, clipboard, Программирование, метки: .net 4.0, c++, clipboard Очень много приходится работать с текстовыми данными, такими как код, статьи, посты и т.д. В то время когда жил под Linux — пользовался менеджерами истории буфера обмена, которые запоминали, то что попадало в виде текста в буфер и по клику в трее я мог вернуть нужное значение в буфер, не возвращаясь к источнику.
Недавно пришлось большую часть времени проводить в Windows, удовлетворяющей альтернативы для такого простого приложения я не нашел. Что-то в найденных вариантах не устраивало: не свободное ПО, много ненужного функционала (который просто мешал) или работали неудобно для меня (например: получить предыдущее значение буфера, приходилось открывать окно программы). Недолго думая решил сделать, так как мне хотелось.
Поскольку, приложение должно работать исключительно в Windows, было принято решение написать ее на C# — к тому же, никогда ранее на нем ничего не писал — появился повод попробовать.
Задача
- Программа должна слушать и запоминать изменения в текстовом буфере обмена.
- Через контекстное меню в трее или через окно программы по клику на выбранном элементе истории, нужное значение должно автоматически попадать назад в буфер.
- История не должна пропадать после перезагрузки системы
Pebble представили металлические часы
2014-01-06 в 19:36, admin, рубрики: Pebble, pebble watch, Блог компании Box Overview, Гаджеты. Устройства для гиков, Программирование, умные часы, метки: c++, CES 2014, Pebble, pebble watch, Программирование, умные часы Уже начинают появляться первые новости с выставки CES 2014. Так, например, Pebbe в своей трансляции(можно посмотреть запись) представили версию своих часов в металлическом корпусе — Pebble Steel.
Генерация случайных чисел большой разрядности
2014-01-05 в 14:58, admin, рубрики: c++, Алгоритмы, генератор случайных чисел, Программирование, метки: 64 бит, c++, генератор случайных чисел
Однажды я столкнулся с задачей генерации 128-битных случайных чисел для реализации генетического алгоритма. Из-за большой размерности задачи алгоритм гонялся долго, поэтому были повышенные требования к скорости работы. Я решил написать свой генератор специально для поставленной задачи.
В этом посте речь пойдет о применении линейного конгруэнтного метода для получения псевдослучайных чисел разрядности 64 и 128 бит с пояснением принципа работы и подбора параметров.
Если вам в тягость пользоваться ГСЧ из стандартной библиотеки, у вас к нему нестандартные требования или просто охота держать под контролем весь процесс генерации случайных чисел в своем приложении, добро пожаловать под кат.
Интервью с Бьерном Страуструпом о языке C++
2013-12-30 в 15:47, admin, рубрики: c++, c++11, интервью, переводы, Страуструп, метки: c++, c++11, интервью, переводы, Страуструп
Считанные часы остались до Нового 2014-го года, в котором в числе прочего всем нам был обещан новый стандарт C++14. Однако он будет не большим самостоятельным обновлением, а лишь доработкой C++11, багфиксом, который придаст текущей версии языка завершенный вид. На этом фоне Уильям Вонг (англ. William Wong) от ресурса electronicdesign.com взял интервью у Бьерна Страуструпа (дат. Bjarne Stroustrup), создателя C++. Беседа затронула несколько тем: от истории разработки C++ и особенностей стандарта C++11 до проблемы обучения этому языку программирования.
Некоторые термины и понятия мне раньше встречались исключительно в английском варианте (например, словечко embedded в контексте IT), и мне не всегда удавалось найти общепринятый перевод, в котором я не был бы уверен сам. В таких и других неоднозначных случаях я указывал английский вариант термина в скобках либо вовсе оставлял его непереведенным.
Разработка Windows 8.1 приложений на XAML/С#. Часть 5. Всплывающие окна и панели
2013-12-30 в 5:28, admin, рубрики: vs2013, windows, windows apps, windows store, XAML, Блог компании Microsoft, разработка, метки: c++, vs2013, windows apps, windows store, XAML
Сегодня речь пойдет о реализации всплывающих окон, меню и панелей в Windows 8.1 приложении.
Мы рассмотрим, какие возможности предлагает Windows 8.1 разработчику приложений для реализации всплывающих окон, панелей настроек и контекстных меню, а так же добавим все перечисленные возможности в приложение «Каталог товаров», разработанное в прошлых статьях.
Читать полностью »