W czym napisać apkę na mobile? C#?

W czym napisać apkę na mobile? C#?
0

Cześć,
jestem początkujący w programowaniu, znam podstawy C#, podstawy obiektowości, wzorce, wszystkiego po trochu. Mam parę drobnych projektów na koncie w C# pod VS2013. Czysty C#, bez frameworków, bez MVC i EE - nad czym ubolewam :(
Głównie szkolne projekty - 4 rok infy na WIT Warszawa.

Potrzebuję do pracy zawodowej napisać apkę na mobile, raczej wybiorę pod Androida ze względu na popularność.
Apka to ma być taki "serwis informacyjny".

Działać ma to tak:
Jest sobie gdzieś ludzik z uprawnieniami admina/modera, który dodaje newsa do bazy danych (czy to w ogóle na bazie postawić???), oczywiście z poziomu PC. A'la serwer informacyny.
Klienci mają zainstalowane na swoich smartfonach apkę i podczas połączenia do internetu pobierają sobie tego "newsa" na swoje telefony i odczytują.

To ma być taki prosty ale skuteczny system informujący o np. promocjach sklepowych.

W czym i jak to napisać?

Nie ukrywam, że najbardziej bym chciał właśnie C#, VS, + nauka MVC, EE.
Czy to ma sens pod Androidem?

Niedługo będą musiał też napisać coś webowego w C# i nie chciałbym aby nauka poszła w las więc chciałbym zrobić to w jednej technologii..

Pozdrawiam :)

Phestek
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 7 lat
  • Postów:89
0

Polecam COBOL - nowoczesny, dynamiczny i rozszerzalny język kompilowany pod wiele platform.

Typie - ty się nie zastanawiaj w czym. Jeśli coś da się eksportować na androida (a da się wszystko, ino cza umić), to się nadaje. Jak ci powiem, że najlepiej jest się nauczyć i pisać w Assembly, to chwycisz specyfikację ARMv7 i zaczniesz się uczyć? Pisz w czym chcesz. Poza tym, taki wątek pojawia się raz na tydzień...

@Azarien teraz pisze silnik i grę na DOSa. I co? Ktoś mu zabroni? Ma ochotę, to pisze. I nie zakłada kolejnego redundantnego wątku na forum.

edytowany 1x, ostatnio: Phestek
ZO
Ktoś Ci karze odwiedzać tego typu wątki, czy może jesteś uzależniony od tego forum i zaglądanie do tego typu wątków, które pojawiają się raz na tydzień, i pisania raz na tydzień, o tym, że takie wątki pojawiają się raz na tydzień, żeby zaistnieć w internetach?
Spine
  • Rejestracja:prawie 22 lata
  • Ostatnio:około 6 godzin
  • Postów:6626
0

Mi najwygodniej było pisać w Unity 3D :) Masz tam C#, eksport APK dla Androida to kilka kliknięć (tylko trzeba zainstalować SDK).


🕹️⌨️🖥️🖱️🎮
0

Typy,
mi nie chodziło o motywację poza informatyczną do zrobienia tej apki czy rozpisywania się o sensie nauki lub nie.

Bardziej pytam o techniczny sens takiego rozwiązania czyli apka na Androida w C# pod VS2013.

Że się da to ja wiem, natomiast nie wiem czy nie wymyślam koła na nowo i czy nie da się tego zrobić prościej, szybciej i łatwiej w innej technologii?

Nie obserwuję trendów w tych technologiach i nie wiem czy już VS dobrze działa z Androidem bo pamiętam, że kiedyś na Androida to tylko Java i OC...

Pozdro Typy! :)

1

Jakie C#? Xamarin? Nie bądź śmieszny. Android Studio i piszesz w javie. Po twoim pytaniu wnioskuję że porywasz się i tak z motyką na słońce

GironX
  • Rejestracja:około 10 lat
  • Ostatnio:ponad 2 lata
  • Postów:59
0

VS 2015 udostępnia Xamarin, również na upartego możesz samemu zainstalować Xamarin PE. W chwili obecnej masz za darmo trzeba tylko pogrzebać za instalatorem. czyli możesz pisać pod VS i na Androida, iOS czy Windows for Mobile.

edytowany 2x, ostatnio: GironX
Spine
  • Rejestracja:prawie 22 lata
  • Ostatnio:około 6 godzin
  • Postów:6626
2
Złoty Terrorysta napisał(a):

Jakie C#? Xamarin? Nie bądź śmieszny. Android Studio i piszesz w javie. Po twoim pytaniu wnioskuję że porywasz się i tak z motyką na słońce

A pod Windowsa/Linuksa/OSX piszmy tylko w C/C++ :)

Prawda jest taka, że teraz tworząc aplikację nie chcemy wspierać tylko jednej platformy. Najlepiej jest pisać przez jakąś warstwę pośrednią, która wspiera różne systemy. Obojętnie, czy w Javie, czy w C#, trzeba znaleźć wieloplatformowe rozwiązanie dla tych języków.


🕹️⌨️🖥️🖱️🎮
edytowany 1x, ostatnio: Spine
0

Bez przesady. Przeważnie wystarczy nam Android i czasem iOS. Jestem zwolennikiem stosowania narzędzi od producenta, a nie jakiegoś międzymordzia

LU
  • Rejestracja:prawie 9 lat
  • Ostatnio:ponad 5 lat
  • Lokalizacja:Lublin
  • Postów:61
0
Zibiiiii napisał(a):

Przeważnie wystarczy nam Android i czasem iOS.

Dobra to w czym zrobić "część wspólną"? Zostaje C i C++.


Life is like jazz - It's best when you improvise
0

Do iOS i tak niczego nie zrobisz bez zapłacenia firmie Apple. Windows Phone możesz spokojnie olać bo i tak tylko kilku fanbojów go używa na przekór normalnym ludziom, a za kilka lat i tak MS go ubije bo tylko straty przynosi. Nie ma sensu w ogóle się w to pchać.

A co zostaje? Tylko Android

LU
  • Rejestracja:prawie 9 lat
  • Ostatnio:ponad 5 lat
  • Lokalizacja:Lublin
  • Postów:61
0
Zibiiiii napisał(a):

A co zostaje? Tylko Android

Tak na to właśnie czekałem #platformwars :D Ok ale tak można myśleć jeśli się działa na własną rękę. Powiedzmy robisz w outsourcingu przyjdzie klient i zamówi apkę na 3 platformy i powiesz mu że nie lubisz Apple?


Life is like jazz - It's best when you improvise
Aventus
  • Rejestracja:prawie 9 lat
  • Ostatnio:ponad 2 lata
  • Lokalizacja:UK
  • Postów:2235
2

Skoro chcesz pisać w C# to jedynym logicznym wyborem jest Xamarin. Jeśli zależy Ci na szybkich efektach i/lub napisaniu wieloplatformowej aplikacji w możliwie najprostszy sposób to celuj w Xamarin Forms. No i chyba tyle w tym temacie, nie ma co bezsensownych wojen prowadzić.


Na każdy złożony problem istnieje rozwiązanie które jest proste, szybkie i błędne.
Nomysz
  • Rejestracja:prawie 10 lat
  • Ostatnio:ponad 6 lat
  • Postów:60
0

Jeżeli znasz C# i chcesz pisać apkę na telefon, to warto rozważyć Windows Phone, oczywiście trzeba odrobinę ogarnąć XAML'a.

0
lubububu napisał(a):
Zibiiiii napisał(a):

A co zostaje? Tylko Android

Tak na to właśnie czekałem #platformwars :D Ok ale tak można myśleć jeśli się działa na własną rękę. Powiedzmy robisz w outsourcingu przyjdzie klient i zamówi apkę na 3 platformy i powiesz mu że nie lubisz Apple?

Ja zajmuję się programowaniem pod Androida, więc nikt do mnie nie przyjdzie i nie powie że chce coś na iOS

M2
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 6 lat
  • Postów:43
0
Złoty Orzeł napisał(a):

Cześć,
jestem początkujący w programowaniu, znam podstawy C#, podstawy obiektowości, wzorce, wszystkiego po trochu. Mam parę drobnych projektów na koncie w C# pod VS2013. Czysty C#, bez frameworków, bez MVC i EE - nad czym ubolewam :(
Głównie szkolne projekty - 4 rok infy na WIT Warszawa.

Potrzebuję do pracy zawodowej napisać apkę na mobile, raczej wybiorę pod Androida ze względu na popularność.
Apka to ma być taki "serwis informacyjny".

Działać ma to tak:
Jest sobie gdzieś ludzik z uprawnieniami admina/modera, który dodaje newsa do bazy danych (czy to w ogóle na bazie postawić???), oczywiście z poziomu PC. A'la serwer informacyny.
Klienci mają zainstalowane na swoich smartfonach apkę i podczas połączenia do internetu pobierają sobie tego "newsa" na swoje telefony i odczytują.

