آموزش حضوری api نویسی



7,000,000 تومان

api در واقع مخفف Application Programming Interface یعنی رابط برنامه‌نویسی نرم‌افزار که از طریق آن دو اپلیکیشن می توانند با هم تعامل بر قرار کرده و بین یکدیگر تبادل دیتا انجام دهند و ما در این دوره دو پروژه کاربردی را پیاده سازی می کنیم اول یک پروژه رستورانی اندروید را پیاده سازی کرده که دیتاهای خود را از سرور اینترنتی که با php نوشته شده دریافت می کند به این صورت که گارسون با حضور کنار مشتریان سفارش آنان را با یک تبلت دریافت می کند و پس از ثبت سفارش مشتری یک پیامک برای ایشان ارسال شده که آن کد، در واقع نوبت مشتری می باشد و از طریق اسپیکر صندوق فراخوانی می گردد پس از ثبت فاکتور توسط گارسون در کنار میز مشتری، همان فاکتور در وب اپلیکیشن صندوق دار دریافت می گردد و از طریق فیش پرینتر چاپ تهیه می گردد و پس اخذ وجه غذا به مشتری تحویل می شود لازم به ذکر است بخش اندرویدی این پروژه با زبان برنامه نویسی java طراحی شده است و دوم یک پروژه وب اپلیکیشن رزومه هست که اطلاعات آن از سرور سایت دیگر دریافت می گردد در واقع اینجا تعامل بین دو سایت را تمرین می کنیم که اطلاعات از سایت والد به سایت پایین دستی که روزمه ساز هست ارسال می گردد

موضوعات فنی دوره :
1. آشنایی با معماری برنامه های اندرویدی
2. آشنایی با دستور Toast و حلقه for در برنامه های اندرویدی
3. تغییر مقدار ، رنگ و اندازه یک TextView از طریق برنامه و اعمال رویداد کلیک روی  TextView که با لمس آن در برنامه یک message در صفحه ایجاد می گردد
4. نحوه حرکت روی اکتیوتی ها
5. آشنایی با context در برنامه نویسی اندروید ، معرفی انواع کانتکس و ایجاد یک کلاس از نوع application
6. آشنایی با DatepickerDialog، TimePickerDialog،progressDialog ، AlertDialog
7. طریقه ارسال پیامک با برنامه های اندرویدی از طریق خود برنامه
8. آشنایی باSMS_RECEIVED  در برنامه های اندرویدی که پس از ارسال پیامک به گوشی های اندرویدی یک رویداد قابلیت اجرا پیدا می کند
9. آشنایی با  LinearLayout و کار روی UI پروژه
10. آشنایی با  RelativeLayout و کار روی UI پروژه
11. طریقه ساخت و استفاده از دیتابیس SQLite در پروژه های اندرویدی
12. دریافت دیتاهای ثبت شده در دیتابیس در اکتیوتی های دیگر و مثلاً نمایش در یک ادیت باکس
13. نمایش دیتای ذخیره شده در دیتابیس در یک لیست ویو( List View )و کار با دیتابیس SQLite
14. آشنایی با Multi Thread جهت اجرای بهتر پروژه های اندروید
15. یجاد یک فرم لاگین و پسورد و راستی آزمایی اطلاعات ثبت شده در دیتابیس SQLite
16. نحوه کار با camera گوشی به این شکل که در برنامه امکان ارتباط با camera گوشی فراهم می گردد و تصویر برداشت شده در یک image view  در پروژه ما نمایش داده میشود
17. تبدیل دیتای json به یک استرینگ معمولی و جداسازی عناصر آن و قرار دادن هر عنصر در یک EditText
18. طریقه کار با یک RadioButton و  CheckBox  و دریافت مقادیر آنها و قرار دادن در یک Toast
19. ایجاد یک DatePickerDialog شمسی با قابلیت انتخاب تاریخ و انتقال تاریخ انتخاب شده در یک EditText
20. آشنایی با آبجکت webview و تبدیل یک وب سایت به یک وب اپلیکیشن موبایل
21. کار با انیمیشن ها در اندروید و معرفی انواع انیمیشن
22. راه اندازی تایمر در برنامه های اندرویدی به نحوی که هر مثلا 10 ثانیه یکبار یک رویداد در پروژه ما اجرا شود
23. سه رقم ، سه رقم جدا کردن اعداد در یک آبجکت و نمایش ویدئو در برنامه های اندرویدی و معرفی آبجکت VideoView
24. اجرای صوت در برنامه های اندرویدی و معرفی آبجکت seekbar به صورتی که seekbar در اجرای صوت به صورت یک پیمایشگر عمل می کند
25. راه اندازی پیش نمایش برنامه به صورتی که از طریق یک تایمر برای مدت 17 ثانیه پیش نمایش برنامه نمایش داده می شود و سپس برنامه به طور اتوماتیک به صفحه لاگین ارجاع داده می شود
26. پیاده سازی بخش Login پروژه به نحوی که کاربر از قسمت کلاینت نام کاربری و کلمه عبور را به سمت سرور ارسال می کند و پاسخ آن را بلافاصه از سمت سرور دریافت می کند و برای بر قراری این اتصال بین کلاینت و سرور از RestFullApi استفاده کردیم
27. پیاده سازی سمت سرور جهت راستی آزمایی نام کاربری و کلمه عبور به نحوی که کلمه عبور و نام کاربری از سمت کلاینت به سرور ارسال میشه و در سمت سرور یک سیستم mvc پیاده سازی کردیم و از طریق زبان برنامه نویسی php ریکوئست های ارسالی از سمت کاربر مورد بررسی قرار می گیرد
28. ارتباط با سرور PHP از طریق API و راستی آزمایی کلمه عبور
29. ایجاد متود getPostDataString  در اکتیویتی مربوط به Login که از طریق این متود دیتاهای ارسالی به سمت سرور اینکد می شود
30. دریافت Response  از سرور در قسمت کلاینت، در این بخش ما ریکوئستی را به سمت سرور ارسال می کنیم در ادامه یک پاسخ از سمت سرور دریافت می کنیم و شما براساس این پاسخ می توانید در سمت کاربر تصمیم گیری کنید
31. بررسی اتصال به اینترنت از طریق یک Toast در برنامه و ساخت اکتیوتی منوی برنامه که با لاگین شدن در اپلیکیشن کاربر به این اکتیوتی ارجاع گردد
32. طریقه پولی کردن api از طریق قرار دادن یک key در برنامه
33. ایجاد بخش ثبت غذا از طریق API در سرور PHP
34. ساخت api ایجاد غذای جدید در منوی رستوران که با زبان برنامه نویسی php نوشته شده است
35. پیاده سازی بخش کلاینت ایجاد غذای جدید در منوی رستوران به این صورت که کاربر با وارد کردن نام غذاو قیمت غذا و زدن دکمه ارسال ریکوئست های لازم را جهت ثبت غذای جدید در دیتابیس سرور فراهم می آورد
36. پیاده سازی بخش انتخاب غذا در بخش کلاینت و ساخت لایه های گرافیکی لیست ویو جهت دریافت اطلاعات از سمت سرور
37. دریافت اطلاعات متنی از سرور اینترنتی جهت نمایش لیست منوی غذاها در یک لیست ویو و نمایش یک ProgressDialog قبل از لود دیتاهای ارسالی از سمت سرور
38. ساخت api دریافت اطلاعات منوی رستوران اعم از نام و قیمت غذا با زبان برنامه نویسی PHP  و در ادامه در سمت کلاینت با استفاده از کلاس JSONParser اطلاعات منوی رستوران از فایل اینترنتی دریافت شده و در یک JSONObject قرار داده می شود و سپس با یک سری کلاس های (class) کار با JSONObject ، اطلاعات را از JSONObject دریافت کرده و به صورت جداگانه، در سه لیست آرایه ای (ArrayList) از نوع رشته (string) ذخیره می کنیم
39. راه اندازی متود onPostExecute در کلاس JSONParse به منظور نمایش اطلاعات ارسالی از سرور در ListView
40. تکمیل متود MyAdapter در کلاس JSONParse و اضافه کردم لایه گرافیکی List_item به لایه اصلی ، تست برنامه و جدا کردن سه رقم سه قم مبلغ غذا در لیست ویو
41. انتخاب غذا از طریق لمس یکی از سطرهای لیست ویو و انتقال آیدی غذا به اکتیوتی دیگر و دریافت آن در یک TextView
42. راه اندازی کلاس DownloadImageTask در اکتیویتی جزئیات غذا ، دریافت عکس غذا از url ، نمایش عکس غذا در یک ImageView و نمایش یک تصویر پیش فرض در صورتی که url حاوی تصویری نباشد
43. راه اندازی api بخش جزئیات غذا از طریق زبان برنامه نویسی php به نحوی که در صورت ارسال ریکوئست دلیت ،غذا از لیست حذف شود و در صورتی که ریکوئست دلیت خالی باشد فقط اطلاعات سطر مربوط به غذای انتخاب شده سلکت می شود
44. سلکت کردن سطر انتخاب شده در لیست ویو به نحوی که با انتقال به کتیوتی جزئیات اطلاعات سطر انتخاب شده در قالب یک آرایه json از سمت سرور دریافت شود
45. جدا کردن عناصر آرایه json در بخش جزئیات غذا به نحوی که urlimage  ، نام غذا و آیدی غذا در آبجکت های مشخص شده در فرم جزئیات غذا قرار بگیرد
46. دریافت تصویر غذا در بخش جزئیات  از url ارسالی از سمت سرور به صورت داینامیک و ایجاد رویداد کلیک برای باتن حذف به نحوی که با کلیک روی دکمه حذف یک AlertDialog ظاهر شود
47. حذف یک سطر در جزئیات غذا با انتخاب دکمه YES در AlertDialog ،رفع مشکل فارسی در اپلیکیشن ، ایجاد دکمه بازگشت به اکتیویتی قبلی در جزئیات غذا و ایجاد پروگرس بار برای پردازش های برنامه به نحوی که برای انجام تبادل اطلاعات کلاینت با سمت سرور کاربر متوجه این تأخیر در تبادل اطلاعات بشود
48. ایجاد بخش آپلود فایل تصویر غذا از طریق API در سرور PHP
49. انجام مقدمات لازم برای آپلود تصویر غذا به سمت سرور و ایجاد متود LoadImageFromGallery به منظور انتخاب یک تصویر از گالری گوشی
50. ایجاد دکمه بازگشت در بخش انتخاب غذا به نحوی که کاربر با به ثبت رساندن این دکمه به منوی اپلیکیشن منتقل شود
51. نمایش تصویر انتخاب از گالری گوشی در imageview در بخش جزئیات غذا و ارسال نام فایل انتخاب شده به سمت سرور و در بخش ثبت غذای جدید ترتیبی اتخاذ گردید که در ادیت ثبت قیمت غذا فقط امکان درج عدد امکان پذیر باشد
52. ایجاد متود uploadImage  در سمت کلاینت که در این متود تصویر انتخاب شده به آرایه بایتی تبدیل شده و پس از رمزگذاری آماده ارسال به سمت سرور می شود
53. ارسال فایل(Image) به سمت سرور از طریق متودmakeHTTPcall
54. پیاده سازی Api مربوط به آپلود فایل با زبان برنامه نویسی php به نحوی که تصویر decode شده در پوشه ای به نام uploads در سمت سرور ذخیره می گردد
55. حذف تصویر ذخیره شده در سرور به نحوی که وقتی یک غذا رو از لیست حذف می کنیم تصویر غذا نیز از سرور حذف شود
56. ایجاد بخش ثبت فاکتور جدید در کلاینت
57. ایجاد api بخش ثبت فاکتور جدید به نحوی که با ارسال ریکوئست ها از سمت کلاینت ساعت و تاریخ ثبت فاکتور نیز در دیتابیس سرور درج می گردد
58. تکمیل بخش ثبت فاکتور جدید سرور به نحوی که پس از ثبت فاکتور جدید یک پیامک حاوی شماره فاکتور برای مشتری ارسال می گردد و مشتری می تواند از طریق شماره ارسالی سفارش خود از طریق صندوق رستوران پیگیری نماید
59. ایجاد بخش لیست فاکتورها در سمت کلاینت به نحوی که فاکتورها ثبت شده در لیست ویو نمایش داده می شود
60. ایجاد api بخش لیست فاکتورها به نحوی که فاکتورهای روز جاری سلکت شده و براساس ساعت درج فاکنور سورت می شود
61. ایجاد بخش دسترسی به منوی رستوران جهت ثبت غذا برای فاکتور درج شده به نحوی که با انتخاب سطر(فاکتور) برنامه به منوی رستوران منتقل می شود و آیدی فاکتور رو از بخش لیست فاکتورها انتقال میدیم به بخش منوی رستوران
62. ایجاد بخش جزئیات فاکتور به نحوی که با انتخاب غذا از منوی رستوران آیدی غذا و آیدی فاکتور به بخش جزئیات فاکتور ارسال می شود تا ما بتوانیم غذا انتخابی رو برای فاکتور انتخابی درج نماییم
63. ساخت api بخش جزئیات فاکتور به نحوی که در صورت ارسال آیدی غذا از سمت کلاینت اطلاعات غذا در این بخش نمایش داده میشود و در صورت عدم ارسال آیدی غذا از سمت کلاینت غذای انتخابی در جرئیات فاکتور ثبت می گردد
64. ادامه ایجاد بخش جزئیات فاکتور در سمت کلاینت به نحوی که با انتقال به بخش جزئیات فاکتور نام غذا ، قیمت غذا و تصویر غذا در این بخش نمایش داده می شود
65. ثبت سفارش برای فاکتورها که در این بخش گارسون می تواند با انتخاب غذا و تعداد سفارش برای هر شماره فاکتور سفارش درج نماید
66. ایجاد لیست فاکتور ها در بخش مدیریت فاکتورها که در این بخش کاربر می تواند با انتخاب فاکتور به جزئیات فاکتور دست پیدا کند
67. اطلاع رسانی به کاربر در صورت فقدان دیتا در بخش مدیریت فاکتورها به این شکل که با ورود کاربر به بخش مدیریت فاکتورها در صورتی که دیتایی در این بخش وجود نداشته باشه یک پیغام به گارسون نشان داده می شود مبنی بر اینکه هیچ دیتایی در قسمت مدیریت فاکتورها هنوز ثبت نشده است
68. نوشتن api جهت دریافت جمع کل فاکتور  به نحوی که با ارسال آیدی فاکتور به سمت سرور جمع کل فاکتور سلکت شده در سمت کلاینت دریافت می گردد
69. ایجاد بخش جزئیات فاکتور به نحوی که با انتخاب فاکتور در بخش مدیریت فاکتورها کاربر به جزئیات فاکتور ارجاع داده می شود و در این بخش لیست  سفارشات مشتری و جمع کل فاکتور توسط گارسون ملاحظه می گردد
70. ساخت api حذف جزئیات فاکتور با احتساب اعمال شرط جلوگیری از حذف فاکتورهایی که دارای زیر مجموعه هستند
71. ایجاد اکتیوتی حذف جزئیات فاکتور و سه رقم سه رقم جدا کردن مبالغ در جزئیات فاکتور
72. بررسی فاکتور جهت حذف در سمت کلاینت به نحوی که با لمس سطر مربوط اگر فاکتور زیر مجموعه داشته باشد کلمه ok  از سمت سرور به کلاینت ارسال می شود و اگر فاقد زیر مجموعه بود کلمه null  به سمت کلاینت ارسال می شود
73. حذف فاکتور در صورت عدم ثبت جزئیات برای فاکتور به نحوی که اگر فاکتور جزئیات نداشت با لمس سطر یک alertDialog ظاهر می شود و با زدن دکمه تایید فاکتور حذف می شود اما اگر فاکتور زیر مجموعه داشت باید کاربر به جزئیات فاکتور ارجاع داده شود و اول جزئیات فاکتور را حذف کند و بعد اصل فاکتور
74. حذف جزئیات فاکتور که با انتخاب سطر آیدی سطر به سمت سرور ارسال می شود و سطر سلکت شده حذف می گردد
75. ساخت api جهت حذف جزئیات فاکتور به نحوی که با ارسال آیدی انتخابی سر منتخب حذف گردد
76.ایجاد بخش منوی رستوران از طریق API ودریافت اطلاعات از سرور PHP
77. مدیریت فاکتور مشتری
78. حذف غذا از فاکتور مشتری
79. حذف غذا از لیست غذاها
80. نحوه تغییر فوت برنامه و اعمال فونت های مختلف در اکتیویتی های برنامه
81. ایجاد یک منوی فانتزی و زیبا در برنامه به صورت کشویی
82. نحوه دریافت لوکیشن گوشی و ارسال آن به سمت سرور به نحوی که طول و عرضی جغرافیایی دستگاه توسط برنامه دریافت شده و در دیتابیس سرور ذخیره می گردد
83. نمایش طول و عرض جغرافیایی ذخیره شده در دیتابیس سرور و نمایش مکان دستگاه روی نقشه در برنامه اندرویدی
84. آشنایی با کتابخانه CURL و تبادل اطلاعات بین دو سایت و در این قسمت دو پروژه پیاده سازی میگردد یکی به عنوان client و دیگری به عنوانserver
85. پیاده سازی کامل client در قالب یک فرم لاگین پسورد و آماده سازی دیتا جهت ارسال به سمت سرور بدین شکل که آدرس api و دیتای اینکد شده جهت ارسال و همچنین متود callapi رو در این بخش تعریف کردیم
86. پیاده سازی server ، دریافت اطلاعات رسالی از سمت کاربر ،دیکد کردن داده ها و اتصال به دیتابیس
87. سلکت کردن داده ها درسمت سرور و بررسی اینکه لاگین پسورد ارسالی از سمت کاربر آیا در دیتابیس سرور موجود هست یا نه و در ادامه امکان اینسرت کردن دیتاهای ارسالی در دیتابیس سرور نیز بررسی می گردد و نتیجه به عنوان یک response به سمت کاربر ارسال می شود که پس از دیکد کردن دیتای ارسالی پاسخ از طریق متود GET در مرورگر نمایش داده میشود
88. طریقه fetch و fetchall کردن داده های ارسالی از یک سایت دیگر به سایت ما از طریق CURL
89. ایجاد کنترلر ، مادل و ویو جهت ارسال فایل از یک سایت به سایت دیگر
90. ارسال فایل به سمت سرور از طریق خط فرمان
91. ارسال فایل به سمت سرور بدون استفاده از خط فرمان و از طریق ثبت دکمه ذخیره تصویر
92. انجام یک مینی پروژه (پروفایل من) با کتابخانه curl به نحوی که ما یک تصویر پرسنلی را آپلود می کنیم در یک سایت دیگر و نتیجه آن را با نمایش تصویر در یک تگ image ملاحظه می کنیم
93. دریافت فایل از سایتهای دیگر از طریق api

با شرکت در این دوره در بحث api نویسی حرفه ای خواهید شد لازم به ذکر است api نویسی یکی از پر درآمد ترین شاخه های برنامه نویسی است

مشاهده کل مطلب