Programavimas

Geriausios mobiliųjų programų kūrimo priemonės

Sėkmingas naujos technologijos pritaikymas dažnai priklauso nuo jos kūrimo įrankių. Geri įrankiai padeda naujiems kūrėjams lengviau pradėti darbą ir patyrusius kūrėjus padaryti produktyvesnius. Pavyzdžiui, „Microsoft“ programavimo aplinkos sėkmė yra glaudžiai susijusi su „Visual Studio“ įrankių sėkme.

J2ME („Java 2 Platform“, „Micro Edition“) technologija vis dar yra gana nauja. Stiprūs kūrimo įrankiai, ypač IDE, labai padės J2ME įsisavinti bevielių programų kūrėjus. Šiame straipsnyje apžvelgiu keturis „J2ME IDE“ produktus:

  • „Borland JBuilder 7 Enterprise“ su „MobileSet 3“
  • „Sun Microsystems“ „Sun ONE“ („Open Network Environment“) „Studio 4 Mobile Edition“
  • „Metrowerks CodeWarrior Wireless Studio 7“
  • „S5 Systems“ „jVise“ (pagrįstas „IBM Eclipse“ technologija)

J2ME kūrimo įrankių kraštovaizdis

Skirtingi belaidžiai įrenginiai turi skirtingus atminties dydžio, ekrano dydžio, įvesties metodų ir skaičiavimo greičio apribojimus. Be to, pardavėjų „J2ME“ diegimuose gali būti tiekėjo specifinių priedų API, kurios naudoja specialias pagrindines aparatinės įrangos / OS funkcijas.

Įvairi įrenginių rinka natūraliai sukuria įvairias kūrimo priemones. Kiekvienas įrenginių pardavėjas turi savo SDK, įrenginių emuliatorius ir našumo analizės įrankius. Kai kurie SDK netgi turi savo sukurtus projekto valdymo ir šaltinio kodo redagavimo įrankius. Vienas pavyzdžių yra „Sun“ „J2ME Wireless ToolKit“ (J2MEWTK). J2MEWTK yra J2ME / MIDP (mobiliojo informacinio įrenginio profilio) orientacinis diegimas ir turi kelis įrenginių emuliatorius, kurie veikia Unix / Linux ir Windows platformose. „J2MEWTK“ taip pat turi našumo profilio įrankius ir tikrus atminties naudojimo monitorius. Visus tuos įrankius galima administruoti iš centrinio valdymo skydo, vadinamo kToolBar. „kToolBar“ taip pat gali kurti ir supakuoti paruoštas diegti JAR / Jad programas iš plėtros katalogų. Tačiau įsisavinti visas šias priemones ir išbandyti programas visuose emuliatoriuose gali būti nuobodu.

„J2ME IDE“ palengvina plėtrą, integruodama įrenginių tiekėjų SDK su kitais įrankiais. Tada kūrėjai gali turėti vieningą IDE sąsają visiems palaikomiems SDK. IDE taip pat pagerina kūrėjų produktyvumą ir teikiamų programų kokybę.

Kas turėtų naudoti IDE?

Nerekomenduoju IDE pradedantiems kūrėjams. Tokie kūrėjai turi išmokti kelis skirtingus dalykus vienu metu: „Java“ kalbą, „J2ME“ API ir paketus, pačią „IDE“. IDE patogumo funkcijos gali lengvai užgožti tai, kas iš tikrųjų vyksta po gaubtu. Galų gale galite sukurti įgūdžių rinkinį, susietą su konkrečia IDE. Tačiau IDE gali padėti, jei jau žinote, ką darote. Jie gali automatizuoti daug varginančių procesų patyrusiam kūrėjui.

J2ME IDE pirkėjo vadovas

