2015-10-04 11 views
9

Jestem na trochę nowej ziemi tutaj i być może jest to repost (jeśli tak, przepraszam).Aplikacja Intraweb HTML5, git i baza danych - czy mieszają się?

Potrzebuję wskazówek, w którą stronę iść. Wcześniej tworzyłem aplikację na Androida i znalazłem, że korzystam z większości czasu pracy programisty w interfejsie użytkownika. Chcę zaprojektować interfejs użytkownika za pomocą HTML5 i rozpowszechnić go na platformie z systemem Android i iOS.

Zrobiłem wiele badań na temat rodzimej i hybrydowej, aby skupić się na moim wysiłku. Przyszedł na kilka platform, takich jak PhoneGap, Appcelerator, Trigger.io i AppGyver (dwa ostatnie atrakcyjne). Ale teraz jestem zdezorientowany ...

Zasadniczo chcę stworzyć środowisko intraweb, które pozwoli zespołowi rozwijać zawartość HTML5, która przesyła dane do bazy danych przy jednoczesnym utrzymaniu rozwoju i bazy danych pod ścisłą kontrolą wersji.

Myśląc o takiej konfiguracji

  • lokalny serwer obsługujący kod źródłowy HTML5 i bazy danych (S) - git upstream.
  • Rozwój odbywa się wtedy przez git na komputerach
  • mobilnej/tabletek ciągnie źródło (pochodzenie git) i stwarza sytuacje, że przyciągają zażądać zapisy danych do upstream (a tym samym wszystkie inne piloty)
  • Wiele jednostek może pracować na tej samej instancji i przyczynić się do danych żądania wyciągnięcia do źródła. Widzą zmiany od razu (logika powinna zapewnić żadnych konfliktów - myślenie Pingowanie urządzeń)

Nie trzeba rozpowszechniać nową aplikację za pośrednictwem sklepów z aplikacjami, jeśli jakiś nowy html5 dodaje (bez zachowania nie zmienił więc oczywisty naruszone).

Obecnie zastanawiam się nad zrobieniem natywnej aplikacji, która ma przeglądarkę internetową i wykonuje polecenia git, ale obawiam się, że utknę (nie mam doświadczenia w programowaniu na iOS). Czy to przesada?

Nie jestem wcale przeciwko hybrydowym dostawcom - tylko zastanawiam się, czy pozwolą mi osiągnąć to, na co się staram.

Jeśli ktoś ma jakieś linki do samouczków online, jak zarchiwizować podobne zadanie lub może dostarczyć użytecznych wskazówek/wskaźników, to byłbym wdzięczny.

Przekażę wszystkie odpowiedzi, które mi pomogły i podpowiedzę rozwiązanie, które pomogło mi najbardziej.

+0

nie wiem czy ten komentarz będzie przydatna, ale ostatnio odkryłem również Codename One jako Platforma do tworzenia aplikacji cross-mobile, będziesz pisać w języku Java i będziesz mieć użytecznego projektanta gui: https: //www.codenameon e.com/ – Lorenzo

+0

Dzięki za sugestię. Głównym problemem z JAVA w Eclipse było edytowanie interfejsu użytkownika w xml - mając nadzieję na łatwiejsze zadanie przy użyciu CSS (więcej wsparcia) – Norfeldt

Odpowiedz

3

I może sugerować, patrząc Ionic, to jest cytat:

Mocny SDK HTML5, który pomaga budować uczucie natywnej aplikacji mobilnych z wykorzystaniem technologii internetowych takich jak HTML, CSS i JavaScript.

Aplikacja Ionic koncentruje się głównie na wyglądzie i sposobie działania aplikacji oraz na interfejsie użytkownika. Oznacza to, że nie jesteśmy zamiennikiem dla PhoneGap lub ulubionego kodu JavaScript. Zamiast tego, Ionic po prostu dobrze pasuje do tych projektów, aby uprościć jedną dużą część aplikacji: front end. Zalecamy lekturę Where does the Ionic Framework fit in?, aby dobrze zrozumieć cele Ionic.

Ionic obecnie wymaga AngularJS, aby pracować w pełnym zakresie. Mimo że możesz nadal korzystać z części CSS w tej strukturze, stracisz dostęp do zaawansowanych interakcji interfejsu użytkownika, gestów, animacji i innych rzeczy.

To, co otrzymuję, to to, że jonik łączy się z PhoneGap.

Nie jestem pewien, jak dobrze to pomoże, ale myślę, że będzie to przydatne w twoim wyszukiwaniu.

7

Pracowałem kilka lat z technologią internetową spakowaną w natywne aplikacje. Musisz wziąć pod uwagę dwie rzeczy.

Po pierwsze, twoja aplikacja będzie po prostu prostą stroną HTML lub będzie miała wymyślne interfejsy użytkownika, bardzo dynamiczną interakcję i animacje UI? Jeśli jest złożony i bardzo dynamiczny, trzymaj się natywnych aplikacji. Główną ich zaletą jest wydajność, jest BARDZO lepsza od aplikacji pakowanych WebView w HTML5.

Po drugie, WebView ma WIELE ograniczeń użytkowania. To nie jest tak jak przeglądarka Chrome używana w telefonie/tablecie. Zbyt fajne operacje prawdopodobnie będą mieć problemy z WebView, a dodatkowy czas spędzony na budowaniu interfejsów będzie kosztował bardzo irytujące małe problemy.

Inna obawa, że ​​używanie gitów w pakiecie będzie trudne do zintegrowania z WebView ze względu na ograniczenia związane z piaskownicą. Na pewno nie poleciłbym pójść tą drogą. Jeśli nie używasz natywnego sprzętu telefonicznego, takiego jak kamera i inne, możesz pokazać w WebView zdalną stronę HTML5. Jest to znacznie prostsza i bezpieczniejsza opcja.

Kolejna sprawa do zapamiętania. Te pakujące biblioteki JavaScript mają różne cele. Cordova (PhoneGap rozszerza to o niektóre funkcje zasilane Adobe) ma na celu udostępnienie kodu JS natywnych funkcji telefonu, nie ma to nic wspólnego z interfejsem użytkownika. Wspomniany jon skupia się na rozwoju interfejsu użytkownika. Istnieją inne biblioteki, które koncentrują się na interfejsie użytkownika i są używane z PhoneGap/Cordova. Moja sugestia dotycząca wymyślnych i dynamicznych interfejsów użytkownika wykorzystujących technologię opartą na HTML5 to framework Sencha Touch, który jest teraz dołączony do ExtJS 6. Mimo że są płatne i wymagają zaawansowanego programowania JavaScript. Krzywa uczenia się jest bardzo duża.

Podsumowując, jeśli Twoim celem jest przyspieszenie rozwoju interfejsu użytkownika, a aplikacje są proste, możesz skorzystać z Cordova i innej platformy z interfejsem użytkownika. Proponuję jednak zapomnieć o skomplikowanej aktualizacji aplikacji Git "w locie". Jeśli Twoja aplikacja korzysta z wielu funkcji natywnych i ma bardzo złożone i duże interfejsy, pozostań przy natywnym ze względu na wydajność.

Inną rzeczą, o której należy pamiętać, że dobrze opracowane natywne aplikacje zużywają (w większości przypadków) znacznie mniejszą przepustowość sieci i żywotność baterii.

Mam nadzieję, że te informacje pomogą Ci =)

2

PhoneGap - Czy jak dotąd, jednym z najbardziej kompleksowy pakiet, który pozwala na wykorzystanie HTML, CSS i JavaScript w sposób, który daje możliwość mieć rozwiązanie z jednym źródłem i publikuje je w mobilnym krajobrazie.

Korzystanie scenariusz:

  1. Tworzenie aplikacji w lokalnym Webserver (intranet)
  2. wykorzystać API PhoneGap, aby poprawić dostęp do danych i interfejs użytkownika.
  3. Publikowanie w GIT/SVN do wersjonowania
  4. Budowanie z PhoneGap (Build Service - usługa cloud że trwa zip kodu źródłowego, a następnie wybrać swoją platformę)
  5. Opublikuj jako prywatny/publiczny do docelowego urządzenia (IOS, Android, WPhone)

W ten sposób aplikacja HTML5 i opublikowana/pakowana aplikacja na wybranych urządzeniach będzie identyczna; a WebApp i DeviceApp pozostaną zsynchronizowane.

Przydatne PhoneGap Poradniki: