Pull to refresh
13
0
Давид Зухбая @davvie

User

Send message

8 фактов, которые вы, возможно, не знали о C#

Reading time7 min
Views195K
Вот несколько необычных фактов о языке C#, о которых знают лишь немногие разработчики.

1. Индексаторы могут использовать params параметры


Мы все знаем, как обычно выглядят индексаторы x = something["a"], а так же код необходимый для его реализации:

public string this[string key]
 {
   get { return internalDictionary[key]; }
 }

Но знали ли вы, что для доступа к элементам вы можете использовать params параметры x = something["a", "b", "c", "d"]?
Просто напишите ваш индексатор следующим образом:
Читать дальше →
Total votes 108: ↑88 and ↓20+68
Comments66

013.jpg или Принцессы не какают

Reading time20 min
Views255K
Вот уже совсем скоро конец света, дорогие мои айтишнички. Чтобы вы не боялись закрывать сегодня глазки, я расскажу вам добрую сказочку. О том, что даже после самого тёмного кончика светика, после самого дремучего апокалипсика, когда даже электрончики откажутся строем ходить по проводкам, для вас, дорогие айтишнички найдётся работёнка… Принцессы? Принцессы будут. И драконы тоже. Какая ж сказка без принцесс и драконов? Так что не боимся, закрываем глазоньки и слушаем волшебную сказочку...
image
— Именем Князя Питерского, давайте сюда декларацию. Что везем? Откуда?
— Из Новосибирска. 256 мегабайт сертифицированных данных для Интернета Его Высокопревосходительства. Научные, метеорологические, новости, деловая и частная корреспонденция, — доложила я, зная, что таможня шутить не любит.
— Открывайте, посмотрим.
— Что, все 256 мегабайт смотреть будете?
Открывайте, разберемся...
Total votes 375: ↑288 and ↓87+201
Comments54

Как из мобильного приложения сделать продукт

Reading time3 min
Views10K
Сделать мобильное приложение очень просто. Сделать хорошее мобильное приложение — сложнее. Создать продукт из мобильного приложения — задача посерьезней. В статье хочу поделиться некоторыми наблюдениями на тему того, как этого достичь.

Поехали!
Читать дальше →
Total votes 16: ↑10 and ↓6+4
Comments7

Разработка игры под Windows Phone

Reading time9 min
Views37K


В этой статье я хочу рассказать о своем опыте написания игры под платформу Windows Phone. Несмотря на кажущуюся простоту, путь от идеи до принятия игры в Windows Phone Store занял практически год и был полон неожиданных подводных камней — как с технической, так и с организационной сторон. Статья рассчитана на начинающих разработчиков, которые имеют представление о .NET / C#, но не пробовали делать полноценных игр.
Читать дальше →
Total votes 59: ↑52 and ↓7+45
Comments28

Что сложного может быть в вычислении гипотенузы?

Reading time2 min
Views48K
В библиотеках различных языков программирования часто может быть включена функция для вычисления гипотенузы прямоугольного треугольника (или вы сами можете написать такую функцию для решения той или иной задачи).

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

sqrt(x*x + y*y)

Это работает теоретически, но на практике данный подход может приводить к ошибке. Если значение x достаточно велико, то вычисление x*x может привести к переполнению типа данных (ни один тип данных от этого не застрахован, если не рассматривать длинную арифметику), и результатом вычислений будет бесконечность.
Читать дальше →
Total votes 144: ↑128 and ↓16+112
Comments73

Кластеризация дубликатов в поиске по картинкам

Reading time4 min
Views17K
Каждый месяц на Яндексе поиском по картинкам пользуется больше 20 миллионов человек. И если кто-то из них ищет фотографии [Мэрилин Монро], это не значит, что им нужно найти лишь самые знаменитые снимки актрисы. В такой ситуации результаты, в которых большая часть найденных изображений будет копиями одних и тех же картинок, вряд ли устроят пользователей. Им придётся пролистать большое количество страниц, чтобы увидеть разные фотографии Монро. Для того чтобы облегчать людям подобные задачи, нам нужно сортировать картинки в результатах поиска так, чтобы они не повторялись. И мы научились «раскладывать их по полочкам».



Когда в 2002 году в Яндексе появился поиск по картинкам, технологий, позволяющих компьютерам непосредственно «видеть», какие объекты есть на изображении, не было вообще.
Читать дальше →
Total votes 44: ↑38 and ↓6+32
Comments14

Предложен новый код статуса HTTP для цензуры

Reading time2 min
Views20K

Предыстория


Четыре дня назад Теренс Эден (Terence Eden) указал на несоответствие существующих HTTP кодов чудному новому миру, в котором мы теперь живём. Поводом послужило недавнее требование к провайдерам цензурировать доступ к The Pirate Bay: ведь неизвестно что должен вернуть сервер в ответ на запрос запретного документа. В процессе обсуждения Тим Брэй (Tim Bray) из гугла предложил ввести новый код статуса — 451.
Читать дальше →
Total votes 125: ↑122 and ↓3+119
Comments76

Разработчик, не бойся нового iPhone

Reading time2 min
Views3.8K
Многие разработчики ожидают новых проблем от выхода нового iPhone, так как уже почти никто не сомневается, что разрешение его экрана будет больше, чем у iPhone 4 и 4S. С каждым днём поступает всё больше подтверждений, что новый айфон обзаведется экраном с разрешением 640x1136, то есть вытянется в высоту.


И вот еще одно подтверждение: программист Cédric Luthi с ником 0xced опубликовал в своем блоге запись, проливающую свет на то, как были сделаны скриншоты iOS Simulator из вчерашней новости с 9to5Mac. Простое изменение конфигурационных файлов iOS Simulator приводит к его запуску в нестандартном на данный момент разрешении 640x1136 (можно и в других, как я понял).
Читать дальше →
Total votes 40: ↑27 and ↓13+14
Comments32

Как добиться 10 млн. загрузок или «партизанский маркетинг» для мобильных приложений

Reading time5 min
Views22K
В день, когда мое приложение (AutoCAD WS) перешагнуло порог в 1 млн. скачиваний на App Store, первым, о чем я задумался, было – сделал ля я что-то особенное, чтобы успешно продавать его? Я был обычным менеджером по разработке продуктов и никогда не представлял себя в маркетинге, до тех пор, пока мое приложение не оказалось на грани жизни и смерти.

Стартап, соучредителем которого я являлся (позднее приобретенный Autodesk), разрабатывал CAD B2B приложение для инженеров. После запуска нашего продукта мы начали продвигать его на рынке по всем правилам маркетинга – занимались правильным позиционированием и работали с PR-агентствами, чтобы найти подход к блоггерам. Это не сработало. Мы сделали вторую и третью попытку – изменили наше позиционирование, обновили веб-сайт, добавили больше функций в приложение и написали большему количеству блоггеров. Опять не сработало.



Постепенно я пришел к пониманию того, что в конкурентной борьбе с сотнями тысяч других приложений за внимание пользователей, маркетинг – это не просто один из ингредиентов, влияющих на конечный успех приложения. Он – самый важный. У нас была маленькая команда с очень ограниченным маркетинговым бюджетом, поэтому мы вступили в войну с тем, что у нас было – нашими знаниями инженеров и дизайнеров-проектировщиков. В следующие месяцы мы отбросили все, что знали о традиционном маркетинге и стали искать новые креативные способы привлечения новых пользователей. И так как мы были инженерами – мы замеряли каждый шаг на этом пути, вплоть до последнего клика. Сегодня наш продукт может похвастаться 10 млн. загрузок по всему миру и клиентами из десятками компаний из списка Fortune 500.
Читать дальше →
Total votes 42: ↑35 and ↓7+28
Comments12

10 мифов современного образования

Reading time4 min
Views267K

Миф 1. Университет не должен давать профессию — университет должен учить студента учиться.


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

Недаром, когда идет набор абитуриентов, все вузы кричат: «наши выпускники возглавляют банки, заводы и работают на самых престижных должностях», «мы вас научим тому-то и тому-то, да вообще, всему что только может понадобится».
image
И вот на пятом курсе подходит очередной выпускник к лектору и говорит:
— Профессор, я иду на красный диплом, но не могу найти работу.
— Задача университета — научить человека учится.
— ??
Читать дальше →
Total votes 260: ↑154 and ↓106+48
Comments330

Обучалка. История о руководстве по iPhone

Reading time4 min
Views2.9K
Title
Предыстория

Мы — сотрудники одной из самых первых компаний, появившихся на рынке продаж техники Apple. Более 18 лет мы радуем жителей Ростова инновационными разработками и передовыми технологиями Apple. Помимо продаж, у нас в компании успешно работает отдел поддержки, который помогает пользователям освоить и полноценно использовать нашу продукцию.

Проанализировав основные вопросы, с которыми к нам обращались клиенты, мы поняли, что большинство из них однотипны и вполне могут быть решены пользователями самостоятельно. Это натолкнуло нас на мысль о создании наглядных инструкций, с помощью которых любой пользователь мог бы легко наладить работу с iPhone.
Читать дальше →
Total votes 15: ↑8 and ↓7+1
Comments9

Опыт продвижения в русском AppStore

Reading time4 min
Views13K
imageСделать хорошее приложение для iPhone или iPad могут многие. Но далеко не все на этом умудряются заработать денег. Не буду хвастаться – но у меня получается и то, и другое. Хотелось бы поделиться с сообществом хабрачиталей некоторыми тонкостями кухни.
Под катом немного статистики и опыта размещения обзоров и баннерной рекламы рекламы с цифрами.
Читать дальше →
Total votes 83: ↑65 and ↓18+47
Comments77

Раскрутка iOS приложения на англоязычном пространстве

Reading time1 min
Views6.4K
Хочу поделиться с хабра-сообществом важной ссылкой. Давно для себя это искал, а сегодня, когда нашел — очень обрадовался.
Это список-рейтинг сайтов с обзорами приложений и игр для iOS, с ссылками сразу на страницу запроса обзора, или связи с администрацией сайта.
Надеюсь, инфа будет полезной для разработчиков.
Читать дальше →
Total votes 45: ↑35 and ↓10+25
Comments15

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

