Projekat

Općenito

Profil

Akcije

Podrška #24127

Zatvoren

Titanium Studio, desktop aplikacija, testiranje

Dodano od Saša Vranić prije skoro 15 godina. Izmjenjeno prije više od 14 godina.

Status:
Zatvoreno
Prioritet:
Normalan
Odgovorna osoba:
Saša Vranić
Kategorija:
-
Početak:
08.08.2011
Završetak:
% završeno:

100%

Procjena vremena:

Fajlovi

git_clone_wunderlist.png (183 KB) git_clone_wunderlist.png Saša Vranić, 08.08.2011 20:45
kitsink_desktop.png (15,7 KB) kitsink_desktop.png Saša Vranić, 09.08.2011 19:31
desktop_app_with_controls.png (26,7 KB) desktop_app_with_controls.png Saša Vranić, 10.08.2011 00:04
desktop_app_02.png (27,1 KB) desktop_app_02.png Saša Vranić, 15.08.2011 19:20
Akcije #1

Izmjenjeno od Saša Vranić prije skoro 15 godina

napravio novi projekat (desktop app) i dobio strukturu u njoj postoji samo index.html

Akcije #2

Izmjenjeno od Saša Vranić prije skoro 15 godina

  • % završeno promijenjeno iz 0 u 10
Akcije #3

Izmjenjeno od Saša Vranić prije skoro 15 godina

Gledao malo primjere na developer.appcelerator.com, pokušao dodati menij, pokušao dodati dugme - sve bez uspjeha!

Jedino što sam uspio je otvoriti novi prozor unutar glavnog.

Akcije #4

Izmjenjeno od Saša Vranić prije skoro 15 godina

Sutra ću staviti detalje... već mi oči ispadaju

Akcije #5

Izmjenjeno od Saša Vranić prije skoro 15 godina

koliko sa se u mobilnom projektu brzo snašao tako se ovdje nisam ni malo snašao, vidi se da sve snage ulažu u mobilne projekte

Akcije #6

Izmjenjeno od Saša Vranić prije skoro 15 godina

pošto recimo mac ima neki fazon sa menijima postoji i ovo

http://www.codeboxed.com/2011/02/modify-titanium-desktop-default-menu/

zbog toga mi vjerovatno nije dao da dodam menu na aplikaciji

Akcije #7

Izmjenjeno od Saša Vranić prije skoro 15 godina

  • Fajl git_clone_wunderlist.png dodano

da vidimo taj wunderlist...

Akcije #8

Izmjenjeno od Saša Vranić prije skoro 15 godina

  • Fajl obrisano (git_clone_wunderlist.png)
Akcije #9

Izmjenjeno od Saša Vranić prije skoro 15 godina

Akcije #10

Izmjenjeno od Saša Vranić prije skoro 15 godina

Wunderlist is based on Titanium. Download the current Titanium stable on http://www.appcelerator.com/products
/download/ and create an new desktop project. Open terminal and go into the "Resources" folder of the empty
project you created.

Then type "git clone :6wunderkinder/wunderlist.git" and that's it! Now you are member of the
Wunderlist community ;)

a ha, napravio sam novi desktop projekat i samo prebacio ovaj direktorij što sam ranije napravio u resource direktorij

Akcije #11

Izmjenjeno od Saša Vranić prije skoro 15 godina

pokrenuo i radi

Akcije #12

Izmjenjeno od Saša Vranić prije skoro 15 godina

Nakon što sam se danas malo pridigao, malo sam nastavio po ovome da tamburam...

Nakon što napravimo desktop projekat dobijamo samo index.html, ovako

https://github.com/vsasa/HelloDesktopTitanium/commit/ce3156e8fa22d33438063ef814f34476b0d20b83

Tragao sam za nekom dokumentacijom koja bi mi pomogla kako dalje, jedino što sam našao je na appcelerator comunity-ju nekih par pitanja vezano za menije i slično, sve u svemu napravio sam sada ovako

https://github.com/vsasa/HelloDesktopTitanium/commit/fed35b1a303e55e9c91467c1148a9b8f4c61c063

