ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 12.01.2024

Просмотров: 307

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Әзірленіп жатқан қосымшаның коды XAML тілінде сипатталады. Шын мәнінде, бұл жай ғана XAML белгілеу тілі бар XML файлдары. Windows Phone платформасы басқа мобильді платформа ғана емес. Онда тек технологиялық компонент қана емес, сонымен қатар Metro дизайны немесе Metro стилі деп аталатын интерфейс дизайны мен пайдаланушы тәжірибесінің толық дамыған тұжырымдамасы бар.Windows Phone-дағы барлық даму Visual Studio ортасында жүзеге асырылады. Қоршаған орта қосымшаларды әзірлеу және күйін келтіру үшін өте ыңғайлы. Windows Phone астындағы мобильді қосымшалар үшін жөндеу Windows Phone әзірлеу ортасы арқылы Windows Phone эмуляторының көмегімен жүзеге асырылады. iPhone SDK IOS амалдық жүйесі үшін iPhone-под әзірлеу тек Mac OS X-де мүмкін, бірақ интернетте сіз Macintosh-та және тіпті VM-де бағдарламалауға болатын мақалаларды таба аласыз. Айта кету керек, Apple құралдарды ақысыз ұсынады, сіз әзірлеушінің жазылымы үшін ақы төлеуіңіз керек.IPhone-ға арналған бағдарламаларды жазу үшін Objective C пайдалану ұсынылады, сонымен бірге C және C++ - да бірдей жазу мүмкіндігі бар (бұл үшін файл кеңейтімдерін өзгерту керек .m на .mm). Рас, ObjectiveC-тен толығымен кету мүмкін болмайды, барлық дерлік API оған арналған, ерекшеліктер, мысалы, OpenGL (оны инициализациялау үшін ObjectiveC-те кодтың бірнеше жолын пайдалану керек), сонымен қатар стандартты C/C библиотек кітапханалары толығымен қол жетімді (мысалы, файлдық жүйемен SDK құралдары ретінде жұмыс істеуге болады objectivec және енгізу/шығару үшін стандартты кітапхананы пайдалану (fopen (), fgetc (), etc()). Қолданбаны жөндеу Xcode ортасы және оған орнатылған iPhone эмуляторы арқылы жүзеге асырылады.Android SDK Android астында әзірлеу үшін Eclipse ортасын пайдалануға болады бұл соңғы уақытқа дейін Android-тің ең танымал даму ортасы болды, көптеген тәжірибелі әзірлеушілер оны пайдалануды жалғастыруда немесе Android Studio-жас даму ортасы, дегенмен интеллектуалды және ыңғайлы ретінде тез танымал бола бастады. Сонымен қатар, Android Studio белсенді түрде дамып келеді және оны Google Android қосымшаларын әзірлеудің ресми ортасы ретінде қолдайды.Android қосымшаларын әзірлеу үшін Android Studio ортасының негізі ресейлік IntelliJ IDEA компаниясының жобасы болды.Google Google I/O конференциясының бөлігі ретінде Android Studio деп аталатын Android үшін Java қосымшаларын әзірлеудің өзіндік интеграцияланған ортасын ұсынды. Бұл орта Санкт-Петербург JetBrains компаниясы жасаған IntelliJ IDEA ашық платформасына негізделген.
Осы уақытқа дейін Google – да әзірлеушілер Android қосымшаларын жаза алатын өзінің интеграцияланған даму ортасы (интеграцияланған даму ортасы-IDE) болған жоқ. Сондықтан олар басқа қол жетімді орталарды пайдаланды. Ең танымал: Eclipse, Eclipse Foundation қолдайтын еркін орта; NetBeans және IntelliJ IDEA еркін ортасы.Android-тің әртүрлі нұсқаларына код жазу үшін қолданылатын SDK-нің әртүрлі нұсқалары бар. Қазіргі уақытта 2.2 және 2.3 нұсқалары кең таралған. Нұсқалардың толық дерлік кері үйлесімділігіне қолдау көрсетіледі.Java тіліндегі дамудан басқа, мүмкіндікке қолдау көрсетіледі төменгі деңгейлі даму C/C языке тілінде Android NDK (Native Development Kit) көмегімен.Егер жақында IOS құрылғысынан қосымшаларды құруды бастаған дұрыс деп айтуға болатын болса, онда бүгінгі күні жауап онша айқын емес. Android құрылғылары нарықты басып қалды және олардың саны iOS жүйесінде жұмыс істейтін гаджеттердің жалпы ұсынысынан асып түсті. Сондықтан Android немесе басқа бағдарламалық жасақтамада ойындарға тапсырыс бергіңіз келсе, Сіз өз бизнесіңізді үлкен аудиторияға ашуды жоспарлап отырсыз [13].Android аудиториясы кең ғана емес, сонымен қатар өте алуан түрлі. Әр түрлі жастағы адамдар Android бағдарламаларын жүктей алады. Android құрылғыларын жасаушы компаниялар өздерінің гаджеттерін қымбат модельдер сегментінде ғана емес, сонымен қатар олардың бюджеттік нұсқаларын ұсынады. Көптеген пайдаланушылар қолданбаларды арнайы Google Play қоймасынан жүктей алады.Android-ті дамытудың бірқатар ерекшеліктері бар. Android операциялық ортасы өмір бойы көптеген шығарылымдарды бастан өткерді. Көптеген адамдар әлі күнге дейін 2.3 нұсқасы бар құрылғыларды пайдаланады, ол салыстырмалы түрде алыс 2010 жылы шығарылды, дегенмен қазіргі уақытта Даму 5 (Lollipop) шығарылымымен жүргізілуде.Android гаджеттер дисплей өлшемдері мен ажыратымдылықтарының кең таңдауымен сипатталады. Әрбір өндіруші өз пайдаланушыларын таң қалдыруға, оларды жаңа мүмкіндіктермен еркелетуге тырысады. Сондықтан дисплей өлшемі 4-тен 10 дюймге дейінгі құрылғылар сатылымда қол жетімді. Тіпті смартфондардың арасында 6 дюймдік құрылғылар бар. Ал рұқсат ету қабілеті одан да кеңірек. Бұл Android гаджеттерінің тағы бір ерекшелігі.Android-де үлкен пайдаланушы базасы бар, нәтижесінде қосымшада ұсынылған өнім кең аудиторияға ие болады.Мен Android Studio пакетін даму ортасы ретінде таңдадым, өйткені бұл Google-дің ресми даму ортасы және оның Eclipse әріптесіне қарағанда заманауи.1.4 Мобильді қосымшаны әзірлеудің негізгі кезеңдеріМобильді қосымшаны әзірлеу кезінде көптеген маңызды аспектілерді елемеу үшін әрқашан белгілі бір жоспарды ұстанған жөн.

Мақсатты аудиторияны талдау. Осы кезеңде Тапсырыс беруші қосымшаны не үшін пайдалануды жоспарлап отырғанын, аудиториямен мобильді байланыс құралын әзірлеудің соңғы мақсаты қандай екенін шешуі керек.Келісілген шешім әзірлеу. Әзірлеуді бастамас бұрын тапсырыс берушіден техникалық тапсырма (ТТ) алу немесе оған осы құжат бойынша толтыру және одан әрі жұмыс істеу үшін қысқаша мәлімет беру қажет.Толтырылған қысқаша және / немесе ТК алғаннан кейін сіз прототиптеуге және соңғы өнімнің мүмкіндіктерін бағалау үшін пайдаланушы профильдерін жасауға кірісе аласыз.Дизайнердің көзқарасы, Бизнесті бағалау және ТК мәліметтерін келісу негізінде Сіз даму процесін бастай аласыз.Прототиптерді дизайнер әзірлейді және статикалық және интерактивті болуы мүмкін. Ол үшін біз бұрын айтқан бір немесе бірнеше прототиптеу құралдарын пайдалануға болады.Статикалық прототиптер мен интерактивті макеттер қосымшаны құру үшін пайдаланылатын техникалық және бағдарламалық базаны ескере отырып жасалуы керек.Код жазу және технологияны енгізу. Дайын дизайнмен қосымша әзірлеушілерге ауысады: олар бағдарламалау тілдері, фреймворктар және әртүрлі технологиялар негізінде TC, қысқаша және бекітілген прототипке сәйкес мобильді қосымшаны құруы керек.Тестілеу тренажерларда да, нақты құрылғыларда да қосымшаны әзірлеудің әртүрлі кезеңдерінде міндетті болып табылады. Тестілеудің мақсаты-қосымшаның смартфондар мен планшеттердің аппараттық және бағдарламалық платформасымен өзара әрекеттесуі прототиптеу кезеңінде дәл көрсетілгендей болатынына көз жеткізуШығарылым алдындағы нұсқасын жасау. Қосымшаның бірқатар сынақтары мен пысықтауларының нәтижесінде қосымшаның жұмыс нұсқасы алынуы керек. Дәл осы нұсқа қосымшалар дүкеніне қосылуы керек: App Store, Google Play, Windows Phone қосымшалар дүкені (қандай платформа үшін әзірленіп жатқанына байланысты) немесе қосымшаларды таратуға арналған кез-келген ұқсас қызмет.Дүкенге қосымшаны жариялау-студия жұмысының соңғы кезеңі. Қосымша жоғарыда көрсетілген платформаға сәйкес дүкенге қосылады.Қосымша кезең: қолданбаны одан әрі техникалық қолдау және маркетингтік жылжытуТапсырыс берушінің қалауы бойынша қосымшаны техникалық қолдау, мобильді ОЖ-нің жаңартылатын нұсқалары үшін жаңа нұсқаларды одан әрі шығару, сондай-ақ маркетингтік жылжыту сияқты қосымша қызметтерді ұсынуға болады.Бұл қызметтер негізгі қызметтер пакетінен бөлек ұсынылатындықтан, олар бөлек төленеді. Маркетинг пен техникалық қолдаудан басқа, қосымшаны Тапсырыс берушінің атынан App Store немесе Google Play-ге орналастыруға, қосымшаның серверлік қолдауын қамтамасыз етуге болады
2 Мобильді қосымшаны әзірлеу2.1 Node туралы түсінікДипломдық жоба барысында мобильді қосымша node.js платформасында жасалынды.Node.js-бұл веб-қосымшаларды, қолданбалы серверлерді, ерікті желілік серверлерді және клиенттерді әзірлеуге және жалпы бағдарламалауға арналған қызықты жаңа платформа. Ол асинхронды енгізу/шығару, сервер жағында JavaScript пайдалану, анонимді JavaScript мүмкіндіктерін өнертапқыштық пайдалану және бір ағынды оқиғаға бағытталған архитектура арқылы желілік қолданбалардың ең жоғары масштабталуын қамтамасыз етуге арналған.Node-де қабылданған модель масштабтауға көп ағынды қолдану арқылы қол жеткізілетін қолданбалы серверлерді құруға арналған жалпы платформалардан түбегейлі ерекшеленеді. Оқиғаға бағытталған архитектураның арқасында жадты тұтыну азаяды, өткізу қабілеттілігі артады және бағдарламалау моделі жеңілдетіледі. Қазір Node платформасы қарқынды дамып келеді және көптеген адамдар оны Apache, RNR, Python және т. б. негізіндегі веб-қосымшаларды әзірлеудің дәстүрлі тәсіліне тартымды балама деп санайды.Түйіннің негізінде JavaScript дербес виртуалды машинасы жатыр, оны қосымшалар серверлерін дамытуға баса назар аудара отырып, оны жалпы мақсаттағы бағдарламалауға жарамды етеді. Node платформасын әдетте веб-қосымшаларды (PHP/Python/Ruby/Java және басқалары) құру үшін қолданылатын бағдарламалау тілдерімен немесе HTTP протоколын (Apache/Tomcat/Glassfish it) жүзеге асыратын контейнерлермен тікелей салыстырудың мағынасы жоқ. д.). Сонымен қатар, көптеген адамдар бұл дәстүрлі веб-қосымшалардың стектерін алмастыруы мүмкін деп санайды.Іске асырудың негізі-бұғатталмайтын енгізу/шығару оқиғаларын өңдеу циклі және файлдық және желілік енгізу/шығару кітапханасы, барлығы JavaScript V8 қозғалтқышының үстіне салынған (Chrome веб-шолғышынан алынған). Енгізу/шығару кітапханасы TCP немесе UDP негізіндегі кез келген протоколды жүзеге асыру үшін жеткілікті ортақтыққа ие: DNS, HTTP, IRC, FTP және т.б. бірақ ол ерікті Протокол серверлері мен клиенттерін әзірлеуді қолдаса да, көбінесе Apache/PHP немесе Rails ауыстыратын қарапайым веб-сайттарды құру үшін қолданылады.2.2 Node мүмкіндіктері Node-веб-шолғыштан тыс JavaScript қосымшаларын жазуға арналған платформа. Бұл браузер тәжірибесінен бәрімізге таныс JavaScript емес. Node-де құжаттың Объектілік моделі (DOM) немесе браузердің басқа мүмкіндіктері жоқ. Бұл асинхронды енгізу/шығарумен біріктірілген JavaScript тілі, бұл түйінді қосымшаларды әзірлеуге арналған қуатты платформа етеді. Бірақ бұл үшін түйін жарамсыз, бұл GUI (Hip) бар жеке қосымшаларды әзірлеу үшін. Бүгінгі күні түйінде Swing (немесе SWT) баламасы жоқ. Node үшін қосылатын гипс кітапханасы жоқ, сонымен қатар браузерге Node енгізу мүмкін емес. Егер Node үшін гипс кітапханасы болса, онда бұл платформада жеке қосымшалар құруға болады. Жақында Node мен GTK арасында интерфейс құру бойынша бірнеше жобалар пайда болды, олардың нәтижесі кросс-платформалық гипс кітапханасы болуы керек. Node-де қолданылатын V8 қозғалтқышына жазуға мүмкіндік беретін API кеңейтімдері кіреді C/C J JavaScript кеңейтуге немесе қозғалтқышты платформалық кітапханалармен біріктіруге арналған код.
JavaScript-те кодты орындау қабілетінен басқа, дистрибутивке енгізілген Модульдер басқа мүмкіндіктерді ұсынады:пәрмен жолы утилиталары (қабық сценарийлеріне қосу үшін);интерактивті консольдық бағдарламаларды жазу құралдары ("Оқу - орындау - басып шығару"циклі);бала процестерін бақылауға арналған керемет процестерді басқару функциялары;екілік деректермен жұмыс істеуге арналған buffer нысаны;оқиғаларға жауап ретінде толық қоңыраулар жиынтығы бар TCP және UDP розеткаларымен жұмыс істеу механизмі;DNS жүйесінде іздеу;HTTP және HTTPS протоколдарының серверлері мен клиенттерін құруға арналған құралдар ОТҚ-розеткалар кітапханасы негізінде құрылған;файлдық жүйеге кіру құралдары;бекітулер арқылы офлайн тестілеуді кірістірілген рудиментарлы қолдау.Node желілік қабаты төмен деңгейде, бірақ онымен жұмыс істеу оңай. Мысалы, HTTP модульдері кодтың бірнеше жолын жазу арқылы HTTP серверін (немесе клиентін) іске асыруға мүмкіндік береді, бірақ бұл деңгейде бағдарламашы нақты хаттамалық сұрауларға өте жақын жұмыс істейді және сұрауға жауап ретінде қандай HTTP тақырыптарын қосу керектігін нақты көрсете алады. Егер РНР бағдарламашысы әдетте тақырыптарға қызығушылық танытпаса, онда Node бағдарламашысы үшін олар маңызды.Басқаша айтқанда, HTTP серверін түйінге жазу өте қарапайым, бірақ әдеттегі веб-қосымшаны жасаушыға мұндай төмен деңгейде жұмыс істеудің қажеті жоқ. Мысалы, РНР-де кодтау арқылы бағдарламашы Apache қазірдің өзінде бар деп болжайды, сондықтан оған стектің артқы жағын іске асырудың қажеті жоқ. Түйіннің айналасында қалыптасқан қауымдастық веб-қосымшаларды, соның ішінде HTTP - ді тез конфигурациялауға мүмкіндік беретін Connect-ті дамыту үшін көптеген кадрлар жасады, осылайша біз үйреніп қалғанның бәрі-сеанстар, кукилер, статикалық файлдарға қызмет көрсету, хаттамалау және т. б. - әзірлеуші қосымшаның бизнес-логикасымен айналыссын.2.3 Неліктен Node пайдалану мағынасы бар?JavaScript тілі кез-келген веб-шолғышта болуымен өте танымал. Ол басқа тілдерден еш кем түспейді, бірақ сонымен бірге бағдарламалау тілі қандай болуы керек деген көптеген заманауи идеяларды қолдайды. Кең таралуына байланысты JavaScript-те көптеген тәжірибелі бағдарламашылар бар.Бұл әлсіз терілген, динамикалық кеңейтілетін объектілері бар динамикалық тіл, олар қажет болған жағдайда бейресми түрде жарияланады. Ондағы функциялар толыққанды нысандар болып табылады және әдетте анонимді тұйықталу ретінде қолданылады. Бұл веб-қосымшаларды әзірлеу үшін жиі қолданылатын кейбір басқа тілдермен салыстырғанда JavaScript-ті қуатты тілге айналдырады. Теориялық тұрғыдан мұндай мүмкіндіктердің болуы бағдарламашылардың өнімділігін арттыруы керек. Бірақ динамикалық және статикалық тілдерді, сондай-ақ қатаң және әлсіз теруді жақтаушылар арасындағы даулар әлі де басылған жоқ және ешқашан басылуы екіталай.