Якщо я повинен навчитися Java для розробки мобільних додатків чи C # просто зробить?


9

Я з нетерпінням чекаю заглиблення в рамки .NET, але, здається, більшість мобільних додатків розроблені на Java. Я, швидше за все, буду орієнтуватися на менш цінні телефони, такі як Nokia і motorolla, а не Android або iphone OS. Чи можу я робити ці речі в C #?

java  c#  mobile 

Відповіді:


9

Ні, C # не зробить. Вам потрібно вивчити Java, а не J2SE, а J2ME, оскільки більшість мобільних телефонів низького класу підтримують лише J2ME. Однак ви, можливо, захочете знову розглянути Android, оскільки він стає дійсно популярним навіть у телефонів низького класу. У будь-якому випадку, мова для J2ME та Android - це Java.


7

Залежить від платформи-

Android - JAVA, C # (через MonoDroid)
IPhone - Об'єктив C, C # (через MonoTouch)
Windows Phone - C # (Silverlight)
Meego - C ++ (QT)
Symbian - C ++, JAVA

Я думаю, що Symbian буде скасовано більшістю компаній. Розумні телефони - це майбутнє. І для кожного типу ОС смартфонів буде доступний C # / mono (вам доведеться доплачувати, але зручність використання того варто) разом з рідною мовою платформи. Отже, ви можете піти на C #.

Справжня незалежність платформи може бути досягнута, але якщо ви використовуєте C # скрізь, ви зможете використовувати одні й ті ж основні бібліотеки та налаштувати інтерфейс користувача для платформи.

Але для телефонів з низькою вартістю C # не обійдеться. Ви повинні піти на JAVA.


1
+1 для згадування параметрів Mono *. Якщо попит достатньо високий з боку розробників, вони також відіб'ються на інші телефонні платформи.
Agent_9191

Погодилися розробники Mono згадали про підтримку WebOS до розколу Novell, так що ніколи не знаєте!
wonea

1

Неможливо спеціально розповісти про Motorolla або Nokia, але вам потрібно мати на увазі, яка платформа підтримує ці телефони. Вам би краще розвиватися на Java, оскільки це більш популярна платформа і не потрібно залежати лише від мобільних телефонів Windows. Ще одна річ C # настільки безсоромно близька до Java, що перехресний компілятор робить фокус для настільних додатків: це стосується і мобільних додатків.


1
Я хотів би бачити цей перехресний компілятор - як він справляється з тим, що бібліотеки, які йдуть мовами, такі дуже різні?
Беван

1

Якщо ви хочете розробити для Windows Phone 7, C # ідеально підходить (VB.NET незабаром.) Ви також можете використовувати будь-які знання Silverlight або XNA. Я не маю уявлення, чи вдасться платформі вдатися, але чому б не уточнити додаток, використовуючи мову, яку ви знаєте, а потім перенести його на інші мови, коли ви впевнені у своєму користувацькому досвіді, логіці, розрахунках тощо? Емулятор, мабуть, дуже хороший, і його можна доповнити акселерометром-емулятором і gps-емулятором, щоб зробити все, крім телефонного дзвінка. (І справді, хто використовує смартфони для здійснення дзвінків?)


Я, як правило, погоджуюся, але ОП заявив, що "з нетерпінням чекає заглиблення в рамки .NET", тому я не впевнений, наскільки він уже знайомий із C #. Крім того, наскільки мені подобається мова, ринок Windows Phone здається трохи нерозумним.
Davy8

1

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

Я б рекомендував почати з Java. Android готується до того, щоб стати найпопулярнішою ОС для мобільних пристроїв, тому ви знаєте, що напевно це буде деякий час. Крім того, Java є старшою, тому доступні незліченна кількість бібліотек та навчальних посібників, якими можна користуватися та вчитися. Як тільки ви зрозумієте основні поняття Java, вивчення C # має бути легким вітром - і ви дійсно оціните деякі акуратні функції (наприклад, атрибути та LINQ), які може запропонувати C #.

Відмова: Я почав із C # (насамперед для веб-розробки ASP.NET MVC), а потім навчився Java для написання програм для Android. Я не робив жодного мобільного програмування за допомогою C #, тому не можу сказати, що це таке.


0

Можливо, подайте це під "латеральне мислення", але якщо у вас є гідні навички "чистих" веб-технологій - HTML, JavaScript, CSS - і залежно від того, що ви намагаєтеся досягти, перегляньте щось на кшталт PhoneGap (http: // www .phonegap.com / про). Крім підтримки пристроїв iOS (iPhone, iPad) та Android, вони також мають деяку підтримку для Symbian. Однак, як правило, вам потрібні "рідні" інструменти для створення власних бінарних додатків. Наприклад, якщо ви хочете зробити iPhone Dev, вам знадобиться iPhone sdk, XCode та запущена OSX.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.