dakle, pokušavam da otvorim novi prozor te na njemu textfield kompoenentu ali to ne ide !!!

Na kraju sam došao do Titanium.Desktop API-ja dokumentacije

http://developer.appcelerator.com/apidoc/desktop/latest/Titanium.UI-module

i skontao da uopšte nema onih kontrola, kao što su:

  • createTab
  • createButton
  • i slično

a koje se koriste u mobilnom projektu, jedino recimo što ima je createWindow i sam novi prozor sam uspio da dobijem prilikom startanja aplikacije.

Kako radi wunderlist

Gledao sam Wunderlist, analizirajući kod, tu je index.html kao osnova naravno

https://github.com/6wunderkinder/wunderlist/blob/master/index.html

pa onda imamo CSS, https://github.com/6wunderkinder/wunderlist/tree/master/css

pa onda imamo neke javascript biblioteke https://github.com/6wunderkinder/wunderlist/tree/master/js

hm... to je spoj svega i svačega.

Dobro, koliko sam shvatio titanium desktop može da koristi

  • python
  • ruby
  • javascript
  • PHP

i sve se to određuje u (boot) index.html fajlu na način

<script type="text/javascript" src="lib/source.js"></script>
<script type="text/ruby" src="lib/source.rb"></script>
<script type="text/python" src="lib/source.py"></script>

međutim ove kontrole mi nisu nikako jasne, koliko sam shvatio ova wunderlist aplikacija koristi čiste html/javascript kontrole

<div id="sidebar">
  <h3>
     <a class="add" href="#" title="">add</a>
     <div class="searchside">
        <span class="clearsearch"></span>
        <input type="text" id="search"/>
     </div>
  </h3>
<div id="lists"></div>
<div id="notification"><div>
</div>
Akcije #13

Izmjenjeno od Saša Vranić prije skoro 15 godina

Loša stvar je što su svi video materijali usmjereni ka mobilnim projektima a od desktop projekata ni traga ni glasa.

Akcije #14

Izmjenjeno od Saša Vranić prije skoro 15 godina

Koliko sam shvatio sav UI aplikacije je HTML dok se za logiku koriste javascript ili ruby ili python itd...

Akcije #15

Izmjenjeno od Saša Vranić prije skoro 15 godina

  • % završeno promijenjeno iz 10 u 20
Akcije #16

Izmjenjeno od Saša Vranić prije skoro 15 godina

Pitanje je da li titanium studio ima neke html/css alate gdje vizuelno pravimo tabove, div-ove itd... kontrole ?

Akcije #17

Izmjenjeno od Saša Vranić prije skoro 15 godina

CSS mi je definitivno stran !

Akcije #18

Izmjenjeno od Saša Vranić prije skoro 15 godina

Ako sam ja stvorio dobru sliku o desktop projektu onda dolazim do sljedećeg zaključka

  • pišemo aplikaciju za mobilni uređaj koja ima svoj UI i logički dio
  • pišemo aplikaciju za desktop koja opet ima svoj UI i najvjerovatnije da možemo koristiti logički dio mobilnog projekta !

recimo da kao i sada u clipper-u imamo lib sa standardnim funkcijama saberi(), pomnoži() itd...

hm... nisu mi baš potpuno jasni

Akcije #19

Izmjenjeno od Saša Vranić prije skoro 15 godina

postoji i KitchenSinkDesktop https://github.com/mrobinson/KitchenSinkDesktop

dodao sebi ovaj repozitorij, kada pokrenem ova aplikacija također ne radi, dobijam samo

Akcije #20

Izmjenjeno od Saša Vranić prije skoro 15 godina

da meni nešto ne fali ????

Akcije #21

Izmjenjeno od Saša Vranić prije skoro 15 godina

ma ne fali, wunderlist mi radi

Akcije #24

Izmjenjeno od Saša Vranić prije skoro 15 godina

Akcije #25

Izmjenjeno od Saša Vranić prije skoro 15 godina

ovo je također greška koju dobijam stalno

Desktop Kitchen Sink[9987:b07] _createMenuRef called with existing principal 
MenuRef already associated with menu
Akcije #27

Izmjenjeno od Saša Vranić prije skoro 15 godina

Saša Vranić je napisao/la:

a ha, evo ga nešto za ovaj bijeli ekran aplikacije

http://developer.appcelerator.com/question/24581/desktop-kitchen-sink---blank-white-screen

međutim to je komentar star godinu dana, main.js više ne postoji u ovom projektu uopšte!

Akcije #29

Izmjenjeno od Saša Vranić prije skoro 15 godina

iskreno nisam skontao kako sada obraditi onClick događaj...

Akcije #30

Izmjenjeno od Saša Vranić prije skoro 15 godina

hm... znači za desktop aplikaciju nam je potrebno dobro poznavanje HTML/CSS

Akcije #31

Izmjenjeno od Saša Vranić prije skoro 15 godina

  • % završeno promijenjeno iz 20 u 30
Akcije #32

Izmjenjeno od Saša Vranić prije skoro 15 godina

ludnica :)

Akcije #34

Izmjenjeno od Saša Vranić prije skoro 15 godina

Danas pričao malo sa hernadom na ovu temu i iznjeo mu svoja opažanja do sada mada sam sve to manje više pisao i po tiketima, ali eto jedan kumulativni dojam.

Mobilne aplikacije - lakše za razvoj. Desktop aplikacije nešto teže, ali to je do mene jer namam pojma ni HTML ni CSS. Tu treba učenja...

hernad rekao da trebamo sve snage uprijeti u razvoj (prvo) desktop aplikacije, pa ću u tom fazonu onda i nastaviti djelovanje.

Akcije #35

Izmjenjeno od Ernad Husremović prije skoro 15 godina

Saša, mislim da bi ipak bilo najbolje završiti ona trening videa. Tu je fokus na mobilnim projektima, šteta je sada da to ostaviš nezavršeno dok si vruć.

Što se tiče html/css i desktopu. U našem razgovoru sam pitao za tehnologije i rekao da mislim da je javascript/coffee script stvar koje se trebamo držati.

Ono što mene interesuje jeste da se pogleda šta od titaniimu api-ja ima zajedno na desktop i mobilnom sdk-u.

Pri tome sam mislio na ovu usporedbu:

Pogledao sam i razlika je ogromna, ali prije svega na GUI dijelu kojim se se ti do sada ponajviše bavio.

Ono što je (bi trebalo biti) slično jeste koncept programiranja:
  • javascript/coffee script
  • json
  • event/callback sistem

Namjerno tu nisam naveo html/css koji si ti pomenuo. Oni su prezentacijski dio aplikacije. Ali tim prezentacijskim slojem upravljaš sa javascript DOM programskim modelom.

Ukratko upoznavanje javascript-a će nas prirodno uvući u html/css.

Treba još reći da je trenutni desktop API 1.1.0 u velikoj mjeri "outdated".

1.2.0 bi izaći vrlo brzo http://developer.appcelerator.com/blog/2011/08/introducing-titanium-desktop-sdk-1-2-release-candidate-3.html

Ono što sam takođe pominjao u razgovoru su pitanja: kako su odrađene aplikacije kao wunderlist i titanium-developer.

Ova prva je komplet rađena kao javascript aplikacija. Ova druga je moguće miksana kao javascript/python aplikacija ...

Akcije #36

Izmjenjeno od Ernad Husremović prije skoro 15 godina

pregledao sam developer applikaciju. čista javascript/html/css aplikacija.

GUI je pravljen sa javascript bibliotekama poznatim u web svijetu:

| |-dojo-1.2.3.js
| | |-jquery-1.3.2.js
| | |-mootools-1.2.1.js
| | |-prototype-1.6.0.js
| | |-scriptaculous-1.8.2.js
| | |-swfobject-1.5.js
| | `-yui-2.6.0.js

princip je, kako sam pregledom uhvatio, da se u Titanium.UI namespace-u prave kontrole čija se logika "crpi" iz ovih postojećih javascript lib-ova.

Ukratko, titanium desktop gui se pravi unutar Titanium.UI-a koji je apstrakcija webkit engine-a.

Webkit engine je "srce" google-ovog chromium-a i apple-ovog safarija.

Akcije #37

Izmjenjeno od Ernad Husremović prije skoro 15 godina

rezime

Šta bi bio rezime:

- pređi nastavne appcelerator materijale. oni će ti sigurno obezbjediti produktivno učenje

- nakon njih ćemo dalje pravce učenja i djelovanja puno bolje uloviti

- bitno je da se uhvati nova paradigma programiranja koji titanium framework i javascript programski model nude.

To nije ni nalik na proceduralno/sekvencijalno programiranje na koje si navikao. Najmanji problem je html/css u toj priči.

Akcije #38

Izmjenjeno od Ernad Husremović prije skoro 15 godina

node.js backend / node.js web klijent / mobile titanium

pod utiskom sam čitanja node web development knjige.

sve mi kazuje da je najbolje da dalji smjer našeg rada i učenja bude slijedeći:

1) raditi sa node-om backend development

2) raditi sa node-om web klijenta (taj tvoj html/css) za jednostavnije interakcije sa sistemom

3) "napadati" node backend iz titaniuma (mobile development with remote dat si čini mi se počeo čitati). S obzirom da imaš dobru dokumentaciju za mobile, radi na mobile platformi

Ovakva arhitektura aplikacije će se sigurno zadržati i kod desktoop aplikacije. Promjena gui-a u desktopu, nakon upoznavanja 2) će nam biti puno jednostavnija.

Bitno je da budemo produktivni u svemu ovome. Nemamo puno vremena. Trebamo što prije doći do konkretnih rezultata.

Učenje naravno ne možemo preskočiti, ali je bitno da to bude što produktivnije.

Akcije #39

Izmjenjeno od Ernad Husremović prije skoro 15 godina

ovaj pristup zadovoljava one language / one programming paradigm princip.

to bi nam trebalo maksimalno skratiti vrijeme učenja.

Akcije #40

Izmjenjeno od Saša Vranić prije skoro 15 godina

preko vikenda sam malo gledao i čitao o html/css kodiranju pa sam konačno uhvatio bit toga svega

također gledao i jquery kako se koristi

Akcije #41

Izmjenjeno od Saša Vranić prije skoro 15 godina

napravio sam sada na test desktop aplikaciji običnu java script funkciju saberi itd...

napravio css direktorij, te napravio css fajl, ali sve to pogledati na github-u

https://github.com/vsasa/HelloDesktopTitanium/commit/cced347076b8ce58b18c26beeb784e30268c9848

Akcije #42

Izmjenjeno od Saša Vranić prije skoro 15 godina

dakle, ovo je klasično korištenje java scripta

Akcije #43

Izmjenjeno od Saša Vranić prije skoro 15 godina

Akcije #44

Izmjenjeno od Saša Vranić prije skoro 15 godina

Akcije #45

Izmjenjeno od Saša Vranić prije skoro 15 godina

konačno sam ovo upratio sve kako funkcioniše, bar na nekom baznom nivou :)

Akcije #46

Izmjenjeno od Saša Vranić prije skoro 15 godina

  • % završeno promijenjeno iz 30 u 40
Akcije #47

Izmjenjeno od Saša Vranić prije skoro 15 godina

radi poređenja ostavio i funkciju saberi()

Akcije #48

Izmjenjeno od Saša Vranić prije skoro 15 godina

http://www.authenticsociety.com/blog/jQueryPluginTutorial_Beginner

http://jquery.com/ (inače, jako dobra stranica) začas sam naučio kako da koristim ovo kod sebe u aplikaciji

Akcije #49

Izmjenjeno od Saša Vranić prije više od 14 godina

  • Status promijenjeno iz Novo u Zatvoreno
  • % završeno promijenjeno iz 40 u 100

za testa dosta

Akcije

Također dostupno kao Atom PDF