All streams
Search
Write a publication
Pull to refresh
31
0
Send message
Это было наверное лет 15 назад, если не больше, где-то 94-97 годы или около того. Мы организовывали почтовый обмен данными для своей складской системы и предприятия по доставке медикаментов. Тогда онлайн-интернета толком еще не было, все работало на модемах и весь обмен происходил посредством UUCP в почтовых сообщениях.
Черт, я даже не помню, зачем нам понадобилось изобретать этот велосипед поверх base64 )))
Помню, реализовывали стандартные base64 и uuencode, а вот base128… наверное для самых хреновых каналов опцию эту делали — данных было много, и разница в оверхеде была существенной в итоге.
Так что вряд ли я найду вам исходники, уж простите. Но если вам так нужно, могу набросать заново. Это действительно не сложно: берем каждые 7 символов(56 бит), и преобразуем в восемь семибитных, далее табличная подстановка алфавита и паддинг до кратности(при чем не обязательно паддить именно до кратности).
Только алфавит свой придумаете, я уже не помню, какие именно диапазоны символов мы выбирали, кроме очевидных. Помню, что для совместимости с 7-битной кодировкой(уже в каком-то другом проекте) отдельно что-то мудрили, чтобы избавиться от паддинга — этот 129-й символ был явно лишним в кодировке, предполагающей всего 128 значений для байта.
Когда-то для внутренностей одного проекта я реализовывал даже Base128. Суть была ровно той же, что и Base64, только оверхед меньше(114% против 133%). Даже не знаю, существует ли такой стандарт кодировки. По идее должен, т.к. очевиден.
P.S. паддинг для Base128, конечно же, будет длиннее, потому она не выгодна для слишком коротких кусков данных.
Еще можно вспомнить сопутствующие RFC для MIME кодировок, по которым Base64 последовательность разбивается на куски по 76 символов с помощью перевода строки CRLF, например в email для ограничения длины строки в 80 байт для совместимости со старыми нюансами стандартов.
Хотя по сути вы правы: = относится непосредственно к самой Base64 кодировке, не смотря на то, что в ее «алфавит» не входит.
>> Base64… дает результат, который составляет только 130% от длины исходных данных.
Немного занудно, но поправьте: не 130, а 133.(3)% плюс оверхед от паддинга.
Наиболее точно: каждые три байта(8-битных) превращает в четыре байта(6-битных по словарю) и выравнивает в конце дополняющим символом (=) до количества байт, кратного четырем.
Как-то так.
Там же рядом есть вторая картинка без iPad. На ней виднее конструкцию.

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

А на моей картинке даже узлы видны — их изначально не было — была двойная длина шнурка кожаного и висела двойная петля с единственным узлом, который прятался за решетку воздуходувки. То есть снаружи на шнурке узлов не было вообще. Потом мне шнурок порвали… ну и это уже результат )
В общем подвес состоит из двух частей — шнурок, за который цепляется чехол, и стойки по бокам магнитолы, они нужны, чтоб айпад собой не нажимал кнопки магнитолы и приборки.
Стойки вырезаны из такого приятного на ощупь упаковочного материала. Часто в такое объективы пакуют. Наклеены на мягкий двусторонний скотч(такая пенистая толстая лента) — его можно снять без следов, если приспичит.

Звук либо через BlueTooth, либо на AUX вход магнитолы шнурком из гнезда наушников. Шнурок короткий при случае прикупил себе на DX типа такого, только без завитушек. Оч. удобно оказалось. Ну и зарядка Griffin PowerJolt из прикуривателя приходит.
Ну конечно это зависит от паттернов использования и предпочтений.
У меня вот немаловажную роль играет комплекс техники Apple дома: макбуки, ATV… В комплексе все отлично работает, включая всякие AirPlay, AirPrint, TimeMachine, сеть эппл и иже с ними. Грубо говоря, если иметь только телефон от Эппл, то запросто можно поменять на Андроид, Винфон или что-то еще. А вот в комплексной экосистеме выбор уже как бы предопределен.

А что до чехлов — жене я наоборот говорю — не надо никаких чехлов и пленок. В результате у нее айфон обцарапан и покоцан даже местами(не особо видно, если не присматриваться), но зато она не парится на эту тему, как люди с пультами от телека в целлофане )))
Такая свобода от излишней бережливости — тоже часть комфорта.
У меня тоже немолод, не только душой(sw), но и телом. Хранился изначально в чехле Agent18. Он хоть и предохраняет частично от ударов, но совершенно не ограждает поверхность гаджета от попадающего под чехол песка. И при неудачной разборке еще внутренний разъем камеры повредился — теперь фотки с него все в стиле «зеленый психоделик» — какие-то контакты цветовых каналов в разъеме не контачат.

А планшет да, в пешеходной жизни таскать его наверное не очень комильфо. А вот в автомобильной — самое оно. Простенький подвес поверх магнитолы — Я.Пробки и всякая мультимедия(можно звук на магнитолу направить) на большом экране, рука на ручке КПП свободно пальцем дотягивается и при этом ветровое стекло не перекрывает — красота )
Ну само по себе это неудивительно, разве яблохейтеры как слабый аргумент могут использовать. А так как на тот момент уже был iMac, что давало зацепку на будущие названия продуктов в стиле [iЧто-то]. И для *будущей таблетки очевидных названий было по пальцам пересчитать: iTablet, iPad и еще несколько.
А я так и не поменял ) Жене покупаю последние версии, а сам до сих пор на 2G сижу. Правда немаловажную роль в этом сыграл iPad — с ним от телефона в основном нужны остаются только звонилка и СМС. Иногда напрягает отсутствие синхронизации заметок, но не смертельно — накрайняк почтой самому себе перебросить можно список покупок.
Почему-то вспомнилось выражение «Ежовые рукавицы» )
Только колючками внутрь и для всех, кроме владельца )))
А что именно вас интересует?
Если «у меня нет платного аккаунта разраба, но хочу видео», то тут трудно помочь, поскольку все мы, будучи разработчиками, находимся под NDA, и не имеем права распространять эти видео(хотя казалось бы, что в них секретного, если множество материалов Эппл и так раздает бесплатным аккаунтам). Но мало ли чем потом это грозит.
Если аккаунт у вас есть, но вас беспокоит только недоступность сайта в связи с озвученными в топике причинами, то никто же не обязует смотреть все в онлайне — видео можно слить как с соответствующего раздела сайта, так и из iTunes из раздела разработчика. Ну в смысле сейчас-то вроде как нельзя, но можно было сделать это заранее.
В общем, остается вам, похоже, искать по разным торрентам, может кто куда и слил. (кстати все видео WWDC2013 занимают в SD 52,5 ГБ, в HD 298,23 ГБ).

Меня вот больше интересует, где взять WWDC2009 видео для Mac. В соответствующем разделе iTunesU доступны только iPhone видео, для Mac есть только список треков, но ни один не качается — там битые ссылки.
>> Лично я не нашел как правильно это назвать
Очень похоже, прямо первая ассоциация, мы в школе на уроках рисования в «началке» делали что-то подобное руками(точнее тупыми деревянными предметами) на толстой фольге. Называли это чеканкой. Там конечно было попроще, двустороннего контроля деформации и ЧПУ не было, но все же…

А если вспомнить, что лошадиная сила считается равной 745 Ватт… )))
Если нам нужна одна, остальные исчезнут после загрузки, ибо потеряют ссылки, только Dirty память пофрагментировав слегка. Связывать их между собой обычно смысла нет(тем более ячейки таблиц вообще мало с чем можно эффективно связать в IB, внешним по отношению к самой ячейке).
Зная эти особенности, можно вполне организовать кеш ячеек, запасая загруженные «вхолостую» впрок.
А так-то многие в ксибах хранят вьюху, внутри нее View Based NSTableView, внутри которой руками рисуют кастомную NSTableCellView, автосоздание которой отдают на откуп самому NSTableView, после чего даже не задумываются, что каждый раз, когда табличка создает очередную ячейку, инстанцируется не только ячейка, а весь ксиб.
Ну это все лирика. По теме — я согласен с PapaBubaDiop: это непрактично(впрочем, строки тоже не красиво, в этом я согласен с вами).
Если уж и надо, чтоб компилятор ругался, так константы объявить можно где-нибудь с нормальными названиями — и компилятор ругаться будет, и автокомплит подсказывать и дополнять, и если уж совсем туго с ориентированием в этом хозяйстве — для страховки тестами покрыть можно.
Ксиб не обязан иметь имя класса. Один ксиб может содержать внутри много разных шаблонов, например все виды ячеек таблиц, используемых в приложении. Эдакая фабрика объектов, чей дизайн создавался в IB. Иными словами, ксиб может быть вьюхой, возможно в большинстве приложений это так и есть, но он вовсе не обязан нею быть.
На видео с дрона почему картинка плывет, как будто снималось сквозь сврхпрозрачное желе?
Это стедикам-алгоритм какой работает, тормозит девайс/софт или же объектив этот магнитный просто плохо при тряске держится?
Еще раз: вы человеку на фразу «не видел ни одной ремарки об переиспользовании дескриптора» ответили цитатой о reference counting на дескрипторах(что равноценно относится вообще к zval переменным) в самом PHP. Общего у этих фраз только слово «дескриптор».

Он говорил о том, что приведено в его коде в посте. Что многие программисты, выполнив запрос(curl_init -> curl_exec), тут же закрывают соединение(curl_close), и для следующего запроса устанавливают новое, когда можно было, не закрывая коннект, сохранить дескриптор уже открытого соединения и использовать его повторно для keep-alive.

При чем здесь ARC в PHP?
Любой библиотеке, типа того же cURL, ничто не мешает удержать свой собственный ресурс внутри себя, сколько необходимо. И не обязательно «бинарной» библиотеке.
Однако вам правильно подсказывают, что про внутреннюю кухню самого PHP вы в контекст не попадаете совсем. К данной теме эта кухня отношения не имеет.
За эти не скажу, не приходилось.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity