اطلاعیه

Collapse
هیچ اطلاعیه ای هنوز ایجاد نشده است .

برنامه نویسی آیفون با بامداد دشت بان – قسمت اول

Collapse
این تاپیک مهم علامت‌گذاری شده است.
X
X
 
  • فیلتر
  • زمان
  • نمایش
پاک کردن همه
new posts

  • برنامه نویسی آیفون با بامداد دشت بان – قسمت اول

    برنامه نویسی آیفون با بامداد دشت بان – قسمت اول (پروسه طراحی اپلیکیشن و محیط کاربری)
    این مطلبو اگه تو بلاگم بخونید راحت تره چون عکس ها سر جاش لود میشه !

    در این جلسه به معرفی فرایندی که ساخت یک اپلیکیشن موفق آیفون طی می کند می پردازیم.
    شاید خیلی از شما برنامه آیفونی نوشته و آن را برای فروش قرار داده باشید ،ولی شاید فروش شما آن طور که فکر می کردید نبوده! یا شاید می خواهید که App بعدیتون واقعا خوب باشه، ما امروز و جلسه بعدی به این موضوع می پردازیم و فرایند ساخت یک App را با هم مرور می کنیم.
    در این جلسه اصلا به برنامه نویسی نمی پردازیم بلکه نکات بنیادی برای برنامه نویسی آیفون را بررسی خواهیم کرد.

    پس با یک سوال شروع می کنیم : بهترین قدم ها برای ساخت چیزی عالی چیست ؟

    به طور کلی 4 مرحله اصلی برای ساخت یک محیط کاربری قوی آیفون وجود دارد

    * مرحله اول - شالوده (Foundation) :
    در این مرحله تفاوت هایی که در استفاده از دستگاه های تاچ بوجود می آید را درک می کنیم و به راه های جدیدی در حل مسائل می اندیشیم.
    * · مرحله دوم – تعریف محصول (Product Definition) :
    اینجا می فهمیم آن چیزی که دست مشتری می دهیم چیست ؟
    * · مرحله سوم – طراحی و نمونه سازی (Design & Prototyp) :
    درک می کنیم که طراحی محیط کاربری آیفون چگونه است و از کاغذ برای نمونه سازی استفاده می کنیم.
    * · مرحله چهارم – پولیش و بهبود (Polish & Refine):
    مرحله ایست که نرم افزار پایدار ولی معمولی را تبدیل به اپلیکییشن جذاب و عالی می کند.

    در این جلسه به دو مرحله اول می پردازیم و در جلسه بعد به دو مرحلی باقی مانده خواهیم پرداخت.

    مرحله اول - شالوده (Foundation) :

    به طور قطع آیفون دستگاهی انقلابی است . آیفون دستگاهی همواره متصل به شبکه های مخابراتی است که درون جیب ما جا می شود و دارای GPS ، قطب نما ، دوربین ، شتاب سنج و یک مرورگر کامل وب است وبه برنامه نویس اجازه می دهد تا از بهترین ورودی های موجود برای ساخت اپلیکیشن استفاده کند.

    وقتی آیفون ارائه شد ، بسیاری از قوانین تغییر کرد. برای مثال در کامپیوتر های دسک تاپ دقت استفاده از ماوس 1 پیکس در 1 پیکسل بود و تنها یک بار در زمان رخ می داد، دقت در کامپیوترها تعریف شده بود ولی در آیفون که دستگاهی مالتی تاچ و دقت آن از 22 پیکسل تا 55 پیکسل بسته به اندازه و نوع استفاده از انگشتان کاربر بر روی صفحه متغیر است . بر این اساس ما 5 ورودی همزمان داریم که باید آن ها را در یک زمان پیگیری کنیم.


    در نتیجه بسیاری از ابزار هایی که در گذشته به کار می رفت و به یک استاندارد تبدیل شده بود کنار گذاشته شد و جایگزینی بهتر برای کار با انگشتان طراحی شد.

    * اولین آن ها Scroll-Bar بود که بسیار کوچک بود و به سختی می توانستیم با آن ارتباط برقرار کنیم.و به طور کل آن ها حذف شد چراکه دیگر با حرکات انگشتان می توانستیم کار آن ها را شبیه سازی کنیم و در اپلیکیشنContacts و یا مرور وب حتما جایگزین آن را دیده اید .

    * دومین آن ها Drop Down Menu ها بودند که به خوبی کار نمی کرند و در کار با انگشتان بسیار ضعیف بود. چندین جایگزین برای آن معرفی شد که Picker یکی از آن ها بود که بیشترین کاربرد را در داده های از پیش تعیین شده دارد.

    در آیفون برای اولین بار کاربران می توانستند به طور مستقیم تغییر ایجاد کنند(Direct Manipulation) و نیازی به استفاده از ماوس و کیبورد نداشت. این تغییرات مستقیم به انواع زیر تقسیم می شود:

    * دستکاری مستیقم (Direct Manipulation): برای مثال در یک بازی تیر اندازی وقتی تنها یک بار صفحه را لمس می کنید تا تیری شلیک شود
    * لمس پی درپی (Sequential Tapping): مثلا وقتی که در نرم افزار Mail پشت سر هم از لحظه باز شدن برنامه صفحه را لمس می کنید تا به ایمیل مورد نظرتان برسید.
    * لمس و کشیدن(Tapping & Dragging): بیشترین شباهت به دنیای واقعی را دارد زیرا شما می توانید با لمس کردن نقاشی کنی , چیزی را تکان دهید و .. 90 درصد کاربران در هنگام کار با صفحه لمسی برای اولین بار لمس کردن و کشیدن را امتحان میکنند.

    پس حتما باید فکر کنید کدامیک از این ها در چه موقعی بیشتر در Application شما به کار می رود.

    خوب بیایید به تغییراتی که در طراحی محیط کاربری ایجاد شده بپردازیم:

    فهمیدن اینکه چیزی یک Button یا دکمه است بسیار ساده است و آن با نرم کردن گوشه های مربع قابل درک است. پس معمولا هر موقع دیدید دور چیزی نرم شده و همچنین درخشش خاصی دارد آن یک دکمه است. ولی در ToolBar نمی توان اطراف همه دکمه ها را نرم کرد پس به جای آن می بینید که از تکنیک عمق دادن به دکمه استفاده شده که به آن یک Inner Shadow داده شده است و خود نوار هم درخشان یا Glossy شده است که به کاربر یاد آوری می کند که قابل لمس شدن است.


    در اکثر پلت فرم ها اغلب 5 یا 6 درصد وقت طراحی می شود ولی در آیفون پیشنهاد می شود که حداقل نیمی از زمان شما به طراحی پرداخته شود. خیلی از شما با خود میگویید من یک برنامه نویس یا یک مهندس هستم و من طراحی نمی کنم و در فتوشاپ چیز ها را خوشگل نمی کنم ولی وقتی من در مورد طراحی می گویم منظورم تعیین وسعت نرم افزار ، اندیشیدن به سلسله مراتب و یافتن جریان نرم افزار و درک اشیا موجود است و این ها همان کار های هستند که مهندسان از انجام آن لذت می برندو تنها راجع به نقاشی و زیبا کردن چیز ها صحبت نمی کنم ولی باید بدانید هیچ کسی در دنیای واقعی چیزی را از شما نمی خرد که طراحی خوبی نداشته باشد و وقت زیادی روی طراحی آن گذاشته نشده باشد.





    مرحله دوم – تعریف محصول (Product Definition):چرخه تولید در آیفون

    تا به حال ( قبل از آیفون) هر محصول نرم افزاری لیستی طولانی از خصوصیات و ویژگی ها را داشت که بدین منظور برنامه نویس مجبور بود محیطی بزرگ فراهم کند تا می توانست تمامی آن ویژگی ها را پیاده سازی کند، ولی مشکل آنجا است که خیلی از کاربران از تمام آن ویژگی ها استفاده نمی کردند.
    باید بدانیم که در آیفون هدف آن است که یک راه حل تعریف کنیم نه اینکه مجموعه ای از ویژگی ها را کنار هم بگذاریم و نشان دهیم.
    بهترین اپلیکیشن های آیفون آن هایی هستند که یک مشکل را برای کاربر حل می کنند.یکی از بهترین روش ها به رسیدن به این هدف تعریف کردن “شرح تعریف برنامه” Application Definition Statement یا ADS است .

    ADS از 3 قسمت تشکیل شده است:

    (تفاوت شما) ( راه حل شما) برای (مخاطب شما )

    (Your Differentiator)(Your Solution) for (Your Audience)

    * تفاوت شما : خاص بودن برنامه شما در مقابل سایر نرم افزار ها را نشان می دهد .برای مثال “استفاده آسان” یا “ظاهری زیبا”.
    * راه حل شما: برای خود تعریف کنید که چه مشکلی را حلی یا آسان خواهید کرد.
    * مخاطب شما : بسیار مهم است که بدانید مخاطبتان کیست ، برای مثال اگر مخاطب شما یک آتش نشان است که باید به سرعت هم تیمی های خود را پیدا کند شما نباید آن طور که برای یک تاجر محیطی طراحی می کنید که برای رسیدن به هدفش چندین بار باید صفحه را

    لمس کند برنامه را طراحی کنید.

    این مرحله را با یک مثال جلو می رویم:در مک ما نرم افزاری به نام iPhotos داریم که در iOS مشابه آن Aplication با نام Photos است که همگی ما در آیفون برای مشاهده تصاویر استفاده کرده ایم.

    ADS برنامه iPhotos این است :

    Easy to use , digital photo editing ,organizing & sharing for causal & amateur photographers

    تفاوت ما نسبت به سایر نرم افزار ها easy to use بودن نرم افزار اس و می بینید که در اینجا 3 راه حل داریم :

    1. Digital Photo Editing

    2. Organizing

    3. Sharing

    همچنین مخاطبین ما هم Causal & amateur photographers هستند.

    لیست طولانی خصوصیات نرم افزار در این ADS خلاصه شده است و خیلی از این ها برای آیفون مناسب نیست زیرا انجام این کارها با انگشت سخت و زمانگیر است و کاربر آیفون می خواد به هدفی بسیار سریع برسد.پس با مشاهده راه حل ها می بینیم که تنها یکی به کار ِ کاربران آیفون می آید:

    همه دوست دارند که عکس هایشان مرتب و Organize شده باشد و لی افراد کمی هستند که برای مرتب کردن عکس هایشان وقت می گذارند و اکثر مردم از یک لیست طولانی تصویر مورد نظرشان را پیدا می کنند.

    همچنین افراد کمی هم هستند تا تصاویرشان را ویرایش یا Edit کنند , آنها فقط عکس می گیرند و اگر عکسی بد شد آن را پاک می کنندو عکس جدید می گیرند و حوصله بریدن , چرخاندن و تنظیم نور آن ها را ندارند.

    ولی به اشتراک گذاشتن یا Sharing کاری است که اکثر مردم آن را انجام می دهند چه از طریق نمایش Slide show برای اطرافیان چه از طریق ایمیل کردن یا آپلود کردن در وب سرور ها.

    پس با توجه به مطالب گفته شده ADS برنامه Photos را اینگونه می نویسیم:

    Easy to use digital photo sharing for casual iphone users

    باید به مخاطب برنامه که در اینجا کاربران عمومی آیفون یاد شده هم توجه کرد که اگر عوض شود ، به طور کل ویژگی های برنامه نیز عوض می شود برای مثال ADS برنامه Apertureکه برنامه ای برای عکاسان حرفه ای است و کاملا متفاوت است به صورت زیر است:

    Easy to use digital photo sharing for professional photographers

    جمله ای معروف وجود دارد که می گوید :

    Pick the few features

    Most frequently used

    By the majority of your users

    Most appropriate for the mobile context

    تنها چند ویژگی را انتخاب کنید

    که بیشترین استفاده را داشته باشد

    توسط اکثر کاربران بکار برده شوند

    و مناسب برای دستگاهی قابل حمل باشند.

    اگر به لیست ویژگی های iPhoto در مک نگاهی بیندازید می بینید که تنها قسمت کوچکی از ویژگی های آن برای نرم افزار Photos آیفون پیاده سازی شده و همه با نرم افزار Photos کار کرده ایم.با یک لیست از آلبوم ها شروع می کنیم و عکس مورد نظرتان را انتخاب می کنید , عکس تمام صفحه را می بینید و Toolbar در پایین کارهای مربوط به اشتراک گذاری را انجام می دهد. همان راه حلی که هدف ما ایجاد آن بود. می توانیم Slideshow ببینیم ، عکس های بعدی و قبلی را ببینیم و به گالری mobileMe آپلود یا ایمیل کنیم.

    با سادگی که این نرم افزار دارد ولی یکی از مهم ترین نرم افزار های آیفون است.پس هنگاهی که نرم افزاری را تهیه می کنید که نیاز ساده ای را براورده می کند تصور نکنید که نرم افزار شما برای کاربر بی ارزش است.

    اگر شما به نرم افزار های موفق در App Store نگاهی بیندازین در خواهید یافت که بیش از 70 درصد آن ها وقتی برای نوشتنADS گذاشته اند.

    ادامه در مطلب بعدی

    خسته نباشید.

    بامداد دشت بان
    ویرایش توسط bamdadd : https://i-phone.ir/forums/member/898-bamdadd در ساعت 23-12-2010, 01:59 AM دلیل: مشکل در تبدیل HTML به VB

  • #2
    بچه ها خیلی سخت بود نوشتن چنین مطلبی
    نظراتتون برام خیلی مهمه
    اگه با این استایل آموزش حال نمی کنید بگید یه جور دیگه می رم جلو ! ولی خودم خواستم یه مقدار ریشه ای بریم جلو

    نظر


    • #3
      خيلي مطالب جالبي بود واقعا استفاده كردم ممنون داداش

      نظر


      • #4
        خوب بود . قشنگ نوشته بودیش. :d

        ادامش ...

        نظر


        • #5
          انشاالله ما هم با این اموزش زیبای شما برنامه مینویسیم
          ولی دوست عزیز نظرت چیه این تاپیکو فقط اموزش کن کسی اینجا نظر نده یه تاپیک دیگه برای نظر وسوالات دوستان باز کن تا این تاپیک زیاد شلوغ نشه و دوستان به راحتی به آموزش ها دسترسی داشته باشن
          ویرایش توسط saeid000 : https://i-phone.ir/forums/member/9963-saeid000 در ساعت 23-12-2010, 04:14 PM

          نظر


          • #6
            نوشته اصلی توسط saeid000 نمایش پست ها
            انشاالله ما هم با این اموزش زیبای شما برنامه مینویسیم
            ولی دوست عزیز نظرت چیه این تاپیکو فقط اموزش کن کسی اینجا نظر نده یه تاپیک دیگه برای نظر وسوالات دوستان باز کن تا این تاپیک زیاد شلوغ نشه و دوستان به راحتی به آموزش ها دسترسی داشته باشن
            امیدوارم همینطور باشه و دوستان علاقه مند برنامه نویس شوند
            فکر می کنم هر درسو یک تاپیک بزنم بهتر باشه چون سوالاتش مربوط به همون درس می شه
            جواب دادن و مرور برای من و سایر دوستان این طور بهتره نه؟

            نظر


            • #7
              بامداد جان سایت محمد ازت تشکر کردم !
              بازم ممنون ...
              قسمت های جدید بزار
              انسانیت خود به تنهایی دینی است که پیروان چندانی ندارد ..

              نظر


              • #8
                عالیه

                نظر


                • #9
                  بامداد واقعا خیلی با حالی دستت درد نکنه. استفاده کردم شدید :d

                  نظر


                  • #10
                    دوست عزیز بامداد , به نظر من در یک تاپیک تمامی آموزش هاتون رو بزارید
                    اینجوری هم نظم انجمن حفظ میشه هم آموزش های شما قابل دسترس تر هست
                    مثلا شما یک تاپیک برای قسمت صفر باز کردید یکی این
                    ما می تونیم پست های اضافی رو برای شما حذف کنیم که تمامی آموزش های شما در پشت هم قرار بگیرند
                    i-phone.ir
                    The Best or Nothing



                    Twitter : Rouzbeh7000

                    نظر


                    • #11
                      خسته نباشید دوست عزیز.
                      توصیه می کنم مطلب های هر قسمت رو کمتر کنید.
                      منم در تاپیک زیر دارم آموزش میدم ولی باید فرصت کنم تا ادامش رو بنویسم:
                      http://www.i-phone.ir/forums/thread24540.html

                      نظر


                      • #12
                        دوستان عزیز ممنون از این همه انرژی که بهم دادید. باعث میشه بیشتر وقت بگذارم
                        بازم ممنون
                        نوشته اصلی توسط roozbeh7000 نمایش پست ها
                        دوست عزیز بامداد , به نظر من در یک تاپیک تمامی آموزش هاتون رو بزارید
                        اینجوری هم نظم انجمن حفظ میشه هم آموزش های شما قابل دسترس تر هست
                        مثلا شما یک تاپیک برای قسمت صفر باز کردید یکی این
                        ما می تونیم پست های اضافی رو برای شما حذف کنیم که تمامی آموزش های شما در پشت هم قرار بگیرند
                        اگه شما این طوری صلاح می بینید حتما این کارو می کنم
                        من خودم تصمیم داشتم که پست هارو بزنم و سوالاتشو زیرش پاسخ بدم که چون مطالب خیلی گسترده است سوالات و نظرات با هم قاطی نشه
                        شما خودتون هرجور صلاح می دونید پست هارو ویرایش کنید بنده همان طور ادامه می دم.
                        ممنون از لطف زیادتون

                        نظر


                        • #13
                          نوشته اصلی توسط professional نمایش پست ها
                          خسته نباشید دوست عزیز.
                          توصیه می کنم مطلب های هر قسمت رو کمتر کنید.
                          منم در تاپیک زیر دارم آموزش میدم ولی باید فرصت کنم تا ادامش رو بنویسم:
                          http://www.i-phone.ir/forums/thread24540.html
                          خوشحال میشم در کنار هم پیش بریم تا مطالب فارسی غنی تر بشه و از تجربیات شما هم استفاده کنیم.
                          اگه کمکی از دست من بر می اومد حتما خبرم کنید

                          نظر


                          • #14
                            نوشته اصلی توسط bamdadd نمایش پست ها
                            دوستان عزیز ممنون از این همه انرژی که بهم دادید. باعث میشه بیشتر وقت بگذارم
                            بازم ممنون


                            اگه شما این طوری صلاح می بینید حتما این کارو می کنم
                            من خودم تصمیم داشتم که پست هارو بزنم و سوالاتشو زیرش پاسخ بدم که چون مطالب خیلی گسترده است سوالات و نظرات با هم قاطی نشه
                            شما خودتون هرجور صلاح می دونید پست هارو ویرایش کنید بنده همان طور ادامه می دم.
                            ممنون از لطف زیادتون
                            من فقط پيشنهاد دادم
                            اين تاپيك ها متعلق به شماست و هر نظري داشته باشيد مي تونيد روي كمك ما حساب كنيد
                            i-phone.ir
                            The Best or Nothing



                            Twitter : Rouzbeh7000

                            نظر


                            • #15
                              قسمت بعدیشو شروع کردم

                              نظر

                              صبر کنید ..
                              X