To ma być taki prosty ale skuteczny system informujący o np. promocjach sklepowych.

W czym i jak to napisać?

Nie ukrywam, że najbardziej bym chciał właśnie C#, VS, + nauka MVC, EE.
Czy to ma sens pod Androidem?

Niedługo będą musiał też napisać coś webowego w C# i nie chciałbym aby nauka poszła w las więc chciałbym zrobić to w jednej technologii..

Pozdrawiam :)

Kiedy robisz stronę www to nie robisz jej w C++ tylko w prędzej w HTML. To samo tutaj, C# niby jest co raz to bardziej otwarty, ale to głównie Java jest przenośna, android robi swoje, a lęk przed tym językiem możesz sobie znaleźć i w C#, bo to są dwa dość podobne języki i z czego słyszałem nie ma problemów z przesiadką. Oczywiście można spróbować w cisie to zrobić, ale jeżeli chodzi o mobilność to Java.

Zobacz pozostałe 4 komentarze
krzysiek050
C# to taka trochę Java, ale na PC. Waaaaaaaat?
M2
... chodzi o aplikacje. W C# jak i Javie powstaje ich masę. poza tym te języki są do siebie podobne i ze sobą konkurują.
Spine
@Marcel2727: Unity 3D to silnik do gier, jednakże posiada on system GUI, na którym postawisz co Ci się podoba ;) Wspomniałem o tym środowisku, bo w poscie napisałeś jeżeli chodzi o mobilność to Java. Więc Ci piszę, że w Unity i C# zrobię aplikację mobilną, konsolową i PC'tową. Jeśli chodzi o to co napisałeś o Javie, to bzdura. Java wystarczy pod większość gier, jakie obecnie powstają.
M2
Hmm... dziwne, żeby GUI do gry wykorzystywać do aplikacji mobilnej. Oczywiście, że się nada do gier, ale po co skorzystać z wolnego języka skoro jest dużo szybszy np. C++ czy C#. W sumie to przypomniała mi się pewna firma, która ma grę opartą właśnie na Java - via www MMO. Pomijając ich chore tendencje do zarobków (PayToWin) to gra chodzi słabo, bitwy na arenach bez wejścia na arenę, mobki, które się bugują itd. - ale to już odchodzenie od tematu, nie mniej do aplikacji mobilnych najlepiej nada się Java. Z resztą to co wspomnieli poprzednicy to zrobi się wojna platform.....
Spine
To, że pewna firma zrobiła kiepską aplikację, to nie oznacza, że wszyscy takie robią :) Popularność technologii robi jej antyreklamę. Z Unity tak samo, korzysta wielu amatorów. Ale to nie oznacza, że nie da się w nim zrobić dobrej, w miarę wydajnej gry. Java nie nada się najlepiej do aplikacji mobilnych. Najlepiej nada się technologia, którą znasz najlepiej i wspiera platformy mobilne.
0

Jak można przeczytać w linku podanym przez Aventusa:

//C# is the best language for mobile app development.
Anything you can do in Objective-C, Swift or Java, you can do in C#.//

I o to mi chodziło :)

Zrobię tak jak napisał Aventus. Ze względu na to, że znam już co nieco C# i środowisko VS spróbuję napisać tę apkę w C#.
Co wyjdzie - zobaczymy.
To ma być prosty projekt do moich własnych zastosowań - nie piszę tego na sprzedaż.

W pierwotnej wersji chciałem żeby to działało na 3 platformy: iOS, Android, Windows Phone. Z tego co czytam tutaj odradzacie już zabawę z Windows Phone. Czy macie jakieś wykresy, dane, statystyki czy cokolwiek takiego żebym zobaczył procentowy podział rynku między te 3 platformy i **prognozy jak to może wyglądać w przyszłości? **Jeśli WP upadnie to raczej pójdzie to w Androida czy iOSa?

LU
  • Rejestracja:prawie 9 lat
  • Ostatnio:ponad 5 lat
  • Lokalizacja:Lublin
  • Postów:61
0
Złoty Orzeł napisał(a):

**prognozy jak to może wyglądać w przyszłości? **Jeśli WP upadnie to raczej pójdzie to w Androida czy iOSa?

Jeśli chcesz iść w mainstream to Android (mówię to jako iOS-owiec i tu się akurat zgodzę z przedmówcą). Chyba że chcesz robić dla zagranicy, zdalnie itp.


