программирование iPhone - впечатления, мнения?

Пример TensorFlow Convolution дает обзор различий между SAME и VALID:

  • . Для заполнения SAME высота выхода и Ширина вычисляется как:

out_height = ceil (float (in_height) / float (strides [1]))

out_width = ceil (float (in_width) / float (strides [2]))

И

  • Для отступов VALID высота и ширина вывода вычисляются как:

out_height = ceil (float (in_height - filter_height + 1) / float (strides [1]))

out_width = ceil (float (in_width - filter_width + 1) / float (strides [2]) )

6
задан Ned Batchelder 9 November 2008 в 23:42
поделиться

7 ответов

Я нахожусь в одной лодке как Вы (несколько). Я разрабатывал в C# в течение 7 лет, начиная с.NET 1.0. За прошлые недели пары я преподавал мне Какао и Objective C. Вот мои впечатления (примечание для примечания с Вашими)

  • Согласованный в той помехе может быть проблема. Я склонен использовать Пробелы в большой степени при разработке в XCode (поместите XCode в одно пространство, Интерфейсного Разработчика в другом пространстве, Инструменты в третьем пространстве). Если у Вас нет Leopard (и таким образом, никакие пробелы), то используйте Команду-H для сокрытия активного окна. Используя это имеет тенденцию очищать вещи вполне немного (однако, было бы хорошо, если Вы могли бы управлять-h автоволшебно текущим окном когда команда-tab'ing к другому приложению).

  • Мне нравится XCode все больше. Я ненавижу Visual Studio - я нахожу, что это нестабильно, медленно, и хорошо, просто своего рода дрянной IDE. Сравнительно я нашел, что XCode быстр, стабилен, и мне нравится, как он организует и фильтрует Ваши файлы. Я не нахожусь слишком на моих ярлыках XCode, но я надеюсь, что существует способ, которым я могу быстрый переключатель от одного класса до другого (подобный ctrl +n ярлык в ReSharper). Intellisense мог быть лучше относительно того, как он отображается пользователю, но я действительно как то, как он по существу создает шаблон и Вы можете ctrl + / для перехода к следующему аргументу в сообщении.

  • Я ненавижу документацию в XCode. Система справочной информации сосет, и по любой причине она никогда не находит то, что я ищу. Я заканчиваю тем просто, что гуглил для чего-либо, что я должен знать... Я надеюсь, что они улучшают документацию. Это - моя самая большая говядина прямо сейчас.

  • Не совсем там все же, поскольку я прохожу полную платформу Какао для рабочих столов Mac. До сих пор мне действительно, действительно нравится то, что я вижу. Одна вещь, которую я скажу, состоит в том, что было бы хорошо, если бы iPhone SDK допускал сборку "мусора"...

  • Objective C - я никогда не использовал его, это - мой первый набег в него. Сначала я был видом wierded синтаксисом и квадратными скобками для обмена сообщениями, но это действительно растет на мне. Это настолько быстро, чтобы просмотреть метод и видеть вызовы сообщения, которые выполняет метод. Чем больше я использую его, тем больше Objective C просто чувствует себя прекрасно... однако, шаблонная обработка/дженерики была бы желанным дополнением к языку.

В целом, мой набег в разработку Mac был приятен, и я счастлив начать работать (сегодня! yay!) на некоторых фактических проектах mac/iphone.

5
ответ дан 8 December 2019 в 17:31
поделиться

Я соглашаюсь с Вашими чувствами. Прибытие из средств разработки Microsoft (и затмение) к XCode довольно резко. XCode просто чувствует себя... незаконченным в некотором отношении. Это, конечно, не имеет полировки, которую я приезжаю для ожидания из VS и Eclipse.

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

Objective C, однако, является большим. Мне действительно нравится язык, несмотря на его причуды и особенности (сообщения к пустому указателю не исключение на этапе выполнения?в самом деле?), После того как Ваши глаза C++ привыкают к синтаксису, свободно введенный анонимный обмен сообщениями на самом деле заканчивает тем, что был действительно прохладен для проигрывания с (если несколько опасный и подверженный RTEs.)

3
ответ дан 8 December 2019 в 17:31
поделиться

Я действительно хочу вскочить и начать разрабатывать приложения для iPhone также. Я сделал немного Motorola, Blackberry и разработки Windows Mobile, которые были все прохладны и восток, чтобы войти с хорошей документацией, легкой к доступу и установить SDKs. До сих пор я чувствую, что Apple является немного человеком, принадлежащим к элите в том, что кажется, что их среда разработки только доступна на Mac. Мне также, не совсем нравится их лицензирование понятий. Если Вы хотите смочь на самом деле опубликовать приложения, необходимо пройти их, и они имеют последнее слово на том, можете ли Вы, или не может или считают ли Ваше приложение приемлемым для работы их превосходного продукта. Это - моя вера, что они делают более трудным для сообщества разработчиков ПО с открытым исходным кодом поддержать и произвести приложения или для новичка iPhone, как я, даже начать писать приложения для продуктов. Существует много плохих вещей, сказал о Microsoft, но, я должен сказать, что они получают свои API и SDKs там задолго до того, как их продукты поступают в продажу и действительно поощряют программистов всех уровней закапывать и принимать участие, пишущий приложения для их платформ и операционных систем.

2
ответ дан 8 December 2019 в 17:31
поделиться

Я работал над несколькими маленькими приложениями для iPhone, и я просто поражен, что они не включали компоненты платформы, которые позволяют разработчикам легко получить доступ к веб-сервисам SOAP. Кто-либо еще работающий в среде предприятия IT, чувствуя боль?

2
ответ дан 8 December 2019 в 17:31
поделиться

Я лично думаю, что документация очень хороша в этой точке. На любом классе Objective C можно дважды щелкнуть опция для перевода в рабочее состояние документации для того термина, и если существуют какие-либо проекты в качестве примера с помощью то, что конкретный класс это перечислено к (по крайней мере, для многих iPhone определенные классы).

Также изучите включение Научного сотрудника, когда Вы сначала начинаете и включаете Смысл Кода (не думайте, что это идет по умолчанию). Комбинация XCode + Интерфейсный Разработчик довольно мощен, когда Вы привыкаете к нему, и откровенно за несколько десятилетий я никогда не использовал лучшего интерфейсного разработчика с точки зрения того, как интеграция для кодирования работ или способности разработать интерфейсы, которые разумно изменяют размер без тонны дополнительной работы.

1
ответ дан 8 December 2019 в 17:31
поделиться

Я произошел из среды C# также и работал с iPhone SDK начиная с беты 2. Я полностью соглашаюсь с cranley о VS, являющемся немного неуклюжим по сравнению с XCode. XCode является отличающийся ПУТЬ, и полностью внешний, когда Вы начинаете использовать его. Так был VS хотя назад в день. После того как Вы добираетесь кривой обучения, это - замечательный опыт. Приложения я разрабатываю использование сторона сервера C# (веб-сервис) и я абсолютно, очень не хотят иметь необходимость переключиться на VS для написания кода веб-сервиса от XCode. Obj-C также довольно забавен использовать, после того как Вы изучаете, как он работает лучше всего: делегаты (очень отличающийся, чем делегаты.NET), сообщения, Категории и все другие существующие причуды.

Я сделал некоторый Java и программирование Flex до.NET, и я всегда ненавидел документы.NET по сравнению с документами Java. Они просто не сокращают его. Я лично нашел, что документы Xcodes и поисковая система не что иное как удивительный. Существуют бесчисленные руководства PDF, связанные из документов, которые имеют тонны примера кода. Думайте об этом: iPhone SDK был вне беты в течение приблизительно 2 месяцев теперь. Документы показывают уровень зрелости многих лет. И да, это - потому что Obj-C был около более чем года, и платформы подобны.

В целом, самая большая проблема, которую я нашел, - то, что существует МНОГО разработчиков.NET, примыкающих к победившей стороне iPhone и пытающихся использовать Obj-C, как будто это был C# или VB. Им не удается прочитать основные документы Obj-C уже не говоря о документах iPhone, и затем они очень расстроены, и в конечном счете перестали работать. Дискуссионные форумы полны этого сценария. программирование iPhone не легко. Изучение нового языка не легко. Это занимает время и много try.fail.try. Это не.NET, так потеряйте то мышление перед ровным началом, и вещи будут замечательны.

0
ответ дан 8 December 2019 в 17:31
поделиться

Я плохо знаком с программированием iPhone и XCode также, после того, как много лет программирования для многих платформ и моего впечатления будет скорее близко к Вашему (с некоторыми различиями):

  • MAC OSX: Я переключился из Windows приблизительно 2 года назад (как эксперимент), и я остался :) - я не думаю, что переключусь назад. Наличие основы Unix очень прохладно, и я люблю роскошный GUI +, мне нравится основная простота интерфейса. Мне потребовались приблизительно 2 месяца для привыкания к нему, но я не могу предположить возвращаться. Я ненавижу раскладку клавиатуры MacBook и часть ограничения клавиатуры OSX все же. Это забавно, как компания, которая так гордится ее пониманием удобства использования, может придумать такой паршивый набор решений. Возможно, лучшие примеры не имеют контекстного меню (щелкают правой кнопкой) по сочетанию клавиш и тому, что Вам нужны два ключа для выполнения задач как Дом, Конец, PgUp, и т.д. Мой основной совет состоит в том, чтобы провести время, изучая как можно больше сочетаний клавиш. Я также рекомендую установить и использовать следующие приложения сторонних производителей, которые существенно улучшили мой опыт Mac: Quicksilver, Средство поиска Пути, 1Password, Вещи, TextMate, текст Wrangler & Transmit.

  • XCode: Я полностью соглашаюсь с Вами. Я думаю, что XCode довольно примитивен. Я сравниваю его с ИДЕЕЙ IntelliJ, что я работаю со много, и такое чувство, что Apple застревает по крайней мере 7 лет в прошлом:

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

    Большая ирония - то, что серьезные разработчики Mac даже не понимают, что у них есть проблема... Они так привыкли к путанице, они должны иметь дело, с которым они не могут вообразить лучший мир... Вместо того, чтобы помочь Вам, XCode продолжает мешать. Я могу придумать десятки примеров о том, как эта среда сосет, по сравнению с современным Java IDE (Eclipse, IntelliJ), но я полагаю, что это - пустая трата времени - кажется, что Apple слишком горда для изучения от других..., который забавен, если Вы рассматриваете то, что изобретатели Java не были застенчивы для приобретения знаний из Objective C. Мой единственный совет (мне также) состоит в том, чтобы глубоко вздохнуть каждый раз, когда Вы открываете XCode и изучаете как можно больше от экспертов, которые больше привыкли к этой среде.

  • iPhone SDK: это еще хуже, чем это - мы рассмотрели портирование нашего мобильного приложения к iPhone несколько месяцев назад, но решили не обеспокоиться, потому что мы волновались, что Apple могла бы отклонить его от App Store, и Вы не можете знать заранее (они отклонили несколько подобное приложение в прошлом на том основании, что это слишком близко к iTunes!)

  • Obj-C: Я нахожу Objective C довольно хорошим и после нескольких дней, Вы привыкаете к неловкому синтаксису обмена сообщениями, но мальчик делает я пропускаю сборку "мусора"... Необходимость иметь дело с выделениями памяти и выпусками чувствует немного как возвращение вовремя к моим ранним дням C/C++. Я только начинаю изучать нюансы этого языка, но до сих пор мне нравится то, что я нашел. Существует довольно много подсказок, рассеянных вокруг сети о лучших практиках Obj-C, которые Вы не можете найти в официальных документах, и я изучил много от них (см., например, следующее обсуждение здесь stackoverflow),

1
ответ дан 8 December 2019 в 17:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: