Android программирование — с чего начать?

Здравствуйте!
Подсажите не опытному человеку с чего начинать обучение. Java, Xml, дальше что? Вот на днях питался заняться этим делом. Скукота, ничего не понимаю.
Направитье пожалуйста на истинный путь программирования. Может ссылками на книжки может советами.
Сам я дизайнер хотелось бы поработать даже с напарником.

👍ПодобаєтьсяСподобалось0
До обраногоВ обраному1
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Добро пожаловать на наш ресурс.https://www.youtube.com/user/vitaxafication
Андроид программирование для начинающих, на русском и бесплатно!

В Киеве нашла курсы по Андроид в учебном центре АС, там и С и Джаву и Андроид изучают, такая комплексная программа. Скажите этого достаточно будет, если учить с нуля?

Если мы говорим именно про программирование под Андроид, то я лично сейчас спрыгиваю на него с C# вот так:

1) Покурил developer.android.com
2) Поставил себе JDK, Android SDK, Eclipse, ADT plug-in (developer.android.com/...nstalling.html
3) Купил рекомендованный Гуглом девайс (developer.android.com/...ng/device.html
4) Поставил Google USB driver, активировал отладку приложений на девайсе
5) Скачал самую первую попавшуюся книгу в PDF: «Professional Android Application Development», от Wrox press

6) учу API и делаю уроки

трудностей-никаких. Хотя, Eclipse, конечно, специфичен. Отличается от Вижуал Студии :) Но нужно еще курить по OpenGL, SqlLite, тестирование а также различные платформенные API

1) Покурил developer.android.com
Ох там и курить, мама дорогая. Вроде не тяжело, но материала очень много.
P.S. Сори не посмотрел сразу, что тема уже древняя
Читаю автора (в том числе и его ответы ниже) и не понимаю — вроде и на русском, а вроде и нет...

ПС: намекаю на то, что если человек не научился за 12+Х лет правильно писать на русском, то и на любом другом ему писать будет очень проблематично. Лучше начать рисовать. Я вполне серьезно. Любой язык требует логики и правил.

Хороша книжка для початку роботи з андроїдом oreilly.com/...g/0636920010883
Але перед тим потрібно розібратись з Java, SQL, XML. Розуміти базові принципи багатопотоковості і мережевої взаємодії.

Головне — Java, без неї на андроїді програмувати ніяк не вийде.

mono-android.net

на C# тоже можно. :) Так что без Java, ще й як вийде.

Підловили :)
Але це скоріше екзотика і хак, ніж засіб для «real life» розробки.

Вполне годится для «real life» разработки, другое дело, что хорошо знающему C# ничего не мешает писать приложение на Java, что конечно предпочтительней.

И сколько вы реальных проектов закончили на моно, можно поинтересоваться?

на C# тоже можно. :)
А смысл? Потом в резюме придется делать оговорку, типа mono android only :) Да и не бесплатная эта приблуда

Я просто прозреваю. Неужели в NetCracker студенты имеют хоть малейшее понимания многопоточности?!

Роботодавець ніяким чином не може обмежити працівника в отриманні тих чи інших знань. Все, що в його можливостях — це направити в певному напрямку. Тому стверджувати, що людина чогось не розуміє тільки тому, що вона працює в певній компанії некоректно.

Классная книга, опечаток в ней практически нет, но там есть одна большая засада: подключать в проект нужно совсем другой сторонний jar, нежели в ней описывается. В противном случае, когда выстрелит exception о невозможности распарсить дату с Твиттера — час гугления обеспечен.

Без Джавы никуда? — интересно...
Пишем под Android, iOS, BB, Bada, Roku, Android-MIPS, LGTV, etc.
Для понимающих:
“Marmalade is now the only tool that allows you to develop cross-platform native games and apps in C/C++ and deploy to both mobile and desktop. SDK 6.1 further widens the number of platforms open to Marmalade developers”

www.madewithmarmalade.com

Начни с языка попроще...