Reading time6 min
Views19K
После нескольких месяцев активной разработки, команда WebMatrix рада представить новую версию WebMatrix 2 Release Candidate. WebMatrix 2 включает в себя очень много новых функций, но сегодня я предлагаю вам ознакомиться с обзором той работы, которая была проделана для поддержки разработки приложений Node.js в WebMatrix.



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

10 приемов, разрушающих хрупкую красоту кода

Reading time19 min
Views102K
Статья приводится в сокращении из-за ограничения на объем материала.

Для меня программирование — это не только технология, но и, во многом — искусство. И, поэтому, большое значение имеет красота кода.

Последние несколько лет я собирал приемы программирования, разрушающие в программном коде его утонченную красоту:
  1. Объявление всех переменных в начале программы;
  2. Возврат результата функции через ее параметр;
  3. Отсутствие локальных функций;
  4. Отсутствие else if;
  5. Использование параллельных массивов;
  6. Хранение размера массива в отдельной переменной;
  7. Доступ к свойствам объекта через obj.getProperty() и obj.setProperty(value);
  8. Использование рекурсии для вычисления факториалов и Чисел Фибоначчи;
  9. Отсутствие именованных параметров функции;
  10. Невозможность объявления объектов «на лету».
Наверняка, в некоторых местах вы будете со мной несогласны — ведь чувство красоты у всех разное.


Объявление всех переменных в начале программы


В двух словах:

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


Читать дальше →
Total votes 402: ↑324 and ↓78+246
Comments411

Начинающим разработчикам: история одного бага, или За что можно не любить новые версии iOS

Reading time4 min
Views2.6K


Совсем недавно Apple представила бету новой версии iOS, которая, как обычно, содержит много «вкусных» возможностей. Но наряду с приятным возникает вопрос: как уже выпущенные приложения будут работать на новой версии iOS? Вообще тема работы старых приложений на новой версии мобильной ОС упоминается нечасто. Тут, на Хабре, мне встретилась только одна статья «Обратная совместимость в iOS SDK». Ее-то и хотелось бы дополнить своей историей.

В тексте под катом – краткое описание «граблей», на которые мне довелось наступить при подготовке новой версии продукта Parallels Mobile с поддержкой iOS 5, и способов эти грабли обойти. Также мы на примере увидим «особое» отношение Apple к теме обратной совместимости в iOS SDK, ну и пару советов, как минимизировать проблемы при переходе на новые версии мобильной ОС.

Читать дальше →
Total votes 46: ↑36 and ↓10+26
Comments28

Push уведомления в приложениях для iOS

Reading time3 min
Views13K
Добрый день, Хабражитель.
Все наверное в курсе, что в iOS существует такой полезный сервис как Push уведомления. Я тоже был в курсе, но пока не столкнулся с его реальным использованием, даже не знал, что с ним есть так много нюансов. В этом топике вы узнаете два аспекта об этом сервисе: что нужно делать в xCode, и как отсылать сами пуш сообщения через php сервер.
Под катом описано то, как все это работает.
Читать дальше →
Total votes 39: ↑31 and ↓8+23
Comments44

Разработка приложений для телевизоров: в ожидании своего iPhone

Reading time7 min
Views10K
Светлое многоэкранное будущее все ближе и ближе, производители мобильных телефонов и гиганты бытовой электроники сражаются на новом поле — телевизионном. Но как насчет разработчиков — насколько просто создавать приложения, которые работают на экранах всех устройств? Бен Хуквей обсуждает вопросы кросс-экранной разработки, проблемы и возможности рынка «умных» телевизоров.

Представь на мгновенье мир приложений, где для выбора существует более 10 платформ — и где большинство из этих платформ закрыты для разработчиков. Мир, где существует лишь несколько приложений. Мир, где и этими приложениями никто не пользуется.



Естественно, это текущее состояние рынка соединяемых с Сетью телевизоров (connect TV). Впрочем, описание можно в равной степени отнести и к мобильному миру до iPhone-овской эпохи, когда проблема в разработке приложений была в удручающем разнообразии платформ.
Читать дальше →
Total votes 11: ↑9 and ↓2+7
Comments10

Полезные штуки для iOS-разработчика #1

Reading time4 min
Views83K
На Хабре в свое время было несколько статей «Очень много полезных штук для AS3». Автор попытался собрать ссылки на самые полезные и интересные библиотеки. И т.к. в последнее время я разрабатываю под iOS, решил последовать его примеру и сделать то же самое, но для своей платформы. Описания почти прикладывать не буду, все есть на страничках проектов.
Читать дальше →
Total votes 114: ↑109 and ↓5+104
Comments80

9facts: разбор полетов

Reading time9 min
Views3.3K
image

В середине марта мы, фактически, закрыли наш стартап 9facts.com, о котором я писал на Хабрахабре в декабре. И вот к маю я таки созрел на написание этого поста.

Начну с самого важного:
Читать дальше →
Total votes 215: ↑198 and ↓17+181
Comments106

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity