Программирование

Клиент и серверное программирование. Новости из мира кода. Новые возможности.

26 блогозаписей

avatar

Простое и понятное усложнение авторизации по паролю

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

Основы программирования

Опубликовал в блог Программирование

Существует 3 вида языков программирования:

  1.  Низкоуровневый язык программирования — близкий к машинному коду (Assembler, C ).
    Проблемой низкоуровневых языков является сильная привязка к компьютерной составляющей. Я говорю о процессорах. Допустим, программа была скомпилирована (собрана) в x32 (x84) — инструкции к ней созданы под этот процессор, и запустить, и скорее всего адекватно работать в 64 разрядной системе она уже не будет. Про ARM процессоры и говорить не стоит, писать программу нужно отдельно под них.
    Преимуществом является скорость работы, малый размер программы.
  2. Высокоуровневый язык программирования — близкий к человеческому пониманию. (Phyton, php,java)
    Преимуществом данных языков является введение смысловых конструкций, описывающих структуры и операции над ними.
Читать далее...

avatar

Cmd - более разумный способ запускать сторонние приложения в C#

Опубликовал в блог Программирование
Cmd — C# библиотека для запуска сторонних приложений более простым способом, вдохновленная библиотекой sh для Python.


Читать дальше
avatar

Оптимизация математических выражений

Опубликовал в блог Программирование

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

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



Читать дальше
avatar

Рейтинг языков программирования на ноябрь 2012

Опубликовала в блог Программирование


Python сильно потерял в своей популярности и уподобился Визуал Бейсику, т.е. больше подходит для начинающих.
Наибольший рост доли рынка был признан у Objective-C. Это можно объяснить тем, что в последнее время сильно возросло количество разработчиков под iOS и OSX.
Если вы начинаете кроссплатформенный проект или просто разработку под несколько платформ – выбирайте Java. Найти программистов будет не трудно, а портирование удастся произвести в наименьшие сроки.
Если ваша цель — разработка под iOS или OS X, тогда ваш выбор — Objective-C.
Для разработки масштабных web-проектов подойдет Python и Ruby. Сверхмасштабных — С.
Для web-ресурсов меньших размеров отлично подойдет PHP.
Для разработки программ под корпоративный сегмент и платформу Windows удобен С#.
avatar

Кроссплатформенный язык программирования - какой выбрать?

Опубликовал в блог Программирование
Всем привет!!! ЁХочу вот прогу написать для винды, мака и линукса. Какой язык и GUI лучше выбрать для минимизации затрат?Спрашиваю в универсальном плане, тк не решил еще, что именно буду писать… Еще хорошо бы заодно ссылочки на начальные уроки по этому языку, если точно знаете хорошие… и простые для понимания.На самом деле идей очень много, ведь любую простую прогу, которой все пользуются можно многократно улучшить, в чем то упростить, какие-то функции внедрить…В общем подскажите, будь ласка.
avatar

Проверка возможностей движка

Опубликовал в блог Программирование

Contents

Каждый раз когда я вижу новый проект на подобие #habr у меня возникает один вопрос — а хорошо ли тут будет выглядеть мой контент? Давайте посмотрим:

Возможности

  • Верстка кода инлайн: public static void main() fail (тэг code не является блочным)

  • Верстка кодовых блоков: fail — не вижу никакого намека на SyntaxHighlighter. Впрочем, попробуем вручную:

    <font size="2" face="Consolas, Andale Mono, Courier New, Courier" color="black"><font color="#0000FF">private</font> <font color="#0000FF">static</font> <font color="#0000FF">void</font> RtsVolGradCalc(<font color="#0000FF">double</font>[] _args, <font color="#0000FF">double</font>[] X, <font color="#0000FF">ref</font> <font color="#0000FF">double</font> func, <font color="#0000FF">double</font>[] grad, <font color="#0000FF">object</font> obj)<br/> {<br/>   <font color="#0000FF">double</font> s = _args[0];<br/>   <font color="#0000FF">double</font> a = _args[1];<br/>   <font color="#0000FF">double</font> b = _args[2];<br/>   <font color="#0000FF">double</font> c = _args[3];<br/>   <font color="#0000FF">double</font> d = _args[4];<br/>   <font color="#0000FF">double</font> e = _args[5];<br/>   <font color="#0000FF">double</font> y = X[0] - s;<br/>   func = Rts.ivEst(X[0], s, a, b, c, d, e);<br/>   grad[0] = Rts.ivGradEst(X[0], s, a, b, c, d, e);<br/>   grad[1] = 1;<br/>   grad[2] = 1 - Math.Exp(-c*y);<br/>   grad[3] = b*Math.Exp(-c*y)*y;<br/>   grad[4] = Math.Atan(1.0/e/y)/e;<br/>   grad[5] = -((d*y)/(e*(1.0 + e*e*y*y))) - ((d*Math.Atan(1.0/e/y))/(e*e));<br/> }<br/> </font>
    о, да это просто булшит какой-то

  • Возможность писать LaTeX… я ее в упор не вижу.

  • Правильное отображение ссылок и переходов1 — вроде работает.

  • Заголовки — не отображаются как заголовки, fail

Вообщем пока слабовато, а без поддержки LaTeX/Mathjax то что хочется запостить не запостить вообще никак (только как картинки).

References

  1. Вроде например этой
$i = 999;if ($i == 999) echo «ok»;
avatar

Создание бизнес-приложений без программирования

Опубликовал в блог Программирование
Лет десять назад я сделал штуку, которая, если ей скормить структурированный источник данных — например базу стандарта ANSI SQL92,
— анализировала базу и строила ее модель
— на основе модели строила веб-приложение
— с секьюрити, пользователями, логином, меню
— строила все скрины с соответствующими случаю фильтрами, дропдаунами и чекбоксами
— отслеживала иерерхические зависимости внутри записей
— все редактировалось inline (а-ля ajax)
— имела набор разных виджетов, типов полей, окошечек, дат, колорпикеров, форм, фильтров, чартов и прочих нужных штук
— была многопользовательской, как гуглоэксель сейчас
— любое поле можно было сделать чем угодно, от текстовой метки до сложного контрола, который открывался формой и расссчитывал свое финальное значение через пару хранимых процедур

В конечном итоге получалось конфигурация, которая интерпретировалась в приложение практически любого вида под любые нужды. После анализа базы надо было поправить имена столбцов на экране, ширины всякие, и другие мелочи — и пожалуйста, пользуйся. На этой основе было построено довольно сложное финансовое приложение на 400 экранов для одного глобального коммодити-трейдера.

Читать дальше
avatar

Две online Arduino IDE

Опубликовал в блог Программирование
В последнее время все приложения стремятся быть онлайн. Дошло и до встроенных устройств, а именно Arduino.



Первый проект — codebender. Представляет собой облачную IDE с встроеной документацией, библиотеками и возможностью загружать свой код в ардуино прямо из браузера. Для компиляции codebender ипользует clang, который отличается исчерпываюшими комментариями к ошибкам. Также интересной особеностью можно считать заявленный TFTP загрузчик. Он в сочетании с Ethernet шилдом позволит загружать ваш код на любой подключенный к интернету arduino, где бы он не находился.



Второй проект — wifino. Это сочетание arduino-совместимой платы и web ide. Основная его задача упрошение разработки. Позволяет хранить, программировать, и компилировать в облаке. Прошивка через wi-fi. Необходим браузер поддерживающий html5.



P.S. оба проекта Open Source.
avatar

Monkey patching как явление

Опубликовал в блог Программирование
Привет, мои воображаемые друзья.

Знаете, как перевести с туземного на великорусский родной язык словосочетание monkey patching?

Обезьяно-латание. Такие дела. Но речь не об этом.


Читать дальше
avatar

Совет: Хотите написать успешное приложение?

Опубликовал в блог Программирование
Просто учтите и устраните недостатки существующего популярного аналога. В первую очередь это относится к рынку Android программ, во вторую — iOS, в третью — Windows.
Для того, чтобы внедрить что-то действительно новое, инновационное — потребуется намного больше времени и затрат, чем при простой замене однотипного приложения на более удобное.