Pull to refresh

Comments 65

А теперь скажите мне, сколько из прочитавших все эти 31 пункт запомнили хотя бы 10 и будут использовать? Лучше бы взяли один из пунктов и подробно всесторонне рассмотрели, больше пользы было бы.
Извините, конечно, но ценность этого поста стремится к нулю.
На вкус и цвет фломастеры разные. А если тяжело запомнить, всегда можно распечатать и держать в поле зрения. Плюсанул, мне материал понравился, спасибо.
Оптимизация и безопасность, это инь и янь нашей профессии, кому нужно — запомнит, или заложит в любимые закладки ;)
пункты то в основном краткие рекомендации. любой более менее опытный разработчик и так знает о большинстве описанных пунктов
Если вам нужно это запоминать и вы этого еще сами не понимаете, то вы посредственный программист :)
Почти всё новое — это хорошо забытое старое. Всегда полезно вспомнить о простых вещах, так как именно простое часто забывают и начинают излишне изобретать велосипед. Особенно когда начинаешь.
UFO landed and left these words here
14. Используйте Eclipse: даже если у вас есть другая любимая IDE или редактор, который вы используете годами, применяйте Eclipse для разработки под Android. Это достаточно хорошая IDE и для нее существует множество утилит помогающих разработчику.

19. Редактируйте XML-файлы простым текстовым редактором: не используйте GUI для изменений свойств XML-тэгов.

Взаимоисключающие параграфы?
имелось ввиду редактировать разметку не в UI builderе, который поставляется вместе с ADT плагином, а напрямую в xml редакторе
Понятное дело, а какой тогда смысл «Используйте Eclipse: даже если у вас есть другая любимая IDE или редактор»?
в эклипс какбе есть тоже обычный редактор текста, в котором можно править XML без GUI.
Чё, риальне?
Тоесть он ничем не отличается от других редакторов. Почему же тогда «Используйте Eclipse: даже если у вас есть другая любимая IDE или редактор»?
eclipse используется вообще-то не только для редактирования XML-файлов, пункты 14 и 19 вообще-то не вытекают один из другого. Если вы программировали для Android под эклипс, то наверняка видели, что в нем есть возможность редактирования XML-файлов в GUI по принципу конструктора, просто собирая Layoutы из предложенных «деталей», задавая все параметры там же. Автор рекомендует не делать этого. Как-то так.
14. Используйте Eclipse

Да это просто призыв к холивару в комментах :)

А если серьезно, то пробовал использовать для разработки 3 разных популярных IDE и не отметил за эклипсом каких-то явных преимуществ.
Преимущество Eclipse по моему только в интеграции всех инструментов в один. Хотя у него самый продвинутый визуальный редактор интерфейса, что не так критично для меня. Пользуюсь IntelliJ IDEA просто потому что удобнее и быстрее эклипса.
А у меня Eclipse безбожно тормозит, а потом я открыл для себя IntelliJ IDEA! Лично для меня — это лучшая ide для разработки под android.
Я может быть что-то делал не так, но нормально пользоваться визуальным редактором у меня так и не получилось. У меня не получалось ни с нуля вставить туда то, что нужно и как нужно, ни посмотреть руками написанные layouts — всегда черный экран, хоть ты тресни. Кроме того, для лучшего понимания, что и как происходит, лучше самому копаться в XML.
В том-то и суть, что опытные программисты все это знают и так, а новички в такой форме не усвоят.
JFYI: в 11-й версии IDEA, которая сейчас уже в статусе «beta», есть визуальный редактор layout для android
Это не редактор, это просто превью, постепенно допиливается и уже сейчас можно пользоваться, что бы получить представление о том, как будет выглядеть layout
Визуальный редактор бывает полезен для быстрой проверки результата. Для удобного редактирования layout он совершенно бесполезен (ИМХО). Из удачных реализаций WYSIWYG редакторов gui основанных на xml встречал разве что .NET WPF. Да и то там часто ковыряться ручками приходится.

Кстати, слышал что в плагине для новой IJIdea будет просмоторщик.
UFO landed and left these words here
fill показался им не однозначным почему-то
А где можно прочитать, что это теперь deprecated? Мне не попадалось такое утверждение.
UFO landed and left these words here
Мне советы впринципе все понравились, кроме:

16. Программируйте каждый день: программирование под Android может вас разочаровать. Не позволяйте себе останавливаться. Используйте утилиты, примеры приложений, читайте статьи. И снова пишите код.
___
Я не знаю как считают другие, но данный совет эффективному программированию не способствует, ни только для android, но и вообще, ИМХО. Это уже называется задротсвто, как в играх.
Я думаю что здесь можно указать какие-то сроки. Автор, я думаю, надеялся этим сказать — пытайся, а вдруг попрет?
Кстати, кто-нибудь может привести реальные примеры пункта 20?
Во дела! С китайцами ухо востро держать надо. А вообще — лучше самому перевести описание программы и название на разные языки, ощутимо прибавит популрности программе.
Я так и делаю ))) На эту штуку нечайно наткнулся, иногда просматриваю новые обзоры через поиск Google
ну я так понял это они в своем магазине запустили, в гугл маркет-то наверное можно написать, и если что — они клона наверное уберут
Иконки да — украли, но я так понял, само приложение другое, и подписано другим разработчиком,
+ приложение судя по всему глючит и популярность у него намного ниже
да приложение другое, но тут суть в другом, гугл почти не следит, иконки то я сам рисовал, то бишь они должны были убрать, а не убрали. да приложение там глючит, но все равно это не важно. главное факт копирования ) на галстуках конечно лучше пример. но пиратство реально процветает.
А у меня отлично функционирует NetBeans, всем доволен, Eclipse не хочу.
В целом же, довольно банальный список, можно смело убрать слово «Андроид» в большинстве пунктов.
Не знаю, как у Идеи, а у Netbeans есть одна прекрасная плюшка: он в проектах под андроид не создаёт лишних IDE-специфичных файлов, а использует стандартный проект, создаваемый Android SDK.
Т.е. проект можно перекинуть куда угодно и собрать простым антом, чего Eclipse, насколько я знаю, не позволяет.
чего Eclipse, насколько я знаю, не позволяет.