Šio straipsnio J2ME IDE vertinau pagal šiuos aspektus:

  • Bendrosios produktyvumo savybės: Aš įvertinau tas funkcijas, naudingas visiems „Java“ kūrimo projektams, o ne tiems, kurie būdingi J2ME. Šios funkcijos apima redaktorių, projektų vadovą, derintuvą, architektūros dizainerį ir dokumentavimo įrankius, taip pat įrankius, skirtus pažangioms programavimo technikoms (pertvarkymui, vieneto testavimui ir pan.).
  • Trečiosios šalies SDK integravimas: Kelių SDK palaikymas yra pagrindinė bet kurio „J2ME IDE“ funkcija. Tačiau IDE tiekėjams kyla sunkumų sekant ir integruojant kiekvieno atskiro SDK palaikymą. „Unified Emulator Interface“ (UEI) specifikacija standartizuoja programavimo sąsają tarp SDK ir IDE. Garantuojama, kad su UEI suderinami SDK ir IDE veiks tarpusavyje. Vertindamas aptariu, kokius SDK palaiko IDE iš dėžutės, ar IDE palaiko UEI ir kaip sunku perjungti iš vieno SDK į projektą.
  • Po kompiliavimo priemonės: „J2ME“ programos yra mobiliosios programos, kurioms reikalingas aukštas saugumo ir našumo lygis. Kodo užtemdymas gali užkirsti kelią žmonėms pakeisti jūsų klasės failus ir sumažinti kodo dydį. Specialius optimizavimo būdus gali įsigyti IDE pardavėjai ir jų partneriai. „J2ME“ programos taip pat gali būti apdorojamos ir optimizuojamos diegimo įrenginiams, atsižvelgiant į turimus išteklius konkretiems įrenginių tipams. Šie vėlesnio apdorojimo, aptemimo ir optimizavimo įrankiai patenka į šią po kompiliavimo kategoriją.
  • Parama ore (OTA): J2ME programos dažnai diegiamos per viešuosius belaidžius tinklus. „J2ME OTA“ specifikacijos standartizuoja mobiliosios „Java“ programos radimo, atsisiuntimo, autentifikavimo, įgaliojimo, tikrinimo ir vykdymo procesą. OTA specifikacijoms reikalingi tinkamai suformatuoti meta failai serverio pusėje ir „Java Application Manager“ (JAM) mobiliojo įrenginio pusėje. Serveriui taip pat reikalingos specialios konfigūracijos, kad būtų palaikomi OTA meta tipai. OTA procesas gali tapti gana sudėtingas, kai bus išleistas MIDP 2.0. IDE turėtų padėti automatiškai generuoti tuos meta failus. Geras IDE taip pat turėtų integruoti OTA reikalavimus atitinkančius JAM klientus, kad būtų galima išbandyti diegimą IDE.
  • „End-to-end“ mobiliųjų programų kūrimas: „J2ME“ įrenginiai nėra pakankamai galingi, kad patys galėtų apdoroti ar saugoti didelį informacijos kiekį; „J2ME“ programos dažnai yra kai kurių vidinių įmonės programų serverių klientai. Taigi aukščiausio lygio IDE turėtų leisti kūrėjams kurti ištisus projektus. Tai sumažina mokymosi išlaidas ir pastangas koordinuoti projektą.
  • Dokumentacija ir pamokos: „Java“ mobiliųjų programų kūrimas yra sudėtingas procesas, apimantis daugelį programinės įrangos inžinerijos aspektų. IDE teikia įrankius daugeliui užduočių automatizuoti; tačiau dėl kūrimo proceso sudėtingumo pradedantiesiems programuotojams dažnai sunku teisingai naudoti šias funkcijas. Pamokos ir išsamūs atvejų tyrimai yra būtini norint veiksmingai pritaikyti IDE.
  • J2ME GUI (grafinės vartotojo sąsajos) kūrėjai: Kai kurie IDE turi RAD (greito programų kūrimo) įrankius, leidžiančius kūrėjams vizualiai kurti mobiliojo vartotojo sąsajas. Šie įrankiai patinka kūrėjams iš darbalaukio pasaulio - tiems, kurie yra susipažinę su J2SE („Java 2 Platform“, „Standard Edition“) RAD įrankiais. Tačiau naudokite „J2ME“ vaizdinės GUI kūrimo priemones atsargiai: kadangi belaidžiai įrenginiai skiriasi ekrano dydžiais, tas pats vartotojo sąsajos dizainas įvairiuose įrenginiuose gali būti rodomas skirtingai. Pavyzdžiui, „Palm PDA“ gali rodyti keturis komandų mygtukus iš eilės. Bet spustelėjus meniu mygtuką, mobilusis telefonas gali paprašyti pasirinkti iš keturių komandų sąrašo. Taigi tai, ką matote GUI kūrimo priemonėje, gali būti ne tai, ką galų gale gaunate konkrečiame įrenginyje.

„JBuilder 7 Enterprise“ su „MobileSet 3“

„Borland JBuilder“ yra garsi „Java IDE“, turinti tris leidimus: „Personal“, „Standard“ (SE) ir „Enterprise“. Visi „JBuilder“ leidimai gali veikti keliose platformose, įskaitant „Windows“, „Linux“, „Solaris“ ir „Mac OS X“. Norėdami palaikyti „J2ME“ kūrimą sistemoje „JBuilder“, turite įdiegti papildomą modulį „MobileSet“. Šiuo metu „MobileSet“ veikia tik su „Windows“, tačiau planuojama palaikyti daugiau platformų.

„JBuilder Personal“ nemokamai galite rasti „Borland“ svetainėje. „JBuilder SE“ kainuoja 99 (2002 m. Rugsėjo mėn.), O „Enterprise Edition“ - 999. Galite atsisiųsti 30 dienų nemokamas bandomąsias licencijas tiek „Standard“, tiek „Enterprise“ leidimams. Nors asmeninis leidimas yra nemokamas, jis siūlo mažai vertės. Jame nėra kai kurių pagrindinių produktyvumo savybių. Pavyzdžiui, jūs negalite net valdyti savo kodo naudodamiesi paketų hierarchijomis, o tai apsunkina didelių projektų su daugybe klasių kūrimą.

Priešingai, „JBuilder 7 Enterprise“ siūlo gausų įrankių rinkinį, palaikantį „Java“ programų (ypač „J2EE“ („Java 2 Platform“, „Enterprise Edition“) programų) projektavimą, kūrimą, testavimą ir diegimą. Jis pridedamas prie paties „Borland“ J2EE programų serverio, „Borland InterBase SQL“ duomenų bazės ir bandomojo bendrovės „Optimizeit Suite“ leidimo - „Java“ optimizavimo įrankio. Susitraukiančioje programinėje įrangoje yra trys mokomųjų dokumentų knygos. Šiose knygose pateikiami ne tik „JBuilder“ naudojimo atvejų tyrimai, bet ir geri šaltiniai mokantis bendros „Java“ programų kūrimo.

Norėdami kurti „J2ME“ programas ant bet kurio „JBuilder 7“ leidimo, turite įdiegti „MobileSet“ - nemokamą atsisiuntimą iš Borlando svetainės. Paleidusi diegimo programą, „MobileSet“ prideda naujus vedlius, kompiliavimo / vykdymo aplinkos ir meniu elementus prie esamo „JBuilder“ diegimo. Šioje apžvalgoje daugiausia dėmesio skiriama „JBuilder 7 Enterprise“.

  • Bendrosios produktyvumo savybės: „JBuilder 7 Enterprise“ siūlo aukščiausio lygio „Java“ produktyvumo funkcijas. Jis turi galingą redaktorių, kompiliatorių ir derintuvą. Pažangesnės funkcijos yra daugybė JVM ir vykdymo laiko palaikymo, UML (Unified Modeling Language) vizualizavimo įrankiai, įrankiai, skirti kurti programos logiką (pavyzdžiui, „Visual EJB“ („Enterprise JavaBean“) dizaineriai), integruotas vieneto testavimo palaikymas, pertvarkymo įrankiai ir „javadoc“ įrankiai. Įmonės programoms „JBuilder“ palaiko automatinį žiniatinklio ir įmonės archyvų (WAR / EAR) generavimą ir diegimą visuose pirmaujančiuose programų serveriuose. Naudodami „JBuilder“ taip pat galite lengvai į savo projektą integruoti galingus trečiųjų šalių įrankius, pvz., CVS („Concurrent Versioning System“), skirtą šaltinio kodo valdymui, ir „Ant“, skirtą individualiems kūriniams.
  • Trečiosios šalies SDK integravimas: Vienintelė J2ME platforma, kurią palaiko „JBuilder“, yra MIDP. „JBuilder MobileSet“ palaiko „J2MEWTK“, „Nokia“, „Siemens“ ir „Sprint PCS SDK“. Bet pačiame „MobileSet“ atsisiuntime yra tik J2MEWTK, kad galėtumėte pradėti; kitus SDK turite atsisiųsti atskirai. Kadangi „JBuilder“ palaiko UEI, tikiuosi, kad jis palaikys daugumą būsimų SDK. Šis įrankis leidžia jums pereiti prie kelių JVM ir vykdymo laiko aplinkų projekte, o tai supaprastina kelių platformų kūrimą.
  • Po kompiliavimo priemonės: „JBuilder MobileSet“ turi integruotą palaikymą klasės failams užblokuoti per „RetroGuard 1.1“. Pridedamas „Optimizeit Suite“ dar labiau optimizuoja programos dydį ir našumą.
  • OTA diegimo palaikymas: Naudodamas „JBuilder Enterprise“ galėčiau lengvai sugeneruoti „jar manifest“ failus ir jad failus savo MIDP projektui. Projektai gali būti tinkamai sukonfigūruoti nuotoliniame serveryje per integruotą „JBuilder“ FTP klientą. Tačiau „JBuilder“ nekonfigūruoja serverio. Galite išbandyti įdiegtas programas naudodami su OTA suderinamus kliento JAM, integruotus į „JBuilder“.
  • „End-to-end“ mobiliųjų programų kūrimas: „JBuilder 7 Enterprise“ turi puikias galimybes kurti „J2EE“ vidinių programų serverius. „JBuilder“ galite visiškai kurti visas programas.
  • Dokumentacija ir pamokos: Tris knygas, pateiktas kartu su „JBuilder 7 Enterprise“, galima nemokamai rasti HTML ir PDF versijomis iš „Borland“ svetainės. „Borland“ taip pat turi atsisiųstinų „MobileSet“ vadovėlių ir daug kitų puikių dokumentų. „JBuilder“ dokumentacijos palaikymas yra puikus.
  • J2ME GUI kūrėjai: „MobileSet“ komplekte yra MIDP GUI kūrimo priemonė; gaminti GUI kodą su „JBuilder“ pasirodo gana paprasta.

„Sun ONE Studio 4 Mobile Edition“

Anksčiau „Forte for Java“ vadinama „Sun ONE Studio“ naudoja „NetBeans“ technologiją, kad integruotų išorinius modulius į IDE. „Sun ONE Studio“ yra trys leidimai: „Community“, „Mobile“ ir „Enterprise for Java“. Bendruomeniniai ir mobilieji leidimai yra nemokami; „Enterprise for Java“ kainuoja 995 ir turi sudėtingas „J2EE“ kūrimo ir diegimo funkcijas. „Sun“ svetainėje galite gauti 60 dienų nemokamą „Enterprise for Java“ bandomąją licenciją.

„Sun ONE Studio“ platinama internete ir kompaktiniame diske. Kompaktiniame diske yra visi „Sun ONE Studio 4“ leidimai visose palaikomose platformose, taip pat J2SE ir J2EE. Montavimas yra lengvas.

Nors „Mobile Edition“ yra iš anksto sukonfigūruotas su „J2ME“ palaikymu, jame yra tik ribotos IDE funkcijos. Įdiegę „J2ME“ belaidį modulį, galite lengvai pridėti „J2ME“ kūrimo galimybes prie „Community and Enterprise for Java“ leidimų. Šis modulis atitinka „NetBeans“ specifikacijas ir gali būti įdiegtas su bet kuriuo „Sun ONE Studio“ leidimu. Belaidis „J2ME“ modulis teikia „J2ME“ specifinius šablonus, vedlius, meniu elementus ir integravimo kompiliatorius bei emuliatorius ir yra komplekte su „J2MEWTK“.

Viena iš „Sun ONE Studio“ stipriųjų pusių yra modulinis dizainas. Trečiosios šalys gali lengvai pateikti komponentus ir integruotis su IDE. Tokių modulių pavyzdžiai yra UML modeliavimas, pertvarkymas ir vieneto testavimas.

Nemokami „Sun ONE Studio“ leidimai padarė man įspūdį. „Sun ONE Mobile Edition“ arba „Community Edition“ ir belaidis modulis yra vieninteliai nemokami „J2ME IDE“, kuriuos aš rekomenduoju. Jie teikia svarbias IDE funkcijas dideliems ir sudėtingiems projektams. „Community Edition“ pateikia net pagrindines serverio programų kūrimo funkcijas; su šiuo leidimu galite kurti servleto ir duomenų bazių programas. „Sun ONE Studio“ yra vienintelė IDE šiame straipsnyje, turinti „J2ME“ palaikymą ne „Windows“ platformoms. Žemiau pateikti komentarai yra pagrįsti mano patirtimi naudojant „Sun ONE Studio 4 Enterprise for Java“ ir belaidį modulį. Tačiau dauguma jų taikoma ir nemokamam bendruomenės leidimui.