я перед уходом на java два года был PHP разработчиком.

найти работу неопытному php разработчику — легко.
Хватит лишь знаний ООП в PHP и HTML, ну иногда могут попросить и mysql.

Но этот опыт вам потом очень пригодится.

До речі, для вивчення Java і алгоритмів можу порадити Robocode (robocode.sourceforge.net/) Дуже захоплююче і гарна практика алгоритмізації. Але починати все одно краще з Pascal (можна C (не C++ для початку), але краще почати з мови з сильною типізацією, як Pascal).

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

с паскаля начинать это по нашемему. давайте еще что ли асм для 8086 поучим ага

Согласен, с маленькой поправкой: Паскаль намного более бесполезен, чем 8086 асм. Последнее — азы всей x86 архитектуры.

Для андроида, конечно, не актуален, а ARM можно почитать когда-нибудь для общего развития.

Ви знаєте, що філологи будь-якої мови теоретично вчать латину і, здається, давньогрецьку (більшість нічого потім не знає, як завжди)?

Я раджу Pascal як близьку до машинного рівня мову зі статичною сильною типізацією (щодо «сили» типізації Pascal можна сперечатись, я знаю), як простішу для навчання (з C легше прострелити собі ногу, правда?) А ще я раджу Паскаль як мову, з якої майже гарантовано доведеться мігрувати для першого ж не навчального проекту, а вивчення нових мов при правильному підході (тобто не починаючи писати новою мовою у стилі старої) я вважаю корисним для розвитку програміста. Але C (або asm якщо подужають) за можливістю я б радив вчити другою мовою, навіть якщо планувати потім писати не на C/C++/ObjectiveC.

Это та вещь, которую нужно искоренить из нашего образования. На западе это сделали, пора бы у нас.

Я пожалуй соглашусь, что в ВУЗах не очень хорошо начинать с С, но паскаль можно заменить на Python. Прошу заметить, что Python тоже язык со строгой типизацией, хоть она и динамическая. У питона легкий синтаксис, он дает понятие использования методов, он обязывает программиста оформлять код(можно еще назвать кучу плюсов) и он актуален в отличии от Pascal.

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

Опять же это мое личное мнение. Сам я начинал с Питона, немножко пытался программировать на нем, еще не понимал важность алгоритмов, структуры данных и т.п. Но уже когда начал подбираться к этому — решил сконцентрировать внимание на C/C++. И скажу, что тот опыт в С/С++ - он намного полезней, чем опыт паскаля(которому нас учили в универе) и питона. Было не легко местами, но в общем я сейчас учу С#/.net — и это намного легче, чем я бы учил его после паскаля.

И то что я начинал с Си не привязывает меня к C#, я без проблем сейчас так же понимаю Java, тем более оба языка работают похожим образом.

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

Чи можна підсумувати Вашу думку як «потрібно виключити вивчення Pascal з программ вітчизняної гуманітарної освіти»? З цим я згоден. Це не камінь в город гуманітарних наук.

Динамічна і «качкова» типізація — хороша річ, і Python є моєю улюбленою мовою, але між Python та C для навчання я б вибрав C. Знати потрібно і те, і інше, а з C на Python перейти легше, ніж у зворотню сторону. Тим паче, що гори синтаксичного цукру заважають зрозуміти, як це все працює. Я б Java вибрав, аби не Python.

Чому я не приймаю до уваги час на вивчення багатьох мов: я ніколи не вчу синтаксис і бібліотечні функції. Я просто відкриваю довідник і відразу пишу. Є різні методи навчання, але мало хто буде хоч тиждень вчити синтаксис, а лише згодом писати «Hello, World!»

До речі, я починав з Pascal — синтаксис C-подібних мов чудово зрозумілий. Це не Haskell, різниця мінімальна.

«Паскаль треба виключити взагалі з відчизняної науки». И я думаю это только вопрос времени. Все должно развиваться, но почему-то в наших ВУЗах так не считают.

З цього питання я з Вами не погоджуюсь, але ми вже далеко відійшли від теми, тому пропоную не продовжувати дискусію і залишаю останнє слово за Вами.

Аргументы «за» можно применить к чему угодно и проще действительно ничего не делать. В то время как, даже в Европе и США, цикл обновления производства намного уступает Японскому. Не только роботы выполняют многое на японских заводах — они уже налаживают их серийное производство под разный функционал. И хотя эта технология не супер развита, но даже Европе к ним далеко, что уже говорить про нас.

У европейцев своя «экономическая» логика, но не похоже, что бы экономические факторы мешали японским предприятиям постоянно совершенствоваться.

Я был не прав насчет паскаля, вот этот глупый консерватизм(а бывает и грамотный) нужно удалять из мозгов, а не паскаль.

Вот как раз в ВУЗах должны учить принципам программирования и Паскаль для этого прекрасно подходит. Сам я знаю и ассемблер (программировал х86, и особенно много контроллеры), и Паскаль, и С, и осваиваю PHP. Но насчет того, что учить первым, скажу так — то что хотите запрограммировать — то и учите! И не слушайте никого. Чем быстрее получите результат, тем быстрее пойдете дальше, продолжите развиваться и станете программистом. Надо Андрюшу, что там для этого надо? Java? Начинайте с Java. Просто не лезьте сразу в отражения, динамическое переопределение методов или еще чего-то там, а старайтесь обойтись минимумом. Тут важно не потерять интерес и получить удовлетворение от результата. А опыт, усложнение и «правильное» профессиональное программирование потом придут, не переживайте.

Математика не важна? При всем уважении, попробуйте написать элементарную игру в шашки без математики. Или еще «хуже» шутер без знаний в векторной алгебре и аналитической геометрии. Попробуйте построить интеллектуальный алгоритм, для игры или для аналитической программы прогнозирования без знаний в комбинаторике, теории вероятностей, методов моделлирования нейронных сетей, для которых в свою очередь пригодится много производных наук от вашей «ненужной» математики. Посему могу сказать, что программистом вы себя считать можете. Но есть понятие плохой программист и хороший прогаммист. Вам стоит над этим хороше подумать. Ибо со знаниями математики на уровне 8-и класника далеко не доплывете.

Чтобы написать бухгалтерское приложение, надо разбираться в бухгалтерии.
Чтобы написать медицинское приложение, надо разбираться в медицине.

Но вы же не станете утверждать, что программист без знаний медицины и экономики на уровне вуза — плохой программист?

Математика, как и медицина и экономика, иногда используюся в программировании.Но прямого отношения к программированию они не имеют. Это же очевидно.

Как вы вообще можете называть себя программистом, если не в состоянии отделить программирование от математики? Может вы просто математик, который думает, что он программист?

Краще не говорити, що в ходу чи не в ходу у західних університетах. Знайомий у Франції вчив Fortran під час магістерського курсу:)
Паскаль — досить таки непоганий варіант першої мови навчання, якщо говорити, наприклад, про школу. Але для людини, яка вже завтра хоче рубати бабоси як програмер, вчити Паскаль трохи не по фен-шую, час піджимає:) В такому разі, напевно краще зразу C#/.NET з майкрософтівською студією...

На мою думку, ні в якому разі не потрібно починати вивчення програмування з Pascal. Маю декілька знайомих, яких Pascal зіпсував як програмістів.

Пропоную всім разом забути про цю мову, щоб вона нарешті вимерла назавжди.

Точно Pascal? Чи Delphi?

Важко сказати, що саме призвело до таких плачевних наслідків, так як наступною сходинкою їх розвитку після Pascal було Delphi.

во-во, написала диплом на Delphi и благополучно все забыла)

зачем паскаль?!
Чем он ему поможет понять ООП, где он увидит наследование, полиморфизм?! Как он поймет что такое агрегировани, тесное связывание, рефакторинг?
Где он найдет работу на Pascal что бы получить опыт с SVC/SVN?
А еще такие элементарные вещи как XML, SQL?