Это не совсем так. Да, и Eclipse и Idea имеют свои проектные файлы, но при этом никто не мешает поддерживать build.xml и собирать проект антом, тем более что его в итоге при релизе все равно придется собирать антом.

Не видел в eclipse но в Idea есть панель ант задач, в которой удобно запускать билды.
Kent44, расскажите кофейнику, почему для финальной сборки надо использовать именно ant, а не пользоваться стандартными средствами eclipse?
Ну хотя бы ради обфускации включенной в дефолтном build.xml. Еще можно указать в файле пропертей путь к ключу разработчика и тогда подписка приложения будет происходить автоматически во время сборки. Попросят только ввести пароль. О последнем гугл предупреждает что это не очень секурно, т.к. он может сохраниться в истории баша. Но это если запускать ant через консоль.

Возможно все это настраивается в билде Eclipse, я просто не изучал. ИМХО, сборка проекта не должна зависеть от среды разработки, особенно при командной работе. Конечно желательно всем в команде пользоваться одним инструментом, но это скорее нужно для более простой коммуникации. Сборка может происходить и в автоматическом режиме.
ant-build можно создать средствами SDK, команда android update project
9. Используйте «пустые» элементы разметки: часто вы будете использовать пустые элементы в вашей разметке для относительного позиционирования других элементов. Например, вы можете использовать пустой TextField с нулевой высотой и шириной с параметром «centerInParent» равным «true» только для того, что бы выравнять другие элементы по центру экрана.

Фи. (смайл)
Как там — 6. Это Java: большая часть разработки приложения под Android – это программирование на Java. Не тратьте время на критику или ее восхваление. Просто программируйте.


А статья хорошая.

Положим, по центру экрана нужно разместить две иконки: одну чуть выше центра, другую чуть ниже. Если вы знаете способ, как это сделать без пустого элемента с centerInParent, — поделитесь, пожалуйста.
А если иконку поместить во FrameLayout и указать ему нужный padding, это сработает?
Если правильно понял задачу, то как-то так (извиняюсь, пользоватся тегам не могу):
gist.github.com/1388323

Нет, не знаю.
В данном случае обратила на себя внимание легитимация очевидного костыля, потому следом и приведена цитата о Джаве. (смайл)
24. Не совсем согласен с «Вместо tab bar, используйте кнопку Menu». Если понятно, что переходы через меню будут частыми, то меню — это лишний «клик» для пользователя, плюс элементов меню сразу не видно, то есть вы сознательно прячете для пользователя элементы навигации. С другой стороны, для таких вещей как Settings, меню — самое место, не мозолит глаз и используется редко. Хороший пример это Foursquare для андроида.

28. Если есть достаточно большой объем редко изменяемых данных, может подойти protobuffer. Он очень компактен и быстро парсится в Java объекты, это гораздо удобнее громоздкого SQLite.

«20. Думайте о пиратстве в MarketPlace» — ценный совет, я как-то даже не думал об этом, надо исследовать вопрос :)
Там особо исследовать нечего — при желании можно взять любое приложение, разобрать, собрать (возможно с новыми ресурсами и некоторыми подмененными классами), переподписать и выложить в маркет.
Все хорошо, но с советом про пустые TextFieldы категорически не согласен. Выравнивать элементы по центру экрана можно и менее костыльным способом, а такие пустые элементы только ухудшают читаемость layout'a.
Неужели без 9ого пункта не обойтись? По-моему наличие элементов, выполняющих несвойственную им функцию(невидимое текстовое поле для верстки, а не для ввода текста), будет сильно ухудшать читаемость.
п.11 — парсер лох.
svn checkout http:// apps-for-android.googlecode.com/svn/trunk/ apps-for-android-read-only

без пробела после //
У вас заголовок неправильный. Вы перечислили советы, а не методы. Метод — это способ достижения результата.
Не используйте один монитор
Используйте Eclipse
Очень правильная мысль! Сейчас занимаюсь кроссплатформенной разработкой (я пишу под виндой в Qt creator, еще 2 разраба пишут под линуксом в Qt и еще 1 пишет под линуксом в Эклипсе). ОЧЕНЬ неудобно обходиться одним монитором. Постоянно хочется окно приложения видеть рядом с кодом, а не поверх. Так еще и Qt в части интерфейсов не очень удобен. На моей рабоче вайдовой 19хе приходится делать уйму лишних телодвижений, особенно при использовании встроенной справки, которую хочется открыть вообще на третьем мониторе.
А я что-то не уловил выгоды в 19 пункте. В чем я выигрываю в ручном редактировании XML-тэгов?
«20. Думайте о пиратстве в MarketPlace»

и в AppStore тоже думайте
Около половины пунктов можно заменить на один. Остальные — больше констатация собственного опыта, нежели полезный совет начинающему. Но это ведь перевод, так что претензии к автору топика едва ли уместны.
17. Не используйте один монитор Полностью согласен! На работе сейчас 2 монитора очень не хватает еще парочки. Дома пока один и прям не возможно нормально работать.
Only those users with full accounts are able to leave comments. Log in, please.