کاربر تایید شده
نویسنده آخرین فعالیت ٢ هفته پیش

@shahryarjb

پارس کلیکی از ٢ سال پیش

تجربه

114195

  • ٢ هفته پیش @shahryarjb به گفتگوی انتخاب سخت! جواب داد.

    @mobinroshnas درود خدمت شما . واقعیت امر این موضوع تصمیم سختی پیش رو ندارد. شما کافیه کشور هایی که هدف شماست رو برید داخل کاریابی های همون کشور و سایت هاشو چک کنید ببنید چقدر پروژه برای چه زبان هایی دارند . مطمئنن زبان هایی مثل جاوااسکریپت (مخصوصا کتاخانه های مربوط به آن ) - پایتان و روبی بازار خوبی دارند در اکثر کشور ها. و در زمینه موبایل هم باز جاوااسکریپت - کاتلین و swift برای شرکت ها جذاب است.


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

  • تنها راهش دمو درست کردن پروژه هاست. البته خیلی علاقه مند هستید برخی از کتاب های مهندسی نرم افزار در این مورد صحبت کرده. شما می تونید یک سیستم رو در سطح محدود بیایید بسازید که کار کمی ببره ولی المان های ضروری فقط کار بکنه . بالا هم خدمتتون گفتم شما می تونید با نرم افزار های مربوط هم پروژه رو باز کنید برای افرادی که می فرمایید و اونا هم می تونند حتی تستش کنند.

    ادوبی xd رو تست کردید ؟

  • درود خیر. شما اول باید دنبال این برید که کل پروژه رو مهندسی کنید بعد بیایید پروژه رو با نرم افزار های موجود مثل xd شرکت ادوبی دمو کنید بعد از دمو یک نسخه دمو بسازید تا مشتری رو کامل انالیز بکنید چیزی که روی ریزه کاری ها وقت شما نگیره. بعد بیایید سر پروژه اصلی و قراداد رو کامل تر کنید و سخت تر تا مشتری از دست شما بیرون نره!!

    چرا فکر می کنید nosql مشکلات شما رو حل می کنه ؟!! اصلا براش دلیلی دارید که برید روش ؟ و اصلا مطالعه کردید ویژگی ها و بدی هاشو!! به نظرم شما خودتون رو از گودال به چاه نندازید سعی کنید پروژه رو کامل کنید منظور از نظر مهندسیش هست بعد به قرارداد برسید بعد از اون پروژه رو به صورت نرمال تمام کنید.

    اگر پروژه های اولتون هست و نیاز مالی ندارید و مشتری داره برای شما دردسر درست می کنه بی خیالش بشید برید سر ساخت یک محصول کد باز و ساخت یک روزمه بهتر تا پروژه های کامل تر و تمیز تری بگیرید!

  • ٢ ماه پیش @shahryarjb به گفتگوی شروع برنامه نویسی وب جواب داد.

    @behzad درود وقتی دارید js رو یاد می گیرید تقریبا تو بیشتر آموزش هاش jquery هم یاد داده می شود . این کتابخانه زیاد کار زیادی برای افرادی که مسلط روی js می باشند ندارد شاید کمتر از یک هفته در بدترین شرایط یاد گرفته شود. بله شما می تونید ازش در بین فایل های php هم استفاده کنید مشکلی ندارد ولی ری اکت و فریم ورک های بزرگ خیر باید بکند و فرونت اند کاملا جدا باشد.

    نه اینکه مثلا ری اکت شدنی نباشد بلکه باعث پیچیدگی و همینطور تداخل زیاد می شود و همینطور ارزش زمانی مناسبی برای پروژه ندارد.

  • ٢ ماه پیش @shahryarjb به گفتگوی افزودن مدیر جواب داد.

    @behzad شما هیچ وقت به کد های تکراری توجه نکن تنها تمرکزت روی سادگی سیستم باشه. وقتی سیستم ساده ای داشته باشی کنترل بهتر و همینطور توسعه بلند مدت برای خودت خواهی داشت

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

    یکمی فکر کنم در این مورد در آموزش های seo توضیح دادم به نظرم بد نیست یک مطالعه ای بکنید

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

    کار خوبی هست که ما برای این بخش از نظر من در بکند یک روتر جدید بسازید که فقط json قبول کند اگر این json شما مستقل می باشد و فقط در حد یک اطلاعات ایجاد شده در آن فایل نمی باشد و شما هم نیاز به سشن و سشن بازی ندارید.

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

  • ٢ ماه پیش @shahryarjb به گفتگوی افزودن مدیر جواب داد.

    @behzad لطفا شمایتیک این موضوع رو نیاز دارید طراحی کنید در ادوبی xd یا دیگر نرم افزار ها. من سه بار خوندم متوجه نشدم.

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

    پنل مدیریت کل یا ادمین نسبت به یک ناظم باید کاملا یونیک باشد.

    ولی اگر سوال شما رو متوجه نشده باشد. ببنید شما می توانید بعد از لاگین کاربر در سشن رمز گذاری شده بیایید یک توکن مثل https://jwt.io ذخیره کنید . هر توکن یک آیدی دارد شما می توانید بر اساس شناسه آیدی و ولید کردنش با دیتابیستون اطلاعات دسترسی کاربر رو در بیارید در موقع انتقال به صفحه ای این رو چک بکنید و بر اساس اون تصمیم بگیرید و بعد از خروج می تونید شناسه اون رو استخراج کنید بعد در سشن جدیدی قرار بدهید. وقتی سشن پاک می کنید در اون بخش یک سشن هم ایجاد می کنید. اگر نیازی به این چنین کاری دارید.

    مشکل دقیقا کجاست که نمی تونید سشن هارو مدیریت کنید ؟

  • ٢ ماه پیش @shahryarjb به گفتگوی کار با api جواب داد.

    شما به یک مسئله اینجوری نگاه کنید. هر سایتی داره api می ده مثلا همین انجمن ولی رندرش html هست. شما لاگین می کنید بعد از لاگین می تونید دسترسی داشته باشید به صفحات دیگر . حالا یک سری api هستند که اطلاعات رو به صورت json یا دیگر موارد به شما برگشت می دند. کمی در روند ساختشون تفاوت می باشد

    میخوام بدونم مثلا پنل sms ها چجوری api میسازن و ما چجوری باید استفاده کنیم.و ما چجوری میتونیم api بسازیم و دیگران بتونن استفاده کنن؟

    چطور یک سایت درست می کنید که کاربر لاگین می کند ؟ همونطوری بیایید فقط return اون رو بر اساس json قرار بدهید کتابخانه های زیادی برای تبدیل داده های دیتابیس شما به json وجود دارد.

    فقط باید در جریان باشید برخی مواردی که در html انجام می دهید دیگر در api نمی توانید به کار ببرید یا حداقل مستقیم نمی توانید به کار ببردیش مثل استفاده از کوکی و سشن یا برخی از پارامتر های مرورگر

  • ٣ ماه پیش @shahryarjb به گفتگوی حذف کاربر به همراه پست هاش جواب داد.

    @behzad بخاطر اینکه status اون غیر فعال شده است. ولی در کل حذف کردن باید به این صورت باشه که شما کل وابستگی های اون بخش مثل یوزر که خیلی جا های سایت متصل میشه رو پیدا کنید. یا اطلاعات رو یتیم بزارید مثلا ثبت یک عکس که user نداره

  • ٣ ماه پیش @shahryarjb به گفتگوی حذف کاربر به همراه پست هاش جواب داد.

    درود @behzad خدمت شما. از نظر شخصی بنده حذف کامل یک کاربر با تمام فعالیت هاش مخصوصا در پروژه های طولانی مدت و یکمی بزرگتر از سطح پشتیبانی های قدیمی شما باعث ایجاد اطلاعات یتیم شده می شود و در طولانی مدت هم پیچیدگی برنامه شما زیاد می شود هم اطلاعاتی در سایت دارید که استفاده نمی شود. بهتر هست soft delete درست کنید. و کاربر رو موفقت غیر فعال کنید و دسترسی های فرد مذکور را غیر فعال نمایید.

    من در یکی از سایت هام بعد از ۳ ماه soft delete شدن کاربر تازه در چندین تسک و به مرور شروع به حذف اطلاعات فرد اون هم با فرم های زیاد و با پارس کردن ارور های احتمالی و شرایط زیاد اون هم در بکگراند جالب شروع به حذف می کنم.

    اکثر شبکه های اجتماعی رو ببنید متوجه می شید تا عمر اطلاعات شما حتی با حذف اکانت باقی می مونه با اینکه جداول اون ها حتی RDBMS نیست.

  • ٣ ماه پیش @shahryarjb به گفتگوی راه اندازی GitHub روی سرور محلی جواب داد.

    بیرون از محتوای این پرسش شما می تونید از نسخه های سبک تر git مثل https://gogs.io استفاده کنید. در خود سایت گیت لب هم در موردش بررسی رو انجام داده https://about.gitlab.com/devops-tools/gogs-vs-gitlab.html

  • ٣ ماه پیش @shahryarjb به گفتگوی صفحات داینامیک! جواب داد.

    درود خدمت شما البته بنده تا اونجایی که متوجه شدم . ببنید صفحه استاتیک مثل این می مونه که شما یک پروفایل درست کردید بجای اینکه این صفحه پروفایل بر اساس آیدی هر استاد اطلاعات از دیتابیس بیاره ۱۰۰ تا صفحه استاد بسازید که اطلاعات توش هارد کد شده. پس شما در حقیقت برای هر بخش مستقل دارید یک صفحه می سازید که هزاران رکورد با شرایط خاص و شروط مختلف بیاید فراخوانی اطلاعات کند.

    در مورد برخی از موارد تکراری باید بگم بخری مواقع تکراری نوشته بهتر از پیچیده شدن پروژه هست. مثلا می شه صفحه هایی درست کرد که چندین کار مستقل رو در یک صفحه بکنند ولی در طولانی مدت شما خسته و در دیباگ کردن شما رو دچار مشکل می کنه پس بهتره اول بخش های مهم رو شناسایی کنید و بیشتر به کارایی و همینطور خوانایی کد ها تمرکز کنید در مورد html های تکراری می تونی پارشال هایی درست کنید که بر اسا شرایط در صفحه ها قرار بگیرند مثلا کپی رایت که همیشه تکراری هست رو یک بار بسازید و در صفحات دیگر فقط فراخوانی کنید یا منو های سایت ها

  • ٣ ماه پیش @shahryarjb به گفتگوی دریافت API از سایت های آپلودی جواب داد.

    درود خدمت شما . اکثر سایت هایی که ارائه کنند api هستند در ایران امکان خرید در آن ها بسیار سخت می باشد شما نیاز به واسط پرداختی دارید و بخاطر تحریم ها نمی تونید متاسفانه تضمین به این بدید که فضای شما بر اساس یک گزارش ساده مسدود نشود پس بهتر است روی اون ها ریسک نکنید. مثلا فضا هایی که گوگل یا دراپ باکس می ده با api خوبشون جالبه و ارزان و با کیفیت ولی اگر بخواهید کل سایت خودتون و محتواشو بر روی این فضا ها ریسک کنید از نظر شخصیم نمی ارزد

  • ٣ ماه پیش @shahryarjb به گفتگوی ایجاد اشتراک برای سایت جواب داد.

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

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

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

    داخل اینترنت تعاریف دقیقی قرار دارد.

    نمونه : https://www.tutorialspoint.com/What-is-the-difference-between-session-and-cookies

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

  • ٣ ماه پیش @shahryarjb به گفتگوی مدیریت دیتابیس های بزرگ جواب داد.

    @amin خواهش می کنم عزیز کلا در بحث های دیتابیس و سرعت و ... من خودم خیلی شدید متاسفانه دچار مشکل شدم فکر می کردم همه چیز به اینا بستگی داره یک جا بد سرم به سنگ خورد :D

  • ۴ ماه پیش @shahryarjb به گفتگوی تامین امنیت در ورود به سایت جواب داد.

    معمولا فریم ورک ها تا حدود زیادی از سشن مراقبت می کنند ولی من از روش توکن استفاده می کنم . توکن ها در حقیقت امضای دیجیتالی هستند که مخصوص هر کاربر با یک انقضای مشخص و اطلاعات مشخص درست می شوند. هر توکن یکتا بودهو با عملیات ریاضی ساخته می شود و همینطور کدگذاری یکی از بهترین هاش استفاده از jwt می باشد. حال توکن ایجاد شده رو می تونید سشن کنید و همینطور در ردیس نیز ذخیره نمایید. بعد با هر درخواست اون رو ولید کنید در صورت درست بودن فعالیت های مربوطه رو انجام بدید. در سایت http://jwt.io می تونید کتابخانه مربوط به اون برای زبان خودتون رو پیدا کنید

  • ۴ ماه پیش @shahryarjb به گفتگوی جلو گیری از دیده شدن id ها جواب داد.

    @amir این پست اومده دوباره بالا من خدمت امیر جان بگم بنده در اون موقع مثل شما فکر می کردم ولی الان نظرم یکمی عوض شده. به عنوان مثال اگر بیاییم یک سایت رو وب سرویس در نظر بگیرید به هر صورت برای ارسال اون نیاز به یک شناسه داریم حالا اسلاگ یا آیدی به هر صورت کاربر ارسال کننده است و می تونه اون api رو جوری استفاده کنه که نظرشو هرجا می خواد ارسال کنه حالا یک سوال پیش می یاد .

    با سشن کردن یا شناسایی پست و گرفتن آیدی در بک گراند چه مشکلی قرار است حل بشه ؟ مثلا یکی بیاد نظر یک پستشو با هدف از پیش تایین شده بفرسته تو پست دیگه !! خوب انجام بده !! مشکل کجاست؟ اگر دسترسی داشته باشه به هر دو پست خوب می تونه دستی هم اینکارو بکنه !

    پس اگر می تونه جلوی کد های اضافه بگیره بودن id به نظرم مشکلی نداره. فقط قرار است دسترسی چک بشه و وجود پست شناسه شده ولید بشه

    اگر من چیزی رو از قلم انداختم لطفا به بنده توضیح دهید . ممنونم

  • در آخر باید بگم ساخت چرخ خودش باعث باگ می شه !!

  • @matin وقتی فریم ورک کد باز است و دارای جامعه بزرگی هست اول بخشی که می خواد به روز رسانی بشه به عنوان یک ایشو در می یاد بعد پول ریکوئست میشه در این بین تگ بندی می شه و بعد از تگ بندی کد ریویو میشه بعد از کد رویو تست انجام می شه مراحل که انجام شد تعداد زیادی از افراد که از سراسر دنیا هستند بعد از بحث و تبادل نظر تازه مرج می شه و هنوز ورژن نمی شه باز تست می شه و خیلی از مراحل دیگه . حالا که ورژن شد شما به عنوان برنامه نویس استفاده کنند . بحث ما در مورد افراد تازه وارد به اون زبان نیست حداقل افراد متوسط این ورژن و تغییرات رو می بینند نه برای چک کردن که داخلش امنیت خطر افتاده و ... بلکه برای یادگیری و دیدن فیچر جدید اگر کاربردی بود فریم ورک به روز رسانی میشه!

    بدون فریم ورک سایت های ۱۰۰ سال پیش asp در مراکز دولتی خودشون هر روز دارند هک میشوند هر روز می بینه فلان اداره آب یا برق کل اطلاعات کاربران رو لو داده! یا اداره مخابرات بدون مشکل امنیتی بدهی هر خط رو داره نشون می ده! پس اگر می خواست امنیت با این موارد پیاده سازی بشه وضعیت این نبود.

    واقعیت امر من اصلا php کار نیستم که لاراول بزنم کلا زبان دیگه و فریم ورک دیگه ای دارم کار می کنم منظور من اینکه همه اینا ابزارند و تو دید افراد زیادی در کشور های مختلف هستند و ایجاد یک باگ از طرف سازنده زیر دوربین های برنامه نویسان بیرون نمی ره و کل اعتبار از دست می ده. انقدر روشون مانیتور هست که از این بحث ها توش امکان انجام نیست.

    اگر اینجوری بخوایم بیان کنیم ویندوز ۲۰۰۳ در خیلی از دستگاه های پرداخت ما استفاده شده یا دیتابیس هایی که ما استفاده می کنیم یا حتی پروتکل هایی که ما داریم از اونا بهره می بریم یا اینکه حتی این سیم های اینترنتم از بیرون می یاد هیچ کدوم هم تو دست ما نیستند خیلی هاشونم نسخه کامپایل شده نهاییش دست ماست از کجا مشخص که اطلاعات ما لو نمیره . از کجا مشخصه پستگرس یا mysql این اطلاعات بیرون ندند یا اپاچی این مشکل ایجاد نکنه !!

    شما از یک فریم ورک با ۱۰۰ استفاده کننده استفاده نمی کنید عزیزم به تعداد استفاده کنندگان و کانتیربیوتر ها توجه کنید. این یک کتابخانه سبک و کوچیک نیست برای پیاده سازی مثلا soap هست شما ازش بترسید که حق هم دارید ممکنه باگی باشه که از هدف قبلی هم نباشه! بلکه یک فریم ورک بسیار بزرگ هست با مصرف کنندگان زیاد.

    حمله روز صفر همیشه وجود داره ولی اینکه اینجوری انقدر بدبینانه جلو بره! من هم نظر شما نیستم.

  • @matin فکر می کنم دیگه نمی تونم منظور خودمو به شما برسونم چون بنده احساس می کنم شما دید مناسبی نسبت به جامعه کد باز ندارید و همینطور سایت های دولتی داخلی رو خیلی دست بالا گرفتید. امید وارم جسارت نشده باشد متن رو چندین بار ویرایش کردم تا خدایی نکرده توهین نشده باشد

  • @matin دوست عزیز بحث اینجاست که شما به عنوان یک فرد یا خیلی دست بالا بگیریم یک گروه ۱۰ نفر که اکثرا هم برنامه نویس هستید آیا امنیت بیشتری رو ارائه می کنید با چه دلیلی ؟ یا یک جامعه كد باز با هزاران نفر توسعه دهنده و نمونه های زیاد پیاده سازی شده !!!؟ بله خیلی از شرکت ها از اول می نویسند ولی باید بگم این به مرور توسعه می دهند حتی به اون جامعه کد باز هم کمک می کنند ولی شما چنین هزینه و توانایی رو از نظر نیرو انسانی و مالی دارید ؟ به عنوان مثال ریلز رو از اول باز نویسی کنید ؟

    من باز فکر می کنم دوستان بدبین شدند و یا اعتماد زیادی به کد های خودشون دارند به نظرم هر وقت دچار این مشکل شدیم باید کد هامون رو در جامعه بزرگتری نسبت به یک شرکت به صورت کد باز قرار بدیم و نظرات دیگران رو دریافت کنیم و ببینیم کجا ایستاده ایم. چون یک پروژه کد بسته تجاری زمانی هک میشه که دیگه هک شده ولی یک پروژه کد باز زمانی که هک شده که یک نفری ۹۰ روز قبل تر از شما گزارش کرده و براش به روز رسانی اومده

  • @mahdi_mahdi شما یک نفر امنیت بهتری رو می تونید پیاده سازی کنید ؟ یا یک جامعه چند هزار نفری توسعه دهنده ؟

  • به نظرم شما دارید یک اشتباه پایه انجام می دید که همه برنامه نویسا این اشتباه رو می کنند . سرعت یکی از پارامتر ها است که در مقابل خیلی از پارامتر های دیگر اهمیت کمی دارد. شما باید دنبال ثبات و کارایی بهتر باشید تا سرعت. اکثر فریم ورک های بزرگ که دارای جامعه مناسبی هستند به اندازه کافی سرعت مناسب دارند و جای هیچ مشکلی نیست و شما به نظرم اگر می خواهید از یک ابزاری استفاده کنید باید بیشتر پارادایم های فرکی سازنده اون و جامعه در حال فعالیتش را درک کنید

  • ۵ ماه پیش @shahryarjb به گفتگوی انتخاب زبان دوم برای برنامه نویسی جواب داد.

    @behzad جامعه خوبی داره به همین ترتیب کتابخانه های خوبی هم داره در برخی از رشته های تخصصی بیشتر کار کرده مشکلات زیادی هم داره که هر زبانی داره و هر زبان جدیدی اونو حل می کنه. بستگی به نیاز شما داره کجا قراره از اون استفاده کنید و هدف آخر چی هست. شما باید اول ببنید نیاز شما چی هست بعد بشه در مورد زبان صحبت کرد . در کل زبان برنامه نویسی یک ابزاره و مهم نیست حتما چی باشه !! مهم اینکه شما بتونید نیاز خودتون رو با کمترین هزینه براورده کنید.

    به نظرم دنبال مباحث کلی نباشید وقتتون رو می گیره و فایده ای نداره

  • ۵ ماه پیش @shahryarjb به گفتگوی انتخاب زبان دوم برای برنامه نویسی جواب داد.

    @behzad اگر بخوایم اینجوری فکر کنم بهتره جاوا رو انتخاب کنیم مولتی پلتفرم هزاران کاربرد و ... . ولی واقعیت این است که نمی شه در همه زمینه ها وارد شد. و یک نکته ای رو هم خدمتتون به نظر شخصیم بگم . در کل زبان برنامه نویسی یک ابزاره مهم برنامه نویسیش هست که باید تصمیم بگیره که در چه زمانی و چه مکانی بخواد از چه چیزی استفاده کنه. به عنوان مثال برای طراحی سایت تک صفحه ای اصلا از نظر کدنویسی و زمان و هزینه می صرفه برای مشتری با جاوا پیاده کنیم ؟ یا از نظر امکانات مثلا چرا elixir رو برای وب سرویس نویسی انتخاب می کنند.

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

  • ۵ ماه پیش @shahryarjb به گفتگوی انتخاب زبان دوم برای برنامه نویسی جواب داد.

    درود, اگر دنبال بازار کار سریع هستید بین زبان هایی که نام بردید پایتان بهتره خیلی شرکت ها باهاش کار کردن و قدرتمند نیز است. ولی اگر دنبال زبان قدرتمند هستید و همینطور با پارادایم مناسب و اگر دنبال وب سرویس نویسی هستید و مدیریت پردازش های بالا و هم زمان شکی نیست الکسیر یا ارلنگ در بین گزینه های شما بهترین گزینه است. من یک سال خوردی پیش الکسیر انتخاب کردم. آموزششم داخل پارسکلیک در بخش نویسندگان نیز وجود دارد ‍‍ آموزش elixir

  • ۵ ماه پیش @shahryarjb به گفتگوی شروع رکورد فصل دوم آموزش الکسیر جواب داد.

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

  • ۶ ماه پیش @shahryarjb به گفتگوی شروع رکورد فصل دوم آموزش الکسیر جواب داد.

    حدود ۱۴ ویدیو رکورد شده است. در این ۱۴ ویدیو موارد زیر رو انجام دادم

    1. ارسال و دریافت درخواست به وب سرویس گوگل
    2. استفاده از کتابخانه اتصال به گوگل
    3. آپلود فایل در گوگل درایو
    4. دریافت لیست تمام فایل های موجود در گوگل درایو
    5. ویرایش نام فایل
    6. حذف فایل در گوگل درایو

    توضیح در مورد برخی از هدر های برگشتی از طرف وب سرویس. به زودی به سمت ساخت یک سایت کوچیک با فونیکس می رم اگر عزیزان نظری دارند بفرمایند

    @amir

  • ۶ ماه پیش @shahryarjb به گفتگوی api اینستاگرام جواب داد.

    بیشتر مشکل api اینستاگرام اینکه متاسفانه قوانین سختی داره و باید برای موارد اصلی و بدرد بخورش اجازه مناسب رو از خود سایتش بگیرید که خیلی سخته!!

  • ۷ ماه پیش @shahryarjb به گفتگوی آپدیت آنلاین پروژه های لاراول جواب داد.

    برای encode و decode کردن کدهاتون سیستم های مختلفی وجود داره که معروف ترین اون ioncube هست.

    یونکیوب و سورس گاردین یا فکر کنم پی اچ پی لاک همشون متاسفانه حجم رو وحشت ناک می برند بالا بخاطر همین چندتا فایل php اونم محدود باهاشون کد می کنند. اکثرشونم تجاری هستند با وضعیت قیمت ارز در داخل واقعا سخته خردیشون. البته چند سایتی قدیم بودند که فایل می دادی بهشون کد شده رو بر می گردوند

  • ۷ ماه پیش @shahryarjb به گفتگوی آپدیت آنلاین پروژه های لاراول جواب داد.

    کیوب علاوه بر اینکه کلاستر درست می کنه یا برای down شدن و پخش سورس روی چندین سرور و ... بحثی بر آبدیت همزمان بدون down شدن هم داره. یک سرچ بفرمایید کوبرنتیز رو فکر کنم مشکلتون حل کنه

  • ۷ ماه پیش @shahryarjb به گفتگوی شروع رکورد فصل دوم آموزش الکسیر جواب داد.

    @amir ممنون امیر جان حتما فقط دارم یکمی مطالعه می کنم در مورد ساختار گوگل و سیستم auth بعد استارت ویدیو رو در این بخش بزنم. یک نکته ای رو خدمت شما و عزیزان بگم چون ساختار الکسیر شدیدا برای ساخت وب سرویس ها درست شده یعنی اتصال کلاینت های خارجی به بکند که با الکسیر نوشته شده است در هسته به صورت کامل امکانات خوبی برای ساخت وب سرویس مخصوصا در فریم ورک فونیکس نهفته است که سرعت ساخت نمایش ارور کنترل endpoint ها همه و همه رو بالا می بره. چندی پیش کتابخانه ای به نام Jason منتشر شد از یکی از فورکر های اصلی الکسیر که ۳۰ درصد سرعت رندر json و چه تبدیل چه خواندن رو بالا برده و در نسخه جدید فونیکس نیز استفاده شده .

  • ۷ ماه پیش @shahryarjb به گفتگوی شروع رکورد فصل دوم آموزش الکسیر جواب داد.

    درود @amir جان قبل از همه چیز باید خدمتتون بگم بنده در زبان هایی که کار می کنم هیچ وقت خیلی عمیق نمی شم بیشتر دنبال کاربردی بودنشون می رم ولی امید وارم در این یک سال نیمی که حدودا ۱۰ پروژه حدودا ۶ ماهه رو زدم , بتونم پاسخ مناسب رو بدم.

    می دونم Phoenix از Ecto استفاده می کنه، کار با migration و فرقش با ORM چیه؟

    میگریشن در فونیکس همون میگریشن در الکسیر هست و خود میگریشن هم همون Ecto هست که تابع دیگرش به عنوان مثال شروع یک فایل میگریشن که همون ساخت فیلد ها و جدال در دیتابیس هست به این صورت می باشد

      use Ecto.Migration

    و خود Ecto هم یک orm هست که برای دیتابیس های رلیشیونال مثل پستگرس و مای اسکول که بیشتر پستگرس دیگه نیاز شما رو کامل مرتفع می کنه ولی دسترسی می زاره که حتی کد های خام psql رو هم توی Ecto بزنید.

    در Phoenix از queue ها چطور استفاده می شه و آیا اصلا لازم هستند؟

    خیلی از موارد در الکسیر داستانش کامل فرق می کنه به عنوان مثال وقتی ما از صف ها استفاده می کنیم که مثلا نمی تونیم در چندین ترد کار های موازی انجام بدیم که در الکسیر به عنوان مثال خیلی روی Task ها مانور داده شده و همینطور Process ها حتی در مبحث otp که همون سرور های اسیت فول هست مثلا شرکت ماشین سازی رو در نظر بگیرید کار های باید پشت هم انجام بشه که اومده چیزی به نام جن استیج ساخته و این ماژول کار رو برای شما انجام می شه ولی کتابخونه های زیادی هست که اگر به صف نیاز دارید کار شما رو انجام می ده پشت هم مثلا exq یکی از اون موارد هست

    Channel ها چی هستند آیا از websockets استفاده می کنند؟

    بله همون وب سکوت هست که در الکسیر با کد های js و خود الکسیر نوشته می شه برای سایت های ریل تایم و همینطور وب سرویس های ریل تایم. لازم به ذکر هست در هفته های آخیر برای سایت با رندر html کتابخانه جدیدی اومده که نیاز شما برای ساخت وب سایت ریل تایم فقط در رندر html کامل به js رو مرتفع می کنه یعنی شما دیگه نیازی به استفاده از js ندارید و کلا الکسیر می زنید و خیلی زیباست اسمش liveview هست هم اکنون در نسخه بتا می باشد و خیلی شرین و ساده است

    آیا در Phoenix احتیاجی به Event و Listener ها هست؟ اگر بله چطوری استفاده می شه؟

    اگر در مبحث ریل تایم منظورتون هست تابع های مخصوص به خودشون دارند و ساده هستند به عنوان مثال در چنل نویسی زیاد هستند که برخی از کار هاشون با js در خود فونیکس و برخی هاشون با خود توابع الکسیر انجام می شند. که در https://github.com/phoenixframework/phoenix_live_view کلا نیازی به js نیست

    Cashing و Hashing چطوری هست؟

    امیر جان این مورد خیلی کلی فرمودید در چه بحثی نیاز هست اگر در مورد پسورد هاست که باید بگم کتابخانه های بسیار بسیار حرفه ای وجود داره با جامعه توسعه دهندگان که اون رو خیلی حرفه ای توسعه می دهند و رایگان ولی در مبحث کش باید بگم اگر منظور شما کش داده هاست که بخاطر استیت فول بودن و مباحثی مثل otp شما هم می تونید با استفاده از خود الکسیر مباحثی مثل جن سرور یا ایجنت ها روی رم ذخیره کنید اگر نه می تونید از ردیس استفاده کنید . نکته : برخی از دیتابیس های سریع هم ساپورت می شه برای این کار که کتابخانه هست و ماژول هاش آماده استفاده می باشد

    فرستادن ایمیل و notification چطوری هست؟

    من برای ارسال ایمیل از یکی از کتابخانه ها به نام بامبو استفاده می کنم عالیه خیلی منعطف هست و پنل تست داره به صورت گرافیکی ولی برای ارسال نتیفیکیشن ها می تونید از چنل یا از لایو ویو استفاده کنیدکه خیلی سریع و خوش ساخت هستند اگر دوستان js کار می کنند می دونند که بعد از دو روز کدنوشتن js مثل یک آشغال همه جا پخش می شه ودیگه نمی شه کنترل کرد این مشکلات همه رفع شده مخصوصا با لایو ویو

    آیا در Phoenix قابلیت استفاده از cron jobs در فریم ورک وجود دارد؟

    بله هست کتابخانه برای الکسیر زیاد می باشد و با قدرت زیاد ولی شما می تونید با خود الکسیر مثلا استفاده از همون جن سرور که مبحث otp هست برید جلو و به صورت استیت فول کار کنید

    دیتابیس ریلیشن شیپ ها رو از کجا در doc میشه پیدا کرد؟

    کافیه در هر جستجوی گوگل بنویسید ecto داکیومنتش می یاد بالا تمامی کتابخانه های الکسیر یا ماژول ها چه ساخته شده به وسیله گروه اصلی چه دیگر توسعه دهندگان در لینک https://hexdocs.pm می باشد که در وب سایت hex.pm شما وقتی کتابخانه ای رو سرچ می زنید می تونید اونجا لینک داکیومنتشو ببنید.

    در مورد آخر نمی دونم شاید کار کردم ولی چون اسمشو نمی دونستم ییادم نیست در پکیج منیجر الکسیر می تونید پیدا کنید همون سایت hex.pm

    امیر جان شما یک موردی رو خیلی نام بردید و اونم فونیکس هست . بنده هم همه رو با نام الکسیر نام بردم تمام پکیج های موجود در الکسیر به صورت ماژول و مستقل می باشد به همین ترتیب فونیکس یک پروژه الکسیر می باشد که پکیج هایی رو که گروه فونیکس نوشتن دیفالت در خودش داره پس ما کلا اینجا با بحث زبان کار داریم یعنی به عنوان مثال php و elixir که بازم تقریبا قابل مقایسه نیستند. شما در الکسیر کنترل خطا دارید مباحث سوپر وایزر دارید کار با ترد های cpu دارید چیز هایی که به سادگی با یک یا دو کلمه انجام می شه که در php خبری ازشون نیست این تخریب php نیست بلکه زبان الکسیر زبان مدرن تری می باشد و همینطور باید بگم که الکسیر بخاطر اینکه کامپایلری هست مطمئنن سرعت چندین برابر بیشتری دارد به عنوان مثال همین بحث ریل تایم بودنش رو مثال بزنیم ۱۰ برابر ری اکت یا انگولار تقریبا سریع تر می باشد

    پارادایم های فکری فانکشیونال و همینطور بحث بسیار جالب otp در الکسیر بحث هایی هستند که باید مقایسه بشند فونیکس فقط یک ابزار کوچکی هست که مشتق شده از چندینماژول جداگانه. به عنوان مثال نگاه کنید در یک رم ۱۶ چی تست کردند https://phoenixframework.org/blog/the-road-to-2-million-websocket-connections

    آیا این چنین چیزی در php نمی شود ؟ بله که می شود ولی هزینه اون چقدره زمان اون چقدره چقدر باید کار بشه ؟ و ... یعنی از نظر شخصی من با c هم می شه خیلی کار کرد ولی آیا زبان rust بی دلیل درست شده؟!!

    یک موردی رو فرمودید که آیا در فریم ورک وجود داره یا خیر!! باید بگم که در الکسیر و یا کلا زبان های فانکشیونال یک جوری برنامه نویسا سعی می کنند خیلی پکیج رو خالص بنویسند که اصلا بحث پیورفانکشن خیلی مطرح هست به همین منظور فقط بیس کار مدنظره بقیه موارد یک ماژول مستقل می شه که نصبش خیلی ساده و خیلی با سرعت هست حتی کمتر از روبی دردسر داره یعنی کلا درسر نداره :D به همین منظور همه مواردی که شما فرمودید با سرعت توسعه بسیار بالا و کامیونیتی بسیار بزرگ از قبل در hex.pm موجود هست

    به عنوان مثال در یک پروژه ام من چنین کتابخانه هایی رو استفاده کردم

          {:phoenix, "~> 1.4.0"},
          {:phoenix_pubsub, "~> 1.1"},
          {:phoenix_ecto, "~> 4.0"},
          {:ecto_sql, "~> 3.0"},
          {:postgrex, ">= 0.0.0"},
          {:phoenix_html, "~> 2.11"},
          {:phoenix_live_reload, "~> 1.2", only: :dev},
          {:gettext, "~> 0.11"},
          {:jason, "~> 1.1"},
          {:plug_cowboy, "~> 2.0"},
          {:httpoison, "~> 1.5"},
          {:scrivener_ecto, "~> 2.2"},
          {:jalaali, "~> 0.3"},
          {:jose, "~> 1.9"},
          {:guardian, "~> 1.2"},
          {:comeonin, "~> 5.1"},
          {:bcrypt_elixir, "~> 2.0"}

    مثلا از آخر توضیح بدم دوتای آخر مربوط به رمزنگاری پسورد هاست گاردین بر اساس jwt توکن می سازه و دسترسی های زیبایی رو درست می کنه و موارد دیگه که با سرچشون در hex.pm میشه فهمید کارشون چطور هست

    نمونه مایگریشن

    defmodule Bank.Repo.Migrations.BlogCategories do
      use Ecto.Migration
      @disable_ddl_transaction true
    
      def change do
        create table(:blog_categories, primary_key: false) do
          add :id, :uuid, primary_key: true
    
          add :title, :string, size: 150, null: false
          add :short_description, :string, size: 164, null: false
          add :description, :text,  null: false
          add :image, :string, size: 200, null: false
          add :seo_alias_link, :string, size: 200, null: false
          add :seo_words, :string, size: 150, null: false
          add :seo_description, :string, size: 164, null: false
          add :status, :boolean, null: false
    
          timestamps()
        end
    
        create(
          index(:blog_categories, [:seo_alias_link],
            # concurrently: true,
            name: :unique_index_on_blog_categories_alias_link,
            unique: true
          )
        )
      end
    end

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

    باز اگر موردی هستی بنده در خدمت شما هستم. فکر می کنم این موارد رو در ویدیو بتونم بهتر توضیح بدم با مثال که حتما در نظر می گیرمش ممنون که پست رو زنده نگاه می دارید .مبحث سرور و کانفیگش همیشه باعث درسر زبان های مدرن در ایران هستند که با داکر و یادگیریش واقعا این مورد حل می شه ولی هنوز در بین برنامه نویسان عمومی وب جا نیفتاده هست و همه دنبال یک وب هاست اشتراکی هستند سعی می کنم اندازه خودم این مورد رو جا بندازم

    به روز رسانی

    نمونه ای از یک فایل schema و چین ست خیلی با معرفت در Ecto که وقتی ببنیدش و کار کنید عاشقش می شید

    defmodule Bank.Users.UserSchema do
      use Ecto.Schema
    
      import Ecto.Changeset
      @primary_key {:id, :binary_id, autogenerate: true}
      @foreign_key_type :binary_id
    
      schema "users" do
    
        field :name, :string, size: 20, null: false
        field :last_name, :string, size: 20, null: false
        field :mobile, :string, size: 20, null: false
        field :password_hash, :string, null: false
        field :password, :string, virtual: true
        field :status, :integer, size: 1, null: false
        field :role, :integer, size: 1, null: false
    
        timestamps()
      end
    
      def changeset(struct, params \\ %{}) do
        struct
        |> cast(params, [:name, :last_name, :mobile, :password_hash, :password, :status, :role])
        |> validate_required([:name, :last_name, :mobile, :password, :status, :role], message: "فیلد مذکور نمی تواند خالی باشد.")
        |> validate_length(:name, min: 3, max: 20, message: "نام شما باید بین ۳ الی ۲۰ کاراکتر باشد.")
        |> validate_length(:last_name, min: 3, max: 20, message: "نام خانوادگی شما باید بین ۳ الی ۲۰ کارکتر باشد.")
        |> validate_length(:password, min: 8, max: 200, message: "پسورد شما باید حداقل ۸ کاراکتر باشد و حداکثر ۲۰۰ لطفا پسورد مناسبی انتخاب کنید.")
        |> validate_length(:mobile, min: 11, max: 20, message: "نام کاربری شما باید بین ۳ الی ۲۰ کارکتر باشد.")
        |> validate_inclusion(:status, 1..10)
        |> unique_constraint(:mobile, name: :unique_index_on_users_mobile, message: "نام کاربری وارد شده از قبل وجود دارد.")
        |> hash_password
      end
    
      def change_password_changeset(struct, params \\ %{}) do
        struct
        |> cast(params, [:password])
        |> validate_required([:password], message: "متاسفانه پارامتر پسورد وارد نشده است.")
        |> validate_length(:password, min: 8, max: 100, message: "پسورد شما باید حداقل ۸ کاراکتر باشد و حداکثر ۲۰۰ لطفا پسورد مناسبی انتخاب کنید.")
        |> hash_password
      end
    
      defp hash_password(changeset) do
        case changeset do
          %Ecto.Changeset{valid?: true, changes: %{password: password}} ->
            put_change(changeset, :password_hash, Bcrypt.hash_pwd_salt(password))
          _ -> changeset
        end
      end
      # Bcrypt.verify_pass "ORIGINAL PASS", HASHPASS
    end
    
  • ۷ ماه پیش @shahryarjb به گفتگوی شروع رکورد فصل دوم آموزش الکسیر جواب داد.

    @amir درود امیر جان بهترین منبع کتاب های فوق العاده وب سایت http://pragprog.com هست

    به ترتیب کتاب های زیر رو پیشنهاد می کنم اگر خودم خارج ایران بودم حتما نسخه چاپی رو می خریدم کمانگاه که همین الان نسخه پی دی افشو خریدم:

    ۱. این کتاب برای یادگیری الکسیر می باشد https://pragprog.com/book/elixir16/programming-elixir-1-6

    ۲. این کتاب برای بهبود یادگیری فانکشیونال پروگرمینگ و همینطور الکسیر https://pragprog.com/book/cdc-elixir/learn-functional-programming-with-elixir

    ۳. این کتاب برای آموزش فونیکس https://pragprog.com/book/phoenix14/programming-phoenix-1-4

    بنده این کتاب هارو تقریبا هر کدوم رو نصف بیشتر خوندم

    Image

    ولی منابع ویدیویی باید بگم هرکدوم یکمی مشکلات خودشون دارند یکی قدیمی شده یکی کامل نیست

    آموزش اول : The Complete Elixir and Phoenix Bootcamp

    https://www.udemy.com/the-complete-elixir-and-phoenix-bootcamp-and-tutorial/ 8

    این آموزش به وسیله یک فردی درست شده که بیشتر کارش در زمینه جاوااسکریپت هست و آموزش های پرطرفداری رو در یودمی منتشر کرده . آموزش تا اینکه بیشتر مربوط به الکسیر باشه به فونیکس ربط داره . در این آموزش پروژه ای که برای الکسیر در نظر گرفته شده واقعا چرته . به این منظور که شما درگیر حساب کتاب ریاضی می کنه . آموزش تقریبا به روز هست و مشکلی از نظر سنتکز یا تغییرات خیلی زیاد روی الکسیر نداره .

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

    آموزش دوم : Elixir for Beginners https://www.udemy.com/elixir-for-beginners/ 3

    اگر به دنبال آموزشی پروژه محور برای ساخت وب اپ های کوچیک در الکسیر و یادگیری متقابل هستید باید بگم گزینه خوبی نیست . این آموزش فقط برای یادگیری سینتکز های الکسیر هست و تمام . لحجه اون هم طرف های گزینه تلفیقی انگلیسی- روسی هست . :smiley: ولی یک بار به صورت کامل تمام موارد پایه رو تست می کنه و بهتون نشون می ده به نظرم بعد از دیدن ویدیو بالا یا همون ویدیو یک می تونه کمک کننده در سازماندهی کلی ذهن شما باشه .

    آموزش سوم : Elixir : Start programming on best concurrent language

    این آموزش اصلا سرفصل مناسب نداره و من نخریدمش چون در دو آموزش بالا همه موارد این کاملا وجود داره . پس اصلا پیشنهاد نمی شه https://www.udemy.com/learn-elixir-beginner/

    خوب از یودمی باید بکشیم کنار و بریم دنبال گروهی خوب . منظور من وب سایت

    https://www.pluralsight.com/

    در این وب سایت دو آموزش بسیار خوب ولی کمی قدیمی (البته نمی دونم الان به روز شده یا نه ) قرار داره . که فقط در موقع دیدن باید به کتابخانه های استفاده شده اون در پروژه کمی بیشتر دقت کرد و گیت هاب هرکدوم رو آورد بالا تا مشکلی بود با کد های جدید و به روز جاگیزین کرد در آموزش الکسیر این وب سایت می یاد یک اپ خودکار ارسال توییت به توییتر بر اساس زمان بندی انتخاب شده می سازه . خیلی به نظرم آموزش الکسیرش خوبه چون خیلی از موارد مخصوصا کتایخانه های خوبی مثل پویزن و مشتقات رو پوشش می ده و در آموزش فونیکسش می یاد از هر بخشی یک ویدیو کوتاه درست می کنه . مواردی از جمله کار با پلاگ ها دیتابیس و وب سوکت . به نظرم این آموزش مکمل آموزش یک و دوم هست و برای کسانی که می خواند تکمیل تر بشند خیلی خوبه .

    ویژگی این آموزش پرداختن به مدل دامین درایو دیزاین هست که در آموزش های بالا اصلا خبری نبود ولی در این پروژه به اون تمرکز ویژه ای صورت می گیره که واقعا پیشنهاد می شه . البته لازم به ذکر هست در زمینه موارد OTP و همینطور دیتابیس کمی ضعیف عمل کرده انگار سازنده می خواسته یک چیز بزنه در بره . به هر صورت بسیار پیشنهاد می شه

    در آخر بهترین آموزش برای افرادی که از سطح پایین به متوسط رسیدن https://pragmaticstudio.com/courses/elixir 14

    بسیار پشتیبان های با فرهنگ و خوشبرخوردی دارند . در این آموزش تمرکز ویژه ای روی الکسیر شده نه فونیکس حتی با توابع ارلنگ اومده و یک وب سرویس ریل تایم ساخته و شدیدا بازم باید بگم OTP در اون نقش بسیار زیادی داره . هرچی بگم کم گفتم اما … باز باید آموزش های مبتدی رو در بالا معرفی کردم رو دیده باشید تا بهتون حال بده .

    قیمتش نسبت به سرفصل ها و توضیحات به نظرم حتی کم هم هست چه برسه زیاد و دیگه ارزش پول ما کمه . الانم ۱۰ درصد تخفیف خورده .

    به روز رسانی

    بنده هم امیر جان دیرکرد در آموزش دلیلش فقط تغییر قوانین متاسفانه توییتر بود حدود ۲۰ ویدیو من کامل حذف شد به علت اینکه فهمیدم قوانین توییتر تغییر کرده و دیروز دو قسمت جدید شروع فصل دوم رو رکورد کردم ما بقی رو به مرور می رم جلو امید وارم به کار کاربران عزیز بیاد

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

  • ۸ ماه پیش @shahryarjb یک گفتگو به اسم شروع رکورد فصل دوم آموزش الکسیر درست کرد.

    با درود خدمت دوستان گرامی همانطور که می دانید چندی پیش ما آموزش الکسیر را در پارس کلیک منتشر کردیم. فصل اول این آموزش بیشتر به پایه این زبان و همینطور شبهه پروژه ها پرداخته است و همینطور دارای ۲۰ ویدیو می باشد. در فصل دوم هدف ما کار با یک وب سرویس خارجی می باشد. در اوایل تصمیم بر ساخت یک اپلیکیشن خوب برای توییتر را داشتم ولی متاسفانه قوانین توییتر برای api بسیار سختگیرانه شده است . برای بنده مشکلی به وجود نمی آمد چون از قبل در توییتر اپ ساخته بودم ولی کاربرانی که می خواستند این آموزش ها را جلو ببرند دچار مشکل می شده اند. به همین منظور من وب سرویس دیگری را در نظر گرفتم که نسبت به توییتر نکات بیشتری دارد و همینطور همین امر باعث طولانی شدن آموزش ها نیز می گردد. ( البته اگر به مشکل بخورد نکنم)

    وب سرویس خارجی انتخاب شده گوگل درایو می باشد از چند نظر کلی جالب توجه است:

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

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

    اگر درخواست پیشنهاد یا انتقاد در مورد فصل گذشته یا فصلی در آینده منتشر می شود دارید لطفا در همین پست با بنده در ارتباط باشید

  • ۹ ماه پیش @shahryarjb به گفتگوی پادکست جواب داد.

    @danial_kh در آیتونز می تونید نظر بزارید زیر هر کدوم از پادکست ها

  • ۹ ماه پیش @shahryarjb به گفتگوی ویدیو جدید لاراول نوا جواب داد.

    @premier213 ساخت چرخ همیشه خوب نیست برخی مواقع می شه با استفاده از چهارچوب هایی که توسعه دهنده بیشتری دارند کیفیت بهتر سرعت بالاتر امکانات بیشتر رو به مشتری ارائه کرد

  • ١۰ ماه پیش @shahryarjb به گفتگوی تجربه کاربری و رابط کاربری جواب داد.

    @qaranjik خیلی از روش های کسب و درامد در اون ها وجود داره

    • اول اینکه اونا بسیار معروف می شند و براشون پروژه می یاد
    • دوم اینکه ممکنه یک پروژه ای در یکی از پروژه هاشون بوده و منتشر شده است
    • سوم اینکه سایت ها و گروه های بزرگ پشتیبانشون می شند و حمایت می کنند

    حالا شما فکر کنید برای سیمینار ها و ... هر کدام و همینطور در جریان باشید خیلی از فریم ورک ها با توسعه ۳ الی ۴ نفرشه شروع شد و الان به صورت کد باز توسعه دهنده دارد از تمام کشور ها !! و خود سازنده دیگر فقط دخیل نیست

    یک مثال کوچک: من یک افزونه کد باز رایگان برای جوملا زدم بیش از 10 هزار بازدید رفته و بیش از 2 هزار بار استفاده اولیه شده!! همین موضوع باعث شده برای من پروژه هایی در زمینه افزونه نویسی جوملا بیاد.