Life is like jazz - It's best when you improvise
Aventus
  • Rejestracja:prawie 9 lat
  • Ostatnio:ponad 2 lata
  • Lokalizacja:UK
  • Postów:2235
0

TUTAJ podają że w pierwszym kwartale 2016 udziały WP w sprzedaży smartphone'ów wyniosły poniżej jednego procenta także faktycznie biednie.


Na każdy złożony problem istnieje rozwiązanie które jest proste, szybkie i błędne.
Ktos
Moderator
  • Rejestracja:prawie 23 lata
  • Ostatnio:dzień
1

jakieś wykresy, dane, statystyki czy cokolwiek takiego żebym zobaczył procentowy podział rynku między te 3 platformy i prognozy jak to może wyglądać w przyszłości? Jeśli WP upadnie to raczej pójdzie to w Androida czy iOSa?

Obecnie Windows ma kilka procent rynku globalnego poza niektórymi rynkami lokalnymi (np. Polska, Indie). Czy koncepcja UWP, czyli aplikacji które działają jednocześnie na telefonie i komputerze coś zmieni - ciężko powiedzieć. Raczej WP zostanie niszą. Pamiętaj, że w królestwie ślepców jednooki królem, czyli w niszy możesz mieć również zyski, bo ludzie biorą, co jest ;-)

Niby Microsoft ma tym razem znów postawić nacisk na wersję mobilną, ale średnio to widzę, aby uzyskali globalny sukces - spodziewam się raczej niewielkiego zwiększenia niszy w kierunku korporacji.

Jeżeli Windows Phone padnie to połowa pójdzie w Androida, połowa w iOS-a, a połowa siądzie, zapłacze i dalej będzie używać, bo lepszego systemu nie ma ;-)

Aventus
@Ktos Czyli że będą aż trzy połowy? Wiem wiem czepialski jestem ;)
Ktos
Tak, tylko trzecia będzie najmniejsza z nich ;-)
MM
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 4 lata
  • Postów:37
0

Jeśli znasz C# to albo Xamarian albo Unity

MrHyperion
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 3 lata
  • Postów:112
1

Xamarin? Nie warto. Ostatnio w mojej byłej firmie popełnili jeden projekt w Xamarinie, to był jednym słowem dramat jeśli chodzi o wydajność.

0

Sytuacja wygląda tak: używam VS 2013 Ultimate Update 5, system to Win 8.1 Pro.
Piszę sobie powiedzmy coś w C# pod konsolę w Windowsie. Na przykład mini bazę danych z informacjami o klientach (jako baza zwykły txt, tylko najprostsze operacje, tak dla nauki).

Czy mogę to bez przeszkód przenieść i odpalić na telefonie z Windows Phone 8?

Mam tu w VS jakiś symulator do tego...

Czy jakieś specjalne warunki musi spełniać moja aplikacja na desktopa (Win 8.1) żeby bez problemu dała się przenieść na mobile (też Win 8 lub 8.1)?

Pozdrawiam.

somekind
Moderator
  • Rejestracja:około 17 lat
  • Ostatnio:około 11 godzin
  • Lokalizacja:Wrocław
1

Tylko jeden - musi nie być aplikacją desktopową tylko mobilną.

edytowany 1x, ostatnio: somekind
Ktos
Moderator
  • Rejestracja:prawie 23 lata
  • Ostatnio:dzień
0

Rozszerzając: Windows Phone nie uruchamia "zwykłych" aplikacji z "dużego" Windows, np. konsolowych, WinForms, WPF, tylko swoje specjalne, tzw. "Windows Store Apps" - które dostępne są od Windows 8 (tzw. aplikacje Metro albo Modern). Ale i tak nie jest to tak proste, bo w przypadku Windows Phone 8.1 trzeba utworzyć dwie aplikacje, jedną na komputer, drugą na telefon, które mogą mieć 90% kodu wspólne, ale nadal muszą to być dwa pakiety, nie da się prosto przekompilować na telefon. To zostało zmienione w Windows 10 - tzw. aplikacje UWP po prostu się kompiluje dla ARM i one działają bez przeróbek.

Więc ogólnie: musisz napisać specjalną aplikację, aby zadziałała na telefonie, ale może mieć elementy wspólnego kodu z twoją aplikacją okienkową, np. praktycznie całą logikę.

0

Dziękuję Ci Ktos za wyczerpującą odpowiedź.
Teraz wszystko jest dla mnie jasne.

Pozdrawiam.

Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)