Pascal = уровень школы, что бы отпугивать многих юзеров — быть программистами, не более.

Вы жить не учите человека, а лучше бы по теме ответили.

Тебе нужно начать с изучения программирования в целом, а дальше сконцентрироваться на Java. Я бы лично советовал начать с C/C++. Освоить азы, реализовать общие алгоритмы, типа поиска, сортировки и т.п. В общем поработать с данными и посмотреть на ошибки компилятора.

Потом можно и браться за Java, если к тому времени не отвернешься.

Я готов помочь в обучении, сам вот пару месяцев назад начал учить. Скайп есть?

А зачем начинать с плюсов чтобы перейти на джаву? В Джаве все те же структуры данных, поиск и т.д. есть, но проще.

С плюсов не надо, а вот на C можно немного покодить.

Відповідаючи на питання «чому»: C — низькорівнева мова, де операції проходять на машинному рівні. Якщо починати з Java на її віртуальній машині, Ви не будете обізнані у таких вимогливих до знання «матчастини» (низького рівня) сферах, як, наприклад, оптимізація.

Так в основном оптимизирует компилятор, а не девелопер.

без хорошего знания явы там ловить нечего. Есть жосткие сомнения что мобайл програмирование вообще будет доступно переучивающемуся с дизайнера. Может вам не жадничать и в пхп а?

Пошукайте праці, що освітлюють процес створення програмного забезпечення. Можливо, я занадто старомодний, проте, мені здається, що програмування (як і будь-яке ремесло) має запалювати майстра. Думаю, у більшості тяга до комп’ютерів породжувалася саме цікавістю, а не бажанням добре заробляти.

Якщо Ви хороший дизайнер, спробуйте себе поза веб-розробкою. GameDev, наприклад.

Не мені, звісно Вас вчити, але варто не просто робити те, що подобається, а й отримувати задоволення від того, що робиш.

В реальности все куда прагматичнее. Дайте угадаю — вы студент, курса эдак второго-третьего, еще не пытались работать. Я не говорю, что нужно «жевать кактус, но продолжать». Но и сказанное выше вами — не истина на сегодня.
И это не «старомодность», а своеобразная «романтика» в вас говорит.

Насчет GameDev-а — может, вы бы посоветовали что-то еще покруче? Там без отличнейшей подготовки (при том не только программистской, но и часто математической) никак. Если же вы отталкиваетесь от слова «дизайнер», то... Дизайнер-верстальщик != моделлер.

Android — дуже специфічна область. Якщо вона не викликає безумовного захоплення, тоді немає взагалі ніякого сенсу починати з неї. Почитайте тему www.developers.org.ua/...ntu-kak-nachat

Скукота

Так, може, продовжувати і не варто?

Скукота я имею в виду что почти ничего не понимаю в коде. А Очень хотеться научиться программировать!

А что вам там конкретно не понятно? Может буквы, может цифры? O_o Думаете от того что вам расскажут какую книгу почитать станет веселей? Труд программиста — это не валяние на дивание за которое к тому же платят довольно приличное количество денег, это каждодневная борьба с трудностями, решение задач, получение и поиск знаний из всевозможных источников, работа как над своими так и чужими ошибками и т.п. А если вы пытаетесь начать свою карьеру с установки: открыл книгу, многобуков немогу читать, скучно...посоветуйте что-то веселое, или такое что открыл и сразу все стало понятно... то ИМХО: вам нечего тут делать... Читайте все подряд, когда поймете что очередную книжку по андройд разработке вы тупо пролистываете потому что ничего нового там для вас нет, то это уже можно считать результатом...

Товарищу бабос надо рубить, учиться некогда — бо хочеться кушать. По словам аффтара он "

Вот на днях питался

" - тоесть сейчас уже довольно голодный. Реквестую в тред Андроид в комиксах для детей от 4 до 6 лет на русском языке.

2 ТС: проверяйте орфографию и выучите запятые, Аллаха ради.

Підписатись на коментарі