• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
شروع یادگیری برنامه نویسی آندروید تحت وب؟
#1
سلام دوستان
من دنبال یه سرفصل آموزشی می گشتم که بتونم برای سیستم عامل آندروید برنامه های تحت وب بنویسم اما هر چی سرچ کردم چیزی دستگیرم نشد.
شما اطلاعی دارید؟
  پاسخ
تشکر شده توسط :
#2
ما هم از سوال شما چیزی دستگیرمان نشد. احتمالاً گوگل هم وضع مشابهی داشته!
  پاسخ
تشکر شده توسط : undefined itstaghi AlirezaHS farhadfery
#3
(۱۳۹۳ تير ۲۰, ۱۰:۵۹ ق.ظ)phpveteran نوشته: ما هم از سوال شما چیزی دستگیرمان نشد. احتمالاً گوگل هم وضع مشابهی داشته!
آقای محترم شما اصلا معنی سرفصل آموزشی رو میدونید؟
گوگل هم احتمالا منتظر بوده اول شما اجازه بدین بعد نتایجش رو نشون بده.(چیزی نمیدونید اسپم ندید لطفا)
بعد چهار پنج سال وبگردی حداقل اینقدر یاد گرفتم که چجوری دنبال چیزی که میخوام بگردم.
سرفصل یعنی من باید چه موارد و موضوعاتی رو یاد بگیرم تا بتونم یه برنامه تحت وب آندورید بنویسم مثل بازار و واتس آپ و خیلی برنامه های آندرویدی دیگه که به اینترنت متصل هستن.
مثلا پیاده سازی وب که میشه:
html
css
js
jquery
php
mysql
  پاسخ
تشکر شده توسط :
#4
شما باید بهتر منظورتون رو ذکر کنین.
میخواین وب سایتی درست کنین که در موبایل و تبلت به فرم درست نمایش داده بشه؟ که کلا قضیه اش جداست.
میخواین نرم افزار اندروید بنویسین که روی موبایل نصب بشه ؟ با زبان های تحت وب؟
که این هم قضیش جداست. بهترین گزینه برای این کار استفاده از Jquery mobile بعلاوه سیستم Phonegap هستش.
در کل اصلا این رو توصیه نمیکنم. پرفورمنس به شدت پایین هستش و فقط اتلاف وقتتون رو باعث میشه

بهترین گزینه یادگیری جاوا و نوشتن برنامه بصورت native هست.
  پاسخ
تشکر شده توسط :
#5
در مورد برنامه های هیبریدی باید بگم که اشتباه میکنید، کارایی این نرم افزارها پایین نیست، باید به این نکته توجه کرد که منابع موبایل با کامپیوتر قابل مقایسه نیست.
پس کدها باید به بهینه ترین حالت ممکن نوشته بشن.
به شخصه تو کارایی این نرم افزارها با مشکلی مواجه نشدم.
غایب
  پاسخ
تشکر شده توسط :
#6
منظورم پایین بودن قابلیت این نوع نرم افزارها نبود
منظورم پایینتر بودن قابلیت ها و پرفورمنسشون بود!
ببنین کدی که با جاوا هم نوشته میشه توسط ماشین Dalvik ترجمه میشه
یعنی بازهم یک لایه اضافه تر. حالا موتور phonegap که فکر میکنم cordova یا یک همچین چیزی باشه دوباره یک لایه یا دولایه دیگه هم به اون اضافه میکنه.
این چند لایه اضافی مطمئنا پرفورمنس رو میاره پایین.
شما نمیتونین برنامه های قوی و گرافیکی درست و حسابی باهاش تولید کنین.
همچنین ارتباط با سخت افزار دستگاه هم وابسته به درایورهاییه که شرکت واسط phonegap یا شرکت های دیگه تولید میکنن.مثلا اگر درایور کار با DLNA بیرون داده نشه به هیچ وجه نمیتونین با این قابلیت ارتباط برقرار کنین.
  پاسخ
تشکر شده توسط :
#7
Rolleyes

اسپم؟ من؟ چیکار شده؟

یکمی اطلاعات داشتم اما چیزی از سوالتون دستگیرم نشد. چقدر جوونای حالا زود عصبانی می‌شن Smile

در مورد سوالت دو سه پاسخ خوب نوشته شده که البته کمی تعصب دارند اما خب پاسخ‌های نصبتا کاملی هستند در تکمیل فرمایشات دوستان باید عرض کنم

شما سه راه حل دارید.
راه حل اول که فکر نمی‌کنم مدنظر شما باشه اینه که UI سایت خودتون را ریسپانسیو طراحی کنید تا در اسکرین سایزهای مختلف به درستی محتوی نمایش داده بشه. برای طراحی ریسپانسیو منابع بسیار متنوعی بر روی اینترنت موجود هست که من شما را ارجاع می‌دم به کتاب موجح Mobile First نوشته لاک رابلسکی http://www.lukew.com/resources/mobile_first.asp
راه حل دوم نوشتن یک برنامه موبایل و استفاده از یک API که موکداً در زمان نوشتن این پاسخ RESTful API برای ارتباط با backend هست خب در این بخش شما ابتدا باید یک API طراحی کنید که می‌تونید برای تسریع در این عمل از سرویس‌های BaaS استفاده کنید پیشنهاد من Parse.com هست که حدود یک ساله دارم ازش استفاده می‌کنم اما طبیعتاً گزینه‌های دیگری هم وجود داره.
بخش بعدی همونطور که دوستان فرمودن نوشتن موبایل/دیوایس اپلیکیشن هست. متاسفانه در این بخش شما مشکل چند پارچگی در دیوایس‌های اندرویدی و گوناگونی در معماری دیوایس‌ها را دارید برای نایل آمدن به عمده ای مشکلات راه‌حل‌های هایبرید معرفی شدن باز در زمان نوشتن این پاسخ و بنا به آمار منتشره در پایگاه اینترنتی اندروید تعداد دیوایس‌های فعال با پردازنده بالای یک گیگاهرتز هنوز سهم بازار خیلی کوچکی دارند راه حل‌های هایبرید برای ارتباط با سخت‌افزار دیوایس از SDK آپاچی کوردوا استفاده می‌کنند این رابط اگرچه امکانات گسترد‌ه‌ای به کاربران داده اما ضعف‌هایی هم داره. در هر حال شما با استفاده از HTML/CSS/JS و معمولا یک فریم‌ورک *MV جاوااسکریپت (backboneJS یا angularJS هر دوی این گزینه‌ها ویژگی و امکاناتی دارند که برای پروژه شما می‌تونن بهتر از دیگری باشند) اقدام به طراحی و پیاده‌سازی اپلیکیشن خودتون می‌کنید.
راه حل سوم نوشتن برنامه Native برای پلتفرم‌های مختلف است. برای دیوایس‌های اندرویدی می‌تونید از جاوا SDK و یا سی NDK استفاده کنید گزینه دوم برای اپلیکیشن‌های خاص که نیازمند دسترسی حداکثری به منابع سیستم هستند پیشنهاد می‌شه. در هرحال در نسخه های پیشین اندروید چنانچه دوستان فرمودن کدها بر روی ماشین دالویک اجرا می‌شد که مشکلات خاص خودش را داشت در نسخه اندروید L اپلیکیشن بر روی ماشین ART اجرا خواهد شد که بهبود‌های گسترده‌ای در اون داده شده خصوصا در مورد بهینه سازی استفاده از منبع تغذیه شاهد جهش بزرگی هستیم اما نکته مهمتر اجرای سریعتر اپلیکیشن‌ها هست که این میتونه بهبودهایی را برای راه حل های هایبرید شامل بشه. برای پلتفرم iDeviceها باید با استفاده از زبان ObjectiveC که مشابه C هست و توسط یک کامپیوتر مگ بر روی xcode کار توسعه اپلیکیشن را انجام بدهید و برای پلتفرم ویندوز از C# برای توسعه استفاده خواهید کرد.
خب فکر می‌کنم سرفصل‌! ها تقدیمتون شده باشه و دیگه از دستمون عصبانی نباشید!
  پاسخ
تشکر شده توسط : farhadfery admin
#8
خب قطعا حرف شما درست هست، چون به نسبت میشه گفت نرم افزارهای هیبریدی راه حل جدیدی هست (‌زمان نیاز داره تا قوی تر بشه) و اگه واقع گرایانه نگاه کنیم هیچ وقت جای نیتیو رو نمیگیره.
ولی شما گفتین که پرفومنس (‌کارایی) پایینی دارن و من خواستم بگم بستگی به کدی داره که شما نوشتین.
معلوم هست که نمیشه باهاشون کار گرافیکی خیلی سنگین کرد، در واقع کسی هم از نرم افزار های هیبریدی همچین انتظاری هم نداره.
من برای این جواب دادم که شما کلا این راه حل رو نقض کردین،‌ ولی اینجوری ها هم نیست.
غایب
  پاسخ
تشکر شده توسط :
#9
البته ابزارهایی مثل titanium appcelerator هم هستند که با سینتکس جاوااسکریپت میشه برنامه های native تولید کرد. ولی خب امکاناتش به نسبت native خیلی محدود هست.
  پاسخ
تشکر شده توسط :
#10
میتونید از کتابی که من نوشتم برای طراحی صفحات وب برای موبایل ها و استفاده از Hybrid project‌ استفاده کنید.
در گوگل بنویسید : برنامه نویسی موبایل Mosync‌ نویسنده میلاد فشی
این کتاب ابتدا مقدمات جاوا رو گفته و بعد در فصول بعدی Mobile Web Application و Hybrid Project رو در MoSync _فریم ورک FOSS‌ استکهلمی که ++ C زبان Backend آن در پروژه Hybrid است)
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان