В этой статье пойдёт речь о том, как реализован словарь в Python. Я постараюсь ответить на вопрос, почему элементы словаря не упорядочены, описать, каким образом словари хранят, добавляют и удаляют свои элементы. Надеюсь, что статья будет полезна не только людям, изучающим Python, но и всем, кто интересуется внутренним устройством и организацией структур данных.
Roman Sichny @warsoul
User
Windows RT запущена… на HD2
1 min
108KВ твиттере хорошо известного в узких кругах персонажа Cotulla появились интересные скриншоты и фотографии вполне себе работающей Windows RT, запущенной на, наверно, самом популярном смартфоне для разработчиков — HTC HD2.
Похоже, в ходе портирования Windows 8 ему удалось запустить загрузчик UEFI.
Запуск Windows RT был лишь вопросом времени, поскольку обе ОС ипользуют, фактически, одно ядро.
Напомню, HTC HD2 известен как смартфон, попавший в магазины в 2010 году с ОС Windows Mobile 6.5 и, благодаря огромному количеству девелоперов, позволяющий запустить любую мобильную (и не очень) операционную систему, которая только была выпущена.
Сам я, как обладатель HD2, действительно удивлен тем фактом, что множество людей до сих пор занимается портированием свежайших продуктов на него, включая последие ветки Android, Windows Phone 7+ и пр. вопреки сообщениям производителей о том, что на таком хламе их последине ОСи не взлетят по разным причинам.
Хочется только сказать огромное спасибо и пожелать успехов в работе вам, ребята.
Под катом — еще несколько скриншотов системы.
Похоже, в ходе портирования Windows 8 ему удалось запустить загрузчик UEFI.
Запуск Windows RT был лишь вопросом времени, поскольку обе ОС ипользуют, фактически, одно ядро.
Напомню, HTC HD2 известен как смартфон, попавший в магазины в 2010 году с ОС Windows Mobile 6.5 и, благодаря огромному количеству девелоперов, позволяющий запустить любую мобильную (и не очень) операционную систему, которая только была выпущена.
Сам я, как обладатель HD2, действительно удивлен тем фактом, что множество людей до сих пор занимается портированием свежайших продуктов на него, включая последие ветки Android, Windows Phone 7+ и пр. вопреки сообщениям производителей о том, что на таком хламе их последине ОСи не взлетят по разным причинам.
Хочется только сказать огромное спасибо и пожелать успехов в работе вам, ребята.
Под катом — еще несколько скриншотов системы.
+86
Winulator: запуск игр 90-х на Android OS
1 min
101KСейчас для Adnroid существует большое количество приложений, которые позволяют запускать на этой мобильной ОС приложения для DOS, игры для Sega/Dendy и прочее. Вскоре количество таких проектов пополнится еще одним, проектом Winulator. Это ПО, позволяющее запускать игры 90-х на смартфонах и планшетах с Android OS. Пока что релиза нет, но проект, по словам разработчика (он один), уже практически готов к запуску, и есть видео, демонстрирующее нам все достоинства Winulator.
+41
Практический опыт подачи электронной отчетности в Украине
6 min
21KTutorial
Вводная
Современный мир уже нельзя представить без электронного документооборота – будь то обмен информации внутри организации, обмен документами между организациями или подача отчетности и разных заявок в государственные органы.
Имею небольшой опыт подачи отчетности в налоговую инспекцию и пенсионный фонд Украины и уже не могу удержать в себе стремление поделиться этим опытом с вами – возможно, кому-то пригодится.
Исходные данные
Имеем небольшую фирму или оформились частным предпринимателем – добро пожаловать в налоговую, пенсионный, статистику и другие службы по роду деятельности. Опишу процедуру подачи отчетности от и до на примере юридического лица.
+23
Программирование на Android для web разработчика или быстрый старт для самых маленьких. Часть 2
2 min
51KПриветствую!
Статья является продолжением начатой мной части 1.
Важно: данный урок не является профессиональным. Автор урока не является специалистом в программировании для платформы Android. Я заранее приношу свои извинения, за неоправданные ожидания.
В Activity для регистрации нужно проделать следующее:
Статья является продолжением начатой мной части 1.
Предостережение
Важно: данный урок не является профессиональным. Автор урока не является специалистом в программировании для платформы Android. Я заранее приношу свои извинения, за неоправданные ожидания.
RegistrationActivity
В Activity для регистрации нужно проделать следующее:
+28
Регистрируемся как частный предприниматель в Украине
14 min
116K Осознав необходимость выхода из тени или же просто смены формы деятельности из наемного работника в самозанятого гражданина приходим к тому, что надо бы зарегистрироваться в качестве частного предпринимателя (ЧП, ИП, СПД ФОП). О том, как зарегистрироваться, какую форму налогообложения выбрать IT-шнику, сколько и куда платить читаем под катом. В конце так же приложен бонус «Как получить деньги под открытие от Центра занятости» (на оплату налогов на первое время), какие виды деятельности выбрать согласно КВЭДа, а так же несколько примеров типичных документов. Актуально только для Украины.
+64
Блокировки в InnoDB (шпаргалка)
2 min
18KRecovery Mode
Решил разобраться в вопросе блокировок в InnoDB. Получилась такая вот краткая шпаргалка. Может кому пригодится. Буду благодарен сообществу за найденные неточности
И так, в пределах одной транзакции, после…
И так, в пределах одной транзакции, после…
+46
Python на Хабре
7 min
453KНекоторое время назад, в силу определенных причин, мне пришла в голову мысль о том, чтобы начать изучать какой-нибудь новый язык программирования. В качестве альтернатив для этого начинания я определил два языка: Java и Python. После продолжительного метания между ними и сопутствующих нытья и долбежки головой о стену (у меня с новыми языками всегда так — сомнения, раздумья, проблема выбора и т.д.), я все-таки остановился на Python. Окей, выбор сделан. Что дальше? А дальше я стал искать материал для изучения…
+142
Разработка приложений для Android с C#
4 min
283KTutorial
Recovery Mode
Monodroid и Monotouch это фреймворки от xamarin, которые дают возможность разрабатывать приложение на языке C# для Android и iOS соответственно. Так как это относительно новая технология информации в интернете не слишком много (за исключением офф сайта и большого количества тем на stackoverflow.com), на русском языке же я не нашел никаких туториалов и информации вообще.
Что бы устранить это недоразумение решил написать небольшой туториал о том как начать разрабатывать приложения под мобильные платформы при помощи этих фреймворков. В этой статье я рассмотрю только Monodroid.
Что бы устранить это недоразумение решил написать небольшой туториал о том как начать разрабатывать приложения под мобильные платформы при помощи этих фреймворков. В этой статье я рассмотрю только Monodroid.
+39
Маленький отважный арканоид (часть 4)
7 min
9.6KTutorial
После небольшого перерыва, продолжим нашу разработку. Сегодня мы добавим в проект небольшой звуковой эффект, проигрываемый при соударении шарика с чем либо на игровом поле. О работе с SoundEngine (которой мы сегодня воспользуемся) я уже писал ранее. По этой причине, сегодня я расскажу не столько о ней, сколько о том, как ее использование отразится на разрабатываемом нами проекте.
+12
Введение в разработку WinRT-приложений на HTML/JavaScript. Улучшение работы с данными
9 min
9.9KЭта статья продолжает серию материалов (первая часть, вторая часть), посвященных азам разработки WinRT-приложений на HTML/JS для Windows 8. В этой части мы постараемся улучшить надежность получения и качество отображения данных, а также немного поговорим о контрактах.
Напомню, что в предыдущей части мы остановились на том, что научились получать данные из внешних RSS-потоков и изменили стили отображения данных для различных состояний приложения, включая snapped-режим.
Напомню, что в предыдущей части мы остановились на том, что научились получать данные из внешних RSS-потоков и изменили стили отображения данных для различных состояний приложения, включая snapped-режим.
+18
Дайджест интересных новостей и материалов из мира PHP за последние две недели №8 (29.12.2012 — 11.01.2013)
5 min
17KНовогодние праздники подходят к финишу, и мы снова в строю со свежей порцией новостей и материалов из мира PHP.
Приятного чтения!
+25
Standard PHP Library (SPL) — Часть 1: Структуры данных
5 min
65KTutorial
Привет, Хабр! В данной статье речь пойдет про Standard PHP Library (SPL). На хабре до сих пор нет толкового мануала об этой библиотеке, которая уже стала частью ядра PHP (с версии 5.3). Данная библиотека содержит набор интерфейсов, классов структур данных, итераторов и функций, с помощью которых можно значительно упростить себе жизнь и повысить качество кода. В данной статье я рассматриваю такую часть библиотеки, как структуры данных. Также я покажу альтернативные решения поставленных задач и сравню скорость выполнения в обоих случаях.
+46
Деревянная мышь. История проекта
17 min
143KВы когда-нибудь задумывались, как устроены вещи, какой путь они проходят от идеи до реализации, насколько просты простые вещи? Насколько просто сделать расческу? А компьютерную мышь? А деревянную компьютерную мышь из цельного бруска красного дерева с ЖК экранчиком, с собственной электронной начинкой и изготовленным и оплетенным специально для нее кабелем? Думаю, вам будет интересен мой путь, который я прошел за 2,5 года создания моей мышки.
+568
Ошибки PHP: классификация, примеры, обработка
6 min
70KВ статье представлена очередная попытка разобраться с ошибками, которые могут встретиться на вашем пути php-разработчика, их возможная классификация, примеры их возникновения, влияние ошибок на ответ клиенту, а также инструкции по написанию своего обработчика ошибок.
+47
Samsung ATIV Smart PC Pro — Полная восьмёрка на планшете
6 min
104KНе так давно на IFA компания Samsung показала на выставке новые девайсы на Windows 8: телефон, планшет, два «гибрида»и моноблок. Одним из таких сенсорных гибридов был ATIV Smart PC Pro – таблетка, обладающая характеристиками ультрабука. Несмотря на своеобразное сочетание форм-фактора, возможностей и характеристик, именно этот девайс оказался одним из самых интересных не только с точки зрения позиционирования, но и технологически.
Ну а сразу после IFA в российский офис Samsung попали первые образцы (в данном случае – предсерийные), по которым можно делать выводы о производительности, общем уровне начинки и автономности, а также покрутить, потестить и помучить девайсы под новой ОС от Майкрософт. В 11.6-дюймовом малыше спрятали действительно серьёзную начинку, так что не поделиться первыми впечатлениями от девайса с подобным набором характеристик было бы пости преступно.
По неизвестным причинам топик долго лежал в черновиках, так что «вау» уже не очень «вау», но материал актуален, и характеристики радуют, по этой причине всех желающих ознакомиться с ними — прошу под кат. ;)
Ну а сразу после IFA в российский офис Samsung попали первые образцы (в данном случае – предсерийные), по которым можно делать выводы о производительности, общем уровне начинки и автономности, а также покрутить, потестить и помучить девайсы под новой ОС от Майкрософт. В 11.6-дюймовом малыше спрятали действительно серьёзную начинку, так что не поделиться первыми впечатлениями от девайса с подобным набором характеристик было бы пости преступно.
По неизвестным причинам топик долго лежал в черновиках, так что «вау» уже не очень «вау», но материал актуален, и характеристики радуют, по этой причине всех желающих ознакомиться с ними — прошу под кат. ;)
+45
Сложные формы в Django
9 min
26KTutorial
Добрый день. Постараюсь рассказать о сложных формах в Django. Все началось, когда в моем дипломе понадобилось сделать форму, которая состояла бы из других форм. Ведь если у вас есть две формы, которые вы используете, и тут понадобилась другая, которая является просто контейнером тех двух, вы же не будете создавать новую, копируя в неё все поля из старых, это очень тупо. Поэтому надо как-то их объединить. В свое время было FormWizard в Django, но он был крайне не удобным так что в новой версии её переделали на WizardView. Django конечно MVC, но я в статье все как можно детально постараюсь продемонстрировать, а потом уже можно все сжать используя ModelForm и циклы в шаблонах.
Поглядим на наши модели, ничего особенного, но чтобы было понятней, продемонстрируем.
+19
Проблемы в библиотеке форм Django на примере поля ввода телефонов
5 min
10KКак известно, в состав Django входит библиотека для генерации и обслуживания html-форм. Когда-то с Django в комплекте шла другая библиотека форм, но потом она была полностью переписана. Наверное, тогда разработчики решили много архитектурных проблем. Но и при работе с текущей библиотекой есть некоторые сложности. Именно об этом я и хочу поговорить.
Итак, задача. Пользователи очень любят оставлять на сайтах свои телефоны и другую приватную информацию. Причем, делать это они хотят, не задумываясь о том, как правильно её ввести: 8(908)1271669 или, скажем, 908 127 16 69. Посетители сайта очень любят видеть правильные телефоны, желательно единообразно оформленные: (+7 495) 722-16-25, +7 968 127-31-32. Получается, нужно валидировать и хранить номера в нормализованном виде, то есть без оформления. В поле, про которое я буду рассказывать, можно ввести больше одного номера телефона. Формат хранения определим как последовательности из 11 цифр, разделенные пробелом.
Итак, задача. Пользователи очень любят оставлять на сайтах свои телефоны и другую приватную информацию. Причем, делать это они хотят, не задумываясь о том, как правильно её ввести: 8(908)1271669 или, скажем, 908 127 16 69. Посетители сайта очень любят видеть правильные телефоны, желательно единообразно оформленные: (+7 495) 722-16-25, +7 968 127-31-32. Получается, нужно валидировать и хранить номера в нормализованном виде, то есть без оформления. В поле, про которое я буду рассказывать, можно ввести больше одного номера телефона. Формат хранения определим как последовательности из 11 цифр, разделенные пробелом.
+18
Интернационализация локального проекта django
4 min
9.8KХорошо, когда при разработке проекта под django, разработчики проекта изначально озаботились его интернационализацией.
Минимальными усилиями, проект адаптируется под различные языки. Django имеет богатый набор инструментов, достаточный для почти автоматического добавления новых языков, исправления и добавления переводов отдельных участков текста и так далее.
Ситуация выглядит совсем иначе, если проект изначально не предназначался для интернационализации. Огромный массив файлов, в которых разбросаны локальные строки в совершеннейшем беспорядке, при этом многие из них дублируются в разных файлах. Собирать все эти строчки в один файл, сортировать, заменять их содержимое в исходных файлах на идентификаторы сообщений — огромная и неблагодарная работа.
Минимальными усилиями, проект адаптируется под различные языки. Django имеет богатый набор инструментов, достаточный для почти автоматического добавления новых языков, исправления и добавления переводов отдельных участков текста и так далее.
Ситуация выглядит совсем иначе, если проект изначально не предназначался для интернационализации. Огромный массив файлов, в которых разбросаны локальные строки в совершеннейшем беспорядке, при этом многие из них дублируются в разных файлах. Собирать все эти строчки в один файл, сортировать, заменять их содержимое в исходных файлах на идентификаторы сообщений — огромная и неблагодарная работа.
+11
Понимание ООП в JavaScript [Часть 1]
16 min
338KTutorial
Translation
— Прототипное наследование — это прекрасно
JavaScript — это объектно-ориентированный (ОО) язык, уходящий корнями в язык Self, несмотря на то, что внешне он выглядит как Java. Это обстоятельство делает язык действительно мощным благодаря некоторым приятным особенностям.
Одна из таких особенностей — это реализация прототипного наследования. Этот простой концепт является гибким и мощным. Он позволяет сделать наследование и поведение сущностями первого класса, также как и функции являются объектами первого класса в функциональных языках (включая JavaScript).
К счастью, в ECMAScript 5 появилось множество вещей, которые позволили поставить язык на правильный путь (некоторые из них раскрыты в этой статье). Также будет рассказано о недостатках дизайна JavaScript и будет произведено небольшое сравнение с классической моделью прототипного ОО (включая его достоинства и недостатки).
JavaScript — это объектно-ориентированный (ОО) язык, уходящий корнями в язык Self, несмотря на то, что внешне он выглядит как Java. Это обстоятельство делает язык действительно мощным благодаря некоторым приятным особенностям.
Одна из таких особенностей — это реализация прототипного наследования. Этот простой концепт является гибким и мощным. Он позволяет сделать наследование и поведение сущностями первого класса, также как и функции являются объектами первого класса в функциональных языках (включая JavaScript).
К счастью, в ECMAScript 5 появилось множество вещей, которые позволили поставить язык на правильный путь (некоторые из них раскрыты в этой статье). Также будет рассказано о недостатках дизайна JavaScript и будет произведено небольшое сравнение с классической моделью прототипного ОО (включая его достоинства и недостатки).
+109
Information
- Rating
- Does not participate
- Location
- Украина
- Date of birth
- Registered
- Activity